<?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>214056</bug_id>
          
          <creation_ts>2020-07-07 14:10:45 -0700</creation_ts>
          <short_desc>Use sendWithAsyncReply instead of EditingRangeCallback</short_desc>
          <delta_ts>2020-07-07 16:31:23 -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="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>cdumez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1669522</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-07-07 14:10:45 -0700</bug_when>
    <thetext>Use sendWithAsyncReply instead of EditingRangeCallback</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669523</commentid>
    <comment_count>1</comment_count>
      <attachid>403722</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-07-07 14:11:04 -0700</bug_when>
    <thetext>Created attachment 403722
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669531</commentid>
    <comment_count>2</comment_count>
      <attachid>403722</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-07-07 14:23:17 -0700</bug_when>
    <thetext>Comment on attachment 403722
Patch

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

&gt; Source/WebKit/UIProcess/Cocoa/WKReloadFrameErrorRecoveryAttempter.mm:53
&gt; +    WTFLogAlways(&quot;ALEX WKReloadFrameErrorRecoveryAttempter %s&quot;, urlString.utf8().data());

Oops</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669532</commentid>
    <comment_count>3</comment_count>
      <attachid>403722</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-07-07 14:23:35 -0700</bug_when>
    <thetext>Comment on attachment 403722
Patch

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

&gt; Source/WebKit/ChangeLog:8
&gt; +        No new tests (OOPS!).

Oops again</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669543</commentid>
    <comment_count>4</comment_count>
      <attachid>403729</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-07-07 14:49:48 -0700</bug_when>
    <thetext>Created attachment 403729
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669557</commentid>
    <comment_count>5</comment_count>
      <attachid>403729</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-07-07 15:29:07 -0700</bug_when>
    <thetext>Comment on attachment 403729
Patch

r=me if bots are happy</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669589</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-07 16:30:54 -0700</bug_when>
    <thetext>Committed r264047: &lt;https://trac.webkit.org/changeset/264047&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403729.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669590</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-07-07 16:31:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/65198975&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403722</attachid>
            <date>2020-07-07 14:11:04 -0700</date>
            <delta_ts>2020-07-07 14:49:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214056-20200707151101.patch</filename>
            <type>text/plain</type>
            <size>13808</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjQwMzkpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDIwLTA3LTA3ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVXNlIHNlbmRXaXRo
QXN5bmNSZXBseSBpbnN0ZWFkIG9mIEVkaXRpbmdSYW5nZUNhbGxiYWNrCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQwNTYKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgKE9PUFMhKS4K
KworICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9XS1JlbG9hZEZyYW1lRXJyb3JSZWNvdmVyeUF0
dGVtcHRlci5tbToKKyAgICAgICAgKC1bV0tSZWxvYWRGcmFtZUVycm9yUmVjb3ZlcnlBdHRlbXB0
ZXIgaW5pdFdpdGhXZWJWaWV3OmZyYW1lSGFuZGxlOnVybFN0cmluZzpdKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvQ29jb2EvV2ViVmlld0ltcGwubW06CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXdJ
bXBsOjpzZWxlY3RlZFJhbmdlV2l0aENvbXBsZXRpb25IYW5kbGVyKToKKyAgICAgICAgKFdlYktp
dDo6V2ViVmlld0ltcGw6Om1hcmtlZFJhbmdlV2l0aENvbXBsZXRpb25IYW5kbGVyKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZVByb3h5OjpnZXRNYXJrZWRSYW5nZUFzeW5jKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVBy
b3h5OjpnZXRTZWxlY3RlZFJhbmdlQXN5bmMpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJv
eHk6OmVkaXRpbmdSYW5nZUNhbGxiYWNrKTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3Mv
V2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdl
cy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluOgorCiAyMDIwLTA3LTA3ICBT
aWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwZS5jb20+CiAKICAgICAgICAgTmV0d29yayBwcm9jZXNz
IGNyYXNoZXMgaW4gV2ViS2l0OjpTdG9yYWdlTWFuYWdlclNldDo6ZGVsZXRlU2Vzc2lvblN0b3Jh
Z2VGb3JPcmlnaW5zCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5j
cHAJKHJldmlzaW9uIDI2NDAxNikKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcxNjEsMjAgKzcxNjEsNiBAQCB2b2lkIFdlYlBh
Z2VQcm94eTo6dW5zaWduZWRDYWxsYmFjayh1aW50CiAgICAgY2FsbGJhY2stPnBlcmZvcm1DYWxs
YmFja1dpdGhSZXR1cm5WYWx1ZShyZXN1bHQpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6ZWRp
dGluZ1JhbmdlQ2FsbGJhY2soY29uc3QgRWRpdGluZ1JhbmdlJiByYW5nZSwgQ2FsbGJhY2tJRCBj
YWxsYmFja0lEKQotewotICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCByYW5nZS5pc1ZhbGlk
KCkpOwotCi0gICAgYXV0byBjYWxsYmFjayA9IG1fY2FsbGJhY2tzLnRha2U8RWRpdGluZ1Jhbmdl
Q2FsbGJhY2s+KGNhbGxiYWNrSUQpOwotICAgIGlmICghY2FsbGJhY2spIHsKLSAgICAgICAgLy8g
RklYTUU6IExvZyBlcnJvciBvciBhc3NlcnQuCi0gICAgICAgIC8vIHRoaXMgY2FuIHZhbGlkbHkg
aGFwcGVuIGlmIGEgbG9hZCBpbnZhbGlkYXRlZCB0aGUgY2FsbGJhY2ssIHRob3VnaAotICAgICAg
ICByZXR1cm47Ci0gICAgfQotCi0gICAgY2FsbGJhY2stPnBlcmZvcm1DYWxsYmFja1dpdGhSZXR1
cm5WYWx1ZShyYW5nZSk7Ci19Ci0KIHZvaWQgV2ViUGFnZVByb3h5OjplZGl0b3JTdGF0ZUNoYW5n
ZWQoY29uc3QgRWRpdG9yU3RhdGUmIGVkaXRvclN0YXRlKQogewogICAgIHVwZGF0ZUVkaXRvclN0
YXRlKGVkaXRvclN0YXRlKTsKQEAgLTg3NDksMjYgKzg3MzUsMjQgQEAgdm9pZCBXZWJQYWdlUHJv
eHk6Omhhc01hcmtlZFRleHQoQ29tcGxldAogICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdl
czo6V2ViUGFnZTo6SGFzTWFya2VkVGV4dCgpLCBXVEZNb3ZlKGNhbGxiYWNrKSk7CiB9CiAKLXZv
aWQgV2ViUGFnZVByb3h5OjpnZXRNYXJrZWRSYW5nZUFzeW5jKFdURjo6RnVuY3Rpb248dm9pZCAo
RWRpdGluZ1JhbmdlLCBDYWxsYmFja0Jhc2U6OkVycm9yKT4mJiBjYWxsYmFja0Z1bmN0aW9uKQor
dm9pZCBXZWJQYWdlUHJveHk6OmdldE1hcmtlZFJhbmdlQXN5bmMoQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChjb25zdCBFZGl0aW5nUmFuZ2UmKT4mJiBjYWxsYmFja0Z1bmN0aW9uKQogewogICAgIGlm
ICghaGFzUnVubmluZ1Byb2Nlc3MoKSkgewotICAgICAgICBjYWxsYmFja0Z1bmN0aW9uKEVkaXRp
bmdSYW5nZSgpLCBDYWxsYmFja0Jhc2U6OkVycm9yOjpVbmtub3duKTsKKyAgICAgICAgY2FsbGJh
Y2tGdW5jdGlvbihFZGl0aW5nUmFuZ2UoKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAg
ICBhdXRvIGNhbGxiYWNrSUQgPSBtX2NhbGxiYWNrcy5wdXQoV1RGTW92ZShjYWxsYmFja0Z1bmN0
aW9uKSwgbV9wcm9jZXNzLT50aHJvdHRsZXIoKS5iYWNrZ3JvdW5kQWN0aXZpdHkoIldlYlBhZ2VQ
cm94eTo6Z2V0TWFya2VkUmFuZ2VBc3luYyJfcykpOwotICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2U6OkdldE1hcmtlZFJhbmdlQXN5bmMoY2FsbGJhY2tJRCkpOworICAgIHNlbmRXaXRoQXN5bmNS
ZXBseShNZXNzYWdlczo6V2ViUGFnZTo6R2V0TWFya2VkUmFuZ2VBc3luYygpLCBXVEZNb3ZlKGNh
bGxiYWNrRnVuY3Rpb24pKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OmdldFNlbGVjdGVkUmFu
Z2VBc3luYyhXVEY6OkZ1bmN0aW9uPHZvaWQgKEVkaXRpbmdSYW5nZSwgQ2FsbGJhY2tCYXNlOjpF
cnJvcik+JiYgY2FsbGJhY2tGdW5jdGlvbikKK3ZvaWQgV2ViUGFnZVByb3h5OjpnZXRTZWxlY3Rl
ZFJhbmdlQXN5bmMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBFZGl0aW5nUmFuZ2UmKT4m
JiBjYWxsYmFja0Z1bmN0aW9uKQogewogICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkgewot
ICAgICAgICBjYWxsYmFja0Z1bmN0aW9uKEVkaXRpbmdSYW5nZSgpLCBDYWxsYmFja0Jhc2U6OkVy
cm9yOjpVbmtub3duKTsKKyAgICAgICAgY2FsbGJhY2tGdW5jdGlvbihFZGl0aW5nUmFuZ2UoKSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBhdXRvIGNhbGxiYWNrSUQgPSBtX2NhbGxi
YWNrcy5wdXQoV1RGTW92ZShjYWxsYmFja0Z1bmN0aW9uKSwgbV9wcm9jZXNzLT50aHJvdHRsZXIo
KS5iYWNrZ3JvdW5kQWN0aXZpdHkoIldlYlBhZ2VQcm94eTo6Z2V0U2VsZWN0ZWRSYW5nZUFzeW5j
Il9zKSk7Ci0gICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6R2V0U2VsZWN0ZWRSYW5nZUFzeW5j
KGNhbGxiYWNrSUQpKTsKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6
OkdldFNlbGVjdGVkUmFuZ2VBc3luYygpLCBXVEZNb3ZlKGNhbGxiYWNrRnVuY3Rpb24pKTsKIH0K
IAogdm9pZCBXZWJQYWdlUHJveHk6OmNoYXJhY3RlckluZGV4Rm9yUG9pbnRBc3luYyhjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYgcG9pbnQsIFdURjo6RnVuY3Rpb248dm9pZCAodWludDY0X3QsIENh
bGxiYWNrQmFzZTo6RXJyb3IpPiYmIGNhbGxiYWNrRnVuY3Rpb24pCkluZGV4OiBTb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkocmV2aXNpb24gMjY0MDE2KQorKysgU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTM2Niw3ICsz
NjYsNiBAQCBlbnVtIGNsYXNzIFdlYkNvbnRlbnRNb2RlIDogdWludDhfdDsKIAogdHlwZWRlZiBH
ZW5lcmljQ2FsbGJhY2s8QVBJOjpEYXRhKj4gRGF0YUNhbGxiYWNrOwogdHlwZWRlZiBHZW5lcmlj
Q2FsbGJhY2s8dWludDY0X3Q+IFVuc2lnbmVkQ2FsbGJhY2s7Ci10eXBlZGVmIEdlbmVyaWNDYWxs
YmFjazxFZGl0aW5nUmFuZ2U+IEVkaXRpbmdSYW5nZUNhbGxiYWNrOwogdHlwZWRlZiBHZW5lcmlj
Q2FsbGJhY2s8Y29uc3QgU3RyaW5nJj4gU3RyaW5nQ2FsbGJhY2s7CiB0eXBlZGVmIEdlbmVyaWND
YWxsYmFjazxBUEk6OlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSosIE9wdGlvbmFsPFdlYkNvcmU6OkV4
Y2VwdGlvbkRldGFpbHM+PiBTY3JpcHRWYWx1ZUNhbGxiYWNrOwogdHlwZWRlZiBHZW5lcmljQ2Fs
bGJhY2s8Y29uc3QgV2ViQ29yZTo6Rm9udEF0dHJpYnV0ZXMmPiBGb250QXR0cmlidXRlc0NhbGxi
YWNrOwpAQCAtODc4LDggKzg3Nyw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGluc2VydERpY3RhdGVk
VGV4dEFzeW5jKGNvbnN0IFN0cmluZyYsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmVwbGFjZW1lbnRS
YW5nZSwgY29uc3QgVmVjdG9yPFdlYkNvcmU6OlRleHRBbHRlcm5hdGl2ZVdpdGhSYW5nZT4mLCBJ
bnNlcnRUZXh0T3B0aW9ucyYmKTsKIAogICAgIHZvaWQgaGFzTWFya2VkVGV4dChDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKLSAgICB2b2lkIGdldE1hcmtlZFJhbmdlQXN5bmMoV1RG
OjpGdW5jdGlvbjx2b2lkIChFZGl0aW5nUmFuZ2UsIENhbGxiYWNrQmFzZTo6RXJyb3IpPiYmKTsK
LSAgICB2b2lkIGdldFNlbGVjdGVkUmFuZ2VBc3luYyhXVEY6OkZ1bmN0aW9uPHZvaWQgKEVkaXRp
bmdSYW5nZSwgQ2FsbGJhY2tCYXNlOjpFcnJvcik+JiYpOworICAgIHZvaWQgZ2V0TWFya2VkUmFu
Z2VBc3luYyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEVkaXRpbmdSYW5nZSYpPiYmKTsK
KyAgICB2b2lkIGdldFNlbGVjdGVkUmFuZ2VBc3luYyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNv
bnN0IEVkaXRpbmdSYW5nZSYpPiYmKTsKICAgICB2b2lkIGNoYXJhY3RlckluZGV4Rm9yUG9pbnRB
c3luYyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIFdURjo6RnVuY3Rpb248dm9pZCAodWludDY0
X3QsIENhbGxiYWNrQmFzZTo6RXJyb3IpPiYmKTsKICAgICB2b2lkIGZpcnN0UmVjdEZvckNoYXJh
Y3RlclJhbmdlQXN5bmMoY29uc3QgRWRpdGluZ1JhbmdlJiwgV1RGOjpGdW5jdGlvbjx2b2lkIChj
b25zdCBXZWJDb3JlOjpJbnRSZWN0JiwgY29uc3QgRWRpdGluZ1JhbmdlJiwgQ2FsbGJhY2tCYXNl
OjpFcnJvcik+JiYpOwogICAgIHZvaWQgc2V0Q29tcG9zaXRpb25Bc3luYyhjb25zdCBTdHJpbmcm
IHRleHQsIGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpDb21wb3NpdGlvblVuZGVybGluZT4mLCBjb25z
dCBWZWN0b3I8V2ViQ29yZTo6Q29tcG9zaXRpb25IaWdobGlnaHQ+JiwgY29uc3QgRWRpdGluZ1Jh
bmdlJiBzZWxlY3Rpb25SYW5nZSwgY29uc3QgRWRpdGluZ1JhbmdlJiByZXBsYWNlbWVudFJhbmdl
KTsKQEAgLTIxMDYsNyArMjEwNSw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjb21wdXRlZFBhZ2Vz
Q2FsbGJhY2soY29uc3QgVmVjdG9yPFdlYkNvcmU6OkludFJlY3Q+JiwgZG91YmxlIHRvdGFsU2Nh
bGVGYWN0b3JGb3JQcmludGluZywgY29uc3QgV2ViQ29yZTo6RmxvYXRCb3hFeHRlbnQmIGNvbXB1
dGVkUGFnZU1hcmdpbiwgQ2FsbGJhY2tJRCk7CiAgICAgdm9pZCB2YWxpZGF0ZUNvbW1hbmRDYWxs
YmFjayhjb25zdCBTdHJpbmcmLCBib29sLCBpbnQsIENhbGxiYWNrSUQpOwogICAgIHZvaWQgdW5z
aWduZWRDYWxsYmFjayh1aW50NjRfdCwgQ2FsbGJhY2tJRCk7Ci0gICAgdm9pZCBlZGl0aW5nUmFu
Z2VDYWxsYmFjayhjb25zdCBFZGl0aW5nUmFuZ2UmLCBDYWxsYmFja0lEKTsKICNpZiBFTkFCTEUo
QVBQTElDQVRJT05fTUFOSUZFU1QpCiAgICAgdm9pZCBhcHBsaWNhdGlvbk1hbmlmZXN0Q2FsbGJh
Y2soY29uc3QgT3B0aW9uYWw8V2ViQ29yZTo6QXBwbGljYXRpb25NYW5pZmVzdD4mLCBDYWxsYmFj
a0lEKTsKICNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
Lm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5tZXNzYWdlcy5pbgkocmV2aXNpb24gMjY0MDE2KQorKysgU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCSh3b3JraW5nIGNvcHkpCkBAIC0xNjUs
NyArMTY1LDYgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsKICAgICBTY3JpcHRWYWx1ZUNh
bGxiYWNrKElQQzo6RGF0YVJlZmVyZW5jZSByZXN1bHREYXRhLCBPcHRpb25hbDxXZWJDb3JlOjpF
eGNlcHRpb25EZXRhaWxzPiBkZXRhaWxzLCBXZWJLaXQ6OkNhbGxiYWNrSUQgY2FsbGJhY2tJRCkK
ICAgICBDb21wdXRlZFBhZ2VzQ2FsbGJhY2soVmVjdG9yPFdlYkNvcmU6OkludFJlY3Q+IHBhZ2VS
ZWN0cywgZG91YmxlIHRvdGFsU2NhbGVGYWN0b3JGb3JQcmludGluZywgV2ViQ29yZTo6UmVjdEVk
Z2VzPGZsb2F0PiBjb21wdXRlZFBhZ2VNYXJnaW4sIFdlYktpdDo6Q2FsbGJhY2tJRCBjYWxsYmFj
a0lEKQogICAgIFZhbGlkYXRlQ29tbWFuZENhbGxiYWNrKFN0cmluZyBjb21tYW5kLCBib29sIGlz
RW5hYmxlZCwgaW50MzJfdCBzdGF0ZSwgV2ViS2l0OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQpCi0g
ICAgRWRpdGluZ1JhbmdlQ2FsbGJhY2soc3RydWN0IFdlYktpdDo6RWRpdGluZ1JhbmdlIHJhbmdl
LCBXZWJLaXQ6OkNhbGxiYWNrSUQgY2FsbGJhY2tJRCkKICAgICBVbnNpZ25lZENhbGxiYWNrKHVp
bnQ2NF90IHJlc3VsdCwgV2ViS2l0OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQpCiAgICAgUmVjdEZv
ckNoYXJhY3RlclJhbmdlQ2FsbGJhY2soV2ViQ29yZTo6SW50UmVjdCByZWN0LCBzdHJ1Y3QgV2Vi
S2l0OjpFZGl0aW5nUmFuZ2UgYWN0dWFsUmFuZ2UsIFdlYktpdDo6Q2FsbGJhY2tJRCBjYWxsYmFj
a0lEKQogI2lmIEVOQUJMRShBUFBMSUNBVElPTl9NQU5JRkVTVCkKSW5kZXg6IFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0NvY29hL1dLUmVsb2FkRnJhbWVFcnJvclJlY292ZXJ5QXR0ZW1wdGVyLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dLUmVsb2FkRnJh
bWVFcnJvclJlY292ZXJ5QXR0ZW1wdGVyLm1tCShyZXZpc2lvbiAyNjQwMTYpCisrKyBTb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XS1JlbG9hZEZyYW1lRXJyb3JSZWNvdmVyeUF0dGVtcHRl
ci5tbQkod29ya2luZyBjb3B5KQpAQCAtNTAsNiArNTAsNyBAQCAtIChpZClpbml0V2l0aFdlYlZp
ZXc6KFdLV2ViVmlldyAqKXdlYlZpCiAgICAgaWYgKCEoc2VsZiA9IFtzdXBlciBpbml0XSkpCiAg
ICAgICAgIHJldHVybiBuaWw7CiAKKyAgICBXVEZMb2dBbHdheXMoIkFMRVggV0tSZWxvYWRGcmFt
ZUVycm9yUmVjb3ZlcnlBdHRlbXB0ZXIgJXMiLCB1cmxTdHJpbmcudXRmOCgpLmRhdGEoKSk7CiAg
ICAgX3dlYlZpZXcgPSB3ZWJWaWV3OwogICAgIF9mcmFtZUhhbmRsZSA9IGZyYW1lSGFuZGxlOwog
ICAgIF91cmxTdHJpbmcgPSB1cmxTdHJpbmc7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9XZWJWaWV3SW1wbC5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Db2NvYS9XZWJWaWV3SW1wbC5tbQkocmV2aXNpb24gMjY0MDE2KQorKysgU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViVmlld0ltcGwubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ5
MjAsMTMgKzQ5MjAsOCBAQCB2b2lkIFdlYlZpZXdJbXBsOjpzZWxlY3RlZFJhbmdlV2l0aENvbXBs
CiAgICAgYXV0byBjb21wbGV0aW9uSGFuZGxlciA9IGFkb3B0TlMoW2NvbXBsZXRpb25IYW5kbGVy
UHRyIGNvcHldKTsKIAogICAgIExPRyhUZXh0SW5wdXQsICJzZWxlY3RlZFJhbmdlIik7Ci0gICAg
bV9wYWdlLT5nZXRTZWxlY3RlZFJhbmdlQXN5bmMoW2NvbXBsZXRpb25IYW5kbGVyXShjb25zdCBF
ZGl0aW5nUmFuZ2UmIGVkaXRpbmdSYW5nZVJlc3VsdCwgV2ViS2l0OjpDYWxsYmFja0Jhc2U6OkVy
cm9yIGVycm9yKSB7CisgICAgbV9wYWdlLT5nZXRTZWxlY3RlZFJhbmdlQXN5bmMoW2NvbXBsZXRp
b25IYW5kbGVyXShjb25zdCBFZGl0aW5nUmFuZ2UmIGVkaXRpbmdSYW5nZVJlc3VsdCkgewogICAg
ICAgICB2b2lkICheY29tcGxldGlvbkhhbmRsZXJCbG9jaykoTlNSYW5nZSkgPSAodm9pZCAoXiko
TlNSYW5nZSkpY29tcGxldGlvbkhhbmRsZXIuZ2V0KCk7Ci0gICAgICAgIGlmIChlcnJvciAhPSBX
ZWJLaXQ6OkNhbGxiYWNrQmFzZTo6RXJyb3I6Ok5vbmUpIHsKLSAgICAgICAgICAgIExPRyhUZXh0
SW5wdXQsICIgICAgLi4uc2VsZWN0ZWRSYW5nZSBmYWlsZWQuIik7Ci0gICAgICAgICAgICBjb21w
bGV0aW9uSGFuZGxlckJsb2NrKE5TTWFrZVJhbmdlKE5TTm90Rm91bmQsIDApKTsKLSAgICAgICAg
ICAgIHJldHVybjsKLSAgICAgICAgfQogICAgICAgICBOU1JhbmdlIHJlc3VsdCA9IGVkaXRpbmdS
YW5nZVJlc3VsdDsKICAgICAgICAgaWYgKHJlc3VsdC5sb2NhdGlvbiA9PSBOU05vdEZvdW5kKQog
ICAgICAgICAgICAgTE9HKFRleHRJbnB1dCwgIiAgICAtPiBzZWxlY3RlZFJhbmdlIHJldHVybmVk
IChOU05vdEZvdW5kLCAlbGx1KSIsIHJlc3VsdC5sZW5ndGgpOwpAQCAtNDk0MSwxMyArNDkzNiw4
IEBAIHZvaWQgV2ViVmlld0ltcGw6Om1hcmtlZFJhbmdlV2l0aENvbXBsZXQKICAgICBhdXRvIGNv
bXBsZXRpb25IYW5kbGVyID0gYWRvcHROUyhbY29tcGxldGlvbkhhbmRsZXJQdHIgY29weV0pOwog
CiAgICAgTE9HKFRleHRJbnB1dCwgIm1hcmtlZFJhbmdlIik7Ci0gICAgbV9wYWdlLT5nZXRNYXJr
ZWRSYW5nZUFzeW5jKFtjb21wbGV0aW9uSGFuZGxlcl0oY29uc3QgRWRpdGluZ1JhbmdlJiBlZGl0
aW5nUmFuZ2VSZXN1bHQsIFdlYktpdDo6Q2FsbGJhY2tCYXNlOjpFcnJvciBlcnJvcikgeworICAg
IG1fcGFnZS0+Z2V0TWFya2VkUmFuZ2VBc3luYyhbY29tcGxldGlvbkhhbmRsZXJdKGNvbnN0IEVk
aXRpbmdSYW5nZSYgZWRpdGluZ1JhbmdlUmVzdWx0KSB7CiAgICAgICAgIHZvaWQgKF5jb21wbGV0
aW9uSGFuZGxlckJsb2NrKShOU1JhbmdlKSA9ICh2b2lkICheKShOU1JhbmdlKSljb21wbGV0aW9u
SGFuZGxlci5nZXQoKTsKLSAgICAgICAgaWYgKGVycm9yICE9IFdlYktpdDo6Q2FsbGJhY2tCYXNl
OjpFcnJvcjo6Tm9uZSkgewotICAgICAgICAgICAgTE9HKFRleHRJbnB1dCwgIiAgICAuLi5tYXJr
ZWRSYW5nZSBmYWlsZWQuIik7Ci0gICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlckJsb2NrKE5T
TWFrZVJhbmdlKE5TTm90Rm91bmQsIDApKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAg
fQogICAgICAgICBOU1JhbmdlIHJlc3VsdCA9IGVkaXRpbmdSYW5nZVJlc3VsdDsKICAgICAgICAg
aWYgKHJlc3VsdC5sb2NhdGlvbiA9PSBOU05vdEZvdW5kKQogICAgICAgICAgICAgTE9HKFRleHRJ
bnB1dCwgIiAgICAtPiBtYXJrZWRSYW5nZSByZXR1cm5lZCAoTlNOb3RGb3VuZCwgJWxsdSkiLCBy
ZXN1bHQubGVuZ3RoKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCShyZXZpc2lvbiAyNjQwMTYpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTQxOCwxOCArNTQxOCwx
OCBAQCB2b2lkIFdlYlBhZ2U6Omhhc01hcmtlZFRleHQoQ29tcGxldGlvbkhhCiAgICAgY29tcGxl
dGlvbkhhbmRsZXIobV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5mb2N1c2VkT3JNYWluRnJhbWUo
KS5lZGl0b3IoKS5oYXNDb21wb3NpdGlvbigpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjpnZXRNYXJr
ZWRSYW5nZUFzeW5jKENhbGxiYWNrSUQgY2FsbGJhY2tJRCkKK3ZvaWQgV2ViUGFnZTo6Z2V0TWFy
a2VkUmFuZ2VBc3luYyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEVkaXRpbmdSYW5nZSYp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIEZyYW1lJiBmcmFtZSA9IG1fcGFnZS0+Zm9j
dXNDb250cm9sbGVyKCkuZm9jdXNlZE9yTWFpbkZyYW1lKCk7CiAgICAgYXV0byBlZGl0aW5nUmFu
Z2UgPSBFZGl0aW5nUmFuZ2U6OmZyb21SYW5nZShmcmFtZSwgZnJhbWUuZWRpdG9yKCkuY29tcG9z
aXRpb25SYW5nZSgpLmdldCgpKTsKLSAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkVk
aXRpbmdSYW5nZUNhbGxiYWNrKGVkaXRpbmdSYW5nZSwgY2FsbGJhY2tJRCkpOworICAgIGNvbXBs
ZXRpb25IYW5kbGVyKGVkaXRpbmdSYW5nZSk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6Z2V0U2VsZWN0
ZWRSYW5nZUFzeW5jKENhbGxiYWNrSUQgY2FsbGJhY2tJRCkKK3ZvaWQgV2ViUGFnZTo6Z2V0U2Vs
ZWN0ZWRSYW5nZUFzeW5jKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgRWRpdGluZ1Jhbmdl
Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgRnJhbWUmIGZyYW1lID0gbV9wYWdlLT5m
b2N1c0NvbnRyb2xsZXIoKS5mb2N1c2VkT3JNYWluRnJhbWUoKTsKICAgICBhdXRvIGVkaXRpbmdS
YW5nZSA9IEVkaXRpbmdSYW5nZTo6ZnJvbVJhbmdlKGZyYW1lLCBjcmVhdGVMaXZlUmFuZ2UoZnJh
bWUuc2VsZWN0aW9uKCkuc2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKSkuZ2V0KCkpOwot
ICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RWRpdGluZ1JhbmdlQ2FsbGJhY2soZWRp
dGluZ1JhbmdlLCBjYWxsYmFja0lEKSk7CisgICAgY29tcGxldGlvbkhhbmRsZXIoZWRpdGluZ1Jh
bmdlKTsKIH0KIAogdm9pZCBXZWJQYWdlOjpjaGFyYWN0ZXJJbmRleEZvclBvaW50QXN5bmMoY29u
c3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvaW50LCBDYWxsYmFja0lEIGNhbGxiYWNrSUQpCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCShyZXZpc2lvbiAy
NjQwMTYpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgJKHdv
cmtpbmcgY29weSkKQEAgLTg1MSw4ICs4NTEsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUZXh0
QXN5bmMoY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBpbnNlcnRUZXh0QXN5bmMoY29uc3QgU3Ry
aW5nJiB0ZXh0LCBjb25zdCBFZGl0aW5nUmFuZ2UmIHJlcGxhY2VtZW50UmFuZ2UsIEluc2VydFRl
eHRPcHRpb25zJiYpOwogICAgIHZvaWQgaGFzTWFya2VkVGV4dChDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGJvb2wpPiYmKTsKLSAgICB2b2lkIGdldE1hcmtlZFJhbmdlQXN5bmMoQ2FsbGJhY2tJRCk7
Ci0gICAgdm9pZCBnZXRTZWxlY3RlZFJhbmdlQXN5bmMoQ2FsbGJhY2tJRCk7CisgICAgdm9pZCBn
ZXRNYXJrZWRSYW5nZUFzeW5jKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgRWRpdGluZ1Jh
bmdlJik+JiYpOworICAgIHZvaWQgZ2V0U2VsZWN0ZWRSYW5nZUFzeW5jKENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoY29uc3QgRWRpdGluZ1JhbmdlJik+JiYpOwogICAgIHZvaWQgY2hhcmFjdGVySW5k
ZXhGb3JQb2ludEFzeW5jKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgQ2FsbGJhY2tJRCk7CiAg
ICAgdm9pZCBmaXJzdFJlY3RGb3JDaGFyYWN0ZXJSYW5nZUFzeW5jKGNvbnN0IEVkaXRpbmdSYW5n
ZSYsIENhbGxiYWNrSUQpOwogICAgIHZvaWQgc2V0Q29tcG9zaXRpb25Bc3luYyhjb25zdCBTdHJp
bmcmIHRleHQsIGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpDb21wb3NpdGlvblVuZGVybGluZT4mLCBj
b25zdCBWZWN0b3I8V2ViQ29yZTo6Q29tcG9zaXRpb25IaWdobGlnaHQ+JiwgY29uc3QgRWRpdGlu
Z1JhbmdlJiBzZWxlY3Rpb25SYW5nZSwgY29uc3QgRWRpdGluZ1JhbmdlJiByZXBsYWNlbWVudFJh
bmdlKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVz
c2FnZXMuaW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5tZXNzYWdlcy5pbgkocmV2aXNpb24gMjY0MDE2KQorKysgU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAt
NDUwLDggKzQ1MCw4IEBAIEdlbmVyYXRlU3ludGhldGljRWRpdGluZ0NvbW1hbmQoZW51bTp1aW4K
ICAgICBJbnNlcnREaWN0YXRlZFRleHRBc3luYyhTdHJpbmcgdGV4dCwgc3RydWN0IFdlYktpdDo6
RWRpdGluZ1JhbmdlIHJlcGxhY2VtZW50UmFuZ2UsIFZlY3RvcjxXZWJDb3JlOjpEaWN0YXRpb25B
bHRlcm5hdGl2ZT4gZGljdGF0aW9uQWx0ZXJuYXRpdmVzLCBzdHJ1Y3QgV2ViS2l0OjpJbnNlcnRU
ZXh0T3B0aW9ucyBvcHRpb25zKQogCiAgICAgSGFzTWFya2VkVGV4dCgpIC0+IChib29sIGhhc01h
cmtlZFRleHQpIEFzeW5jCi0gICAgR2V0TWFya2VkUmFuZ2VBc3luYyhXZWJLaXQ6OkNhbGxiYWNr
SUQgY2FsbGJhY2tJRCkKLSAgICBHZXRTZWxlY3RlZFJhbmdlQXN5bmMoV2ViS2l0OjpDYWxsYmFj
a0lEIGNhbGxiYWNrSUQpCisgICAgR2V0TWFya2VkUmFuZ2VBc3luYygpIC0+IChzdHJ1Y3QgV2Vi
S2l0OjpFZGl0aW5nUmFuZ2UgcmFuZ2UpIEFzeW5jCisgICAgR2V0U2VsZWN0ZWRSYW5nZUFzeW5j
KCkgLT4gKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSkgQXN5bmMKICAgICBDaGFy
YWN0ZXJJbmRleEZvclBvaW50QXN5bmMoV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIFdlYktpdDo6
Q2FsbGJhY2tJRCBjYWxsYmFja0lEKTsKICAgICBGaXJzdFJlY3RGb3JDaGFyYWN0ZXJSYW5nZUFz
eW5jKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSwgV2ViS2l0OjpDYWxsYmFja0lE
IGNhbGxiYWNrSUQpOwogICAgIFNldENvbXBvc2l0aW9uQXN5bmMoU3RyaW5nIHRleHQsIFZlY3Rv
cjxXZWJDb3JlOjpDb21wb3NpdGlvblVuZGVybGluZT4gdW5kZXJsaW5lcywgVmVjdG9yPFdlYkNv
cmU6OkNvbXBvc2l0aW9uSGlnaGxpZ2h0PiBoaWdobGlnaHRzLCBzdHJ1Y3QgV2ViS2l0OjpFZGl0
aW5nUmFuZ2Ugc2VsZWN0aW9uUmFuZ2UsIHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByZXBs
YWNlbWVudFJhbmdlKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403729</attachid>
            <date>2020-07-07 14:49:48 -0700</date>
            <delta_ts>2020-07-07 16:30:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214056-20200707154947.patch</filename>
            <type>text/plain</type>
            <size>13193</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjQwMzkpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDIwLTA3LTA3ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVXNlIHNlbmRXaXRo
QXN5bmNSZXBseSBpbnN0ZWFkIG9mIEVkaXRpbmdSYW5nZUNhbGxiYWNrCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQwNTYKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3Iu
CisKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV0tSZWxvYWRGcmFtZUVycm9yUmVjb3ZlcnlB
dHRlbXB0ZXIubW06CisgICAgICAgICgtW1dLUmVsb2FkRnJhbWVFcnJvclJlY292ZXJ5QXR0ZW1w
dGVyIGluaXRXaXRoV2ViVmlldzpmcmFtZUhhbmRsZTp1cmxTdHJpbmc6XSk6CisgICAgICAgICog
VUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3
SW1wbDo6c2VsZWN0ZWRSYW5nZVdpdGhDb21wbGV0aW9uSGFuZGxlcik6CisgICAgICAgIChXZWJL
aXQ6OldlYlZpZXdJbXBsOjptYXJrZWRSYW5nZVdpdGhDb21wbGV0aW9uSGFuZGxlcik6CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2VQcm94eTo6Z2V0TWFya2VkUmFuZ2VBc3luYyk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQ
cm94eTo6Z2V0U2VsZWN0ZWRSYW5nZUFzeW5jKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVBy
b3h5OjplZGl0aW5nUmFuZ2VDYWxsYmFjayk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2Fn
ZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKKwogMjAyMC0wNy0wNyAg
U2lodWkgTGl1ICA8c2lodWlfbGl1QGFwcGUuY29tPgogCiAgICAgICAgIE5ldHdvcmsgcHJvY2Vz
cyBjcmFzaGVzIGluIFdlYktpdDo6U3RvcmFnZU1hbmFnZXJTZXQ6OmRlbGV0ZVNlc3Npb25TdG9y
YWdlRm9yT3JpZ2lucwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwCShyZXZpc2lvbiAyNjQwMTYpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MTYxLDIwICs3MTYxLDYgQEAgdm9pZCBXZWJQ
YWdlUHJveHk6OnVuc2lnbmVkQ2FsbGJhY2sodWludAogICAgIGNhbGxiYWNrLT5wZXJmb3JtQ2Fs
bGJhY2tXaXRoUmV0dXJuVmFsdWUocmVzdWx0KTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OmVk
aXRpbmdSYW5nZUNhbGxiYWNrKGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIENhbGxiYWNrSUQg
Y2FsbGJhY2tJRCkKLXsKLSAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgcmFuZ2UuaXNWYWxp
ZCgpKTsKLQotICAgIGF1dG8gY2FsbGJhY2sgPSBtX2NhbGxiYWNrcy50YWtlPEVkaXRpbmdSYW5n
ZUNhbGxiYWNrPihjYWxsYmFja0lEKTsKLSAgICBpZiAoIWNhbGxiYWNrKSB7Ci0gICAgICAgIC8v
IEZJWE1FOiBMb2cgZXJyb3Igb3IgYXNzZXJ0LgotICAgICAgICAvLyB0aGlzIGNhbiB2YWxpZGx5
IGhhcHBlbiBpZiBhIGxvYWQgaW52YWxpZGF0ZWQgdGhlIGNhbGxiYWNrLCB0aG91Z2gKLSAgICAg
ICAgcmV0dXJuOwotICAgIH0KLQotICAgIGNhbGxiYWNrLT5wZXJmb3JtQ2FsbGJhY2tXaXRoUmV0
dXJuVmFsdWUocmFuZ2UpOwotfQotCiB2b2lkIFdlYlBhZ2VQcm94eTo6ZWRpdG9yU3RhdGVDaGFu
Z2VkKGNvbnN0IEVkaXRvclN0YXRlJiBlZGl0b3JTdGF0ZSkKIHsKICAgICB1cGRhdGVFZGl0b3JT
dGF0ZShlZGl0b3JTdGF0ZSk7CkBAIC04NzQ5LDI2ICs4NzM1LDI0IEBAIHZvaWQgV2ViUGFnZVBy
b3h5OjpoYXNNYXJrZWRUZXh0KENvbXBsZXQKICAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2Fn
ZXM6OldlYlBhZ2U6Okhhc01hcmtlZFRleHQoKSwgV1RGTW92ZShjYWxsYmFjaykpOwogfQogCi12
b2lkIFdlYlBhZ2VQcm94eTo6Z2V0TWFya2VkUmFuZ2VBc3luYyhXVEY6OkZ1bmN0aW9uPHZvaWQg
KEVkaXRpbmdSYW5nZSwgQ2FsbGJhY2tCYXNlOjpFcnJvcik+JiYgY2FsbGJhY2tGdW5jdGlvbikK
K3ZvaWQgV2ViUGFnZVByb3h5OjpnZXRNYXJrZWRSYW5nZUFzeW5jKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgRWRpdGluZ1JhbmdlJik+JiYgY2FsbGJhY2tGdW5jdGlvbikKIHsKICAgICBp
ZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpIHsKLSAgICAgICAgY2FsbGJhY2tGdW5jdGlvbihFZGl0
aW5nUmFuZ2UoKSwgQ2FsbGJhY2tCYXNlOjpFcnJvcjo6VW5rbm93bik7CisgICAgICAgIGNhbGxi
YWNrRnVuY3Rpb24oRWRpdGluZ1JhbmdlKCkpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgYXV0byBjYWxsYmFja0lEID0gbV9jYWxsYmFja3MucHV0KFdURk1vdmUoY2FsbGJhY2tGdW5j
dGlvbiksIG1fcHJvY2Vzcy0+dGhyb3R0bGVyKCkuYmFja2dyb3VuZEFjdGl2aXR5KCJXZWJQYWdl
UHJveHk6OmdldE1hcmtlZFJhbmdlQXN5bmMiX3MpKTsKLSAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlOjpHZXRNYXJrZWRSYW5nZUFzeW5jKGNhbGxiYWNrSUQpKTsKKyAgICBzZW5kV2l0aEFzeW5j
UmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OkdldE1hcmtlZFJhbmdlQXN5bmMoKSwgV1RGTW92ZShj
YWxsYmFja0Z1bmN0aW9uKSk7CiB9CiAKLXZvaWQgV2ViUGFnZVByb3h5OjpnZXRTZWxlY3RlZFJh
bmdlQXN5bmMoV1RGOjpGdW5jdGlvbjx2b2lkIChFZGl0aW5nUmFuZ2UsIENhbGxiYWNrQmFzZTo6
RXJyb3IpPiYmIGNhbGxiYWNrRnVuY3Rpb24pCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0U2VsZWN0
ZWRSYW5nZUFzeW5jKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgRWRpdGluZ1JhbmdlJik+
JiYgY2FsbGJhY2tGdW5jdGlvbikKIHsKICAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpIHsK
LSAgICAgICAgY2FsbGJhY2tGdW5jdGlvbihFZGl0aW5nUmFuZ2UoKSwgQ2FsbGJhY2tCYXNlOjpF
cnJvcjo6VW5rbm93bik7CisgICAgICAgIGNhbGxiYWNrRnVuY3Rpb24oRWRpdGluZ1JhbmdlKCkp
OwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgYXV0byBjYWxsYmFja0lEID0gbV9jYWxs
YmFja3MucHV0KFdURk1vdmUoY2FsbGJhY2tGdW5jdGlvbiksIG1fcHJvY2Vzcy0+dGhyb3R0bGVy
KCkuYmFja2dyb3VuZEFjdGl2aXR5KCJXZWJQYWdlUHJveHk6OmdldFNlbGVjdGVkUmFuZ2VBc3lu
YyJfcykpOwotICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkdldFNlbGVjdGVkUmFuZ2VBc3lu
YyhjYWxsYmFja0lEKSk7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdl
OjpHZXRTZWxlY3RlZFJhbmdlQXN5bmMoKSwgV1RGTW92ZShjYWxsYmFja0Z1bmN0aW9uKSk7CiB9
CiAKIHZvaWQgV2ViUGFnZVByb3h5OjpjaGFyYWN0ZXJJbmRleEZvclBvaW50QXN5bmMoY29uc3Qg
V2ViQ29yZTo6SW50UG9pbnQmIHBvaW50LCBXVEY6OkZ1bmN0aW9uPHZvaWQgKHVpbnQ2NF90LCBD
YWxsYmFja0Jhc2U6OkVycm9yKT4mJiBjYWxsYmFja0Z1bmN0aW9uKQpJbmRleDogU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJKHJldmlzaW9uIDI2NDAxNikKKysrIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNjYsNyAr
MzY2LDYgQEAgZW51bSBjbGFzcyBXZWJDb250ZW50TW9kZSA6IHVpbnQ4X3Q7CiAKIHR5cGVkZWYg
R2VuZXJpY0NhbGxiYWNrPEFQSTo6RGF0YSo+IERhdGFDYWxsYmFjazsKIHR5cGVkZWYgR2VuZXJp
Y0NhbGxiYWNrPHVpbnQ2NF90PiBVbnNpZ25lZENhbGxiYWNrOwotdHlwZWRlZiBHZW5lcmljQ2Fs
bGJhY2s8RWRpdGluZ1JhbmdlPiBFZGl0aW5nUmFuZ2VDYWxsYmFjazsKIHR5cGVkZWYgR2VuZXJp
Y0NhbGxiYWNrPGNvbnN0IFN0cmluZyY+IFN0cmluZ0NhbGxiYWNrOwogdHlwZWRlZiBHZW5lcmlj
Q2FsbGJhY2s8QVBJOjpTZXJpYWxpemVkU2NyaXB0VmFsdWUqLCBPcHRpb25hbDxXZWJDb3JlOjpF
eGNlcHRpb25EZXRhaWxzPj4gU2NyaXB0VmFsdWVDYWxsYmFjazsKIHR5cGVkZWYgR2VuZXJpY0Nh
bGxiYWNrPGNvbnN0IFdlYkNvcmU6OkZvbnRBdHRyaWJ1dGVzJj4gRm9udEF0dHJpYnV0ZXNDYWxs
YmFjazsKQEAgLTg3OCw4ICs4NzcsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBpbnNlcnREaWN0YXRl
ZFRleHRBc3luYyhjb25zdCBTdHJpbmcmLCBjb25zdCBFZGl0aW5nUmFuZ2UmIHJlcGxhY2VtZW50
UmFuZ2UsIGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpUZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2U+Jiwg
SW5zZXJ0VGV4dE9wdGlvbnMmJik7CiAKICAgICB2b2lkIGhhc01hcmtlZFRleHQoQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChib29sKT4mJik7Ci0gICAgdm9pZCBnZXRNYXJrZWRSYW5nZUFzeW5jKFdU
Rjo6RnVuY3Rpb248dm9pZCAoRWRpdGluZ1JhbmdlLCBDYWxsYmFja0Jhc2U6OkVycm9yKT4mJik7
Ci0gICAgdm9pZCBnZXRTZWxlY3RlZFJhbmdlQXN5bmMoV1RGOjpGdW5jdGlvbjx2b2lkIChFZGl0
aW5nUmFuZ2UsIENhbGxiYWNrQmFzZTo6RXJyb3IpPiYmKTsKKyAgICB2b2lkIGdldE1hcmtlZFJh
bmdlQXN5bmMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBFZGl0aW5nUmFuZ2UmKT4mJik7
CisgICAgdm9pZCBnZXRTZWxlY3RlZFJhbmdlQXN5bmMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChj
b25zdCBFZGl0aW5nUmFuZ2UmKT4mJik7CiAgICAgdm9pZCBjaGFyYWN0ZXJJbmRleEZvclBvaW50
QXN5bmMoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBXVEY6OkZ1bmN0aW9uPHZvaWQgKHVpbnQ2
NF90LCBDYWxsYmFja0Jhc2U6OkVycm9yKT4mJik7CiAgICAgdm9pZCBmaXJzdFJlY3RGb3JDaGFy
YWN0ZXJSYW5nZUFzeW5jKGNvbnN0IEVkaXRpbmdSYW5nZSYsIFdURjo6RnVuY3Rpb248dm9pZCAo
Y29uc3QgV2ViQ29yZTo6SW50UmVjdCYsIGNvbnN0IEVkaXRpbmdSYW5nZSYsIENhbGxiYWNrQmFz
ZTo6RXJyb3IpPiYmKTsKICAgICB2b2lkIHNldENvbXBvc2l0aW9uQXN5bmMoY29uc3QgU3RyaW5n
JiB0ZXh0LCBjb25zdCBWZWN0b3I8V2ViQ29yZTo6Q29tcG9zaXRpb25VbmRlcmxpbmU+JiwgY29u
c3QgVmVjdG9yPFdlYkNvcmU6OkNvbXBvc2l0aW9uSGlnaGxpZ2h0PiYsIGNvbnN0IEVkaXRpbmdS
YW5nZSYgc2VsZWN0aW9uUmFuZ2UsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmVwbGFjZW1lbnRSYW5n
ZSk7CkBAIC0yMTA2LDcgKzIxMDUsNiBAQCBwcml2YXRlOgogICAgIHZvaWQgY29tcHV0ZWRQYWdl
c0NhbGxiYWNrKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpJbnRSZWN0PiYsIGRvdWJsZSB0b3RhbFNj
YWxlRmFjdG9yRm9yUHJpbnRpbmcsIGNvbnN0IFdlYkNvcmU6OkZsb2F0Qm94RXh0ZW50JiBjb21w
dXRlZFBhZ2VNYXJnaW4sIENhbGxiYWNrSUQpOwogICAgIHZvaWQgdmFsaWRhdGVDb21tYW5kQ2Fs
bGJhY2soY29uc3QgU3RyaW5nJiwgYm9vbCwgaW50LCBDYWxsYmFja0lEKTsKICAgICB2b2lkIHVu
c2lnbmVkQ2FsbGJhY2sodWludDY0X3QsIENhbGxiYWNrSUQpOwotICAgIHZvaWQgZWRpdGluZ1Jh
bmdlQ2FsbGJhY2soY29uc3QgRWRpdGluZ1JhbmdlJiwgQ2FsbGJhY2tJRCk7CiAjaWYgRU5BQkxF
KEFQUExJQ0FUSU9OX01BTklGRVNUKQogICAgIHZvaWQgYXBwbGljYXRpb25NYW5pZmVzdENhbGxi
YWNrKGNvbnN0IE9wdGlvbmFsPFdlYkNvcmU6OkFwcGxpY2F0aW9uTWFuaWZlc3Q+JiwgQ2FsbGJh
Y2tJRCk7CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5tZXNzYWdlcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkubWVzc2FnZXMuaW4JKHJldmlzaW9uIDI2NDAxNikKKysrIFNvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMTY1
LDcgKzE2NSw2IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAgICAgU2NyaXB0VmFsdWVD
YWxsYmFjayhJUEM6OkRhdGFSZWZlcmVuY2UgcmVzdWx0RGF0YSwgT3B0aW9uYWw8V2ViQ29yZTo6
RXhjZXB0aW9uRGV0YWlscz4gZGV0YWlscywgV2ViS2l0OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQp
CiAgICAgQ29tcHV0ZWRQYWdlc0NhbGxiYWNrKFZlY3RvcjxXZWJDb3JlOjpJbnRSZWN0PiBwYWdl
UmVjdHMsIGRvdWJsZSB0b3RhbFNjYWxlRmFjdG9yRm9yUHJpbnRpbmcsIFdlYkNvcmU6OlJlY3RF
ZGdlczxmbG9hdD4gY29tcHV0ZWRQYWdlTWFyZ2luLCBXZWJLaXQ6OkNhbGxiYWNrSUQgY2FsbGJh
Y2tJRCkKICAgICBWYWxpZGF0ZUNvbW1hbmRDYWxsYmFjayhTdHJpbmcgY29tbWFuZCwgYm9vbCBp
c0VuYWJsZWQsIGludDMyX3Qgc3RhdGUsIFdlYktpdDo6Q2FsbGJhY2tJRCBjYWxsYmFja0lEKQot
ICAgIEVkaXRpbmdSYW5nZUNhbGxiYWNrKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5n
ZSwgV2ViS2l0OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQpCiAgICAgVW5zaWduZWRDYWxsYmFjayh1
aW50NjRfdCByZXN1bHQsIFdlYktpdDo6Q2FsbGJhY2tJRCBjYWxsYmFja0lEKQogICAgIFJlY3RG
b3JDaGFyYWN0ZXJSYW5nZUNhbGxiYWNrKFdlYkNvcmU6OkludFJlY3QgcmVjdCwgc3RydWN0IFdl
YktpdDo6RWRpdGluZ1JhbmdlIGFjdHVhbFJhbmdlLCBXZWJLaXQ6OkNhbGxiYWNrSUQgY2FsbGJh
Y2tJRCkKICNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCkluZGV4OiBTb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3SW1wbC5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3SW1wbC5tbQkocmV2aXNpb24gMjY0MDE2KQor
KysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViVmlld0ltcGwubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTQ5MjAsMTMgKzQ5MjAsOCBAQCB2b2lkIFdlYlZpZXdJbXBsOjpzZWxlY3RlZFJh
bmdlV2l0aENvbXBsCiAgICAgYXV0byBjb21wbGV0aW9uSGFuZGxlciA9IGFkb3B0TlMoW2NvbXBs
ZXRpb25IYW5kbGVyUHRyIGNvcHldKTsKIAogICAgIExPRyhUZXh0SW5wdXQsICJzZWxlY3RlZFJh
bmdlIik7Ci0gICAgbV9wYWdlLT5nZXRTZWxlY3RlZFJhbmdlQXN5bmMoW2NvbXBsZXRpb25IYW5k
bGVyXShjb25zdCBFZGl0aW5nUmFuZ2UmIGVkaXRpbmdSYW5nZVJlc3VsdCwgV2ViS2l0OjpDYWxs
YmFja0Jhc2U6OkVycm9yIGVycm9yKSB7CisgICAgbV9wYWdlLT5nZXRTZWxlY3RlZFJhbmdlQXN5
bmMoW2NvbXBsZXRpb25IYW5kbGVyXShjb25zdCBFZGl0aW5nUmFuZ2UmIGVkaXRpbmdSYW5nZVJl
c3VsdCkgewogICAgICAgICB2b2lkICheY29tcGxldGlvbkhhbmRsZXJCbG9jaykoTlNSYW5nZSkg
PSAodm9pZCAoXikoTlNSYW5nZSkpY29tcGxldGlvbkhhbmRsZXIuZ2V0KCk7Ci0gICAgICAgIGlm
IChlcnJvciAhPSBXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6RXJyb3I6Ok5vbmUpIHsKLSAgICAgICAg
ICAgIExPRyhUZXh0SW5wdXQsICIgICAgLi4uc2VsZWN0ZWRSYW5nZSBmYWlsZWQuIik7Ci0gICAg
ICAgICAgICBjb21wbGV0aW9uSGFuZGxlckJsb2NrKE5TTWFrZVJhbmdlKE5TTm90Rm91bmQsIDAp
KTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQogICAgICAgICBOU1JhbmdlIHJlc3Vs
dCA9IGVkaXRpbmdSYW5nZVJlc3VsdDsKICAgICAgICAgaWYgKHJlc3VsdC5sb2NhdGlvbiA9PSBO
U05vdEZvdW5kKQogICAgICAgICAgICAgTE9HKFRleHRJbnB1dCwgIiAgICAtPiBzZWxlY3RlZFJh
bmdlIHJldHVybmVkIChOU05vdEZvdW5kLCAlbGx1KSIsIHJlc3VsdC5sZW5ndGgpOwpAQCAtNDk0
MSwxMyArNDkzNiw4IEBAIHZvaWQgV2ViVmlld0ltcGw6Om1hcmtlZFJhbmdlV2l0aENvbXBsZXQK
ICAgICBhdXRvIGNvbXBsZXRpb25IYW5kbGVyID0gYWRvcHROUyhbY29tcGxldGlvbkhhbmRsZXJQ
dHIgY29weV0pOwogCiAgICAgTE9HKFRleHRJbnB1dCwgIm1hcmtlZFJhbmdlIik7Ci0gICAgbV9w
YWdlLT5nZXRNYXJrZWRSYW5nZUFzeW5jKFtjb21wbGV0aW9uSGFuZGxlcl0oY29uc3QgRWRpdGlu
Z1JhbmdlJiBlZGl0aW5nUmFuZ2VSZXN1bHQsIFdlYktpdDo6Q2FsbGJhY2tCYXNlOjpFcnJvciBl
cnJvcikgeworICAgIG1fcGFnZS0+Z2V0TWFya2VkUmFuZ2VBc3luYyhbY29tcGxldGlvbkhhbmRs
ZXJdKGNvbnN0IEVkaXRpbmdSYW5nZSYgZWRpdGluZ1JhbmdlUmVzdWx0KSB7CiAgICAgICAgIHZv
aWQgKF5jb21wbGV0aW9uSGFuZGxlckJsb2NrKShOU1JhbmdlKSA9ICh2b2lkICheKShOU1Jhbmdl
KSljb21wbGV0aW9uSGFuZGxlci5nZXQoKTsKLSAgICAgICAgaWYgKGVycm9yICE9IFdlYktpdDo6
Q2FsbGJhY2tCYXNlOjpFcnJvcjo6Tm9uZSkgewotICAgICAgICAgICAgTE9HKFRleHRJbnB1dCwg
IiAgICAuLi5tYXJrZWRSYW5nZSBmYWlsZWQuIik7Ci0gICAgICAgICAgICBjb21wbGV0aW9uSGFu
ZGxlckJsb2NrKE5TTWFrZVJhbmdlKE5TTm90Rm91bmQsIDApKTsKLSAgICAgICAgICAgIHJldHVy
bjsKLSAgICAgICAgfQogICAgICAgICBOU1JhbmdlIHJlc3VsdCA9IGVkaXRpbmdSYW5nZVJlc3Vs
dDsKICAgICAgICAgaWYgKHJlc3VsdC5sb2NhdGlvbiA9PSBOU05vdEZvdW5kKQogICAgICAgICAg
ICAgTE9HKFRleHRJbnB1dCwgIiAgICAtPiBtYXJrZWRSYW5nZSByZXR1cm5lZCAoTlNOb3RGb3Vu
ZCwgJWxsdSkiLCByZXN1bHQubGVuZ3RoKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCShyZXZpc2lvbiAyNjQwMTYpCisrKyBTb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTQx
OCwxOCArNTQxOCwxOCBAQCB2b2lkIFdlYlBhZ2U6Omhhc01hcmtlZFRleHQoQ29tcGxldGlvbkhh
CiAgICAgY29tcGxldGlvbkhhbmRsZXIobV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5mb2N1c2Vk
T3JNYWluRnJhbWUoKS5lZGl0b3IoKS5oYXNDb21wb3NpdGlvbigpKTsKIH0KIAotdm9pZCBXZWJQ
YWdlOjpnZXRNYXJrZWRSYW5nZUFzeW5jKENhbGxiYWNrSUQgY2FsbGJhY2tJRCkKK3ZvaWQgV2Vi
UGFnZTo6Z2V0TWFya2VkUmFuZ2VBc3luYyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEVk
aXRpbmdSYW5nZSYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIEZyYW1lJiBmcmFtZSA9
IG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuZm9jdXNlZE9yTWFpbkZyYW1lKCk7CiAgICAgYXV0
byBlZGl0aW5nUmFuZ2UgPSBFZGl0aW5nUmFuZ2U6OmZyb21SYW5nZShmcmFtZSwgZnJhbWUuZWRp
dG9yKCkuY29tcG9zaXRpb25SYW5nZSgpLmdldCgpKTsKLSAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkVkaXRpbmdSYW5nZUNhbGxiYWNrKGVkaXRpbmdSYW5nZSwgY2FsbGJhY2tJRCkp
OworICAgIGNvbXBsZXRpb25IYW5kbGVyKGVkaXRpbmdSYW5nZSk7CiB9CiAKLXZvaWQgV2ViUGFn
ZTo6Z2V0U2VsZWN0ZWRSYW5nZUFzeW5jKENhbGxiYWNrSUQgY2FsbGJhY2tJRCkKK3ZvaWQgV2Vi
UGFnZTo6Z2V0U2VsZWN0ZWRSYW5nZUFzeW5jKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3Qg
RWRpdGluZ1JhbmdlJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgRnJhbWUmIGZyYW1l
ID0gbV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5mb2N1c2VkT3JNYWluRnJhbWUoKTsKICAgICBh
dXRvIGVkaXRpbmdSYW5nZSA9IEVkaXRpbmdSYW5nZTo6ZnJvbVJhbmdlKGZyYW1lLCBjcmVhdGVM
aXZlUmFuZ2UoZnJhbWUuc2VsZWN0aW9uKCkuc2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2Uo
KSkuZ2V0KCkpOwotICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RWRpdGluZ1Jhbmdl
Q2FsbGJhY2soZWRpdGluZ1JhbmdlLCBjYWxsYmFja0lEKSk7CisgICAgY29tcGxldGlvbkhhbmRs
ZXIoZWRpdGluZ1JhbmdlKTsKIH0KIAogdm9pZCBXZWJQYWdlOjpjaGFyYWN0ZXJJbmRleEZvclBv
aW50QXN5bmMoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvaW50LCBDYWxsYmFja0lEIGNhbGxi
YWNrSUQpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5o
CShyZXZpc2lvbiAyNjQwMTYpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmgJKHdvcmtpbmcgY29weSkKQEAgLTg1MSw4ICs4NTEsOCBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzZXRUZXh0QXN5bmMoY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBpbnNlcnRUZXh0QXN5
bmMoY29uc3QgU3RyaW5nJiB0ZXh0LCBjb25zdCBFZGl0aW5nUmFuZ2UmIHJlcGxhY2VtZW50UmFu
Z2UsIEluc2VydFRleHRPcHRpb25zJiYpOwogICAgIHZvaWQgaGFzTWFya2VkVGV4dChDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKLSAgICB2b2lkIGdldE1hcmtlZFJhbmdlQXN5bmMo
Q2FsbGJhY2tJRCk7Ci0gICAgdm9pZCBnZXRTZWxlY3RlZFJhbmdlQXN5bmMoQ2FsbGJhY2tJRCk7
CisgICAgdm9pZCBnZXRNYXJrZWRSYW5nZUFzeW5jKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29u
c3QgRWRpdGluZ1JhbmdlJik+JiYpOworICAgIHZvaWQgZ2V0U2VsZWN0ZWRSYW5nZUFzeW5jKENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgRWRpdGluZ1JhbmdlJik+JiYpOwogICAgIHZvaWQg
Y2hhcmFjdGVySW5kZXhGb3JQb2ludEFzeW5jKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgQ2Fs
bGJhY2tJRCk7CiAgICAgdm9pZCBmaXJzdFJlY3RGb3JDaGFyYWN0ZXJSYW5nZUFzeW5jKGNvbnN0
IEVkaXRpbmdSYW5nZSYsIENhbGxiYWNrSUQpOwogICAgIHZvaWQgc2V0Q29tcG9zaXRpb25Bc3lu
Yyhjb25zdCBTdHJpbmcmIHRleHQsIGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpDb21wb3NpdGlvblVu
ZGVybGluZT4mLCBjb25zdCBWZWN0b3I8V2ViQ29yZTo6Q29tcG9zaXRpb25IaWdobGlnaHQ+Jiwg
Y29uc3QgRWRpdGluZ1JhbmdlJiBzZWxlY3Rpb25SYW5nZSwgY29uc3QgRWRpdGluZ1JhbmdlJiBy
ZXBsYWNlbWVudFJhbmdlKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UubWVzc2FnZXMuaW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgkocmV2aXNpb24gMjY0MDE2KQorKysgU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgkod29ya2lu
ZyBjb3B5KQpAQCAtNDUwLDggKzQ1MCw4IEBAIEdlbmVyYXRlU3ludGhldGljRWRpdGluZ0NvbW1h
bmQoZW51bTp1aW4KICAgICBJbnNlcnREaWN0YXRlZFRleHRBc3luYyhTdHJpbmcgdGV4dCwgc3Ry
dWN0IFdlYktpdDo6RWRpdGluZ1JhbmdlIHJlcGxhY2VtZW50UmFuZ2UsIFZlY3RvcjxXZWJDb3Jl
OjpEaWN0YXRpb25BbHRlcm5hdGl2ZT4gZGljdGF0aW9uQWx0ZXJuYXRpdmVzLCBzdHJ1Y3QgV2Vi
S2l0OjpJbnNlcnRUZXh0T3B0aW9ucyBvcHRpb25zKQogCiAgICAgSGFzTWFya2VkVGV4dCgpIC0+
IChib29sIGhhc01hcmtlZFRleHQpIEFzeW5jCi0gICAgR2V0TWFya2VkUmFuZ2VBc3luYyhXZWJL
aXQ6OkNhbGxiYWNrSUQgY2FsbGJhY2tJRCkKLSAgICBHZXRTZWxlY3RlZFJhbmdlQXN5bmMoV2Vi
S2l0OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQpCisgICAgR2V0TWFya2VkUmFuZ2VBc3luYygpIC0+
IChzdHJ1Y3QgV2ViS2l0OjpFZGl0aW5nUmFuZ2UgcmFuZ2UpIEFzeW5jCisgICAgR2V0U2VsZWN0
ZWRSYW5nZUFzeW5jKCkgLT4gKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSkgQXN5
bmMKICAgICBDaGFyYWN0ZXJJbmRleEZvclBvaW50QXN5bmMoV2ViQ29yZTo6SW50UG9pbnQgcG9p
bnQsIFdlYktpdDo6Q2FsbGJhY2tJRCBjYWxsYmFja0lEKTsKICAgICBGaXJzdFJlY3RGb3JDaGFy
YWN0ZXJSYW5nZUFzeW5jKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSwgV2ViS2l0
OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQpOwogICAgIFNldENvbXBvc2l0aW9uQXN5bmMoU3RyaW5n
IHRleHQsIFZlY3RvcjxXZWJDb3JlOjpDb21wb3NpdGlvblVuZGVybGluZT4gdW5kZXJsaW5lcywg
VmVjdG9yPFdlYkNvcmU6OkNvbXBvc2l0aW9uSGlnaGxpZ2h0PiBoaWdobGlnaHRzLCBzdHJ1Y3Qg
V2ViS2l0OjpFZGl0aW5nUmFuZ2Ugc2VsZWN0aW9uUmFuZ2UsIHN0cnVjdCBXZWJLaXQ6OkVkaXRp
bmdSYW5nZSByZXBsYWNlbWVudFJhbmdlKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>