<?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>216562</bug_id>
          
          <creation_ts>2020-09-15 09:34:12 -0700</creation_ts>
          <short_desc>Remove runtime setting for enabling/disabling the isSecureContext API?</short_desc>
          <delta_ts>2020-09-16 15:05: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>WebCore Misc.</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>
          
          <blocked>216512</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>webkit-unassigned</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1688721</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-09-15 09:34:12 -0700</bug_when>
    <thetext>Remove runtime setting for enabling/disabling the isSecureContext API. It should always be enabled at this point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689148</commentid>
    <comment_count>1</comment_count>
      <attachid>408932</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-09-16 10:13:05 -0700</bug_when>
    <thetext>Created attachment 408932
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689154</commentid>
    <comment_count>2</comment_count>
      <attachid>408934</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-09-16 10:40:03 -0700</bug_when>
    <thetext>Created attachment 408934
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689180</commentid>
    <comment_count>3</comment_count>
      <attachid>408942</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-09-16 12:26:42 -0700</bug_when>
    <thetext>Created attachment 408942
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689182</commentid>
    <comment_count>4</comment_count>
      <attachid>408942</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-09-16 12:33:47 -0700</bug_when>
    <thetext>Comment on attachment 408942
Patch

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

r=me assuming tests pass

&gt; Source/WebCore/page/WindowOrWorkerGlobalScope.idl:64
&gt; +    // microtask queuing.

Capitalize microtask if we are using sentence style? Also, why does a single function &quot;queue microtask&quot; need a comment saying &quot;microtask queuing&quot;? I’m not sure of the value of these section comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689193</commentid>
    <comment_count>5</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-09-16 13:13:24 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #4)
&gt; Comment on attachment 408942 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=408942&amp;action=review
&gt; 
&gt; r=me assuming tests pass
&gt; 
&gt; &gt; Source/WebCore/page/WindowOrWorkerGlobalScope.idl:64
&gt; &gt; +    // microtask queuing.
&gt; 
&gt; Capitalize microtask if we are using sentence style? Also, why does a single
&gt; function &quot;queue microtask&quot; need a comment saying &quot;microtask queuing&quot;? I’m
&gt; not sure of the value of these section comments.

They come from the spec text. I&apos;ve mostly been keeping them to make diffing against the spec text easier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689230</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-16 15:04:50 -0700</bug_when>
    <thetext>Committed r267164: &lt;https://trac.webkit.org/changeset/267164&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 408942.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689232</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-16 15:05:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/69017378&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408932</attachid>
            <date>2020-09-16 10:13:05 -0700</date>
            <delta_ts>2020-09-16 10:55:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216562-20200916101304.patch</filename>
            <type>text/plain</type>
            <size>29589</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzEwOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA5LTE2ICBTYW0gV2Vp
bmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5n
IGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIGlzU2VjdXJlQ29udGV4dCBBUEk/CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY1NjIKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgcnVudGltZSBz
ZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIHRoZSBpc1NlY3VyZUNvbnRleHQgYXR0
cmlidXRlLiAKKyAgICAgICAgb24gd2luZG93IGFuZCB0aGUgd29ya2VyIGdsb2JhbCBzY29wZS4g
VGhlcmUgaXMgbm8ga25vd24gcmVhc29uIG9uZSB3b3VsZCBuZWVkIAorICAgICAgICB0byBkaXNh
YmxlIGl0LgorCisgICAgICAgICogcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg6CisgICAg
ICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRJc1NlY3VyZUNvbnRleHRB
dHRyaWJ1dGVFbmFibGVkKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OmlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQgY29uc3QpOiBEZWxl
dGVkLgorICAgICAgICAqIHBhZ2UvV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZS5pZGw6CisKIDIw
MjAtMDktMTUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBTY3Jp
cHRQcm9jZXNzb3JOb2RlIHNob3VsZCB0aHJvdyB3aGVuIHRyeWluZyB0byBjaGFuZ2UgaXRzIGNo
YW5uZWwgY291bnQgb3IgY2hhbm5lbCBjb3VudCBtb2RlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
YWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAkocmV2aXNpb24gMjY3MTAxKQorKysgU291
cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgJKHdvcmtpbmcgY29weSkK
QEAgLTY3LDkgKzY3LDYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0TW9kZXJuTWVkaWFDb250cm9s
c0VuYWJsZWQoYm9vbCBhcmVFbmFibGVkKSB7IG1fYXJlTW9kZXJuTWVkaWFDb250cm9sc0VuYWJs
ZWQgPSBhcmVFbmFibGVkOyB9CiAgICAgYm9vbCBtb2Rlcm5NZWRpYUNvbnRyb2xzRW5hYmxlZCgp
IGNvbnN0IHsgcmV0dXJuIG1fYXJlTW9kZXJuTWVkaWFDb250cm9sc0VuYWJsZWQ7IH0KIAotICAg
IHZvaWQgc2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZChib29sIGlzRW5hYmxlZCkg
eyBtX2lzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KLSAgICBi
b29sIGlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lz
U2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ7IH0KLQogICAgIHZvaWQgc2V0V2ViQW5pbWF0
aW9uc0VuYWJsZWQoYm9vbCBhcmVFbmFibGVkKSB7IG1fYXJlV2ViQW5pbWF0aW9uc0VuYWJsZWQg
PSBhcmVFbmFibGVkOyB9CiAgICAgYm9vbCB3ZWJBbmltYXRpb25zRW5hYmxlZCgpIGNvbnN0IHsg
cmV0dXJuIG1fYXJlV2ViQW5pbWF0aW9uc0VuYWJsZWQ7IH0KIApAQCAtMjk2LDcgKzI5Myw2IEBA
IHByaXZhdGU6CiAgICAgYm9vbCBtX2lzUGFpbnRUaW1pbmdFbmFibGVkIHsgZmFsc2UgfTsKICAg
ICBib29sIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9p
c1VzZXJUaW1pbmdFbmFibGVkIHsgZmFsc2UgfTsKLSAgICBib29sIG1faXNTZWN1cmVDb250ZXh0
QXR0cmlidXRlRW5hYmxlZCB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzTWVudUl0ZW1FbGVtZW50
RW5hYmxlZCB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzRGlyZWN0b3J5VXBsb2FkRW5hYmxlZCB7
IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzQ3VzdG9tUGFzdGVib2FyZERhdGFFbmFibGVkIHsgZmFs
c2UgfTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvV2luZG93T3JXb3JrZXJHbG9iYWxTY29w
ZS5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9XaW5kb3dPcldvcmtlckds
b2JhbFNjb3BlLmlkbAkocmV2aXNpb24gMjY3MTAxKQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9X
aW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtNDUsOCArNDUs
MTUgQEAgdHlwZWRlZiAoQ2FudmFzSW1hZ2VTb3VyY2Ugb3IgQmxvYiBvciBJbQogLy8gaHR0cHM6
Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvd2ViYXBwYXBpcy5odG1sI3dpbmRvd29y
d29ya2VyZ2xvYmFsc2NvcGUtbWl4aW4KIGludGVyZmFjZSBtaXhpbiBXaW5kb3dPcldvcmtlckds
b2JhbFNjb3BlIHsKICAgICBbUmVwbGFjZWFibGVdIHJlYWRvbmx5IGF0dHJpYnV0ZSBVU1ZTdHJp
bmcgb3JpZ2luOworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzU2VjdXJlQ29udGV4
dDsKKyAgICAvLyBGSVhNRTogSW1wbGVtZW50ICdjcm9zc09yaWdpbklzb2xhdGVkJy4KKyAgICAv
LyByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjcm9zc09yaWdpbklzb2xhdGVkOworIAorICAg
IC8vIEJhc2U2NCB1dGlsaXR5IG1ldGhvZHMuCisgICAgW01heVRocm93RXhjZXB0aW9uXSBET01T
dHJpbmcgYXRvYihET01TdHJpbmcgc3RyaW5nKTsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb25dIERP
TVN0cmluZyBidG9hKERPTVN0cmluZyBzdHJpbmcpOwogCi0gICAgLy8gVGltZXJzCisgICAgLy8g
VGltZXJzLgogICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCB0YWtlIGEgVGltZXJIYW5kbGVyIChh
LmsuYS4gKERPTVN0cmluZyBvciBGdW5jdGlvbikpIHJhdGhlciB0aGFuIGEgU2NoZWR1bGVkQWN0
aW9uLgogICAgIFtDYWxsV2l0aD1HbG9iYWxPYmplY3QsIE1heVRocm93RXhjZXB0aW9uXSBsb25n
IHNldFRpbWVvdXQoU2NoZWR1bGVkQWN0aW9uIGhhbmRsZXIsIG9wdGlvbmFsIGxvbmcgdGltZW91
dCA9IDAsIGFueS4uLiBhcmd1bWVudHMpOwogICAgIHVuZGVmaW5lZCBjbGVhclRpbWVvdXQob3B0
aW9uYWwgbG9uZyBoYW5kbGUgPSAwKTsKQEAgLTU0LDE1ICs2MSw5IEBAIGludGVyZmFjZSBtaXhp
biBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3AKICAgICBbQ2FsbFdpdGg9R2xvYmFsT2JqZWN0LCBN
YXlUaHJvd0V4Y2VwdGlvbl0gbG9uZyBzZXRJbnRlcnZhbChTY2hlZHVsZWRBY3Rpb24gaGFuZGxl
ciwgb3B0aW9uYWwgbG9uZyB0aW1lb3V0ID0gMCwgYW55Li4uIGFyZ3VtZW50cyk7CiAgICAgdW5k
ZWZpbmVkIGNsZWFySW50ZXJ2YWwob3B0aW9uYWwgbG9uZyBoYW5kbGUgPSAwKTsKIAorICAgIC8v
IG1pY3JvdGFzayBxdWV1aW5nLgogICAgIFtDdXN0b21dIHVuZGVmaW5lZCBxdWV1ZU1pY3JvdGFz
ayhWb2lkQ2FsbGJhY2sgY2FsbGJhY2spOwogCi0gICAgLy8gQmFzZTY0IHV0aWxpdHkgbWV0aG9k
cy4KLSAgICBbTWF5VGhyb3dFeGNlcHRpb25dIERPTVN0cmluZyBhdG9iKERPTVN0cmluZyBzdHJp
bmcpOwotICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gRE9NU3RyaW5nIGJ0b2EoRE9NU3RyaW5nIHN0
cmluZyk7Ci0KLSAgICAvLyBTZWN1cmUgQ29udGV4dHMKLSAgICBbRW5hYmxlZEF0UnVudGltZT1J
c1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVdIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzU2Vj
dXJlQ29udGV4dDsKLQogICAgIC8vIEltYWdlQml0bWFwLgogICAgIFtFbmFibGVkQXRSdW50aW1l
PUltYWdlQml0bWFwXSBQcm9taXNlPEltYWdlQml0bWFwPiBjcmVhdGVJbWFnZUJpdG1hcChJbWFn
ZUJpdG1hcFNvdXJjZSBpbWFnZSwgb3B0aW9uYWwgSW1hZ2VCaXRtYXBPcHRpb25zIG9wdGlvbnMp
OwogICAgIFtFbmFibGVkQXRSdW50aW1lPUltYWdlQml0bWFwXSBQcm9taXNlPEltYWdlQml0bWFw
PiBjcmVhdGVJbWFnZUJpdG1hcChJbWFnZUJpdG1hcFNvdXJjZSBpbWFnZSwgbG9uZyBzeCwgbG9u
ZyBzeSwgbG9uZyBzdywgbG9uZyBzaCwgb3B0aW9uYWwgSW1hZ2VCaXRtYXBPcHRpb25zIG9wdGlv
bnMpOwpJbmRleDogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDktMTYgIFNhbSBX
ZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBydW50aW1lIHNldHRp
bmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgaXNTZWN1cmVDb250ZXh0IEFQST8KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjU2MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBydW50aW1l
IHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgdGhlIGlzU2VjdXJlQ29udGV4dCBh
dHRyaWJ1dGUuIAorICAgICAgICBvbiB3aW5kb3cgYW5kIHRoZSB3b3JrZXIgZ2xvYmFsIHNjb3Bl
LiBUaGVyZSBpcyBubyBrbm93biByZWFzb24gb25lIHdvdWxkIG5lZWQgCisgICAgICAgIHRvIGRp
c2FibGUgaXQuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXMueWFtbDoKKyAgICAg
ICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZl
cmVuY2VzU2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCk6CisgICAgICAgIChXS1By
ZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCk6CisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmg6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcik6
CisKIDIwMjAtMDktMTUgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgogCiAgICAgICAg
IFJlbW92ZSBydW50aW1lIHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgZmV0Y2gg
QVBJCkluZGV4OiBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcmVmZXJlbmNlcy55YW1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWwJKHJldmlz
aW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWwJ
KHdvcmtpbmcgY29weSkKQEAgLTEyNjUsMTEgKzEyNjUsNiBAQCBMaW5rUHJlbG9hZEVuYWJsZWQ6
CiAgIHR5cGU6IGJvb2wKICAgZGVmYXVsdFZhbHVlOiB0cnVlCiAKLUlzU2VjdXJlQ29udGV4dEF0
dHJpYnV0ZUVuYWJsZWQ6Ci0gIHR5cGU6IGJvb2wKLSAgZGVmYXVsdFZhbHVlOiB0cnVlCi0gIHdl
YmNvcmVCaW5kaW5nOiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzCi0KIFNvdXJjZUJ1ZmZlckNoYW5n
ZVR5cGVFbmFibGVkOgogICB0eXBlOiBib29sCiAgIGRlZmF1bHRWYWx1ZTogdHJ1ZQpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAJKHJl
dmlzaW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVy
ZW5jZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODg5LDE2ICsxODg5LDYgQEAgV0tTdHJpbmdS
ZWYgV0tQcmVmZXJlbmNlc0NvcHlNZWRpYUNvbnRlbgogICAgIHJldHVybiB0b0NvcGllZEFQSSh0
b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5tZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJl
U3VwcG9ydCgpKTsKIH0KIAotdm9pZCBXS1ByZWZlcmVuY2VzU2V0SXNTZWN1cmVDb250ZXh0QXR0
cmlidXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcp
Ci17Ci0gICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0SXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlRW5hYmxlZChmbGFnKTsKLX0KLQotYm9vbCBXS1ByZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250
ZXh0QXR0cmlidXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQotewot
ICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5pc1NlY3VyZUNvbnRleHRBdHRyaWJ1
dGVFbmFibGVkKCk7Ci19Ci0KIGJvb2wgV0tQcmVmZXJlbmNlc0dldExlZ2FjeUVuY3J5cHRlZE1l
ZGlhQVBJRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQogewogICAgIHJl
dHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5sZWdhY3lFbmNyeXB0ZWRNZWRpYUFQSUVuYWJs
ZWQoKTsKQEAgLTIyNDUsMyArMjIzNSwxMSBAQCBib29sIFdLUHJlZmVyZW5jZXNHZXRGZXRjaEFQ
SUVuYWJsZWQoV0tQCiB7CiAgICAgcmV0dXJuIHRydWU7CiB9CisKK3ZvaWQgV0tQcmVmZXJlbmNl
c1NldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiwgYm9v
bCkKK3sKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRl
RW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKQoreworfQpJbmRleDogU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmUHJpdmF0ZS5oCShyZXZp
c2lvbiAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVu
Y2VzUmVmUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01MzcsMTAgKzUzNyw2IEBAIFdLX0VY
UE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYUNvbnQKIFdLX0VYUE9SVCBXS1N0cmluZ1Jl
ZiBXS1ByZWZlcmVuY2VzQ29weU1lZGlhQ29udGVudFR5cGVzUmVxdWlyaW5nSGFyZHdhcmVTdXBw
b3J0KFdLUHJlZmVyZW5jZXNSZWYpOwogCiAvLyBEZWZhdWx0cyB0byBmYWxzZS4KLVdLX0VYUE9S
VCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkKFdL
UHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZyk7Ci1XS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2Vz
R2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKTsKLQot
Ly8gRGVmYXVsdHMgdG8gZmFsc2UuCiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0SW5z
cGVjdG9yQWRkaXRpb25zRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpOwogV0tf
RVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldEluc3BlY3RvckFkZGl0aW9uc0VuYWJsZWQoV0tQ
cmVmZXJlbmNlc1JlZik7CiAKQEAgLTYwNSw2ICs2MDEsOCBAQCBXS19FWFBPUlQgdm9pZCBXS1By
ZWZlcmVuY2VzU2V0SGl4aWU3NldlCiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0SGl4
aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKSBXS19DX0FQSV9E
RVBSRUNBVEVEOwogV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldEZldGNoQVBJRW5hYmxl
ZChXS1ByZWZlcmVuY2VzUmVmLCBib29sKSBXS19DX0FQSV9ERVBSRUNBVEVEOwogV0tfRVhQT1JU
IGJvb2wgV0tQcmVmZXJlbmNlc0dldEZldGNoQVBJRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKSBX
S19DX0FQSV9ERVBSRUNBVEVEOworV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldElzU2Vj
dXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiwgYm9vbCkgV0tfQ19B
UElfREVQUkVDQVRFRDsKK1dLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRJc1NlY3VyZUNv
bnRleHRBdHRyaWJ1dGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYpIFdLX0NfQVBJX0RFUFJFQ0FU
RUQ7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCShy
ZXZpc2lvbiAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvSW5qZWN0ZWRCdW5kbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMzcsMTEgKzIzNyw2IEBA
IHZvaWQgSW5qZWN0ZWRCdW5kbGU6Om92ZXJyaWRlQm9vbFByZWZlcmUKICAgICB9CiAjZW5kaWYK
IAotICAgIGlmIChwcmVmZXJlbmNlID09ICJXZWJLaXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVF
bmFibGVkIikgewotICAgICAgICBXZWJQcmVmZXJlbmNlc1N0b3JlOjpvdmVycmlkZUJvb2xWYWx1
ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6aXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxl
ZEtleSgpLCBlbmFibGVkKTsKLSAgICAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVk
RmVhdHVyZXMoKS5zZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkKGVuYWJsZWQpOwot
ICAgIH0KLQogICAgIGlmIChwcmVmZXJlbmNlID09ICJXZWJLaXRXZWJBUElTdGF0aXN0aWNzRW5h
YmxlZCIpCiAgICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCku
c2V0V2ViQVBJU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlZCk7CiAKSW5kZXg6IFNvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzE0OSkKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDIwLTA5LTE2
ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgcnVudGlt
ZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIGlzU2VjdXJlQ29udGV4dCBBUEk/
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY1NjIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUg
cnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIHRoZSBpc1NlY3VyZUNv
bnRleHQgYXR0cmlidXRlLiAKKyAgICAgICAgb24gd2luZG93IGFuZCB0aGUgd29ya2VyIGdsb2Jh
bCBzY29wZS4gVGhlcmUgaXMgbm8ga25vd24gcmVhc29uIG9uZSB3b3VsZCBuZWVkIAorICAgICAg
ICB0byBkaXNhYmxlIGl0LgorCisgICAgICAgICogV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1By
aXZhdGUuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tOgorICAgICAgICAo
K1tXZWJQcmVmZXJlbmNlcyBpbml0aWFsaXplXSk6CisgICAgICAgICgtW1dlYlByZWZlcmVuY2Vz
IHNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6XSk6CisgICAgICAgICgtW1dlYlBy
ZWZlcmVuY2VzIGlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWRdKToKKyAgICAgICAgKiBX
ZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlZpZXcvV2ViVmll
dy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJlZmVyZW5jZXNDaGFuZ2VkOl0pOgorCiAyMDIw
LTA5LTE1ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUg
cnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIGZldGNoIEFQSQpJbmRl
eDogU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZh
dGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlBy
ZWZlcmVuY2VLZXlzUHJpdmF0ZS5oCShyZXZpc2lvbiAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xOTksNyArMTk5LDYgQEAKICNkZWZpbmUgV2ViS2l0TGlua1ByZWxvYWRFbmFibGVk
UHJlZmVyZW5jZUtleSBAIldlYktpdExpbmtQcmVsb2FkRW5hYmxlZCIKICNkZWZpbmUgV2ViS2l0
TWVkaWFQcmVsb2FkaW5nRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRNZWRpYVByZWxvYWRp
bmdFbmFibGVkIgogI2RlZmluZSBXZWJLaXRNZWRpYVVzZXJHZXN0dXJlSW5oZXJpdHNGcm9tRG9j
dW1lbnQgQCJXZWJLaXRNZWRpYVVzZXJHZXN0dXJlSW5oZXJpdHNGcm9tRG9jdW1lbnQiCi0jZGVm
aW5lIFdlYktpdElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWRQcmVmZXJlbmNlS2V5IEAi
V2ViS2l0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCIKICNkZWZpbmUgV2ViS2l0Vmll
d3BvcnRGaXRFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdFZpZXdwb3J0Rml0RW5hYmxlZCIK
ICNkZWZpbmUgV2ViS2l0Q29uc3RhbnRQcm9wZXJ0aWVzRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJX
ZWJLaXRDb25zdGFudFByb3BlcnRpZXNFbmFibGVkIgogI2RlZmluZSBXZWJLaXRDb2xvckZpbHRl
ckVuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0Q29sb3JGaWx0ZXJFbmFibGVkIgpAQCAtMjk1
LDMgKzI5NCw0IEBACiAjZGVmaW5lIFdlYktpdEhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJs
ZWRLZXkgQCJXZWJLaXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkIgogI2RlZmluZSBX
ZWJLaXRDdXN0b21FbGVtZW50c0VuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0Q3VzdG9tRWxl
bWVudHNFbmFibGVkIgogI2RlZmluZSBXZWJLaXRGZXRjaEFQSUVuYWJsZWRQcmVmZXJlbmNlS2V5
IEAiV2ViS2l0RmV0Y2hBUElFbmFibGVkIgorI2RlZmluZSBXZWJLaXRJc1NlY3VyZUNvbnRleHRB
dHRyaWJ1dGVFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdElzU2VjdXJlQ29udGV4dEF0dHJp
YnV0ZUVuYWJsZWQiCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlBy
ZWZlcmVuY2VzLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZp
ZXcvV2ViUHJlZmVyZW5jZXMubW0JKHJldmlzaW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0JKHdvcmtpbmcgY29weSkKQEAgLTY4
OSw3ICs2ODksNiBAQCArICh2b2lkKWluaXRpYWxpemUKICAgICAgICAgQE5PLCBXZWJLaXRVc2Vy
VGltaW5nRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAgICAgIEBOTywgV2ViS2l0UmVzb3VyY2VU
aW1pbmdFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgQE5PLCBXZWJLaXRNZWRpYVVzZXJH
ZXN0dXJlSW5oZXJpdHNGcm9tRG9jdW1lbnQsCi0gICAgICAgIEBOTywgV2ViS2l0SXNTZWN1cmVD
b250ZXh0QXR0cmlidXRlRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAgICAgIEBZRVMsIFdlYktp
dExlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZEtleSwKICAgICAgICAgQE5PLCBXZWJLaXRF
bmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWRLZXksCiAgICAgICAgIEBZRVMsIFdlYktpdFZpZXdwb3J0
Rml0RW5hYmxlZFByZWZlcmVuY2VLZXksCkBAIC0zMzI4LDE2ICszMzI3LDYgQEAgLSAodm9pZClz
ZXRNZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcgogICAgIFtzZWxmIF9zZXRTdHJpbmdWYWx1
ZTp2YWx1ZSBmb3JLZXk6V2ViS2l0TWVkaWFDb250ZW50VHlwZXNSZXF1aXJpbmdIYXJkd2FyZVN1
cHBvcnRQcmVmZXJlbmNlS2V5XTsKIH0KIAotLSAoQk9PTClpc1NlY3VyZUNvbnRleHRBdHRyaWJ1
dGVFbmFibGVkCi17Ci0gICAgcmV0dXJuIFtzZWxmIF9ib29sVmFsdWVGb3JLZXk6V2ViS2l0SXNT
ZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZFByZWZlcmVuY2VLZXldOwotfQotCi0tICh2b2lk
KXNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6KEJPT0wpZmxhZwotewotICAgIFtz
ZWxmIF9zZXRCb29sVmFsdWU6ZmxhZyBmb3JLZXk6V2ViS2l0SXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlRW5hYmxlZFByZWZlcmVuY2VLZXldOwotfQotCiAtIChCT09MKWxlZ2FjeUVuY3J5cHRlZE1l
ZGlhQVBJRW5hYmxlZAogewogICAgIHJldHVybiBbc2VsZiBfYm9vbFZhbHVlRm9yS2V5OldlYktp
dExlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZEtleV07CkBAIC0zNjkyLDYgKzM2ODEsMTUg
QEAgKyAoTlNTdHJpbmcgKilfY29uY2F0ZW5hdGVLZXlXaXRoSUJDcmVhdAogLy8gVGhlIHByZWZl
cmVuY2VzIGluIHRoaXMgY2F0ZWdvcnkgYXJlIGRlcHJlY2F0ZWQgYW5kIGhhdmUgbm8gZWZmZWN0
LiBUaGV5IHNob3VsZAogLy8gYmUgcmVtb3ZlZCB3aGVuIGl0IGlzIGNvbnNpZGVyZWQgc2FmZSB0
byBkbyBzby4KIAorLSAodm9pZClzZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkOihC
T09MKWZsYWcKK3sKK30KKworLSAoQk9PTClpc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVk
Cit7CisgICAgcmV0dXJuIFlFUzsKK30KKwogLSAodm9pZClzZXRGZXRjaEFQSUVuYWJsZWQ6KEJP
T0wpZmxhZwogewogfQpAQCAtMzcwMSw3ICszNjk5LDYgQEAgLSAoQk9PTClmZXRjaEFQSUVuYWJs
ZWQKICAgICByZXR1cm4gWUVTOwogfQogCi0KIC0gKHZvaWQpc2V0U2hhZG93RE9NRW5hYmxlZDoo
Qk9PTClmbGFnCiB7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dl
YlByZWZlcmVuY2VzUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgJKHJldmlzaW9uIDI2NzEwMSkKKysr
IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTU5MSw5ICs1OTEsNiBAQCBAaW50ZXJmYWNlIFdlYlByZWZlcmVu
Y2VzIChXZWJQcml2YXRlKQogLSAodm9pZClzZXRJbnRlcnNlY3Rpb25PYnNlcnZlckVuYWJsZWQ6
KEJPT0wpZmxhZzsKIC0gKEJPT0wpaW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbmFibGVkOwogCi0tICh2
b2lkKXNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6KEJPT0wpZmxhZzsKLS0gKEJP
T0wpaXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZDsKLQogLSAodm9pZClzZXRTZXJ2ZXJU
aW1pbmdFbmFibGVkOihCT09MKWZsYWc7CiAtIChCT09MKXNlcnZlclRpbWluZ0VuYWJsZWQ7CiAK
QEAgLTY5OCw2ICs2OTUsOSBAQCBAaW50ZXJmYWNlIFdlYlByZWZlcmVuY2VzIChXZWJQcml2YXRl
RGVwCiAvLyBUaGUgcHJlZmVyZW5jZXMgaW4gdGhpcyBjYXRlZ29yeSBhcmUgZGVwcmVjYXRlZCBh
bmQgaGF2ZSBubyBlZmZlY3QuIFRoZXkgc2hvdWxkCiAvLyBiZSByZW1vdmVkIHdoZW4gaXQgaXMg
Y29uc2lkZXJlZCBzYWZlIHRvIGRvIHNvLgogCistICh2b2lkKXNldElzU2VjdXJlQ29udGV4dEF0
dHJpYnV0ZUVuYWJsZWQ6KEJPT0wpZmxhZzsKKy0gKEJPT0wpaXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlRW5hYmxlZDsKKwogLSAodm9pZClzZXRGZXRjaEFQSUVuYWJsZWQ6KEJPT0wpZmxhZzsKIC0g
KEJPT0wpZmV0Y2hBUElFbmFibGVkOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9X
ZWJWaWV3L1dlYlZpZXcubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViVmlldy9XZWJWaWV3Lm1tCShyZXZpc2lvbiAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0JKHdvcmtpbmcgY29weSkKQEAgLTMzNzIsNyArMzM3
Miw2IEBAIC0gKHZvaWQpX3ByZWZlcmVuY2VzQ2hhbmdlZDooV2ViUHJlZmVyZW4KICAgICBSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFJlc291cmNlVGltaW5nRW5h
YmxlZChwcmVmZXJlbmNlcy5yZXNvdXJjZVRpbWluZ0VuYWJsZWQpOwogICAgIHNldHRpbmdzLnNl
dExpbmtQcmVsb2FkRW5hYmxlZChwcmVmZXJlbmNlcy5saW5rUHJlbG9hZEVuYWJsZWQpOwogICAg
IHNldHRpbmdzLnNldE1lZGlhUHJlbG9hZGluZ0VuYWJsZWQocHJlZmVyZW5jZXMubWVkaWFQcmVs
b2FkaW5nRW5hYmxlZCk7Ci0gICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVy
ZXMoKS5zZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkKHByZWZlcmVuY2VzLmlzU2Vj
dXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQpOwogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNoYXJlZEZlYXR1cmVzKCkuc2V0RGlyZWN0b3J5VXBsb2FkRW5hYmxlZChbcHJlZmVyZW5jZXMg
ZGlyZWN0b3J5VXBsb2FkRW5hYmxlZF0pOwogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNo
YXJlZEZlYXR1cmVzKCkuc2V0TWVudUl0ZW1FbGVtZW50RW5hYmxlZChbcHJlZmVyZW5jZXMgbWVu
dUl0ZW1FbGVtZW50RW5hYmxlZF0pOwogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJl
ZEZlYXR1cmVzKCkuc2V0QWNjZXNzaWJpbGl0eU9iamVjdE1vZGVsRW5hYmxlZChbcHJlZmVyZW5j
ZXMgYWNjZXNzaWJpbGl0eU9iamVjdE1vZGVsRW5hYmxlZF0pOwpJbmRleDogU291cmNlL1dlYktp
dExlZ2FjeS93aW4vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kv
d2luL0NoYW5nZUxvZwkocmV2aXNpb24gMjY3MTAxKQorKysgU291cmNlL1dlYktpdExlZ2FjeS93
aW4vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjAtMDktMTYg
IFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBydW50aW1l
IHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgaXNTZWN1cmVDb250ZXh0IEFQST8K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjU2Mgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBy
dW50aW1lIHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgdGhlIGlzU2VjdXJlQ29u
dGV4dCBhdHRyaWJ1dGUuIAorICAgICAgICBvbiB3aW5kb3cgYW5kIHRoZSB3b3JrZXIgZ2xvYmFs
IHNjb3BlLiBUaGVyZSBpcyBubyBrbm93biByZWFzb24gb25lIHdvdWxkIG5lZWQgCisgICAgICAg
IHRvIGRpc2FibGUgaXQuCisKKyAgICAgICAgKiBXZWJQcmVmZXJlbmNlcy5jcHA6CisgICAgICAg
IChXZWJQcmVmZXJlbmNlczo6aW5pdGlhbGl6ZURlZmF1bHRTZXR0aW5ncyk6CisgICAgICAgIChX
ZWJQcmVmZXJlbmNlczo6c2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCk6CisgICAg
ICAgIChXZWJQcmVmZXJlbmNlczo6aXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCk6Cisg
ICAgICAgICogV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJWaWV3Ojpub3RpZnlQcmVmZXJlbmNl
c0NoYW5nZWQpOgorCiAyMDIwLTA5LTE1ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4K
IAogICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcg
dGhlIGZldGNoIEFQSQpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViUHJlZmVyZW5j
ZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlByZWZlcmVu
Y2VzLmNwcAkocmV2aXNpb24gMjY3MTAxKQorKysgU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2Vi
UHJlZmVyZW5jZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMjksOCArMzI5LDYgQEAgdm9pZCBX
ZWJQcmVmZXJlbmNlczo6aW5pdGlhbGl6ZURlZmF1bHRTZQogCiAgICAgQ0ZEaWN0aW9uYXJ5QWRk
VmFsdWUoZGVmYXVsdHMsIENGU1RSKFdlYktpdE1lZGlhUHJlbG9hZGluZ0VuYWJsZWRQcmVmZXJl
bmNlS2V5KSwga0NGQm9vbGVhbkZhbHNlKTsKIAotICAgIENGRGljdGlvbmFyeUFkZFZhbHVlKGRl
ZmF1bHRzLCBDRlNUUihXZWJLaXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkUHJlZmVy
ZW5jZUtleSksIGtDRkJvb2xlYW5GYWxzZSk7Ci0KICAgICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShk
ZWZhdWx0cywgQ0ZTVFIoV2ViS2l0RGF0YVRyYW5zZmVySXRlbXNFbmFibGVkUHJlZmVyZW5jZUtl
eSksIGtDRkJvb2xlYW5GYWxzZSk7CiAKICAgICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShkZWZhdWx0
cywgQ0ZTVFIoV2ViS2l0SW5zcGVjdG9yQWRkaXRpb25zRW5hYmxlZFByZWZlcmVuY2VLZXkpLCBr
Q0ZCb29sZWFuRmFsc2UpOwpAQCAtMjIwNiwxNyArMjIwNCwxNiBAQCBIUkVTVUxUIFdlYlByZWZl
cmVuY2VzOjpzd2l0Y2hOZXR3b3JrTG9hCiAgICAgcmV0dXJuIFNfT0s7CiB9CiAKLUhSRVNVTFQg
V2ViUHJlZmVyZW5jZXM6OnNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoQk9PTCBl
bmFibGVkKQorSFJFU1VMVCBXZWJQcmVmZXJlbmNlczo6c2V0SXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlRW5hYmxlZChCT09MKQogewotICAgIHNldEJvb2xWYWx1ZShXZWJLaXRJc1NlY3VyZUNvbnRl
eHRBdHRyaWJ1dGVFbmFibGVkUHJlZmVyZW5jZUtleSwgZW5hYmxlZCk7CiAgICAgcmV0dXJuIFNf
T0s7CiB9CiAKLUhSRVNVTFQgV2ViUHJlZmVyZW5jZXM6OmlzU2VjdXJlQ29udGV4dEF0dHJpYnV0
ZUVuYWJsZWQoX091dF8gQk9PTCogZW5hYmxlZCkKK0hSRVNVTFQgV2ViUHJlZmVyZW5jZXM6Omlz
U2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoX091dF8gQk9PTCopCiB7CiAgICAgaWYgKCFl
bmFibGVkKQogICAgICAgICByZXR1cm4gRV9QT0lOVEVSOwotICAgICplbmFibGVkID0gYm9vbFZh
bHVlRm9yS2V5KFdlYktpdElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWRQcmVmZXJlbmNl
S2V5KTsKKyAgICAqZW5hYmxlZCA9IHRydWU7CiAgICAgcmV0dXJuIFNfT0s7CiB9CiAKSW5kZXg6
IFNvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCShyZXZpc2lvbiAyNjcxMDEpCisrKyBTb3Vy
Y2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTI5NCwx
MSArNTI5NCw2IEBAIEhSRVNVTFQgV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2UKICAg
ICAgICAgcmV0dXJuIGhyOwogICAgIHNldHRpbmdzLnNldE1lZGlhUHJlbG9hZGluZ0VuYWJsZWQo
ISFlbmFibGVkKTsKIAotICAgIGhyID0gcHJlZnNQcml2YXRlLT5pc1NlY3VyZUNvbnRleHRBdHRy
aWJ1dGVFbmFibGVkKCZlbmFibGVkKTsKLSAgICBpZiAoRkFJTEVEKGhyKSkKLSAgICAgICAgcmV0
dXJuIGhyOwotICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0
SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCghIWVuYWJsZWQpOwotCiAgICAgaHIgPSBw
cmVmc1ByaXZhdGUtPmRhdGFUcmFuc2Zlckl0ZW1zRW5hYmxlZCgmZW5hYmxlZCk7CiAgICAgaWYg
KEZBSUxFRChocikpCiAgICAgICAgIHJldHVybiBocjsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzE0OSkKKysrIFRvb2xz
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDIwLTA5LTE2ICBT
YW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgcnVudGltZSBz
ZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIGlzU2VjdXJlQ29udGV4dCBBUEk/Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY1NjIKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgcnVu
dGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIHRoZSBpc1NlY3VyZUNvbnRl
eHQgYXR0cmlidXRlLiAKKyAgICAgICAgb24gd2luZG93IGFuZCB0aGUgd29ya2VyIGdsb2JhbCBz
Y29wZS4gVGhlcmUgaXMgbm8ga25vd24gcmVhc29uIG9uZSB3b3VsZCBuZWVkIAorICAgICAgICB0
byBkaXNhYmxlIGl0LgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3Bw
OgorICAgICAgICAoVGVzdE9wdGlvbnM6OlRlc3RPcHRpb25zKToKKyAgICAgICAgKiBEdW1wUmVu
ZGVyVHJlZS9UZXN0T3B0aW9ucy5oOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL21hYy9EdW1w
UmVuZGVyVHJlZS5tbToKKyAgICAgICAgKHNldFdlYlByZWZlcmVuY2VzRm9yVGVzdE9wdGlvbnMp
OgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9EdW1wUmVuZGVyVHJlZS5jcHA6CisgICAg
ICAgIChzZXRXZWJQcmVmZXJlbmNlc0ZvclRlc3RPcHRpb25zKToKKyAgICAgICAgKiBXZWJLaXRU
ZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdENvbnRyb2xs
ZXI6OnJlc2V0UHJlZmVyZW5jZXNUb0NvbnNpc3RlbnRWYWx1ZXMpOgorICAgICAgICAoV1RSOjp1
cGRhdGVUZXN0T3B0aW9uc0Zyb21UZXN0SGVhZGVyKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVu
bmVyL1Rlc3RPcHRpb25zLmg6CisgICAgICAgIChXVFI6OlRlc3RPcHRpb25zOjpoYXNTYW1lSW5p
dGlhbGl6YXRpb25PcHRpb25zIGNvbnN0KToKKwogMjAyMC0wOS0xNiAgUGhpbGlwcGUgTm9ybWFu
ZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0ZsYXRwYWtdIHdlYmtpdC1id3Jh
cCBkcml2ZS1ieSBjbGVhbnVwcwpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlv
bnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNw
cAkocmV2aXNpb24gMjY3MTAxKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTgsOCArMTE4LDYgQEAgVGVzdE9wdGlvbnM6OlRlc3RP
cHRpb25zKGNvbnN0IHN0ZDo6c3RyaQogICAgICAgICAgICAgZW5hYmxlRHJhZ0Rlc3RpbmF0aW9u
QWN0aW9uTG9hZCA9IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJWYWx1ZSh2YWx1ZSk7CiAgICAgICAg
IGVsc2UgaWYgKGtleSA9PSAibGF5ZXJCYWNrZWRXZWJWaWV3IikKICAgICAgICAgICAgIGxheWVy
QmFja2VkV2ViVmlldyA9IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJWYWx1ZSh2YWx1ZSk7Ci0gICAg
ICAgIGVsc2UgaWYgKGtleSA9PSAiZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlIikKLSAg
ICAgICAgICAgIGVuYWJsZUlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZSA9IHBhcnNlQm9vbGVhblRl
c3RIZWFkZXJWYWx1ZSh2YWx1ZSk7CiAgICAgICAgIGVsc2UgaWYgKGtleSA9PSAiZW5hYmxlSW5z
cGVjdG9yQWRkaXRpb25zIikKICAgICAgICAgICAgIGVuYWJsZUluc3BlY3RvckFkZGl0aW9ucyA9
IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJWYWx1ZSh2YWx1ZSk7CiAgICAgICAgIGVsc2UgaWYgKGtl
eSA9PSAiZHVtcEpTQ29uc29sZUxvZ0luU3RkRXJyIikKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJU
cmVlL1Rlc3RPcHRpb25zLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVz
dE9wdGlvbnMuaAkocmV2aXNpb24gMjY3MTAxKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVz
dE9wdGlvbnMuaAkod29ya2luZyBjb3B5KQpAQCAtNDAsNyArNDAsNiBAQCBzdHJ1Y3QgVGVzdE9w
dGlvbnMgewogICAgIGJvb2wgZW5hYmxlUG9pbnRlckxvY2sgeyBmYWxzZSB9OwogICAgIGJvb2wg
ZW5hYmxlRHJhZ0Rlc3RpbmF0aW9uQWN0aW9uTG9hZCB7IGZhbHNlIH07CiAgICAgYm9vbCBsYXll
ckJhY2tlZFdlYlZpZXcgeyBmYWxzZSB9OwotICAgIGJvb2wgZW5hYmxlSXNTZWN1cmVDb250ZXh0
QXR0cmlidXRlIHsgdHJ1ZSB9OwogICAgIGJvb2wgZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zIHsg
ZmFsc2UgfTsKICAgICBib29sIGR1bXBKU0NvbnNvbGVMb2dJblN0ZEVyciB7IGZhbHNlIH07CiAg
ICAgYm9vbCBhbGxvd0Nyb3NzT3JpZ2luU3VicmVzb3VyY2VzVG9Bc2tGb3JDcmVkZW50aWFscyB7
IGZhbHNlIH07CkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVl
Lm1tCShyZXZpc2lvbiAyNjcxMDEpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJl
bmRlclRyZWUubW0JKHdvcmtpbmcgY29weSkKQEAgLTk3Niw3ICs5NzYsNiBAQCBzdGF0aWMgdm9p
ZCBzZXRXZWJQcmVmZXJlbmNlc0ZvclRlc3RPcHRpCiAgICAgcHJlZmVyZW5jZXMubWVudUl0ZW1F
bGVtZW50RW5hYmxlZCA9IG9wdGlvbnMuZW5hYmxlTWVudUl0ZW1FbGVtZW50OwogICAgIHByZWZl
cmVuY2VzLmtleWdlbkVsZW1lbnRFbmFibGVkID0gb3B0aW9ucy5lbmFibGVLZXlnZW5FbGVtZW50
OwogICAgIHByZWZlcmVuY2VzLm1vZGVybk1lZGlhQ29udHJvbHNFbmFibGVkID0gb3B0aW9ucy5l
bmFibGVNb2Rlcm5NZWRpYUNvbnRyb2xzOwotICAgIHByZWZlcmVuY2VzLmlzU2VjdXJlQ29udGV4
dEF0dHJpYnV0ZUVuYWJsZWQgPSBvcHRpb25zLmVuYWJsZUlzU2VjdXJlQ29udGV4dEF0dHJpYnV0
ZTsKICAgICBwcmVmZXJlbmNlcy5pbnNwZWN0b3JBZGRpdGlvbnNFbmFibGVkID0gb3B0aW9ucy5l
bmFibGVJbnNwZWN0b3JBZGRpdGlvbnM7CiAgICAgcHJlZmVyZW5jZXMuYWxsb3dDcm9zc09yaWdp
blN1YnJlc291cmNlc1RvQXNrRm9yQ3JlZGVudGlhbHMgPSBvcHRpb25zLmFsbG93Q3Jvc3NPcmln
aW5TdWJyZXNvdXJjZXNUb0Fza0ZvckNyZWRlbnRpYWxzOwogICAgIHByZWZlcmVuY2VzLndlYkFu
aW1hdGlvbnNDU1NJbnRlZ3JhdGlvbkVuYWJsZWQgPSBvcHRpb25zLmVuYWJsZVdlYkFuaW1hdGlv
bnNDU1NJbnRlZ3JhdGlvbjsKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9EdW1wUmVu
ZGVyVHJlZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0R1bXBS
ZW5kZXJUcmVlLmNwcAkocmV2aXNpb24gMjY3MTAxKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUv
d2luL0R1bXBSZW5kZXJUcmVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTEzLDcgKzkxMyw2IEBA
IHN0YXRpYyB2b2lkIHNldFdlYlByZWZlcmVuY2VzRm9yVGVzdE9wdGkKICAgICBwcmVmc1ByaXZh
dGUtPnNldE1lbnVJdGVtRWxlbWVudEVuYWJsZWQob3B0aW9ucy5lbmFibGVNZW51SXRlbUVsZW1l
bnQpOwogICAgIHByZWZzUHJpdmF0ZS0+c2V0S2V5Z2VuRWxlbWVudEVuYWJsZWQob3B0aW9ucy5l
bmFibGVLZXlnZW5FbGVtZW50KTsKICAgICBwcmVmc1ByaXZhdGUtPnNldE1vZGVybk1lZGlhQ29u
dHJvbHNFbmFibGVkKG9wdGlvbnMuZW5hYmxlTW9kZXJuTWVkaWFDb250cm9scyk7Ci0gICAgcHJl
ZnNQcml2YXRlLT5zZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkKG9wdGlvbnMuZW5h
YmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlKTsKICAgICBwcmVmc1ByaXZhdGUtPnNldEluc3Bl
Y3RvckFkZGl0aW9uc0VuYWJsZWQob3B0aW9ucy5lbmFibGVJbnNwZWN0b3JBZGRpdGlvbnMpOwog
ICAgIHByZWZzUHJpdmF0ZS0+c2V0UmVxdWVzdElkbGVDYWxsYmFja0VuYWJsZWQob3B0aW9ucy5l
bmFibGVSZXF1ZXN0SWRsZUNhbGxiYWNrKTsKICAgICBwcmVmc1ByaXZhdGUtPnNldEFzeW5jQ2xp
cGJvYXJkQVBJRW5hYmxlZChvcHRpb25zLmVuYWJsZUFzeW5jQ2xpcGJvYXJkQVBJKTsKSW5kZXg6
IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiAyNjcx
MDEpCisrKyBUb29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtOTE1LDcgKzkxNSw2IEBAIHZvaWQgVGVzdENvbnRyb2xsZXI6OnJlc2V0UHJl
ZmVyZW5jZXNUb0MKICAgICBXS1ByZWZlcmVuY2VzU2V0TW9kZXJuTWVkaWFDb250cm9sc0VuYWJs
ZWQocHJlZmVyZW5jZXMsIG9wdGlvbnMuZW5hYmxlTW9kZXJuTWVkaWFDb250cm9scyk7CiAgICAg
V0tQcmVmZXJlbmNlc1NldFdlYkF1dGhlbnRpY2F0aW9uRW5hYmxlZChwcmVmZXJlbmNlcywgb3B0
aW9ucy5lbmFibGVXZWJBdXRoZW50aWNhdGlvbik7CiAgICAgV0tQcmVmZXJlbmNlc1NldFdlYkF1
dGhlbnRpY2F0aW9uTG9jYWxBdXRoZW50aWNhdG9yRW5hYmxlZChwcmVmZXJlbmNlcywgb3B0aW9u
cy5lbmFibGVXZWJBdXRoZW50aWNhdGlvbkxvY2FsQXV0aGVudGljYXRvcik7Ci0gICAgV0tQcmVm
ZXJlbmNlc1NldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQocHJlZmVyZW5jZXMsIG9w
dGlvbnMuZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlKTsKICAgICBXS1ByZWZlcmVuY2Vz
U2V0QWxsb3dDcm9zc09yaWdpblN1YnJlc291cmNlc1RvQXNrRm9yQ3JlZGVudGlhbHMocHJlZmVy
ZW5jZXMsIG9wdGlvbnMuYWxsb3dDcm9zc09yaWdpblN1YnJlc291cmNlc1RvQXNrRm9yQ3JlZGVu
dGlhbHMpOwogICAgIFdLUHJlZmVyZW5jZXNTZXRDb2xvckZpbHRlckVuYWJsZWQocHJlZmVyZW5j
ZXMsIG9wdGlvbnMuZW5hYmxlQ29sb3JGaWx0ZXIpOwogICAgIFdLUHJlZmVyZW5jZXNTZXRQdW5j
aE91dFdoaXRlQmFja2dyb3VuZHNJbkRhcmtNb2RlKHByZWZlcmVuY2VzLCBvcHRpb25zLnB1bmNo
T3V0V2hpdGVCYWNrZ3JvdW5kc0luRGFya01vZGUpOwpAQCAtMTQ5Nyw4ICsxNDk2LDYgQEAgc3Rh
dGljIHZvaWQgdXBkYXRlVGVzdE9wdGlvbnNGcm9tVGVzdEhlYQogICAgICAgICAgICAgdGVzdE9w
dGlvbnMuZW5hYmxlV2ViQXV0aGVudGljYXRpb24gPSBwYXJzZUJvb2xlYW5UZXN0SGVhZGVyVmFs
dWUodmFsdWUpOwogICAgICAgICBlbHNlIGlmIChrZXkgPT0gImVuYWJsZVdlYkF1dGhlbnRpY2F0
aW9uTG9jYWxBdXRoZW50aWNhdG9yIikKICAgICAgICAgICAgIHRlc3RPcHRpb25zLmVuYWJsZVdl
YkF1dGhlbnRpY2F0aW9uTG9jYWxBdXRoZW50aWNhdG9yID0gcGFyc2VCb29sZWFuVGVzdEhlYWRl
clZhbHVlKHZhbHVlKTsKLSAgICAgICAgZWxzZSBpZiAoa2V5ID09ICJlbmFibGVJc1NlY3VyZUNv
bnRleHRBdHRyaWJ1dGUiKQotICAgICAgICAgICAgdGVzdE9wdGlvbnMuZW5hYmxlSXNTZWN1cmVD
b250ZXh0QXR0cmlidXRlID0gcGFyc2VCb29sZWFuVGVzdEhlYWRlclZhbHVlKHZhbHVlKTsKICAg
ICAgICAgZWxzZSBpZiAoa2V5ID09ICJlbmFibGVJbnNwZWN0b3JBZGRpdGlvbnMiKQogICAgICAg
ICAgICAgdGVzdE9wdGlvbnMuZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zID0gcGFyc2VCb29sZWFu
VGVzdEhlYWRlclZhbHVlKHZhbHVlKTsKICAgICAgICAgZWxzZSBpZiAoa2V5ID09ICJkdW1wSlND
b25zb2xlTG9nSW5TdGRFcnIiKQpJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0
aW9ucy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMu
aAkocmV2aXNpb24gMjY3MTAxKQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9u
cy5oCSh3b3JraW5nIGNvcHkpCkBAIC03OCw3ICs3OCw2IEBAIHN0cnVjdCBUZXN0T3B0aW9ucyB7
CiAgICAgYm9vbCBlbmFibGVQb2ludGVyTG9jayB7IGZhbHNlIH07CiAgICAgYm9vbCBlbmFibGVX
ZWJBdXRoZW50aWNhdGlvbiB7IHRydWUgfTsKICAgICBib29sIGVuYWJsZVdlYkF1dGhlbnRpY2F0
aW9uTG9jYWxBdXRoZW50aWNhdG9yIHsgdHJ1ZSB9OwotICAgIGJvb2wgZW5hYmxlSXNTZWN1cmVD
b250ZXh0QXR0cmlidXRlIHsgdHJ1ZSB9OwogICAgIGJvb2wgZW5hYmxlSW5zcGVjdG9yQWRkaXRp
b25zIHsgZmFsc2UgfTsKICAgICBib29sIHNob3VsZFNob3dUb3VjaGVzIHsgZmFsc2UgfTsKICAg
ICBib29sIGR1bXBKU0NvbnNvbGVMb2dJblN0ZEVyciB7IGZhbHNlIH07CkBAIC0xNDEsNyArMTQw
LDYgQEAgc3RydWN0IFRlc3RPcHRpb25zIHsKICAgICAgICAgICAgIHx8IGVuYWJsZVBvaW50ZXJM
b2NrICE9IG9wdGlvbnMuZW5hYmxlUG9pbnRlckxvY2sKICAgICAgICAgICAgIHx8IGVuYWJsZVdl
YkF1dGhlbnRpY2F0aW9uICE9IG9wdGlvbnMuZW5hYmxlV2ViQXV0aGVudGljYXRpb24KICAgICAg
ICAgICAgIHx8IGVuYWJsZVdlYkF1dGhlbnRpY2F0aW9uTG9jYWxBdXRoZW50aWNhdG9yICE9IG9w
dGlvbnMuZW5hYmxlV2ViQXV0aGVudGljYXRpb25Mb2NhbEF1dGhlbnRpY2F0b3IKLSAgICAgICAg
ICAgIHx8IGVuYWJsZUlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZSAhPSBvcHRpb25zLmVuYWJsZUlz
U2VjdXJlQ29udGV4dEF0dHJpYnV0ZQogICAgICAgICAgICAgfHwgZW5hYmxlSW5zcGVjdG9yQWRk
aXRpb25zICE9IG9wdGlvbnMuZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zCiAgICAgICAgICAgICB8
fCBkdW1wSlNDb25zb2xlTG9nSW5TdGRFcnIgIT0gb3B0aW9ucy5kdW1wSlNDb25zb2xlTG9nSW5T
dGRFcnIKICAgICAgICAgICAgIHx8IGFwcGxpY2F0aW9uTWFuaWZlc3QgIT0gb3B0aW9ucy5hcHBs
aWNhdGlvbk1hbmlmZXN0CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjcxNTApCisrKyBMYXlvdXRUZXN0
cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOCBAQAorMjAyMC0wOS0xNiAg
U2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIHJ1bnRpbWUg
c2V0dGluZyBmb3IgZW5hYmxpbmcvZGlzYWJsaW5nIHRoZSBpc1NlY3VyZUNvbnRleHQgQVBJPwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2NTYyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVtb3ZlIHJ1
bnRpbWUgc2V0dGluZyBmb3IgZW5hYmxpbmcvZGlzYWJsaW5nIHRoZSB0aGUgaXNTZWN1cmVDb250
ZXh0IGF0dHJpYnV0ZS4gCisgICAgICAgIG9uIHdpbmRvdyBhbmQgdGhlIHdvcmtlciBnbG9iYWwg
c2NvcGUuIFRoZXJlIGlzIG5vIGtub3duIHJlYXNvbiBvbmUgd291bGQgbmVlZCAKKyAgICAgICAg
dG8gZGlzYWJsZSBpdC4KKworICAgICAgICAqIHBsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25z
OgorICAgICAgICAqIHNlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC1leHBlY3RlZC50
eHQ6IFJlbW92ZWQuCisgICAgICAgICogc2VjdXJpdHkvaXNTZWN1cmVDb250ZXh0LWRpc2FibGVk
Lmh0bWw6IFJlbW92ZWQuCisKIDIwMjAtMDktMTYgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KIAogICAgICAgICBPZmZsaW5lQXVkaW9Db250ZXh0IGNvbnN0cnVjdG9yIHNob3VsZCBu
b3QgdGhyb3cgd2hlbiBnaXZlbiBhIGJhZCBidWZmZXIgbGVuZ3RoCkluZGV4OiBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwkocmV2aXNpb24gMjY3MTAxKQorKysgTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMJKHdvcmtpbmcgY29weSkKQEAg
LTkwLDcgKzkwLDYgQEAgd2Via2l0Lm9yZy9iLzE3ODMzNyBmYXN0L3JlcGxhY2VkL3dpZHRoMQog
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAogIyBGSVhNRTogSW1wbGVtZW50IHRlc3Qgb3B0aW9u
cyBwYXJzaW5nICg8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIC4uLiBdIC0tPikuCi13ZWJraXQu
b3JnL2IvMTczMjgxIHNlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC5odG1sIFsgU2tp
cCBdCiB3ZWJraXQub3JnL2IvMTczMjgxIGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8tYXV0aC13aXRo
LWFsbG93Q3Jvc3NPcmlnaW5TdWJyZXNvdXJjZXNUb0Fza0ZvckNyZWRlbnRpYWxzLmh0bWwgWyBT
a2lwIF0KIHdlYmtpdC5vcmcvYi8xNzMyODEgaHR0cC90ZXN0cy9zZWN1cml0eS9jcmVkZW50aWFs
cy1pZnJhbWVzLWFsbG93Q3Jvc3NPcmlnaW5TdWJyZXNvdXJjZXNUb0Fza0ZvckNyZWRlbnRpYWxz
Lmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xNzMyODEgaHR0cC90ZXN0cy9zZWN1cml0eS9t
aXhlZENvbnRlbnQvaW5zZWN1cmUtYmFzaWMtYXV0aC1pbWFnZS1hbGxvd0Nyb3NzT3JpZ2luU3Vi
cmVzb3VyY2VzVG9Bc2tGb3JDcmVkZW50aWFscy5odHRwcy5odG1sIFsgU2tpcCBdCkluZGV4OiBM
YXlvdXRUZXN0cy9zZWN1cml0eS9pc1NlY3VyZUNvbnRleHQtZGlzYWJsZWQtZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3NlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1kaXNh
YmxlZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI2NzEwMSkKKysrIExheW91dFRlc3RzL3NlY3Vy
aXR5L2lzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpA
QCAtMSwxMiArMCwwIEBACi1UZXN0cyB0aGF0IGdsb2JhbCBwcm9wZXJ0eSBpc1NlY3VyZUNvbnRl
eHRzIGlzIHVuZGVmaW5lZCB3aGVuIHRoZSBTZXR0aW5nIGlzU2VjdXJlQ29udGV4dEF0dHJpYnV0
ZUVuYWJsZWQgaXMgZGlzYWJsZWQuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1Q
QVNTIHdpbmRvdy5pc1NlY3VyZUNvbnRleHQgaXMgdW5kZWZpbmVkLgotU3RhcnRpbmcgd29ya2Vy
OiByZXNvdXJjZXMvd29ya2VyLWlzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC5qcwotUEFTUyBbV29y
a2VyXSBzZWxmLmlzU2VjdXJlQ29udGV4dCBpcyB1bmRlZmluZWQuCi1QQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVzdHMvc2Vj
dXJpdHkvaXNTZWN1cmVDb250ZXh0LWRpc2FibGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvc2VjdXJpdHkvaXNTZWN1cmVDb250ZXh0LWRpc2FibGVkLmh0bWwJKHJldmlzaW9uIDI2
NzEwMSkKKysrIExheW91dFRlc3RzL3NlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC5o
dG1sCShub25leGlzdGVudCkKQEAgLTEsMTYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+PCEtLSB3
ZWJraXQtdGVzdC1ydW5uZXIgWyBlbmFibGVJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGU9ZmFsc2Ug
XSAtLT4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3Qu
anMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08c2NyaXB0Pgotd2luZG93LmpzVGVzdElz
QXN5bmMgPSB0cnVlOwotCi1kZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBnbG9iYWwgcHJvcGVydHkg
aXNTZWN1cmVDb250ZXh0cyBpcyB1bmRlZmluZWQgd2hlbiB0aGUgU2V0dGluZyBpc1NlY3VyZUNv
bnRleHRBdHRyaWJ1dGVFbmFibGVkIGlzIGRpc2FibGVkLiIpOwotCi1zaG91bGRCZVVuZGVmaW5l
ZCgid2luZG93LmlzU2VjdXJlQ29udGV4dCIpOwotc3RhcnRXb3JrZXIoInJlc291cmNlcy93b3Jr
ZXItaXNTZWN1cmVDb250ZXh0LWRpc2FibGVkLmpzIik7Ci08L3NjcmlwdD4KLTwvYm9keT4KLTwv
aHRtbD4K
</data>
<flag name="commit-queue"
          id="424478"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408934</attachid>
            <date>2020-09-16 10:40:03 -0700</date>
            <delta_ts>2020-09-16 12:26:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216562-20200916104002.patch</filename>
            <type>text/plain</type>
            <size>29607</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzEwOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA5LTE2ICBTYW0gV2Vp
bmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5n
IGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIGlzU2VjdXJlQ29udGV4dCBBUEk/CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY1NjIKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgcnVudGltZSBz
ZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIHRoZSBpc1NlY3VyZUNvbnRleHQgYXR0
cmlidXRlLiAKKyAgICAgICAgb24gd2luZG93IGFuZCB0aGUgd29ya2VyIGdsb2JhbCBzY29wZS4g
VGhlcmUgaXMgbm8ga25vd24gcmVhc29uIG9uZSB3b3VsZCBuZWVkIAorICAgICAgICB0byBkaXNh
YmxlIGl0LgorCisgICAgICAgICogcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg6CisgICAg
ICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRJc1NlY3VyZUNvbnRleHRB
dHRyaWJ1dGVFbmFibGVkKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OmlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQgY29uc3QpOiBEZWxl
dGVkLgorICAgICAgICAqIHBhZ2UvV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZS5pZGw6CisKIDIw
MjAtMDktMTUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBTY3Jp
cHRQcm9jZXNzb3JOb2RlIHNob3VsZCB0aHJvdyB3aGVuIHRyeWluZyB0byBjaGFuZ2UgaXRzIGNo
YW5uZWwgY291bnQgb3IgY2hhbm5lbCBjb3VudCBtb2RlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
YWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAkocmV2aXNpb24gMjY3MTAxKQorKysgU291
cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgJKHdvcmtpbmcgY29weSkK
QEAgLTY3LDkgKzY3LDYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0TW9kZXJuTWVkaWFDb250cm9s
c0VuYWJsZWQoYm9vbCBhcmVFbmFibGVkKSB7IG1fYXJlTW9kZXJuTWVkaWFDb250cm9sc0VuYWJs
ZWQgPSBhcmVFbmFibGVkOyB9CiAgICAgYm9vbCBtb2Rlcm5NZWRpYUNvbnRyb2xzRW5hYmxlZCgp
IGNvbnN0IHsgcmV0dXJuIG1fYXJlTW9kZXJuTWVkaWFDb250cm9sc0VuYWJsZWQ7IH0KIAotICAg
IHZvaWQgc2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZChib29sIGlzRW5hYmxlZCkg
eyBtX2lzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KLSAgICBi
b29sIGlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lz
U2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ7IH0KLQogICAgIHZvaWQgc2V0V2ViQW5pbWF0
aW9uc0VuYWJsZWQoYm9vbCBhcmVFbmFibGVkKSB7IG1fYXJlV2ViQW5pbWF0aW9uc0VuYWJsZWQg
PSBhcmVFbmFibGVkOyB9CiAgICAgYm9vbCB3ZWJBbmltYXRpb25zRW5hYmxlZCgpIGNvbnN0IHsg
cmV0dXJuIG1fYXJlV2ViQW5pbWF0aW9uc0VuYWJsZWQ7IH0KIApAQCAtMjk2LDcgKzI5Myw2IEBA
IHByaXZhdGU6CiAgICAgYm9vbCBtX2lzUGFpbnRUaW1pbmdFbmFibGVkIHsgZmFsc2UgfTsKICAg
ICBib29sIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9p
c1VzZXJUaW1pbmdFbmFibGVkIHsgZmFsc2UgfTsKLSAgICBib29sIG1faXNTZWN1cmVDb250ZXh0
QXR0cmlidXRlRW5hYmxlZCB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzTWVudUl0ZW1FbGVtZW50
RW5hYmxlZCB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzRGlyZWN0b3J5VXBsb2FkRW5hYmxlZCB7
IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzQ3VzdG9tUGFzdGVib2FyZERhdGFFbmFibGVkIHsgZmFs
c2UgfTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvV2luZG93T3JXb3JrZXJHbG9iYWxTY29w
ZS5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9XaW5kb3dPcldvcmtlckds
b2JhbFNjb3BlLmlkbAkocmV2aXNpb24gMjY3MTAxKQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9X
aW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtNDUsOCArNDUs
MTUgQEAgdHlwZWRlZiAoQ2FudmFzSW1hZ2VTb3VyY2Ugb3IgQmxvYiBvciBJbQogLy8gaHR0cHM6
Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvd2ViYXBwYXBpcy5odG1sI3dpbmRvd29y
d29ya2VyZ2xvYmFsc2NvcGUtbWl4aW4KIGludGVyZmFjZSBtaXhpbiBXaW5kb3dPcldvcmtlckds
b2JhbFNjb3BlIHsKICAgICBbUmVwbGFjZWFibGVdIHJlYWRvbmx5IGF0dHJpYnV0ZSBVU1ZTdHJp
bmcgb3JpZ2luOworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzU2VjdXJlQ29udGV4
dDsKKyAgICAvLyBGSVhNRTogSW1wbGVtZW50ICdjcm9zc09yaWdpbklzb2xhdGVkJy4KKyAgICAv
LyByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjcm9zc09yaWdpbklzb2xhdGVkOworIAorICAg
IC8vIEJhc2U2NCB1dGlsaXR5IG1ldGhvZHMuCisgICAgW01heVRocm93RXhjZXB0aW9uXSBET01T
dHJpbmcgYXRvYihET01TdHJpbmcgc3RyaW5nKTsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb25dIERP
TVN0cmluZyBidG9hKERPTVN0cmluZyBzdHJpbmcpOwogCi0gICAgLy8gVGltZXJzCisgICAgLy8g
VGltZXJzLgogICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCB0YWtlIGEgVGltZXJIYW5kbGVyIChh
LmsuYS4gKERPTVN0cmluZyBvciBGdW5jdGlvbikpIHJhdGhlciB0aGFuIGEgU2NoZWR1bGVkQWN0
aW9uLgogICAgIFtDYWxsV2l0aD1HbG9iYWxPYmplY3QsIE1heVRocm93RXhjZXB0aW9uXSBsb25n
IHNldFRpbWVvdXQoU2NoZWR1bGVkQWN0aW9uIGhhbmRsZXIsIG9wdGlvbmFsIGxvbmcgdGltZW91
dCA9IDAsIGFueS4uLiBhcmd1bWVudHMpOwogICAgIHVuZGVmaW5lZCBjbGVhclRpbWVvdXQob3B0
aW9uYWwgbG9uZyBoYW5kbGUgPSAwKTsKQEAgLTU0LDE1ICs2MSw5IEBAIGludGVyZmFjZSBtaXhp
biBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3AKICAgICBbQ2FsbFdpdGg9R2xvYmFsT2JqZWN0LCBN
YXlUaHJvd0V4Y2VwdGlvbl0gbG9uZyBzZXRJbnRlcnZhbChTY2hlZHVsZWRBY3Rpb24gaGFuZGxl
ciwgb3B0aW9uYWwgbG9uZyB0aW1lb3V0ID0gMCwgYW55Li4uIGFyZ3VtZW50cyk7CiAgICAgdW5k
ZWZpbmVkIGNsZWFySW50ZXJ2YWwob3B0aW9uYWwgbG9uZyBoYW5kbGUgPSAwKTsKIAorICAgIC8v
IG1pY3JvdGFzayBxdWV1aW5nLgogICAgIFtDdXN0b21dIHVuZGVmaW5lZCBxdWV1ZU1pY3JvdGFz
ayhWb2lkQ2FsbGJhY2sgY2FsbGJhY2spOwogCi0gICAgLy8gQmFzZTY0IHV0aWxpdHkgbWV0aG9k
cy4KLSAgICBbTWF5VGhyb3dFeGNlcHRpb25dIERPTVN0cmluZyBhdG9iKERPTVN0cmluZyBzdHJp
bmcpOwotICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gRE9NU3RyaW5nIGJ0b2EoRE9NU3RyaW5nIHN0
cmluZyk7Ci0KLSAgICAvLyBTZWN1cmUgQ29udGV4dHMKLSAgICBbRW5hYmxlZEF0UnVudGltZT1J
c1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVdIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzU2Vj
dXJlQ29udGV4dDsKLQogICAgIC8vIEltYWdlQml0bWFwLgogICAgIFtFbmFibGVkQXRSdW50aW1l
PUltYWdlQml0bWFwXSBQcm9taXNlPEltYWdlQml0bWFwPiBjcmVhdGVJbWFnZUJpdG1hcChJbWFn
ZUJpdG1hcFNvdXJjZSBpbWFnZSwgb3B0aW9uYWwgSW1hZ2VCaXRtYXBPcHRpb25zIG9wdGlvbnMp
OwogICAgIFtFbmFibGVkQXRSdW50aW1lPUltYWdlQml0bWFwXSBQcm9taXNlPEltYWdlQml0bWFw
PiBjcmVhdGVJbWFnZUJpdG1hcChJbWFnZUJpdG1hcFNvdXJjZSBpbWFnZSwgbG9uZyBzeCwgbG9u
ZyBzeSwgbG9uZyBzdywgbG9uZyBzaCwgb3B0aW9uYWwgSW1hZ2VCaXRtYXBPcHRpb25zIG9wdGlv
bnMpOwpJbmRleDogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDktMTYgIFNhbSBX
ZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBydW50aW1lIHNldHRp
bmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgaXNTZWN1cmVDb250ZXh0IEFQST8KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjU2MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBydW50aW1l
IHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgdGhlIGlzU2VjdXJlQ29udGV4dCBh
dHRyaWJ1dGUuIAorICAgICAgICBvbiB3aW5kb3cgYW5kIHRoZSB3b3JrZXIgZ2xvYmFsIHNjb3Bl
LiBUaGVyZSBpcyBubyBrbm93biByZWFzb24gb25lIHdvdWxkIG5lZWQgCisgICAgICAgIHRvIGRp
c2FibGUgaXQuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXMueWFtbDoKKyAgICAg
ICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZl
cmVuY2VzU2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCk6CisgICAgICAgIChXS1By
ZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCk6CisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmg6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcik6
CisKIDIwMjAtMDktMTUgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgogCiAgICAgICAg
IFJlbW92ZSBydW50aW1lIHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgZmV0Y2gg
QVBJCkluZGV4OiBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcmVmZXJlbmNlcy55YW1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWwJKHJldmlz
aW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWwJ
KHdvcmtpbmcgY29weSkKQEAgLTEyNjUsMTEgKzEyNjUsNiBAQCBMaW5rUHJlbG9hZEVuYWJsZWQ6
CiAgIHR5cGU6IGJvb2wKICAgZGVmYXVsdFZhbHVlOiB0cnVlCiAKLUlzU2VjdXJlQ29udGV4dEF0
dHJpYnV0ZUVuYWJsZWQ6Ci0gIHR5cGU6IGJvb2wKLSAgZGVmYXVsdFZhbHVlOiB0cnVlCi0gIHdl
YmNvcmVCaW5kaW5nOiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzCi0KIFNvdXJjZUJ1ZmZlckNoYW5n
ZVR5cGVFbmFibGVkOgogICB0eXBlOiBib29sCiAgIGRlZmF1bHRWYWx1ZTogdHJ1ZQpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAJKHJl
dmlzaW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVy
ZW5jZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODg5LDE2ICsxODg5LDYgQEAgV0tTdHJpbmdS
ZWYgV0tQcmVmZXJlbmNlc0NvcHlNZWRpYUNvbnRlbgogICAgIHJldHVybiB0b0NvcGllZEFQSSh0
b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5tZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJl
U3VwcG9ydCgpKTsKIH0KIAotdm9pZCBXS1ByZWZlcmVuY2VzU2V0SXNTZWN1cmVDb250ZXh0QXR0
cmlidXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcp
Ci17Ci0gICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0SXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlRW5hYmxlZChmbGFnKTsKLX0KLQotYm9vbCBXS1ByZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250
ZXh0QXR0cmlidXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQotewot
ICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5pc1NlY3VyZUNvbnRleHRBdHRyaWJ1
dGVFbmFibGVkKCk7Ci19Ci0KIGJvb2wgV0tQcmVmZXJlbmNlc0dldExlZ2FjeUVuY3J5cHRlZE1l
ZGlhQVBJRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQogewogICAgIHJl
dHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5sZWdhY3lFbmNyeXB0ZWRNZWRpYUFQSUVuYWJs
ZWQoKTsKQEAgLTIyNDUsMyArMjIzNSwxMiBAQCBib29sIFdLUHJlZmVyZW5jZXNHZXRGZXRjaEFQ
SUVuYWJsZWQoV0tQCiB7CiAgICAgcmV0dXJuIHRydWU7CiB9CisKK3ZvaWQgV0tQcmVmZXJlbmNl
c1NldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiwgYm9v
bCkKK3sKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRl
RW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKQoreworICAgIHJldHVybiB0cnVlOworfQpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
UmVmUHJpdmF0ZS5oCShyZXZpc2lvbiAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01Mzcs
MTAgKzUzNyw2IEBAIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYUNvbnQKIFdL
X0VYUE9SVCBXS1N0cmluZ1JlZiBXS1ByZWZlcmVuY2VzQ29weU1lZGlhQ29udGVudFR5cGVzUmVx
dWlyaW5nSGFyZHdhcmVTdXBwb3J0KFdLUHJlZmVyZW5jZXNSZWYpOwogCiAvLyBEZWZhdWx0cyB0
byBmYWxzZS4KLVdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRJc1NlY3VyZUNvbnRleHRB
dHRyaWJ1dGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZyk7Ci1XS19FWFBPUlQg
Ym9vbCBXS1ByZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZChXS1By
ZWZlcmVuY2VzUmVmKTsKLQotLy8gRGVmYXVsdHMgdG8gZmFsc2UuCiBXS19FWFBPUlQgdm9pZCBX
S1ByZWZlcmVuY2VzU2V0SW5zcGVjdG9yQWRkaXRpb25zRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVm
LCBib29sIGZsYWcpOwogV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldEluc3BlY3RvckFk
ZGl0aW9uc0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZik7CiAKQEAgLTYwNSw2ICs2MDEsOCBAQCBX
S19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0SGl4aWU3NldlCiBXS19FWFBPUlQgYm9vbCBX
S1ByZWZlcmVuY2VzR2V0SGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZChXS1ByZWZlcmVu
Y2VzUmVmKSBXS19DX0FQSV9ERVBSRUNBVEVEOwogV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNl
c1NldEZldGNoQVBJRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmLCBib29sKSBXS19DX0FQSV9ERVBS
RUNBVEVEOwogV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldEZldGNoQVBJRW5hYmxlZChX
S1ByZWZlcmVuY2VzUmVmKSBXS19DX0FQSV9ERVBSRUNBVEVEOworV0tfRVhQT1JUIHZvaWQgV0tQ
cmVmZXJlbmNlc1NldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNl
c1JlZiwgYm9vbCkgV0tfQ19BUElfREVQUkVDQVRFRDsKK1dLX0VYUE9SVCBib29sIFdLUHJlZmVy
ZW5jZXNHZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYp
IFdLX0NfQVBJX0RFUFJFQ0FURUQ7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpJbmRleDogU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5q
ZWN0ZWRCdW5kbGUuY3BwCShyZXZpc2lvbiAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yMzcsMTEgKzIzNyw2IEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGU6Om92ZXJyaWRlQm9vbFByZWZl
cmUKICAgICB9CiAjZW5kaWYKIAotICAgIGlmIChwcmVmZXJlbmNlID09ICJXZWJLaXRJc1NlY3Vy
ZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkIikgewotICAgICAgICBXZWJQcmVmZXJlbmNlc1N0b3Jl
OjpvdmVycmlkZUJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6aXNTZWN1cmVDb250
ZXh0QXR0cmlidXRlRW5hYmxlZEtleSgpLCBlbmFibGVkKTsKLSAgICAgICAgUnVudGltZUVuYWJs
ZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVF
bmFibGVkKGVuYWJsZWQpOwotICAgIH0KLQogICAgIGlmIChwcmVmZXJlbmNlID09ICJXZWJLaXRX
ZWJBUElTdGF0aXN0aWNzRW5hYmxlZCIpCiAgICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNoYXJlZEZlYXR1cmVzKCkuc2V0V2ViQVBJU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlZCk7CiAK
SW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzE0OSkKKysrIFNv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDIzIEBACisyMDIwLTA5LTE2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAg
ICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIGlz
U2VjdXJlQ29udGV4dCBBUEk/CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMTY1NjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcg
dGhlIHRoZSBpc1NlY3VyZUNvbnRleHQgYXR0cmlidXRlLiAKKyAgICAgICAgb24gd2luZG93IGFu
ZCB0aGUgd29ya2VyIGdsb2JhbCBzY29wZS4gVGhlcmUgaXMgbm8ga25vd24gcmVhc29uIG9uZSB3
b3VsZCBuZWVkIAorICAgICAgICB0byBkaXNhYmxlIGl0LgorCisgICAgICAgICogV2ViVmlldy9X
ZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVu
Y2VzLm1tOgorICAgICAgICAoK1tXZWJQcmVmZXJlbmNlcyBpbml0aWFsaXplXSk6CisgICAgICAg
ICgtW1dlYlByZWZlcmVuY2VzIHNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6XSk6
CisgICAgICAgICgtW1dlYlByZWZlcmVuY2VzIGlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJs
ZWRdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAgICAg
ICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJlZmVyZW5jZXND
aGFuZ2VkOl0pOgorCiAyMDIwLTA5LTE1ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4K
IAogICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcg
dGhlIGZldGNoIEFQSQpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJQ
cmVmZXJlbmNlS2V5c1ByaXZhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oCShyZXZpc2lvbiAyNjcxMDEp
CisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJp
dmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOTksNyArMTk5LDYgQEAKICNkZWZpbmUgV2ViS2l0
TGlua1ByZWxvYWRFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdExpbmtQcmVsb2FkRW5hYmxl
ZCIKICNkZWZpbmUgV2ViS2l0TWVkaWFQcmVsb2FkaW5nRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJX
ZWJLaXRNZWRpYVByZWxvYWRpbmdFbmFibGVkIgogI2RlZmluZSBXZWJLaXRNZWRpYVVzZXJHZXN0
dXJlSW5oZXJpdHNGcm9tRG9jdW1lbnQgQCJXZWJLaXRNZWRpYVVzZXJHZXN0dXJlSW5oZXJpdHNG
cm9tRG9jdW1lbnQiCi0jZGVmaW5lIFdlYktpdElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJs
ZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCIK
ICNkZWZpbmUgV2ViS2l0Vmlld3BvcnRGaXRFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdFZp
ZXdwb3J0Rml0RW5hYmxlZCIKICNkZWZpbmUgV2ViS2l0Q29uc3RhbnRQcm9wZXJ0aWVzRW5hYmxl
ZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRDb25zdGFudFByb3BlcnRpZXNFbmFibGVkIgogI2RlZmlu
ZSBXZWJLaXRDb2xvckZpbHRlckVuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0Q29sb3JGaWx0
ZXJFbmFibGVkIgpAQCAtMjk1LDMgKzI5NCw0IEBACiAjZGVmaW5lIFdlYktpdEhpeGllNzZXZWJT
b2NrZXRQcm90b2NvbEVuYWJsZWRLZXkgQCJXZWJLaXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xF
bmFibGVkIgogI2RlZmluZSBXZWJLaXRDdXN0b21FbGVtZW50c0VuYWJsZWRQcmVmZXJlbmNlS2V5
IEAiV2ViS2l0Q3VzdG9tRWxlbWVudHNFbmFibGVkIgogI2RlZmluZSBXZWJLaXRGZXRjaEFQSUVu
YWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0RmV0Y2hBUElFbmFibGVkIgorI2RlZmluZSBXZWJL
aXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdElz
U2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQiCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0JKHJldmlzaW9uIDI2NzEwMSkK
KysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0JKHdv
cmtpbmcgY29weSkKQEAgLTY4OSw3ICs2ODksNiBAQCArICh2b2lkKWluaXRpYWxpemUKICAgICAg
ICAgQE5PLCBXZWJLaXRVc2VyVGltaW5nRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAgICAgIEBO
TywgV2ViS2l0UmVzb3VyY2VUaW1pbmdFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgQE5P
LCBXZWJLaXRNZWRpYVVzZXJHZXN0dXJlSW5oZXJpdHNGcm9tRG9jdW1lbnQsCi0gICAgICAgIEBO
TywgV2ViS2l0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZFByZWZlcmVuY2VLZXksCiAg
ICAgICAgIEBZRVMsIFdlYktpdExlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZEtleSwKICAg
ICAgICAgQE5PLCBXZWJLaXRFbmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWRLZXksCiAgICAgICAgIEBZ
RVMsIFdlYktpdFZpZXdwb3J0Rml0RW5hYmxlZFByZWZlcmVuY2VLZXksCkBAIC0zMzI4LDE2ICsz
MzI3LDYgQEAgLSAodm9pZClzZXRNZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcgogICAgIFtz
ZWxmIF9zZXRTdHJpbmdWYWx1ZTp2YWx1ZSBmb3JLZXk6V2ViS2l0TWVkaWFDb250ZW50VHlwZXNS
ZXF1aXJpbmdIYXJkd2FyZVN1cHBvcnRQcmVmZXJlbmNlS2V5XTsKIH0KIAotLSAoQk9PTClpc1Nl
Y3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkCi17Ci0gICAgcmV0dXJuIFtzZWxmIF9ib29sVmFs
dWVGb3JLZXk6V2ViS2l0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZFByZWZlcmVuY2VL
ZXldOwotfQotCi0tICh2b2lkKXNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6KEJP
T0wpZmxhZwotewotICAgIFtzZWxmIF9zZXRCb29sVmFsdWU6ZmxhZyBmb3JLZXk6V2ViS2l0SXNT
ZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZFByZWZlcmVuY2VLZXldOwotfQotCiAtIChCT09M
KWxlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZAogewogICAgIHJldHVybiBbc2VsZiBfYm9v
bFZhbHVlRm9yS2V5OldlYktpdExlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZEtleV07CkBA
IC0zNjkyLDYgKzM2ODEsMTUgQEAgKyAoTlNTdHJpbmcgKilfY29uY2F0ZW5hdGVLZXlXaXRoSUJD
cmVhdAogLy8gVGhlIHByZWZlcmVuY2VzIGluIHRoaXMgY2F0ZWdvcnkgYXJlIGRlcHJlY2F0ZWQg
YW5kIGhhdmUgbm8gZWZmZWN0LiBUaGV5IHNob3VsZAogLy8gYmUgcmVtb3ZlZCB3aGVuIGl0IGlz
IGNvbnNpZGVyZWQgc2FmZSB0byBkbyBzby4KIAorLSAodm9pZClzZXRJc1NlY3VyZUNvbnRleHRB
dHRyaWJ1dGVFbmFibGVkOihCT09MKWZsYWcKK3sKK30KKworLSAoQk9PTClpc1NlY3VyZUNvbnRl
eHRBdHRyaWJ1dGVFbmFibGVkCit7CisgICAgcmV0dXJuIFlFUzsKK30KKwogLSAodm9pZClzZXRG
ZXRjaEFQSUVuYWJsZWQ6KEJPT0wpZmxhZwogewogfQpAQCAtMzcwMSw3ICszNjk5LDYgQEAgLSAo
Qk9PTClmZXRjaEFQSUVuYWJsZWQKICAgICByZXR1cm4gWUVTOwogfQogCi0KIC0gKHZvaWQpc2V0
U2hhZG93RE9NRW5hYmxlZDooQk9PTClmbGFnCiB7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgJKHJl
dmlzaW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJl
ZmVyZW5jZXNQcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTU5MSw5ICs1OTEsNiBAQCBAaW50
ZXJmYWNlIFdlYlByZWZlcmVuY2VzIChXZWJQcml2YXRlKQogLSAodm9pZClzZXRJbnRlcnNlY3Rp
b25PYnNlcnZlckVuYWJsZWQ6KEJPT0wpZmxhZzsKIC0gKEJPT0wpaW50ZXJzZWN0aW9uT2JzZXJ2
ZXJFbmFibGVkOwogCi0tICh2b2lkKXNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6
KEJPT0wpZmxhZzsKLS0gKEJPT0wpaXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZDsKLQog
LSAodm9pZClzZXRTZXJ2ZXJUaW1pbmdFbmFibGVkOihCT09MKWZsYWc7CiAtIChCT09MKXNlcnZl
clRpbWluZ0VuYWJsZWQ7CiAKQEAgLTY5OCw2ICs2OTUsOSBAQCBAaW50ZXJmYWNlIFdlYlByZWZl
cmVuY2VzIChXZWJQcml2YXRlRGVwCiAvLyBUaGUgcHJlZmVyZW5jZXMgaW4gdGhpcyBjYXRlZ29y
eSBhcmUgZGVwcmVjYXRlZCBhbmQgaGF2ZSBubyBlZmZlY3QuIFRoZXkgc2hvdWxkCiAvLyBiZSBy
ZW1vdmVkIHdoZW4gaXQgaXMgY29uc2lkZXJlZCBzYWZlIHRvIGRvIHNvLgogCistICh2b2lkKXNl
dElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6KEJPT0wpZmxhZzsKKy0gKEJPT0wpaXNT
ZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZDsKKwogLSAodm9pZClzZXRGZXRjaEFQSUVuYWJs
ZWQ6KEJPT0wpZmxhZzsKIC0gKEJPT0wpZmV0Y2hBUElFbmFibGVkOwogCkluZGV4OiBTb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCShyZXZpc2lvbiAyNjcxMDEpCisr
KyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0JKHdvcmtpbmcgY29w
eSkKQEAgLTMzNzIsNyArMzM3Miw2IEBAIC0gKHZvaWQpX3ByZWZlcmVuY2VzQ2hhbmdlZDooV2Vi
UHJlZmVyZW4KICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNl
dFJlc291cmNlVGltaW5nRW5hYmxlZChwcmVmZXJlbmNlcy5yZXNvdXJjZVRpbWluZ0VuYWJsZWQp
OwogICAgIHNldHRpbmdzLnNldExpbmtQcmVsb2FkRW5hYmxlZChwcmVmZXJlbmNlcy5saW5rUHJl
bG9hZEVuYWJsZWQpOwogICAgIHNldHRpbmdzLnNldE1lZGlhUHJlbG9hZGluZ0VuYWJsZWQocHJl
ZmVyZW5jZXMubWVkaWFQcmVsb2FkaW5nRW5hYmxlZCk7Ci0gICAgUnVudGltZUVuYWJsZWRGZWF0
dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVk
KHByZWZlcmVuY2VzLmlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQpOwogICAgIFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0RGlyZWN0b3J5VXBsb2FkRW5h
YmxlZChbcHJlZmVyZW5jZXMgZGlyZWN0b3J5VXBsb2FkRW5hYmxlZF0pOwogICAgIFJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0TWVudUl0ZW1FbGVtZW50RW5hYmxl
ZChbcHJlZmVyZW5jZXMgbWVudUl0ZW1FbGVtZW50RW5hYmxlZF0pOwogICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0QWNjZXNzaWJpbGl0eU9iamVjdE1vZGVs
RW5hYmxlZChbcHJlZmVyZW5jZXMgYWNjZXNzaWJpbGl0eU9iamVjdE1vZGVsRW5hYmxlZF0pOwpJ
bmRleDogU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwkocmV2aXNpb24gMjY3MTAxKQorKysgU291
cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEs
MjEgQEAKKzIwMjAtMDktMTYgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgorCisgICAg
ICAgIFJlbW92ZSBydW50aW1lIHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgaXNT
ZWN1cmVDb250ZXh0IEFQST8KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNjU2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFJlbW92ZSBydW50aW1lIHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0
aGUgdGhlIGlzU2VjdXJlQ29udGV4dCBhdHRyaWJ1dGUuIAorICAgICAgICBvbiB3aW5kb3cgYW5k
IHRoZSB3b3JrZXIgZ2xvYmFsIHNjb3BlLiBUaGVyZSBpcyBubyBrbm93biByZWFzb24gb25lIHdv
dWxkIG5lZWQgCisgICAgICAgIHRvIGRpc2FibGUgaXQuCisKKyAgICAgICAgKiBXZWJQcmVmZXJl
bmNlcy5jcHA6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6aW5pdGlhbGl6ZURlZmF1bHRTZXR0
aW5ncyk6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6c2V0SXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlRW5hYmxlZCk6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6aXNTZWN1cmVDb250ZXh0QXR0
cmlidXRlRW5hYmxlZCk6CisgICAgICAgICogV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJWaWV3
Ojpub3RpZnlQcmVmZXJlbmNlc0NoYW5nZWQpOgorCiAyMDIwLTA5LTE1ICBTYW0gV2VpbmlnICA8
d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBl
bmFibGluZy9kaXNhYmxpbmcgdGhlIGZldGNoIEFQSQpJbmRleDogU291cmNlL1dlYktpdExlZ2Fj
eS93aW4vV2ViUHJlZmVyZW5jZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdh
Y3kvd2luL1dlYlByZWZlcmVuY2VzLmNwcAkocmV2aXNpb24gMjY3MTAxKQorKysgU291cmNlL1dl
YktpdExlZ2FjeS93aW4vV2ViUHJlZmVyZW5jZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMjks
OCArMzI5LDYgQEAgdm9pZCBXZWJQcmVmZXJlbmNlczo6aW5pdGlhbGl6ZURlZmF1bHRTZQogCiAg
ICAgQ0ZEaWN0aW9uYXJ5QWRkVmFsdWUoZGVmYXVsdHMsIENGU1RSKFdlYktpdE1lZGlhUHJlbG9h
ZGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5KSwga0NGQm9vbGVhbkZhbHNlKTsKIAotICAgIENGRGlj
dGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRJc1NlY3VyZUNvbnRleHRBdHRy
aWJ1dGVFbmFibGVkUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5GYWxzZSk7Ci0KICAgICBDRkRp
Y3Rpb25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0RGF0YVRyYW5zZmVySXRlbXNF
bmFibGVkUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5GYWxzZSk7CiAKICAgICBDRkRpY3Rpb25h
cnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0SW5zcGVjdG9yQWRkaXRpb25zRW5hYmxl
ZFByZWZlcmVuY2VLZXkpLCBrQ0ZCb29sZWFuRmFsc2UpOwpAQCAtMjIwNiwxNyArMjIwNCwxNiBA
QCBIUkVTVUxUIFdlYlByZWZlcmVuY2VzOjpzd2l0Y2hOZXR3b3JrTG9hCiAgICAgcmV0dXJuIFNf
T0s7CiB9CiAKLUhSRVNVTFQgV2ViUHJlZmVyZW5jZXM6OnNldElzU2VjdXJlQ29udGV4dEF0dHJp
YnV0ZUVuYWJsZWQoQk9PTCBlbmFibGVkKQorSFJFU1VMVCBXZWJQcmVmZXJlbmNlczo6c2V0SXNT
ZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZChCT09MKQogewotICAgIHNldEJvb2xWYWx1ZShX
ZWJLaXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkUHJlZmVyZW5jZUtleSwgZW5hYmxl
ZCk7CiAgICAgcmV0dXJuIFNfT0s7CiB9CiAKLUhSRVNVTFQgV2ViUHJlZmVyZW5jZXM6OmlzU2Vj
dXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoX091dF8gQk9PTCogZW5hYmxlZCkKK0hSRVNVTFQg
V2ViUHJlZmVyZW5jZXM6OmlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoX091dF8gQk9P
TCopCiB7CiAgICAgaWYgKCFlbmFibGVkKQogICAgICAgICByZXR1cm4gRV9QT0lOVEVSOwotICAg
ICplbmFibGVkID0gYm9vbFZhbHVlRm9yS2V5KFdlYktpdElzU2VjdXJlQ29udGV4dEF0dHJpYnV0
ZUVuYWJsZWRQcmVmZXJlbmNlS2V5KTsKKyAgICAqZW5hYmxlZCA9IHRydWU7CiAgICAgcmV0dXJu
IFNfT0s7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCShyZXZpc2lv
biAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNTI5NCwxMSArNTI5NCw2IEBAIEhSRVNVTFQgV2ViVmlldzo6bm90aWZ5UHJl
ZmVyZW5jZXNDaGFuZ2UKICAgICAgICAgcmV0dXJuIGhyOwogICAgIHNldHRpbmdzLnNldE1lZGlh
UHJlbG9hZGluZ0VuYWJsZWQoISFlbmFibGVkKTsKIAotICAgIGhyID0gcHJlZnNQcml2YXRlLT5p
c1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkKCZlbmFibGVkKTsKLSAgICBpZiAoRkFJTEVE
KGhyKSkKLSAgICAgICAgcmV0dXJuIGhyOwotICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNo
YXJlZEZlYXR1cmVzKCkuc2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCghIWVuYWJs
ZWQpOwotCiAgICAgaHIgPSBwcmVmc1ByaXZhdGUtPmRhdGFUcmFuc2Zlckl0ZW1zRW5hYmxlZCgm
ZW5hYmxlZCk7CiAgICAgaWYgKEZBSUxFRChocikpCiAgICAgICAgIHJldHVybiBocjsKSW5kZXg6
IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9u
IDI2NzE0OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3
IEBACisyMDIwLTA5LTE2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAg
ICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIGlzU2Vj
dXJlQ29udGV4dCBBUEk/CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTY1NjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhl
IHRoZSBpc1NlY3VyZUNvbnRleHQgYXR0cmlidXRlLiAKKyAgICAgICAgb24gd2luZG93IGFuZCB0
aGUgd29ya2VyIGdsb2JhbCBzY29wZS4gVGhlcmUgaXMgbm8ga25vd24gcmVhc29uIG9uZSB3b3Vs
ZCBuZWVkIAorICAgICAgICB0byBkaXNhYmxlIGl0LgorCisgICAgICAgICogRHVtcFJlbmRlclRy
ZWUvVGVzdE9wdGlvbnMuY3BwOgorICAgICAgICAoVGVzdE9wdGlvbnM6OlRlc3RPcHRpb25zKToK
KyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9UZXN0T3B0aW9ucy5oOgorICAgICAgICAqIER1bXBS
ZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbToKKyAgICAgICAgKHNldFdlYlByZWZlcmVu
Y2VzRm9yVGVzdE9wdGlvbnMpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9EdW1wUmVu
ZGVyVHJlZS5jcHA6CisgICAgICAgIChzZXRXZWJQcmVmZXJlbmNlc0ZvclRlc3RPcHRpb25zKToK
KyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAg
KFdUUjo6VGVzdENvbnRyb2xsZXI6OnJlc2V0UHJlZmVyZW5jZXNUb0NvbnNpc3RlbnRWYWx1ZXMp
OgorICAgICAgICAoV1RSOjp1cGRhdGVUZXN0T3B0aW9uc0Zyb21UZXN0SGVhZGVyKToKKyAgICAg
ICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RPcHRpb25zLmg6CisgICAgICAgIChXVFI6OlRlc3RP
cHRpb25zOjpoYXNTYW1lSW5pdGlhbGl6YXRpb25PcHRpb25zIGNvbnN0KToKKwogMjAyMC0wOS0x
NiAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0Zs
YXRwYWtdIHdlYmtpdC1id3JhcCBkcml2ZS1ieSBjbGVhbnVwcwpJbmRleDogVG9vbHMvRHVtcFJl
bmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJU
cmVlL1Rlc3RPcHRpb25zLmNwcAkocmV2aXNpb24gMjY3MTAxKQorKysgVG9vbHMvRHVtcFJlbmRl
clRyZWUvVGVzdE9wdGlvbnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTgsOCArMTE4LDYgQEAg
VGVzdE9wdGlvbnM6OlRlc3RPcHRpb25zKGNvbnN0IHN0ZDo6c3RyaQogICAgICAgICAgICAgZW5h
YmxlRHJhZ0Rlc3RpbmF0aW9uQWN0aW9uTG9hZCA9IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJWYWx1
ZSh2YWx1ZSk7CiAgICAgICAgIGVsc2UgaWYgKGtleSA9PSAibGF5ZXJCYWNrZWRXZWJWaWV3IikK
ICAgICAgICAgICAgIGxheWVyQmFja2VkV2ViVmlldyA9IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJW
YWx1ZSh2YWx1ZSk7Ci0gICAgICAgIGVsc2UgaWYgKGtleSA9PSAiZW5hYmxlSXNTZWN1cmVDb250
ZXh0QXR0cmlidXRlIikKLSAgICAgICAgICAgIGVuYWJsZUlzU2VjdXJlQ29udGV4dEF0dHJpYnV0
ZSA9IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJWYWx1ZSh2YWx1ZSk7CiAgICAgICAgIGVsc2UgaWYg
KGtleSA9PSAiZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zIikKICAgICAgICAgICAgIGVuYWJsZUlu
c3BlY3RvckFkZGl0aW9ucyA9IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJWYWx1ZSh2YWx1ZSk7CiAg
ICAgICAgIGVsc2UgaWYgKGtleSA9PSAiZHVtcEpTQ29uc29sZUxvZ0luU3RkRXJyIikKSW5kZXg6
IFRvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
RHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuaAkocmV2aXNpb24gMjY3MTAxKQorKysgVG9vbHMv
RHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuaAkod29ya2luZyBjb3B5KQpAQCAtNDAsNyArNDAs
NiBAQCBzdHJ1Y3QgVGVzdE9wdGlvbnMgewogICAgIGJvb2wgZW5hYmxlUG9pbnRlckxvY2sgeyBm
YWxzZSB9OwogICAgIGJvb2wgZW5hYmxlRHJhZ0Rlc3RpbmF0aW9uQWN0aW9uTG9hZCB7IGZhbHNl
IH07CiAgICAgYm9vbCBsYXllckJhY2tlZFdlYlZpZXcgeyBmYWxzZSB9OwotICAgIGJvb2wgZW5h
YmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlIHsgdHJ1ZSB9OwogICAgIGJvb2wgZW5hYmxlSW5z
cGVjdG9yQWRkaXRpb25zIHsgZmFsc2UgfTsKICAgICBib29sIGR1bXBKU0NvbnNvbGVMb2dJblN0
ZEVyciB7IGZhbHNlIH07CiAgICAgYm9vbCBhbGxvd0Nyb3NzT3JpZ2luU3VicmVzb3VyY2VzVG9B
c2tGb3JDcmVkZW50aWFscyB7IGZhbHNlIH07CkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9t
YWMvRHVtcFJlbmRlclRyZWUubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL0R1bXBSZW5kZXJUcmVlLm1tCShyZXZpc2lvbiAyNjcxMDEpCisrKyBUb29scy9EdW1wUmVu
ZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0JKHdvcmtpbmcgY29weSkKQEAgLTk3Niw3ICs5
NzYsNiBAQCBzdGF0aWMgdm9pZCBzZXRXZWJQcmVmZXJlbmNlc0ZvclRlc3RPcHRpCiAgICAgcHJl
ZmVyZW5jZXMubWVudUl0ZW1FbGVtZW50RW5hYmxlZCA9IG9wdGlvbnMuZW5hYmxlTWVudUl0ZW1F
bGVtZW50OwogICAgIHByZWZlcmVuY2VzLmtleWdlbkVsZW1lbnRFbmFibGVkID0gb3B0aW9ucy5l
bmFibGVLZXlnZW5FbGVtZW50OwogICAgIHByZWZlcmVuY2VzLm1vZGVybk1lZGlhQ29udHJvbHNF
bmFibGVkID0gb3B0aW9ucy5lbmFibGVNb2Rlcm5NZWRpYUNvbnRyb2xzOwotICAgIHByZWZlcmVu
Y2VzLmlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQgPSBvcHRpb25zLmVuYWJsZUlzU2Vj
dXJlQ29udGV4dEF0dHJpYnV0ZTsKICAgICBwcmVmZXJlbmNlcy5pbnNwZWN0b3JBZGRpdGlvbnNF
bmFibGVkID0gb3B0aW9ucy5lbmFibGVJbnNwZWN0b3JBZGRpdGlvbnM7CiAgICAgcHJlZmVyZW5j
ZXMuYWxsb3dDcm9zc09yaWdpblN1YnJlc291cmNlc1RvQXNrRm9yQ3JlZGVudGlhbHMgPSBvcHRp
b25zLmFsbG93Q3Jvc3NPcmlnaW5TdWJyZXNvdXJjZXNUb0Fza0ZvckNyZWRlbnRpYWxzOwogICAg
IHByZWZlcmVuY2VzLndlYkFuaW1hdGlvbnNDU1NJbnRlZ3JhdGlvbkVuYWJsZWQgPSBvcHRpb25z
LmVuYWJsZVdlYkFuaW1hdGlvbnNDU1NJbnRlZ3JhdGlvbjsKSW5kZXg6IFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL3dpbi9EdW1wUmVuZGVyVHJlZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJl
bmRlclRyZWUvd2luL0R1bXBSZW5kZXJUcmVlLmNwcAkocmV2aXNpb24gMjY3MTAxKQorKysgVG9v
bHMvRHVtcFJlbmRlclRyZWUvd2luL0R1bXBSZW5kZXJUcmVlLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtOTEzLDcgKzkxMyw2IEBAIHN0YXRpYyB2b2lkIHNldFdlYlByZWZlcmVuY2VzRm9yVGVzdE9w
dGkKICAgICBwcmVmc1ByaXZhdGUtPnNldE1lbnVJdGVtRWxlbWVudEVuYWJsZWQob3B0aW9ucy5l
bmFibGVNZW51SXRlbUVsZW1lbnQpOwogICAgIHByZWZzUHJpdmF0ZS0+c2V0S2V5Z2VuRWxlbWVu
dEVuYWJsZWQob3B0aW9ucy5lbmFibGVLZXlnZW5FbGVtZW50KTsKICAgICBwcmVmc1ByaXZhdGUt
PnNldE1vZGVybk1lZGlhQ29udHJvbHNFbmFibGVkKG9wdGlvbnMuZW5hYmxlTW9kZXJuTWVkaWFD
b250cm9scyk7Ci0gICAgcHJlZnNQcml2YXRlLT5zZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVF
bmFibGVkKG9wdGlvbnMuZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlKTsKICAgICBwcmVm
c1ByaXZhdGUtPnNldEluc3BlY3RvckFkZGl0aW9uc0VuYWJsZWQob3B0aW9ucy5lbmFibGVJbnNw
ZWN0b3JBZGRpdGlvbnMpOwogICAgIHByZWZzUHJpdmF0ZS0+c2V0UmVxdWVzdElkbGVDYWxsYmFj
a0VuYWJsZWQob3B0aW9ucy5lbmFibGVSZXF1ZXN0SWRsZUNhbGxiYWNrKTsKICAgICBwcmVmc1By
aXZhdGUtPnNldEFzeW5jQ2xpcGJvYXJkQVBJRW5hYmxlZChvcHRpb25zLmVuYWJsZUFzeW5jQ2xp
cGJvYXJkQVBJKTsKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIu
Y3BwCShyZXZpc2lvbiAyNjcxMDEpCisrKyBUb29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250
cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTE1LDcgKzkxNSw2IEBAIHZvaWQgVGVzdENv
bnRyb2xsZXI6OnJlc2V0UHJlZmVyZW5jZXNUb0MKICAgICBXS1ByZWZlcmVuY2VzU2V0TW9kZXJu
TWVkaWFDb250cm9sc0VuYWJsZWQocHJlZmVyZW5jZXMsIG9wdGlvbnMuZW5hYmxlTW9kZXJuTWVk
aWFDb250cm9scyk7CiAgICAgV0tQcmVmZXJlbmNlc1NldFdlYkF1dGhlbnRpY2F0aW9uRW5hYmxl
ZChwcmVmZXJlbmNlcywgb3B0aW9ucy5lbmFibGVXZWJBdXRoZW50aWNhdGlvbik7CiAgICAgV0tQ
cmVmZXJlbmNlc1NldFdlYkF1dGhlbnRpY2F0aW9uTG9jYWxBdXRoZW50aWNhdG9yRW5hYmxlZChw
cmVmZXJlbmNlcywgb3B0aW9ucy5lbmFibGVXZWJBdXRoZW50aWNhdGlvbkxvY2FsQXV0aGVudGlj
YXRvcik7Ci0gICAgV0tQcmVmZXJlbmNlc1NldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJs
ZWQocHJlZmVyZW5jZXMsIG9wdGlvbnMuZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlKTsK
ICAgICBXS1ByZWZlcmVuY2VzU2V0QWxsb3dDcm9zc09yaWdpblN1YnJlc291cmNlc1RvQXNrRm9y
Q3JlZGVudGlhbHMocHJlZmVyZW5jZXMsIG9wdGlvbnMuYWxsb3dDcm9zc09yaWdpblN1YnJlc291
cmNlc1RvQXNrRm9yQ3JlZGVudGlhbHMpOwogICAgIFdLUHJlZmVyZW5jZXNTZXRDb2xvckZpbHRl
ckVuYWJsZWQocHJlZmVyZW5jZXMsIG9wdGlvbnMuZW5hYmxlQ29sb3JGaWx0ZXIpOwogICAgIFdL
UHJlZmVyZW5jZXNTZXRQdW5jaE91dFdoaXRlQmFja2dyb3VuZHNJbkRhcmtNb2RlKHByZWZlcmVu
Y2VzLCBvcHRpb25zLnB1bmNoT3V0V2hpdGVCYWNrZ3JvdW5kc0luRGFya01vZGUpOwpAQCAtMTQ5
Nyw4ICsxNDk2LDYgQEAgc3RhdGljIHZvaWQgdXBkYXRlVGVzdE9wdGlvbnNGcm9tVGVzdEhlYQog
ICAgICAgICAgICAgdGVzdE9wdGlvbnMuZW5hYmxlV2ViQXV0aGVudGljYXRpb24gPSBwYXJzZUJv
b2xlYW5UZXN0SGVhZGVyVmFsdWUodmFsdWUpOwogICAgICAgICBlbHNlIGlmIChrZXkgPT0gImVu
YWJsZVdlYkF1dGhlbnRpY2F0aW9uTG9jYWxBdXRoZW50aWNhdG9yIikKICAgICAgICAgICAgIHRl
c3RPcHRpb25zLmVuYWJsZVdlYkF1dGhlbnRpY2F0aW9uTG9jYWxBdXRoZW50aWNhdG9yID0gcGFy
c2VCb29sZWFuVGVzdEhlYWRlclZhbHVlKHZhbHVlKTsKLSAgICAgICAgZWxzZSBpZiAoa2V5ID09
ICJlbmFibGVJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGUiKQotICAgICAgICAgICAgdGVzdE9wdGlv
bnMuZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlID0gcGFyc2VCb29sZWFuVGVzdEhlYWRl
clZhbHVlKHZhbHVlKTsKICAgICAgICAgZWxzZSBpZiAoa2V5ID09ICJlbmFibGVJbnNwZWN0b3JB
ZGRpdGlvbnMiKQogICAgICAgICAgICAgdGVzdE9wdGlvbnMuZW5hYmxlSW5zcGVjdG9yQWRkaXRp
b25zID0gcGFyc2VCb29sZWFuVGVzdEhlYWRlclZhbHVlKHZhbHVlKTsKICAgICAgICAgZWxzZSBp
ZiAoa2V5ID09ICJkdW1wSlNDb25zb2xlTG9nSW5TdGRFcnIiKQpJbmRleDogVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RS
dW5uZXIvVGVzdE9wdGlvbnMuaAkocmV2aXNpb24gMjY3MTAxKQorKysgVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9UZXN0T3B0aW9ucy5oCSh3b3JraW5nIGNvcHkpCkBAIC03OCw3ICs3OCw2IEBAIHN0
cnVjdCBUZXN0T3B0aW9ucyB7CiAgICAgYm9vbCBlbmFibGVQb2ludGVyTG9jayB7IGZhbHNlIH07
CiAgICAgYm9vbCBlbmFibGVXZWJBdXRoZW50aWNhdGlvbiB7IHRydWUgfTsKICAgICBib29sIGVu
YWJsZVdlYkF1dGhlbnRpY2F0aW9uTG9jYWxBdXRoZW50aWNhdG9yIHsgdHJ1ZSB9OwotICAgIGJv
b2wgZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlIHsgdHJ1ZSB9OwogICAgIGJvb2wgZW5h
YmxlSW5zcGVjdG9yQWRkaXRpb25zIHsgZmFsc2UgfTsKICAgICBib29sIHNob3VsZFNob3dUb3Vj
aGVzIHsgZmFsc2UgfTsKICAgICBib29sIGR1bXBKU0NvbnNvbGVMb2dJblN0ZEVyciB7IGZhbHNl
IH07CkBAIC0xNDEsNyArMTQwLDYgQEAgc3RydWN0IFRlc3RPcHRpb25zIHsKICAgICAgICAgICAg
IHx8IGVuYWJsZVBvaW50ZXJMb2NrICE9IG9wdGlvbnMuZW5hYmxlUG9pbnRlckxvY2sKICAgICAg
ICAgICAgIHx8IGVuYWJsZVdlYkF1dGhlbnRpY2F0aW9uICE9IG9wdGlvbnMuZW5hYmxlV2ViQXV0
aGVudGljYXRpb24KICAgICAgICAgICAgIHx8IGVuYWJsZVdlYkF1dGhlbnRpY2F0aW9uTG9jYWxB
dXRoZW50aWNhdG9yICE9IG9wdGlvbnMuZW5hYmxlV2ViQXV0aGVudGljYXRpb25Mb2NhbEF1dGhl
bnRpY2F0b3IKLSAgICAgICAgICAgIHx8IGVuYWJsZUlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZSAh
PSBvcHRpb25zLmVuYWJsZUlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZQogICAgICAgICAgICAgfHwg
ZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zICE9IG9wdGlvbnMuZW5hYmxlSW5zcGVjdG9yQWRkaXRp
b25zCiAgICAgICAgICAgICB8fCBkdW1wSlNDb25zb2xlTG9nSW5TdGRFcnIgIT0gb3B0aW9ucy5k
dW1wSlNDb25zb2xlTG9nSW5TdGRFcnIKICAgICAgICAgICAgIHx8IGFwcGxpY2F0aW9uTWFuaWZl
c3QgIT0gb3B0aW9ucy5hcHBsaWNhdGlvbk1hbmlmZXN0CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjcx
NTApCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwx
OCBAQAorMjAyMC0wOS0xNiAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CisKKyAgICAg
ICAgUmVtb3ZlIHJ1bnRpbWUgc2V0dGluZyBmb3IgZW5hYmxpbmcvZGlzYWJsaW5nIHRoZSBpc1Nl
Y3VyZUNvbnRleHQgQVBJPworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE2NTYyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgUmVtb3ZlIHJ1bnRpbWUgc2V0dGluZyBmb3IgZW5hYmxpbmcvZGlzYWJsaW5nIHRo
ZSB0aGUgaXNTZWN1cmVDb250ZXh0IGF0dHJpYnV0ZS4gCisgICAgICAgIG9uIHdpbmRvdyBhbmQg
dGhlIHdvcmtlciBnbG9iYWwgc2NvcGUuIFRoZXJlIGlzIG5vIGtub3duIHJlYXNvbiBvbmUgd291
bGQgbmVlZCAKKyAgICAgICAgdG8gZGlzYWJsZSBpdC4KKworICAgICAgICAqIHBsYXRmb3JtL3dp
bi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHNlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1k
aXNhYmxlZC1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogc2VjdXJpdHkvaXNTZWN1
cmVDb250ZXh0LWRpc2FibGVkLmh0bWw6IFJlbW92ZWQuCisKIDIwMjAtMDktMTYgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBPZmZsaW5lQXVkaW9Db250ZXh0IGNv
bnN0cnVjdG9yIHNob3VsZCBub3QgdGhyb3cgd2hlbiBnaXZlbiBhIGJhZCBidWZmZXIgbGVuZ3Ro
CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwkocmV2aXNp
b24gMjY3MTAxKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMJ
KHdvcmtpbmcgY29weSkKQEAgLTkwLDcgKzkwLDYgQEAgd2Via2l0Lm9yZy9iLzE3ODMzNyBmYXN0
L3JlcGxhY2VkL3dpZHRoMQogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAogIyBGSVhNRTogSW1w
bGVtZW50IHRlc3Qgb3B0aW9ucyBwYXJzaW5nICg8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIC4u
LiBdIC0tPikuCi13ZWJraXQub3JnL2IvMTczMjgxIHNlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1k
aXNhYmxlZC5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMTczMjgxIGh0dHAvdGVzdHMvbWVk
aWEvdmlkZW8tYXV0aC13aXRoLWFsbG93Q3Jvc3NPcmlnaW5TdWJyZXNvdXJjZXNUb0Fza0ZvckNy
ZWRlbnRpYWxzLmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xNzMyODEgaHR0cC90ZXN0cy9z
ZWN1cml0eS9jcmVkZW50aWFscy1pZnJhbWVzLWFsbG93Q3Jvc3NPcmlnaW5TdWJyZXNvdXJjZXNU
b0Fza0ZvckNyZWRlbnRpYWxzLmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xNzMyODEgaHR0
cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvaW5zZWN1cmUtYmFzaWMtYXV0aC1pbWFnZS1h
bGxvd0Nyb3NzT3JpZ2luU3VicmVzb3VyY2VzVG9Bc2tGb3JDcmVkZW50aWFscy5odHRwcy5odG1s
IFsgU2tpcCBdCkluZGV4OiBMYXlvdXRUZXN0cy9zZWN1cml0eS9pc1NlY3VyZUNvbnRleHQtZGlz
YWJsZWQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3NlY3VyaXR5L2lz
U2VjdXJlQ29udGV4dC1kaXNhYmxlZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI2NzEwMSkKKysr
IExheW91dFRlc3RzL3NlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC1leHBlY3RlZC50
eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMiArMCwwIEBACi1UZXN0cyB0aGF0IGdsb2JhbCBwcm9w
ZXJ0eSBpc1NlY3VyZUNvbnRleHRzIGlzIHVuZGVmaW5lZCB3aGVuIHRoZSBTZXR0aW5nIGlzU2Vj
dXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQgaXMgZGlzYWJsZWQuCi0KLU9uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KLQotCi1QQVNTIHdpbmRvdy5pc1NlY3VyZUNvbnRleHQgaXMgdW5kZWZpbmVk
LgotU3RhcnRpbmcgd29ya2VyOiByZXNvdXJjZXMvd29ya2VyLWlzU2VjdXJlQ29udGV4dC1kaXNh
YmxlZC5qcwotUEFTUyBbV29ya2VyXSBzZWxmLmlzU2VjdXJlQ29udGV4dCBpcyB1bmRlZmluZWQu
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRl
eDogTGF5b3V0VGVzdHMvc2VjdXJpdHkvaXNTZWN1cmVDb250ZXh0LWRpc2FibGVkLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvc2VjdXJpdHkvaXNTZWN1cmVDb250ZXh0LWRpc2FibGVk
Lmh0bWwJKHJldmlzaW9uIDI2NzEwMSkKKysrIExheW91dFRlc3RzL3NlY3VyaXR5L2lzU2VjdXJl
Q29udGV4dC1kaXNhYmxlZC5odG1sCShub25leGlzdGVudCkKQEAgLTEsMTYgKzAsMCBAQAotPCFE
T0NUWVBFIGh0bWw+PCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBlbmFibGVJc1NlY3VyZUNvbnRl
eHRBdHRyaWJ1dGU9ZmFsc2UgXSAtLT4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4v
cmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08c2NyaXB0
Pgotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi1kZXNjcmlwdGlvbigiVGVzdHMgdGhh
dCBnbG9iYWwgcHJvcGVydHkgaXNTZWN1cmVDb250ZXh0cyBpcyB1bmRlZmluZWQgd2hlbiB0aGUg
U2V0dGluZyBpc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkIGlzIGRpc2FibGVkLiIpOwot
Ci1zaG91bGRCZVVuZGVmaW5lZCgid2luZG93LmlzU2VjdXJlQ29udGV4dCIpOwotc3RhcnRXb3Jr
ZXIoInJlc291cmNlcy93b3JrZXItaXNTZWN1cmVDb250ZXh0LWRpc2FibGVkLmpzIik7Ci08L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408942</attachid>
            <date>2020-09-16 12:26:42 -0700</date>
            <delta_ts>2020-09-16 15:04:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216562-20200916122641.patch</filename>
            <type>text/plain</type>
            <size>29520</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzEwOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA5LTE2ICBTYW0gV2Vp
bmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5n
IGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIGlzU2VjdXJlQ29udGV4dCBBUEk/CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY1NjIKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgcnVudGltZSBz
ZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIHRoZSBpc1NlY3VyZUNvbnRleHQgYXR0
cmlidXRlLiAKKyAgICAgICAgb24gd2luZG93IGFuZCB0aGUgd29ya2VyIGdsb2JhbCBzY29wZS4g
VGhlcmUgaXMgbm8ga25vd24gcmVhc29uIG9uZSB3b3VsZCBuZWVkIAorICAgICAgICB0byBkaXNh
YmxlIGl0LgorCisgICAgICAgICogcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg6CisgICAg
ICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRJc1NlY3VyZUNvbnRleHRB
dHRyaWJ1dGVFbmFibGVkKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OmlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQgY29uc3QpOiBEZWxl
dGVkLgorICAgICAgICAqIHBhZ2UvV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZS5pZGw6CisKIDIw
MjAtMDktMTUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBTY3Jp
cHRQcm9jZXNzb3JOb2RlIHNob3VsZCB0aHJvdyB3aGVuIHRyeWluZyB0byBjaGFuZ2UgaXRzIGNo
YW5uZWwgY291bnQgb3IgY2hhbm5lbCBjb3VudCBtb2RlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
YWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAkocmV2aXNpb24gMjY3MTAxKQorKysgU291
cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgJKHdvcmtpbmcgY29weSkK
QEAgLTY3LDkgKzY3LDYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0TW9kZXJuTWVkaWFDb250cm9s
c0VuYWJsZWQoYm9vbCBhcmVFbmFibGVkKSB7IG1fYXJlTW9kZXJuTWVkaWFDb250cm9sc0VuYWJs
ZWQgPSBhcmVFbmFibGVkOyB9CiAgICAgYm9vbCBtb2Rlcm5NZWRpYUNvbnRyb2xzRW5hYmxlZCgp
IGNvbnN0IHsgcmV0dXJuIG1fYXJlTW9kZXJuTWVkaWFDb250cm9sc0VuYWJsZWQ7IH0KIAotICAg
IHZvaWQgc2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZChib29sIGlzRW5hYmxlZCkg
eyBtX2lzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KLSAgICBi
b29sIGlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lz
U2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ7IH0KLQogICAgIHZvaWQgc2V0V2ViQW5pbWF0
aW9uc0VuYWJsZWQoYm9vbCBhcmVFbmFibGVkKSB7IG1fYXJlV2ViQW5pbWF0aW9uc0VuYWJsZWQg
PSBhcmVFbmFibGVkOyB9CiAgICAgYm9vbCB3ZWJBbmltYXRpb25zRW5hYmxlZCgpIGNvbnN0IHsg
cmV0dXJuIG1fYXJlV2ViQW5pbWF0aW9uc0VuYWJsZWQ7IH0KIApAQCAtMjk2LDcgKzI5Myw2IEBA
IHByaXZhdGU6CiAgICAgYm9vbCBtX2lzUGFpbnRUaW1pbmdFbmFibGVkIHsgZmFsc2UgfTsKICAg
ICBib29sIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9p
c1VzZXJUaW1pbmdFbmFibGVkIHsgZmFsc2UgfTsKLSAgICBib29sIG1faXNTZWN1cmVDb250ZXh0
QXR0cmlidXRlRW5hYmxlZCB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzTWVudUl0ZW1FbGVtZW50
RW5hYmxlZCB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzRGlyZWN0b3J5VXBsb2FkRW5hYmxlZCB7
IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzQ3VzdG9tUGFzdGVib2FyZERhdGFFbmFibGVkIHsgZmFs
c2UgfTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvV2luZG93T3JXb3JrZXJHbG9iYWxTY29w
ZS5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9XaW5kb3dPcldvcmtlckds
b2JhbFNjb3BlLmlkbAkocmV2aXNpb24gMjY3MTAxKQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9X
aW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtNDUsOCArNDUs
MTUgQEAgdHlwZWRlZiAoQ2FudmFzSW1hZ2VTb3VyY2Ugb3IgQmxvYiBvciBJbQogLy8gaHR0cHM6
Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvd2ViYXBwYXBpcy5odG1sI3dpbmRvd29y
d29ya2VyZ2xvYmFsc2NvcGUtbWl4aW4KIGludGVyZmFjZSBtaXhpbiBXaW5kb3dPcldvcmtlckds
b2JhbFNjb3BlIHsKICAgICBbUmVwbGFjZWFibGVdIHJlYWRvbmx5IGF0dHJpYnV0ZSBVU1ZTdHJp
bmcgb3JpZ2luOworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzU2VjdXJlQ29udGV4
dDsKKyAgICAvLyBGSVhNRTogSW1wbGVtZW50ICdjcm9zc09yaWdpbklzb2xhdGVkJy4KKyAgICAv
LyByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjcm9zc09yaWdpbklzb2xhdGVkOworIAorICAg
IC8vIEJhc2U2NCB1dGlsaXR5IG1ldGhvZHMuCisgICAgW01heVRocm93RXhjZXB0aW9uXSBET01T
dHJpbmcgYXRvYihET01TdHJpbmcgc3RyaW5nKTsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb25dIERP
TVN0cmluZyBidG9hKERPTVN0cmluZyBzdHJpbmcpOwogCi0gICAgLy8gVGltZXJzCisgICAgLy8g
VGltZXJzLgogICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCB0YWtlIGEgVGltZXJIYW5kbGVyIChh
LmsuYS4gKERPTVN0cmluZyBvciBGdW5jdGlvbikpIHJhdGhlciB0aGFuIGEgU2NoZWR1bGVkQWN0
aW9uLgogICAgIFtDYWxsV2l0aD1HbG9iYWxPYmplY3QsIE1heVRocm93RXhjZXB0aW9uXSBsb25n
IHNldFRpbWVvdXQoU2NoZWR1bGVkQWN0aW9uIGhhbmRsZXIsIG9wdGlvbmFsIGxvbmcgdGltZW91
dCA9IDAsIGFueS4uLiBhcmd1bWVudHMpOwogICAgIHVuZGVmaW5lZCBjbGVhclRpbWVvdXQob3B0
aW9uYWwgbG9uZyBoYW5kbGUgPSAwKTsKQEAgLTU0LDE1ICs2MSw5IEBAIGludGVyZmFjZSBtaXhp
biBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3AKICAgICBbQ2FsbFdpdGg9R2xvYmFsT2JqZWN0LCBN
YXlUaHJvd0V4Y2VwdGlvbl0gbG9uZyBzZXRJbnRlcnZhbChTY2hlZHVsZWRBY3Rpb24gaGFuZGxl
ciwgb3B0aW9uYWwgbG9uZyB0aW1lb3V0ID0gMCwgYW55Li4uIGFyZ3VtZW50cyk7CiAgICAgdW5k
ZWZpbmVkIGNsZWFySW50ZXJ2YWwob3B0aW9uYWwgbG9uZyBoYW5kbGUgPSAwKTsKIAorICAgIC8v
IG1pY3JvdGFzayBxdWV1aW5nLgogICAgIFtDdXN0b21dIHVuZGVmaW5lZCBxdWV1ZU1pY3JvdGFz
ayhWb2lkQ2FsbGJhY2sgY2FsbGJhY2spOwogCi0gICAgLy8gQmFzZTY0IHV0aWxpdHkgbWV0aG9k
cy4KLSAgICBbTWF5VGhyb3dFeGNlcHRpb25dIERPTVN0cmluZyBhdG9iKERPTVN0cmluZyBzdHJp
bmcpOwotICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gRE9NU3RyaW5nIGJ0b2EoRE9NU3RyaW5nIHN0
cmluZyk7Ci0KLSAgICAvLyBTZWN1cmUgQ29udGV4dHMKLSAgICBbRW5hYmxlZEF0UnVudGltZT1J
c1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVdIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzU2Vj
dXJlQ29udGV4dDsKLQogICAgIC8vIEltYWdlQml0bWFwLgogICAgIFtFbmFibGVkQXRSdW50aW1l
PUltYWdlQml0bWFwXSBQcm9taXNlPEltYWdlQml0bWFwPiBjcmVhdGVJbWFnZUJpdG1hcChJbWFn
ZUJpdG1hcFNvdXJjZSBpbWFnZSwgb3B0aW9uYWwgSW1hZ2VCaXRtYXBPcHRpb25zIG9wdGlvbnMp
OwogICAgIFtFbmFibGVkQXRSdW50aW1lPUltYWdlQml0bWFwXSBQcm9taXNlPEltYWdlQml0bWFw
PiBjcmVhdGVJbWFnZUJpdG1hcChJbWFnZUJpdG1hcFNvdXJjZSBpbWFnZSwgbG9uZyBzeCwgbG9u
ZyBzeSwgbG9uZyBzdywgbG9uZyBzaCwgb3B0aW9uYWwgSW1hZ2VCaXRtYXBPcHRpb25zIG9wdGlv
bnMpOwpJbmRleDogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDktMTYgIFNhbSBX
ZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBydW50aW1lIHNldHRp
bmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgaXNTZWN1cmVDb250ZXh0IEFQST8KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjU2MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBydW50aW1l
IHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgdGhlIGlzU2VjdXJlQ29udGV4dCBh
dHRyaWJ1dGUuIAorICAgICAgICBvbiB3aW5kb3cgYW5kIHRoZSB3b3JrZXIgZ2xvYmFsIHNjb3Bl
LiBUaGVyZSBpcyBubyBrbm93biByZWFzb24gb25lIHdvdWxkIG5lZWQgCisgICAgICAgIHRvIGRp
c2FibGUgaXQuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXMueWFtbDoKKyAgICAg
ICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZl
cmVuY2VzU2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCk6CisgICAgICAgIChXS1By
ZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCk6CisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmg6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcik6
CisKIDIwMjAtMDktMTUgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgogCiAgICAgICAg
IFJlbW92ZSBydW50aW1lIHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgZmV0Y2gg
QVBJCkluZGV4OiBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcmVmZXJlbmNlcy55YW1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWwJKHJldmlz
aW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWwJ
KHdvcmtpbmcgY29weSkKQEAgLTEyNjUsMTEgKzEyNjUsNiBAQCBMaW5rUHJlbG9hZEVuYWJsZWQ6
CiAgIHR5cGU6IGJvb2wKICAgZGVmYXVsdFZhbHVlOiB0cnVlCiAKLUlzU2VjdXJlQ29udGV4dEF0
dHJpYnV0ZUVuYWJsZWQ6Ci0gIHR5cGU6IGJvb2wKLSAgZGVmYXVsdFZhbHVlOiB0cnVlCi0gIHdl
YmNvcmVCaW5kaW5nOiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzCi0KIFNvdXJjZUJ1ZmZlckNoYW5n
ZVR5cGVFbmFibGVkOgogICB0eXBlOiBib29sCiAgIGRlZmF1bHRWYWx1ZTogdHJ1ZQpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAJKHJl
dmlzaW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVy
ZW5jZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODg5LDE2ICsxODg5LDYgQEAgV0tTdHJpbmdS
ZWYgV0tQcmVmZXJlbmNlc0NvcHlNZWRpYUNvbnRlbgogICAgIHJldHVybiB0b0NvcGllZEFQSSh0
b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5tZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJl
U3VwcG9ydCgpKTsKIH0KIAotdm9pZCBXS1ByZWZlcmVuY2VzU2V0SXNTZWN1cmVDb250ZXh0QXR0
cmlidXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcp
Ci17Ci0gICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0SXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlRW5hYmxlZChmbGFnKTsKLX0KLQotYm9vbCBXS1ByZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250
ZXh0QXR0cmlidXRlRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQotewot
ICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5pc1NlY3VyZUNvbnRleHRBdHRyaWJ1
dGVFbmFibGVkKCk7Ci19Ci0KIGJvb2wgV0tQcmVmZXJlbmNlc0dldExlZ2FjeUVuY3J5cHRlZE1l
ZGlhQVBJRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQogewogICAgIHJl
dHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5sZWdhY3lFbmNyeXB0ZWRNZWRpYUFQSUVuYWJs
ZWQoKTsKQEAgLTIyNDUsMyArMjIzNSwxMiBAQCBib29sIFdLUHJlZmVyZW5jZXNHZXRGZXRjaEFQ
SUVuYWJsZWQoV0tQCiB7CiAgICAgcmV0dXJuIHRydWU7CiB9CisKK3ZvaWQgV0tQcmVmZXJlbmNl
c1NldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiwgYm9v
bCkKK3sKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRl
RW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKQoreworICAgIHJldHVybiB0cnVlOworfQpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
UmVmUHJpdmF0ZS5oCShyZXZpc2lvbiAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01Mzcs
MTAgKzUzNyw2IEBAIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYUNvbnQKIFdL
X0VYUE9SVCBXS1N0cmluZ1JlZiBXS1ByZWZlcmVuY2VzQ29weU1lZGlhQ29udGVudFR5cGVzUmVx
dWlyaW5nSGFyZHdhcmVTdXBwb3J0KFdLUHJlZmVyZW5jZXNSZWYpOwogCiAvLyBEZWZhdWx0cyB0
byBmYWxzZS4KLVdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRJc1NlY3VyZUNvbnRleHRB
dHRyaWJ1dGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZyk7Ci1XS19FWFBPUlQg
Ym9vbCBXS1ByZWZlcmVuY2VzR2V0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZChXS1By
ZWZlcmVuY2VzUmVmKTsKLQotLy8gRGVmYXVsdHMgdG8gZmFsc2UuCiBXS19FWFBPUlQgdm9pZCBX
S1ByZWZlcmVuY2VzU2V0SW5zcGVjdG9yQWRkaXRpb25zRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVm
LCBib29sIGZsYWcpOwogV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldEluc3BlY3RvckFk
ZGl0aW9uc0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZik7CiAKQEAgLTYwNSw2ICs2MDEsOCBAQCBX
S19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0SGl4aWU3NldlCiBXS19FWFBPUlQgYm9vbCBX
S1ByZWZlcmVuY2VzR2V0SGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZChXS1ByZWZlcmVu
Y2VzUmVmKSBXS19DX0FQSV9ERVBSRUNBVEVEOwogV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNl
c1NldEZldGNoQVBJRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmLCBib29sKSBXS19DX0FQSV9ERVBS
RUNBVEVEOwogV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldEZldGNoQVBJRW5hYmxlZChX
S1ByZWZlcmVuY2VzUmVmKSBXS19DX0FQSV9ERVBSRUNBVEVEOworV0tfRVhQT1JUIHZvaWQgV0tQ
cmVmZXJlbmNlc1NldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoV0tQcmVmZXJlbmNl
c1JlZiwgYm9vbCkgV0tfQ19BUElfREVQUkVDQVRFRDsKK1dLX0VYUE9SVCBib29sIFdLUHJlZmVy
ZW5jZXNHZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYp
IFdLX0NfQVBJX0RFUFJFQ0FURUQ7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpJbmRleDogU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5q
ZWN0ZWRCdW5kbGUuY3BwCShyZXZpc2lvbiAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yMzcsMTEgKzIzNyw2IEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGU6Om92ZXJyaWRlQm9vbFByZWZl
cmUKICAgICB9CiAjZW5kaWYKIAotICAgIGlmIChwcmVmZXJlbmNlID09ICJXZWJLaXRJc1NlY3Vy
ZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkIikgewotICAgICAgICBXZWJQcmVmZXJlbmNlc1N0b3Jl
OjpvdmVycmlkZUJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6aXNTZWN1cmVDb250
ZXh0QXR0cmlidXRlRW5hYmxlZEtleSgpLCBlbmFibGVkKTsKLSAgICAgICAgUnVudGltZUVuYWJs
ZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVF
bmFibGVkKGVuYWJsZWQpOwotICAgIH0KLQogICAgIGlmIChwcmVmZXJlbmNlID09ICJXZWJLaXRX
ZWJBUElTdGF0aXN0aWNzRW5hYmxlZCIpCiAgICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNoYXJlZEZlYXR1cmVzKCkuc2V0V2ViQVBJU3RhdGlzdGljc0VuYWJsZWQoZW5hYmxlZCk7CiAK
SW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzE0OSkKKysrIFNv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDIzIEBACisyMDIwLTA5LTE2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAg
ICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIGlz
U2VjdXJlQ29udGV4dCBBUEk/CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMTY1NjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcg
dGhlIHRoZSBpc1NlY3VyZUNvbnRleHQgYXR0cmlidXRlLiAKKyAgICAgICAgb24gd2luZG93IGFu
ZCB0aGUgd29ya2VyIGdsb2JhbCBzY29wZS4gVGhlcmUgaXMgbm8ga25vd24gcmVhc29uIG9uZSB3
b3VsZCBuZWVkIAorICAgICAgICB0byBkaXNhYmxlIGl0LgorCisgICAgICAgICogV2ViVmlldy9X
ZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVu
Y2VzLm1tOgorICAgICAgICAoK1tXZWJQcmVmZXJlbmNlcyBpbml0aWFsaXplXSk6CisgICAgICAg
ICgtW1dlYlByZWZlcmVuY2VzIHNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6XSk6
CisgICAgICAgICgtW1dlYlByZWZlcmVuY2VzIGlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJs
ZWRdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAgICAg
ICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJlZmVyZW5jZXND
aGFuZ2VkOl0pOgorCiAyMDIwLTA5LTE1ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4K
IAogICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBlbmFibGluZy9kaXNhYmxpbmcg
dGhlIGZldGNoIEFQSQpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJQ
cmVmZXJlbmNlS2V5c1ByaXZhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oCShyZXZpc2lvbiAyNjcxMDEp
CisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJp
dmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOTksNyArMTk5LDYgQEAKICNkZWZpbmUgV2ViS2l0
TGlua1ByZWxvYWRFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdExpbmtQcmVsb2FkRW5hYmxl
ZCIKICNkZWZpbmUgV2ViS2l0TWVkaWFQcmVsb2FkaW5nRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJX
ZWJLaXRNZWRpYVByZWxvYWRpbmdFbmFibGVkIgogI2RlZmluZSBXZWJLaXRNZWRpYVVzZXJHZXN0
dXJlSW5oZXJpdHNGcm9tRG9jdW1lbnQgQCJXZWJLaXRNZWRpYVVzZXJHZXN0dXJlSW5oZXJpdHNG
cm9tRG9jdW1lbnQiCi0jZGVmaW5lIFdlYktpdElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJs
ZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZCIK
ICNkZWZpbmUgV2ViS2l0Vmlld3BvcnRGaXRFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdFZp
ZXdwb3J0Rml0RW5hYmxlZCIKICNkZWZpbmUgV2ViS2l0Q29uc3RhbnRQcm9wZXJ0aWVzRW5hYmxl
ZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRDb25zdGFudFByb3BlcnRpZXNFbmFibGVkIgogI2RlZmlu
ZSBXZWJLaXRDb2xvckZpbHRlckVuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0Q29sb3JGaWx0
ZXJFbmFibGVkIgpAQCAtMjk1LDMgKzI5NCw0IEBACiAjZGVmaW5lIFdlYktpdEhpeGllNzZXZWJT
b2NrZXRQcm90b2NvbEVuYWJsZWRLZXkgQCJXZWJLaXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xF
bmFibGVkIgogI2RlZmluZSBXZWJLaXRDdXN0b21FbGVtZW50c0VuYWJsZWRQcmVmZXJlbmNlS2V5
IEAiV2ViS2l0Q3VzdG9tRWxlbWVudHNFbmFibGVkIgogI2RlZmluZSBXZWJLaXRGZXRjaEFQSUVu
YWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0RmV0Y2hBUElFbmFibGVkIgorI2RlZmluZSBXZWJL
aXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdElz
U2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQiCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0JKHJldmlzaW9uIDI2NzEwMSkK
KysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0JKHdv
cmtpbmcgY29weSkKQEAgLTY4OSw3ICs2ODksNiBAQCArICh2b2lkKWluaXRpYWxpemUKICAgICAg
ICAgQE5PLCBXZWJLaXRVc2VyVGltaW5nRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAgICAgIEBO
TywgV2ViS2l0UmVzb3VyY2VUaW1pbmdFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgQE5P
LCBXZWJLaXRNZWRpYVVzZXJHZXN0dXJlSW5oZXJpdHNGcm9tRG9jdW1lbnQsCi0gICAgICAgIEBO
TywgV2ViS2l0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZFByZWZlcmVuY2VLZXksCiAg
ICAgICAgIEBZRVMsIFdlYktpdExlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZEtleSwKICAg
ICAgICAgQE5PLCBXZWJLaXRFbmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWRLZXksCiAgICAgICAgIEBZ
RVMsIFdlYktpdFZpZXdwb3J0Rml0RW5hYmxlZFByZWZlcmVuY2VLZXksCkBAIC0zMzI4LDE2ICsz
MzI3LDYgQEAgLSAodm9pZClzZXRNZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcgogICAgIFtz
ZWxmIF9zZXRTdHJpbmdWYWx1ZTp2YWx1ZSBmb3JLZXk6V2ViS2l0TWVkaWFDb250ZW50VHlwZXNS
ZXF1aXJpbmdIYXJkd2FyZVN1cHBvcnRQcmVmZXJlbmNlS2V5XTsKIH0KIAotLSAoQk9PTClpc1Nl
Y3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkCi17Ci0gICAgcmV0dXJuIFtzZWxmIF9ib29sVmFs
dWVGb3JLZXk6V2ViS2l0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZFByZWZlcmVuY2VL
ZXldOwotfQotCi0tICh2b2lkKXNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6KEJP
T0wpZmxhZwotewotICAgIFtzZWxmIF9zZXRCb29sVmFsdWU6ZmxhZyBmb3JLZXk6V2ViS2l0SXNT
ZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZFByZWZlcmVuY2VLZXldOwotfQotCiAtIChCT09M
KWxlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZAogewogICAgIHJldHVybiBbc2VsZiBfYm9v
bFZhbHVlRm9yS2V5OldlYktpdExlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZEtleV07CkBA
IC0zNjkyLDYgKzM2ODEsMTUgQEAgKyAoTlNTdHJpbmcgKilfY29uY2F0ZW5hdGVLZXlXaXRoSUJD
cmVhdAogLy8gVGhlIHByZWZlcmVuY2VzIGluIHRoaXMgY2F0ZWdvcnkgYXJlIGRlcHJlY2F0ZWQg
YW5kIGhhdmUgbm8gZWZmZWN0LiBUaGV5IHNob3VsZAogLy8gYmUgcmVtb3ZlZCB3aGVuIGl0IGlz
IGNvbnNpZGVyZWQgc2FmZSB0byBkbyBzby4KIAorLSAodm9pZClzZXRJc1NlY3VyZUNvbnRleHRB
dHRyaWJ1dGVFbmFibGVkOihCT09MKWZsYWcKK3sKK30KKworLSAoQk9PTClpc1NlY3VyZUNvbnRl
eHRBdHRyaWJ1dGVFbmFibGVkCit7CisgICAgcmV0dXJuIFlFUzsKK30KKwogLSAodm9pZClzZXRG
ZXRjaEFQSUVuYWJsZWQ6KEJPT0wpZmxhZwogewogfQpAQCAtMzcwMSw3ICszNjk5LDYgQEAgLSAo
Qk9PTClmZXRjaEFQSUVuYWJsZWQKICAgICByZXR1cm4gWUVTOwogfQogCi0KIC0gKHZvaWQpc2V0
U2hhZG93RE9NRW5hYmxlZDooQk9PTClmbGFnCiB7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgJKHJl
dmlzaW9uIDI2NzEwMSkKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJl
ZmVyZW5jZXNQcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTU5MSw5ICs1OTEsNiBAQCBAaW50
ZXJmYWNlIFdlYlByZWZlcmVuY2VzIChXZWJQcml2YXRlKQogLSAodm9pZClzZXRJbnRlcnNlY3Rp
b25PYnNlcnZlckVuYWJsZWQ6KEJPT0wpZmxhZzsKIC0gKEJPT0wpaW50ZXJzZWN0aW9uT2JzZXJ2
ZXJFbmFibGVkOwogCi0tICh2b2lkKXNldElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6
KEJPT0wpZmxhZzsKLS0gKEJPT0wpaXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZDsKLQog
LSAodm9pZClzZXRTZXJ2ZXJUaW1pbmdFbmFibGVkOihCT09MKWZsYWc7CiAtIChCT09MKXNlcnZl
clRpbWluZ0VuYWJsZWQ7CiAKQEAgLTY5OCw2ICs2OTUsOSBAQCBAaW50ZXJmYWNlIFdlYlByZWZl
cmVuY2VzIChXZWJQcml2YXRlRGVwCiAvLyBUaGUgcHJlZmVyZW5jZXMgaW4gdGhpcyBjYXRlZ29y
eSBhcmUgZGVwcmVjYXRlZCBhbmQgaGF2ZSBubyBlZmZlY3QuIFRoZXkgc2hvdWxkCiAvLyBiZSBy
ZW1vdmVkIHdoZW4gaXQgaXMgY29uc2lkZXJlZCBzYWZlIHRvIGRvIHNvLgogCistICh2b2lkKXNl
dElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQ6KEJPT0wpZmxhZzsKKy0gKEJPT0wpaXNT
ZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZDsKKwogLSAodm9pZClzZXRGZXRjaEFQSUVuYWJs
ZWQ6KEJPT0wpZmxhZzsKIC0gKEJPT0wpZmV0Y2hBUElFbmFibGVkOwogCkluZGV4OiBTb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCShyZXZpc2lvbiAyNjcxMDEpCisr
KyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0JKHdvcmtpbmcgY29w
eSkKQEAgLTMzNzIsNyArMzM3Miw2IEBAIC0gKHZvaWQpX3ByZWZlcmVuY2VzQ2hhbmdlZDooV2Vi
UHJlZmVyZW4KICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNl
dFJlc291cmNlVGltaW5nRW5hYmxlZChwcmVmZXJlbmNlcy5yZXNvdXJjZVRpbWluZ0VuYWJsZWQp
OwogICAgIHNldHRpbmdzLnNldExpbmtQcmVsb2FkRW5hYmxlZChwcmVmZXJlbmNlcy5saW5rUHJl
bG9hZEVuYWJsZWQpOwogICAgIHNldHRpbmdzLnNldE1lZGlhUHJlbG9hZGluZ0VuYWJsZWQocHJl
ZmVyZW5jZXMubWVkaWFQcmVsb2FkaW5nRW5hYmxlZCk7Ci0gICAgUnVudGltZUVuYWJsZWRGZWF0
dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVk
KHByZWZlcmVuY2VzLmlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQpOwogICAgIFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0RGlyZWN0b3J5VXBsb2FkRW5h
YmxlZChbcHJlZmVyZW5jZXMgZGlyZWN0b3J5VXBsb2FkRW5hYmxlZF0pOwogICAgIFJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0TWVudUl0ZW1FbGVtZW50RW5hYmxl
ZChbcHJlZmVyZW5jZXMgbWVudUl0ZW1FbGVtZW50RW5hYmxlZF0pOwogICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0QWNjZXNzaWJpbGl0eU9iamVjdE1vZGVs
RW5hYmxlZChbcHJlZmVyZW5jZXMgYWNjZXNzaWJpbGl0eU9iamVjdE1vZGVsRW5hYmxlZF0pOwpJ
bmRleDogU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwkocmV2aXNpb24gMjY3MTAxKQorKysgU291
cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEs
MjEgQEAKKzIwMjAtMDktMTYgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgorCisgICAg
ICAgIFJlbW92ZSBydW50aW1lIHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgaXNT
ZWN1cmVDb250ZXh0IEFQST8KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNjU2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFJlbW92ZSBydW50aW1lIHNldHRpbmcgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyB0
aGUgdGhlIGlzU2VjdXJlQ29udGV4dCBhdHRyaWJ1dGUuIAorICAgICAgICBvbiB3aW5kb3cgYW5k
IHRoZSB3b3JrZXIgZ2xvYmFsIHNjb3BlLiBUaGVyZSBpcyBubyBrbm93biByZWFzb24gb25lIHdv
dWxkIG5lZWQgCisgICAgICAgIHRvIGRpc2FibGUgaXQuCisKKyAgICAgICAgKiBXZWJQcmVmZXJl
bmNlcy5jcHA6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6aW5pdGlhbGl6ZURlZmF1bHRTZXR0
aW5ncyk6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6c2V0SXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlRW5hYmxlZCk6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6aXNTZWN1cmVDb250ZXh0QXR0
cmlidXRlRW5hYmxlZCk6CisgICAgICAgICogV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJWaWV3
Ojpub3RpZnlQcmVmZXJlbmNlc0NoYW5nZWQpOgorCiAyMDIwLTA5LTE1ICBTYW0gV2VpbmlnICA8
d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBl
bmFibGluZy9kaXNhYmxpbmcgdGhlIGZldGNoIEFQSQpJbmRleDogU291cmNlL1dlYktpdExlZ2Fj
eS93aW4vV2ViUHJlZmVyZW5jZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdh
Y3kvd2luL1dlYlByZWZlcmVuY2VzLmNwcAkocmV2aXNpb24gMjY3MTAxKQorKysgU291cmNlL1dl
YktpdExlZ2FjeS93aW4vV2ViUHJlZmVyZW5jZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMjks
OCArMzI5LDYgQEAgdm9pZCBXZWJQcmVmZXJlbmNlczo6aW5pdGlhbGl6ZURlZmF1bHRTZQogCiAg
ICAgQ0ZEaWN0aW9uYXJ5QWRkVmFsdWUoZGVmYXVsdHMsIENGU1RSKFdlYktpdE1lZGlhUHJlbG9h
ZGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5KSwga0NGQm9vbGVhbkZhbHNlKTsKIAotICAgIENGRGlj
dGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRJc1NlY3VyZUNvbnRleHRBdHRy
aWJ1dGVFbmFibGVkUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5GYWxzZSk7Ci0KICAgICBDRkRp
Y3Rpb25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0RGF0YVRyYW5zZmVySXRlbXNF
bmFibGVkUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5GYWxzZSk7CiAKICAgICBDRkRpY3Rpb25h
cnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0SW5zcGVjdG9yQWRkaXRpb25zRW5hYmxl
ZFByZWZlcmVuY2VLZXkpLCBrQ0ZCb29sZWFuRmFsc2UpOwpAQCAtMjIwNiw5ICsyMjA0LDggQEAg
SFJFU1VMVCBXZWJQcmVmZXJlbmNlczo6c3dpdGNoTmV0d29ya0xvYQogICAgIHJldHVybiBTX09L
OwogfQogCi1IUkVTVUxUIFdlYlByZWZlcmVuY2VzOjpzZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1
dGVFbmFibGVkKEJPT0wgZW5hYmxlZCkKK0hSRVNVTFQgV2ViUHJlZmVyZW5jZXM6OnNldElzU2Vj
dXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQoQk9PTCkKIHsKLSAgICBzZXRCb29sVmFsdWUoV2Vi
S2l0SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlRW5hYmxlZFByZWZlcmVuY2VLZXksIGVuYWJsZWQp
OwogICAgIHJldHVybiBTX09LOwogfQogCkBAIC0yMjE2LDcgKzIyMTMsNyBAQCBIUkVTVUxUIFdl
YlByZWZlcmVuY2VzOjppc1NlY3VyZUNvbnRleHRBCiB7CiAgICAgaWYgKCFlbmFibGVkKQogICAg
ICAgICByZXR1cm4gRV9QT0lOVEVSOwotICAgICplbmFibGVkID0gYm9vbFZhbHVlRm9yS2V5KFdl
YktpdElzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWRQcmVmZXJlbmNlS2V5KTsKKyAgICAq
ZW5hYmxlZCA9IHRydWU7CiAgICAgcmV0dXJuIFNfT0s7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJL
aXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdh
Y3kvd2luL1dlYlZpZXcuY3BwCShyZXZpc2lvbiAyNjcxMDEpCisrKyBTb3VyY2UvV2ViS2l0TGVn
YWN5L3dpbi9XZWJWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTI5NCwxMSArNTI5NCw2IEBA
IEhSRVNVTFQgV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2UKICAgICAgICAgcmV0dXJu
IGhyOwogICAgIHNldHRpbmdzLnNldE1lZGlhUHJlbG9hZGluZ0VuYWJsZWQoISFlbmFibGVkKTsK
IAotICAgIGhyID0gcHJlZnNQcml2YXRlLT5pc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVk
KCZlbmFibGVkKTsKLSAgICBpZiAoRkFJTEVEKGhyKSkKLSAgICAgICAgcmV0dXJuIGhyOwotICAg
IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0SXNTZWN1cmVDb250
ZXh0QXR0cmlidXRlRW5hYmxlZCghIWVuYWJsZWQpOwotCiAgICAgaHIgPSBwcmVmc1ByaXZhdGUt
PmRhdGFUcmFuc2Zlckl0ZW1zRW5hYmxlZCgmZW5hYmxlZCk7CiAgICAgaWYgKEZBSUxFRChocikp
CiAgICAgICAgIHJldHVybiBocjsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2NzE0OSkKKysrIFRvb2xzL0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDIwLTA5LTE2ICBTYW0gV2VpbmlnICA8
d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5nIGZvciBl
bmFibGluZy9kaXNhYmxpbmcgdGhlIGlzU2VjdXJlQ29udGV4dCBBUEk/CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY1NjIKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgcnVudGltZSBzZXR0aW5n
IGZvciBlbmFibGluZy9kaXNhYmxpbmcgdGhlIHRoZSBpc1NlY3VyZUNvbnRleHQgYXR0cmlidXRl
LiAKKyAgICAgICAgb24gd2luZG93IGFuZCB0aGUgd29ya2VyIGdsb2JhbCBzY29wZS4gVGhlcmUg
aXMgbm8ga25vd24gcmVhc29uIG9uZSB3b3VsZCBuZWVkIAorICAgICAgICB0byBkaXNhYmxlIGl0
LgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwOgorICAgICAgICAo
VGVzdE9wdGlvbnM6OlRlc3RPcHRpb25zKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9UZXN0
T3B0aW9ucy5oOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5t
bToKKyAgICAgICAgKHNldFdlYlByZWZlcmVuY2VzRm9yVGVzdE9wdGlvbnMpOgorICAgICAgICAq
IER1bXBSZW5kZXJUcmVlL3dpbi9EdW1wUmVuZGVyVHJlZS5jcHA6CisgICAgICAgIChzZXRXZWJQ
cmVmZXJlbmNlc0ZvclRlc3RPcHRpb25zKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rl
c3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdENvbnRyb2xsZXI6OnJlc2V0UHJl
ZmVyZW5jZXNUb0NvbnNpc3RlbnRWYWx1ZXMpOgorICAgICAgICAoV1RSOjp1cGRhdGVUZXN0T3B0
aW9uc0Zyb21UZXN0SGVhZGVyKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RPcHRp
b25zLmg6CisgICAgICAgIChXVFI6OlRlc3RPcHRpb25zOjpoYXNTYW1lSW5pdGlhbGl6YXRpb25P
cHRpb25zIGNvbnN0KToKKwogMjAyMC0wOS0xNiAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5k
QGlnYWxpYS5jb20+CiAKICAgICAgICAgW0ZsYXRwYWtdIHdlYmtpdC1id3JhcCBkcml2ZS1ieSBj
bGVhbnVwcwpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNwcAkocmV2aXNpb24g
MjY3MTAxKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0xMTgsOCArMTE4LDYgQEAgVGVzdE9wdGlvbnM6OlRlc3RPcHRpb25zKGNvbnN0
IHN0ZDo6c3RyaQogICAgICAgICAgICAgZW5hYmxlRHJhZ0Rlc3RpbmF0aW9uQWN0aW9uTG9hZCA9
IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJWYWx1ZSh2YWx1ZSk7CiAgICAgICAgIGVsc2UgaWYgKGtl
eSA9PSAibGF5ZXJCYWNrZWRXZWJWaWV3IikKICAgICAgICAgICAgIGxheWVyQmFja2VkV2ViVmll
dyA9IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJWYWx1ZSh2YWx1ZSk7Ci0gICAgICAgIGVsc2UgaWYg
KGtleSA9PSAiZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlIikKLSAgICAgICAgICAgIGVu
YWJsZUlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZSA9IHBhcnNlQm9vbGVhblRlc3RIZWFkZXJWYWx1
ZSh2YWx1ZSk7CiAgICAgICAgIGVsc2UgaWYgKGtleSA9PSAiZW5hYmxlSW5zcGVjdG9yQWRkaXRp
b25zIikKICAgICAgICAgICAgIGVuYWJsZUluc3BlY3RvckFkZGl0aW9ucyA9IHBhcnNlQm9vbGVh
blRlc3RIZWFkZXJWYWx1ZSh2YWx1ZSk7CiAgICAgICAgIGVsc2UgaWYgKGtleSA9PSAiZHVtcEpT
Q29uc29sZUxvZ0luU3RkRXJyIikKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRp
b25zLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuaAko
cmV2aXNpb24gMjY3MTAxKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuaAko
d29ya2luZyBjb3B5KQpAQCAtNDAsNyArNDAsNiBAQCBzdHJ1Y3QgVGVzdE9wdGlvbnMgewogICAg
IGJvb2wgZW5hYmxlUG9pbnRlckxvY2sgeyBmYWxzZSB9OwogICAgIGJvb2wgZW5hYmxlRHJhZ0Rl
c3RpbmF0aW9uQWN0aW9uTG9hZCB7IGZhbHNlIH07CiAgICAgYm9vbCBsYXllckJhY2tlZFdlYlZp
ZXcgeyBmYWxzZSB9OwotICAgIGJvb2wgZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmlidXRlIHsg
dHJ1ZSB9OwogICAgIGJvb2wgZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zIHsgZmFsc2UgfTsKICAg
ICBib29sIGR1bXBKU0NvbnNvbGVMb2dJblN0ZEVyciB7IGZhbHNlIH07CiAgICAgYm9vbCBhbGxv
d0Nyb3NzT3JpZ2luU3VicmVzb3VyY2VzVG9Bc2tGb3JDcmVkZW50aWFscyB7IGZhbHNlIH07Cklu
ZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCShyZXZpc2lv
biAyNjcxMDEpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0J
KHdvcmtpbmcgY29weSkKQEAgLTk3Niw3ICs5NzYsNiBAQCBzdGF0aWMgdm9pZCBzZXRXZWJQcmVm
ZXJlbmNlc0ZvclRlc3RPcHRpCiAgICAgcHJlZmVyZW5jZXMubWVudUl0ZW1FbGVtZW50RW5hYmxl
ZCA9IG9wdGlvbnMuZW5hYmxlTWVudUl0ZW1FbGVtZW50OwogICAgIHByZWZlcmVuY2VzLmtleWdl
bkVsZW1lbnRFbmFibGVkID0gb3B0aW9ucy5lbmFibGVLZXlnZW5FbGVtZW50OwogICAgIHByZWZl
cmVuY2VzLm1vZGVybk1lZGlhQ29udHJvbHNFbmFibGVkID0gb3B0aW9ucy5lbmFibGVNb2Rlcm5N
ZWRpYUNvbnRyb2xzOwotICAgIHByZWZlcmVuY2VzLmlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVu
YWJsZWQgPSBvcHRpb25zLmVuYWJsZUlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZTsKICAgICBwcmVm
ZXJlbmNlcy5pbnNwZWN0b3JBZGRpdGlvbnNFbmFibGVkID0gb3B0aW9ucy5lbmFibGVJbnNwZWN0
b3JBZGRpdGlvbnM7CiAgICAgcHJlZmVyZW5jZXMuYWxsb3dDcm9zc09yaWdpblN1YnJlc291cmNl
c1RvQXNrRm9yQ3JlZGVudGlhbHMgPSBvcHRpb25zLmFsbG93Q3Jvc3NPcmlnaW5TdWJyZXNvdXJj
ZXNUb0Fza0ZvckNyZWRlbnRpYWxzOwogICAgIHByZWZlcmVuY2VzLndlYkFuaW1hdGlvbnNDU1NJ
bnRlZ3JhdGlvbkVuYWJsZWQgPSBvcHRpb25zLmVuYWJsZVdlYkFuaW1hdGlvbnNDU1NJbnRlZ3Jh
dGlvbjsKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9EdW1wUmVuZGVyVHJlZS5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0R1bXBSZW5kZXJUcmVlLmNw
cAkocmV2aXNpb24gMjY3MTAxKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0R1bXBSZW5k
ZXJUcmVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTEzLDcgKzkxMyw2IEBAIHN0YXRpYyB2b2lk
IHNldFdlYlByZWZlcmVuY2VzRm9yVGVzdE9wdGkKICAgICBwcmVmc1ByaXZhdGUtPnNldE1lbnVJ
dGVtRWxlbWVudEVuYWJsZWQob3B0aW9ucy5lbmFibGVNZW51SXRlbUVsZW1lbnQpOwogICAgIHBy
ZWZzUHJpdmF0ZS0+c2V0S2V5Z2VuRWxlbWVudEVuYWJsZWQob3B0aW9ucy5lbmFibGVLZXlnZW5F
bGVtZW50KTsKICAgICBwcmVmc1ByaXZhdGUtPnNldE1vZGVybk1lZGlhQ29udHJvbHNFbmFibGVk
KG9wdGlvbnMuZW5hYmxlTW9kZXJuTWVkaWFDb250cm9scyk7Ci0gICAgcHJlZnNQcml2YXRlLT5z
ZXRJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGVFbmFibGVkKG9wdGlvbnMuZW5hYmxlSXNTZWN1cmVD
b250ZXh0QXR0cmlidXRlKTsKICAgICBwcmVmc1ByaXZhdGUtPnNldEluc3BlY3RvckFkZGl0aW9u
c0VuYWJsZWQob3B0aW9ucy5lbmFibGVJbnNwZWN0b3JBZGRpdGlvbnMpOwogICAgIHByZWZzUHJp
dmF0ZS0+c2V0UmVxdWVzdElkbGVDYWxsYmFja0VuYWJsZWQob3B0aW9ucy5lbmFibGVSZXF1ZXN0
SWRsZUNhbGxiYWNrKTsKICAgICBwcmVmc1ByaXZhdGUtPnNldEFzeW5jQ2xpcGJvYXJkQVBJRW5h
YmxlZChvcHRpb25zLmVuYWJsZUFzeW5jQ2xpcGJvYXJkQVBJKTsKSW5kZXg6IFRvb2xzL1dlYktp
dFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dlYktp
dFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiAyNjcxMDEpCisrKyBUb29s
cy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
OTE1LDcgKzkxNSw2IEBAIHZvaWQgVGVzdENvbnRyb2xsZXI6OnJlc2V0UHJlZmVyZW5jZXNUb0MK
ICAgICBXS1ByZWZlcmVuY2VzU2V0TW9kZXJuTWVkaWFDb250cm9sc0VuYWJsZWQocHJlZmVyZW5j
ZXMsIG9wdGlvbnMuZW5hYmxlTW9kZXJuTWVkaWFDb250cm9scyk7CiAgICAgV0tQcmVmZXJlbmNl
c1NldFdlYkF1dGhlbnRpY2F0aW9uRW5hYmxlZChwcmVmZXJlbmNlcywgb3B0aW9ucy5lbmFibGVX
ZWJBdXRoZW50aWNhdGlvbik7CiAgICAgV0tQcmVmZXJlbmNlc1NldFdlYkF1dGhlbnRpY2F0aW9u
TG9jYWxBdXRoZW50aWNhdG9yRW5hYmxlZChwcmVmZXJlbmNlcywgb3B0aW9ucy5lbmFibGVXZWJB
dXRoZW50aWNhdGlvbkxvY2FsQXV0aGVudGljYXRvcik7Ci0gICAgV0tQcmVmZXJlbmNlc1NldElz
U2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQocHJlZmVyZW5jZXMsIG9wdGlvbnMuZW5hYmxl
SXNTZWN1cmVDb250ZXh0QXR0cmlidXRlKTsKICAgICBXS1ByZWZlcmVuY2VzU2V0QWxsb3dDcm9z
c09yaWdpblN1YnJlc291cmNlc1RvQXNrRm9yQ3JlZGVudGlhbHMocHJlZmVyZW5jZXMsIG9wdGlv
bnMuYWxsb3dDcm9zc09yaWdpblN1YnJlc291cmNlc1RvQXNrRm9yQ3JlZGVudGlhbHMpOwogICAg
IFdLUHJlZmVyZW5jZXNTZXRDb2xvckZpbHRlckVuYWJsZWQocHJlZmVyZW5jZXMsIG9wdGlvbnMu
ZW5hYmxlQ29sb3JGaWx0ZXIpOwogICAgIFdLUHJlZmVyZW5jZXNTZXRQdW5jaE91dFdoaXRlQmFj
a2dyb3VuZHNJbkRhcmtNb2RlKHByZWZlcmVuY2VzLCBvcHRpb25zLnB1bmNoT3V0V2hpdGVCYWNr
Z3JvdW5kc0luRGFya01vZGUpOwpAQCAtMTQ5Nyw4ICsxNDk2LDYgQEAgc3RhdGljIHZvaWQgdXBk
YXRlVGVzdE9wdGlvbnNGcm9tVGVzdEhlYQogICAgICAgICAgICAgdGVzdE9wdGlvbnMuZW5hYmxl
V2ViQXV0aGVudGljYXRpb24gPSBwYXJzZUJvb2xlYW5UZXN0SGVhZGVyVmFsdWUodmFsdWUpOwog
ICAgICAgICBlbHNlIGlmIChrZXkgPT0gImVuYWJsZVdlYkF1dGhlbnRpY2F0aW9uTG9jYWxBdXRo
ZW50aWNhdG9yIikKICAgICAgICAgICAgIHRlc3RPcHRpb25zLmVuYWJsZVdlYkF1dGhlbnRpY2F0
aW9uTG9jYWxBdXRoZW50aWNhdG9yID0gcGFyc2VCb29sZWFuVGVzdEhlYWRlclZhbHVlKHZhbHVl
KTsKLSAgICAgICAgZWxzZSBpZiAoa2V5ID09ICJlbmFibGVJc1NlY3VyZUNvbnRleHRBdHRyaWJ1
dGUiKQotICAgICAgICAgICAgdGVzdE9wdGlvbnMuZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlID0gcGFyc2VCb29sZWFuVGVzdEhlYWRlclZhbHVlKHZhbHVlKTsKICAgICAgICAgZWxzZSBp
ZiAoa2V5ID09ICJlbmFibGVJbnNwZWN0b3JBZGRpdGlvbnMiKQogICAgICAgICAgICAgdGVzdE9w
dGlvbnMuZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zID0gcGFyc2VCb29sZWFuVGVzdEhlYWRlclZh
bHVlKHZhbHVlKTsKICAgICAgICAgZWxzZSBpZiAoa2V5ID09ICJkdW1wSlNDb25zb2xlTG9nSW5T
dGRFcnIiKQpJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMuaAkocmV2aXNpb24g
MjY3MTAxKQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5oCSh3b3JraW5n
IGNvcHkpCkBAIC03OCw3ICs3OCw2IEBAIHN0cnVjdCBUZXN0T3B0aW9ucyB7CiAgICAgYm9vbCBl
bmFibGVQb2ludGVyTG9jayB7IGZhbHNlIH07CiAgICAgYm9vbCBlbmFibGVXZWJBdXRoZW50aWNh
dGlvbiB7IHRydWUgfTsKICAgICBib29sIGVuYWJsZVdlYkF1dGhlbnRpY2F0aW9uTG9jYWxBdXRo
ZW50aWNhdG9yIHsgdHJ1ZSB9OwotICAgIGJvb2wgZW5hYmxlSXNTZWN1cmVDb250ZXh0QXR0cmli
dXRlIHsgdHJ1ZSB9OwogICAgIGJvb2wgZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zIHsgZmFsc2Ug
fTsKICAgICBib29sIHNob3VsZFNob3dUb3VjaGVzIHsgZmFsc2UgfTsKICAgICBib29sIGR1bXBK
U0NvbnNvbGVMb2dJblN0ZEVyciB7IGZhbHNlIH07CkBAIC0xNDEsNyArMTQwLDYgQEAgc3RydWN0
IFRlc3RPcHRpb25zIHsKICAgICAgICAgICAgIHx8IGVuYWJsZVBvaW50ZXJMb2NrICE9IG9wdGlv
bnMuZW5hYmxlUG9pbnRlckxvY2sKICAgICAgICAgICAgIHx8IGVuYWJsZVdlYkF1dGhlbnRpY2F0
aW9uICE9IG9wdGlvbnMuZW5hYmxlV2ViQXV0aGVudGljYXRpb24KICAgICAgICAgICAgIHx8IGVu
YWJsZVdlYkF1dGhlbnRpY2F0aW9uTG9jYWxBdXRoZW50aWNhdG9yICE9IG9wdGlvbnMuZW5hYmxl
V2ViQXV0aGVudGljYXRpb25Mb2NhbEF1dGhlbnRpY2F0b3IKLSAgICAgICAgICAgIHx8IGVuYWJs
ZUlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZSAhPSBvcHRpb25zLmVuYWJsZUlzU2VjdXJlQ29udGV4
dEF0dHJpYnV0ZQogICAgICAgICAgICAgfHwgZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zICE9IG9w
dGlvbnMuZW5hYmxlSW5zcGVjdG9yQWRkaXRpb25zCiAgICAgICAgICAgICB8fCBkdW1wSlNDb25z
b2xlTG9nSW5TdGRFcnIgIT0gb3B0aW9ucy5kdW1wSlNDb25zb2xlTG9nSW5TdGRFcnIKICAgICAg
ICAgICAgIHx8IGFwcGxpY2F0aW9uTWFuaWZlc3QgIT0gb3B0aW9ucy5hcHBsaWNhdGlvbk1hbmlm
ZXN0CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjcxNTApCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOCBAQAorMjAyMC0wOS0xNiAgU2FtIFdlaW5pZyAg
PHdlaW5pZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIHJ1bnRpbWUgc2V0dGluZyBmb3Ig
ZW5hYmxpbmcvZGlzYWJsaW5nIHRoZSBpc1NlY3VyZUNvbnRleHQgQVBJPworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2NTYyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVtb3ZlIHJ1bnRpbWUgc2V0dGlu
ZyBmb3IgZW5hYmxpbmcvZGlzYWJsaW5nIHRoZSB0aGUgaXNTZWN1cmVDb250ZXh0IGF0dHJpYnV0
ZS4gCisgICAgICAgIG9uIHdpbmRvdyBhbmQgdGhlIHdvcmtlciBnbG9iYWwgc2NvcGUuIFRoZXJl
IGlzIG5vIGtub3duIHJlYXNvbiBvbmUgd291bGQgbmVlZCAKKyAgICAgICAgdG8gZGlzYWJsZSBp
dC4KKworICAgICAgICAqIHBsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAq
IHNlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC1leHBlY3RlZC50eHQ6IFJlbW92ZWQu
CisgICAgICAgICogc2VjdXJpdHkvaXNTZWN1cmVDb250ZXh0LWRpc2FibGVkLmh0bWw6IFJlbW92
ZWQuCisKIDIwMjAtMDktMTYgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAg
ICAgICBPZmZsaW5lQXVkaW9Db250ZXh0IGNvbnN0cnVjdG9yIHNob3VsZCBub3QgdGhyb3cgd2hl
biBnaXZlbiBhIGJhZCBidWZmZXIgbGVuZ3RoCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW4vVGVzdEV4cGVjdGF0aW9ucwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW4vVGVzdEV4cGVjdGF0aW9ucwkocmV2aXNpb24gMjY3MTAxKQorKysgTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMJKHdvcmtpbmcgY29weSkKQEAgLTkwLDcgKzkwLDYg
QEAgd2Via2l0Lm9yZy9iLzE3ODMzNyBmYXN0L3JlcGxhY2VkL3dpZHRoMQogIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMKIAogIyBGSVhNRTogSW1wbGVtZW50IHRlc3Qgb3B0aW9ucyBwYXJzaW5nICg8
IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIC4uLiBdIC0tPikuCi13ZWJraXQub3JnL2IvMTczMjgx
IHNlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC5odG1sIFsgU2tpcCBdCiB3ZWJraXQu
b3JnL2IvMTczMjgxIGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8tYXV0aC13aXRoLWFsbG93Q3Jvc3NP
cmlnaW5TdWJyZXNvdXJjZXNUb0Fza0ZvckNyZWRlbnRpYWxzLmh0bWwgWyBTa2lwIF0KIHdlYmtp
dC5vcmcvYi8xNzMyODEgaHR0cC90ZXN0cy9zZWN1cml0eS9jcmVkZW50aWFscy1pZnJhbWVzLWFs
bG93Q3Jvc3NPcmlnaW5TdWJyZXNvdXJjZXNUb0Fza0ZvckNyZWRlbnRpYWxzLmh0bWwgWyBTa2lw
IF0KIHdlYmtpdC5vcmcvYi8xNzMyODEgaHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQv
aW5zZWN1cmUtYmFzaWMtYXV0aC1pbWFnZS1hbGxvd0Nyb3NzT3JpZ2luU3VicmVzb3VyY2VzVG9B
c2tGb3JDcmVkZW50aWFscy5odHRwcy5odG1sIFsgU2tpcCBdCkluZGV4OiBMYXlvdXRUZXN0cy9z
ZWN1cml0eS9pc1NlY3VyZUNvbnRleHQtZGlzYWJsZWQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL3NlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDI2NzEwMSkKKysrIExheW91dFRlc3RzL3NlY3VyaXR5L2lzU2VjdXJl
Q29udGV4dC1kaXNhYmxlZC1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMiArMCww
IEBACi1UZXN0cyB0aGF0IGdsb2JhbCBwcm9wZXJ0eSBpc1NlY3VyZUNvbnRleHRzIGlzIHVuZGVm
aW5lZCB3aGVuIHRoZSBTZXR0aW5nIGlzU2VjdXJlQ29udGV4dEF0dHJpYnV0ZUVuYWJsZWQgaXMg
ZGlzYWJsZWQuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHdpbmRvdy5p
c1NlY3VyZUNvbnRleHQgaXMgdW5kZWZpbmVkLgotU3RhcnRpbmcgd29ya2VyOiByZXNvdXJjZXMv
d29ya2VyLWlzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC5qcwotUEFTUyBbV29ya2VyXSBzZWxmLmlz
U2VjdXJlQ29udGV4dCBpcyB1bmRlZmluZWQuCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVzdHMvc2VjdXJpdHkvaXNTZWN1
cmVDb250ZXh0LWRpc2FibGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvc2VjdXJp
dHkvaXNTZWN1cmVDb250ZXh0LWRpc2FibGVkLmh0bWwJKHJldmlzaW9uIDI2NzEwMSkKKysrIExh
eW91dFRlc3RzL3NlY3VyaXR5L2lzU2VjdXJlQ29udGV4dC1kaXNhYmxlZC5odG1sCShub25leGlz
dGVudCkKQEAgLTEsMTYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+PCEtLSB3ZWJraXQtdGVzdC1y
dW5uZXIgWyBlbmFibGVJc1NlY3VyZUNvbnRleHRBdHRyaWJ1dGU9ZmFsc2UgXSAtLT4KLTxodG1s
PgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0
PgotPC9oZWFkPgotPGJvZHk+Ci08c2NyaXB0Pgotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVl
OwotCi1kZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBnbG9iYWwgcHJvcGVydHkgaXNTZWN1cmVDb250
ZXh0cyBpcyB1bmRlZmluZWQgd2hlbiB0aGUgU2V0dGluZyBpc1NlY3VyZUNvbnRleHRBdHRyaWJ1
dGVFbmFibGVkIGlzIGRpc2FibGVkLiIpOwotCi1zaG91bGRCZVVuZGVmaW5lZCgid2luZG93Lmlz
U2VjdXJlQ29udGV4dCIpOwotc3RhcnRXb3JrZXIoInJlc291cmNlcy93b3JrZXItaXNTZWN1cmVD
b250ZXh0LWRpc2FibGVkLmpzIik7Ci08L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>