<?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>211657</bug_id>
          
          <creation_ts>2020-05-08 20:06:11 -0700</creation_ts>
          <short_desc>Re-enable &apos;VisuallyIdle&apos; RenderingUpdate throttling</short_desc>
          <delta_ts>2020-05-15 19:02:57 -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>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=204713</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1650867</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-05-08 20:06:11 -0700</bug_when>
    <thetext>The VisuallyIdle throttling was not implemented in r261113. The goal of the VisuallyIdle throttling is to save power by throttling the RenderingUpdate when the Page is VisuallyIdle. The page is in &apos;VisuallyIdle&apos; state when it is invisible or when the Window server stopped modifying the host application.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1650899</commentid>
    <comment_count>1</comment_count>
      <attachid>398921</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-05-09 00:59:47 -0700</bug_when>
    <thetext>Created attachment 398921
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651307</commentid>
    <comment_count>2</comment_count>
      <attachid>398921</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-05-11 10:33:21 -0700</bug_when>
    <thetext>Comment on attachment 398921
Patch

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

&gt; Source/WebCore/platform/graphics/AnimationFrameRate.h:77
&gt;  inline TextStream&amp; operator&lt;&lt;(TextStream&amp; ts, const OptionSet&lt;ThrottlingReason&gt;&amp; reasons)

TextStream already knows how to dump OptionSet&lt;&gt;, so you just need dumping for ThrottlingReason.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1653171</commentid>
    <comment_count>3</comment_count>
      <attachid>399511</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-05-15 14:22:35 -0700</bug_when>
    <thetext>Created attachment 399511
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1653238</commentid>
    <comment_count>4</comment_count>
      <attachid>399528</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-05-15 17:04:16 -0700</bug_when>
    <thetext>Created attachment 399528
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1653263</commentid>
    <comment_count>5</comment_count>
      <attachid>399538</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-05-15 19:02:57 -0700</bug_when>
    <thetext>Created attachment 399538
Patch</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398921</attachid>
            <date>2020-05-09 00:59:47 -0700</date>
            <delta_ts>2020-05-15 14:22:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211657-20200509005946.patch</filename>
            <type>text/plain</type>
            <size>4141</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTM0NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDIwLTA1LTA4ICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgUmUtZW5hYmxl
ICdWaXN1YWxseUlkbGUnIHJBRiB0aHJvdHRsaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE2NTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhZ2UvUmVuZGVyaW5nVXBkYXRlU2NoZWR1bGVyLmg6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvQW5pbWF0aW9uRnJhbWVSYXRlLmg6CisgICAg
ICAgIChXZWJDb3JlOjpwcmVmZXJyZWRGcmFtZUludGVydmFsKToKKyAgICAgICAgKFdlYkNvcmU6
Om9wZXJhdG9yPDwpOgorCiAyMDIwLTA1LTA3ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZW1vdmUgQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXI6Om11
dGVkCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL1JlbmRlcmluZ1VwZGF0ZVNjaGVkdWxlci5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUmVuZGVyaW5nVXBkYXRlU2NoZWR1
bGVyLmgJKHJldmlzaW9uIDI2MTM0NCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUmVuZGVyaW5n
VXBkYXRlU2NoZWR1bGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTM0LDggKzM0LDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogY2xhc3MgUGFnZTsKIGNsYXNzIFRpbWVyOwogCi1jbGFzcyBSZW5kZXJp
bmdVcGRhdGVTY2hlZHVsZXIgOiBwdWJsaWMgRGlzcGxheVJlZnJlc2hNb25pdG9yQ2xpZW50Ci17
CitjbGFzcyBSZW5kZXJpbmdVcGRhdGVTY2hlZHVsZXIgOiBwdWJsaWMgRGlzcGxheVJlZnJlc2hN
b25pdG9yQ2xpZW50IHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAg
ICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFJlbmRlcmluZ1VwZGF0ZVNjaGVkdWxlcj4gY3JlYXRl
KFBhZ2UmIHBhZ2UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Bbmlt
YXRpb25GcmFtZVJhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9BbmltYXRpb25GcmFtZVJhdGUuaAkocmV2aXNpb24gMjYxMzQ0KQorKysgU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQW5pbWF0aW9uRnJhbWVSYXRlLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTUyLDcgKzUyLDEwIEBAIGNvbnN0ZXhwciBjb25zdCBGcmFtZXNQZXJTZWNvbmQg
WmVyb0ZyYW0KIAogaW5saW5lIFNlY29uZHMgcHJlZmVycmVkRnJhbWVJbnRlcnZhbChjb25zdCBP
cHRpb25TZXQ8VGhyb3R0bGluZ1JlYXNvbj4mIHJlYXNvbnMpCiB7Ci0gICAgLy8gRklYTUU6IGhh
bmRsZSBUaHJvdHRsaW5nUmVhc29uOjpWaXN1YWxseUlkbGUsIFRocm90dGxpbmdSZWFzb246Ok91
dHNpZGVWaWV3cG9ydAorICAgIC8vIEZJWE1FOiBoYW5kbGUgVGhyb3R0bGluZ1JlYXNvbjo6T3V0
c2lkZVZpZXdwb3J0CisgICAgaWYgKHJlYXNvbnMuY29udGFpbnMoVGhyb3R0bGluZ1JlYXNvbjo6
VmlzdWFsbHlJZGxlKSkKKyAgICAgICAgcmV0dXJuIEFnZ3Jlc3NpdmVUaHJvdHRsaW5nQW5pbWF0
aW9uSW50ZXJ2YWw7CisKICAgICBpZiAocmVhc29ucy5jb250YWluc0FueSh7IFRocm90dGxpbmdS
ZWFzb246Okxvd1Bvd2VyTW9kZSwgVGhyb3R0bGluZ1JlYXNvbjo6Tm9uSW50ZXJhY3RlZENyb3Nz
T3JpZ2luRnJhbWUgfSkpCiAgICAgICAgIHJldHVybiBIYWxmU3BlZWRUaHJvdHRsaW5nQW5pbWF0
aW9uSW50ZXJ2YWw7CiAKQEAgLTczLDExICs3NiwxMSBAQCBpbmxpbmUgRnJhbWVzUGVyU2Vjb25k
IHByZWZlcnJlZEZyYW1lc1BlCiAKIGlubGluZSBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRT
dHJlYW0mIHRzLCBjb25zdCBPcHRpb25TZXQ8VGhyb3R0bGluZ1JlYXNvbj4mIHJlYXNvbnMpCiB7
Ci0gICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOworICAgIGJvb2wgZGlkQXBwZW5kID0gZmFsc2U7
CisKICAgICBmb3IgKGF1dG8gcmVhc29uIDogcmVhc29ucykgewotICAgICAgICBpZiAoIWJ1aWxk
ZXIuaXNFbXB0eSgpKQorICAgICAgICBpZiAoZGlkQXBwZW5kKQogICAgICAgICAgICAgdHMgPDwg
InwiOwotCiAgICAgICAgIHN3aXRjaCAocmVhc29uKSB7CiAgICAgICAgIGNhc2UgVGhyb3R0bGlu
Z1JlYXNvbjo6VmlzdWFsbHlJZGxlOgogICAgICAgICAgICAgdHMgPDwgIlZpc3VhbGx5SWRsZSI7
CkBAIC05Miw3ICs5NSw5IEBAIGlubGluZSBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJl
YW0KICAgICAgICAgICAgIHRzIDw8ICJOb25JbnRlcmFjdGl2ZUNyb3NzT3JpZ2luRnJhbWUiOwog
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KKyAgICAgICAgZGlkQXBwZW5kID0gdHJ1ZTsK
ICAgICB9CisKICAgICBpZiAocmVhc29ucy5pc0VtcHR5KCkpCiAgICAgICAgIHRzIDw8ICJbVW50
aHJvdHRsZWRdIjsKICAgICByZXR1cm4gdHM7CkluZGV4OiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkocmV2aXNpb24gMjYxNDMy
KQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwx
MyBAQAorMjAyMC0wNS0wOCAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUu
Y29tPgorCisgICAgICAgIFJlLWVuYWJsZSAnVmlzdWFsbHlJZGxlJyByQUYgdGhyb3R0bGluZwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNjU3CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nl
c3MvbWFjL1dpbmRvd1NlcnZlckNvbm5lY3Rpb24ubW06CisgICAgICAgIChXZWJLaXQ6OldpbmRv
d1NlcnZlckNvbm5lY3Rpb246OmFwcGxpY2F0aW9uV2luZG93TW9kaWZpY2F0aW9uc1N0b3BwZWQp
OgorCiAyMDIwLTA1LTA4ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CiAKICAg
ICAgICAgUmVtb3ZlIGVtcHR5IGRpcmVjdG9yaWVzIGZyb20gZnJvbSBzdm4ud2Via2l0Lm9yZyBy
ZXBvc2l0b3J5CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2luZG93U2VydmVy
Q29ubmVjdGlvbi5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMv
V2luZG93U2VydmVyQ29ubmVjdGlvbi5tbQkocmV2aXNpb24gMjYxMzQ0KQorKysgU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvbWFjL1dpbmRvd1NlcnZlckNvbm5lY3Rpb24ubW0JKHdvcmtpbmcgY29w
eSkKQEAgLTM5LDYgKzM5LDcgQEAgdm9pZCBXaW5kb3dTZXJ2ZXJDb25uZWN0aW9uOjphcHBsaWNh
dGlvbgogICAgICAgICByZXR1cm47CiAgICAgbV9hcHBsaWNhdGlvbldpbmRvd01vZGlmaWNhdGlv
bnNIYXZlU3RvcHBlZCA9IHN0b3BwZWQ7CiAgICAgd2luZG93U2VydmVyQ29ubmVjdGlvblN0YXRl
Q2hhbmdlZCgpOworICAgIFdURkxvZ0Fsd2F5cygiV2luZG93U2VydmVyQ29ubmVjdGlvbjo6YXBw
bGljYXRpb25XaW5kb3dNb2RpZmljYXRpb25zU3RvcHBlZCgpIHRoaXMgPSAlcCwgc3RvcHBlZCA9
ICVkIiwgdGhpcywgc3RvcHBlZCk7CiB9CiAKIHZvaWQgV2luZG93U2VydmVyQ29ubmVjdGlvbjo6
d2luZG93U2VydmVyQ29ubmVjdGlvblN0YXRlQ2hhbmdlZCgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399511</attachid>
            <date>2020-05-15 14:22:35 -0700</date>
            <delta_ts>2020-05-15 17:04:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211657-20200515142234.patch</filename>
            <type>text/plain</type>
            <size>20063</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTczMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDIwLTA1LTE1ICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgUmUtZW5hYmxl
ICdWaXN1YWxseUlkbGUnIFJlbmRlcmluZ1VwZGF0ZSB0aHJvdHRsaW5nCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE2NTcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpQYWdlOjpzZXRBY3Rpdml0eVN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9BbmltYXRpb25GcmFtZVJhdGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OnByZWZl
cnJlZEZyYW1lSW50ZXJ2YWwpOgorICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I8PCk6CisgICAg
ICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxz
OjpyZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucyBjb25zdCk6CisKIDIwMjAt
MDUtMTQgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KIAogICAg
ICAgICBVbnJldmlld2VkLiBGaXggYnVpbGQgd2FybmluZyBhZnRlciByMjYxMTEzCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGFnZS5jcHAJKHJldmlzaW9uIDI2MTczMikKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIwMDIsOCArMjAwMiwxMCBAQCB2b2lkIFBhZ2U6
OnNldEFjdGl2aXR5U3RhdGUoT3B0aW9uU2V0PEFjCiAgICAgICAgIHNldElzVmlzaWJsZUludGVy
bmFsKGFjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNWaXNpYmxlKSk7CiAg
ICAgaWYgKGNoYW5nZWQgJiBBY3Rpdml0eVN0YXRlOjpJc0luV2luZG93KQogICAgICAgICBzZXRJ
c0luV2luZG93SW50ZXJuYWwoYWN0aXZpdHlTdGF0ZS5jb250YWlucyhBY3Rpdml0eVN0YXRlOjpJ
c0luV2luZG93KSk7Ci0gICAgaWYgKGNoYW5nZWQgJiBBY3Rpdml0eVN0YXRlOjpJc1Zpc3VhbGx5
SWRsZSkKKyAgICBpZiAoY2hhbmdlZCAmIEFjdGl2aXR5U3RhdGU6OklzVmlzdWFsbHlJZGxlKSB7
CisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFnZTo6c2V0QWN0aXZpdHlTdGF0ZSgpOiBpc1Zpc3Vh
bGx5SWRsZSA9ICVkIiwgYWN0aXZpdHlTdGF0ZS5jb250YWlucyhBY3Rpdml0eVN0YXRlOjpJc1Zp
c3VhbGx5SWRsZSkpOwogICAgICAgICBzZXRJc1Zpc3VhbGx5SWRsZUludGVybmFsKGFjdGl2aXR5
U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUpKTsKKyAgICB9CiAg
ICAgaWYgKGNoYW5nZWQgJiBBY3Rpdml0eVN0YXRlOjpXaW5kb3dJc0FjdGl2ZSkgewogICAgICAg
ICBpZiAoYXV0byogdmlldyA9IG1fbWFpbkZyYW1lLT52aWV3KCkpCiAgICAgICAgICAgICB2aWV3
LT51cGRhdGVUaWxlZEJhY2tpbmdBZGFwdGl2ZVNpemluZygpOwpJbmRleDogU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvQW5pbWF0aW9uRnJhbWVSYXRlLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQW5pbWF0aW9uRnJhbWVSYXRlLmgJKHJl
dmlzaW9uIDI2MTczMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0FuaW1h
dGlvbkZyYW1lUmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01Miw4ICs1Miw3IEBAIGNvbnN0ZXhw
ciBjb25zdCBGcmFtZXNQZXJTZWNvbmQgWmVyb0ZyYW0KIAogaW5saW5lIFNlY29uZHMgcHJlZmVy
cmVkRnJhbWVJbnRlcnZhbChjb25zdCBPcHRpb25TZXQ8VGhyb3R0bGluZ1JlYXNvbj4mIHJlYXNv
bnMpCiB7Ci0gICAgLy8gRklYTUU6IGhhbmRsZSBUaHJvdHRsaW5nUmVhc29uOjpWaXN1YWxseUlk
bGUKLSAgICBpZiAocmVhc29ucy5jb250YWlucyhUaHJvdHRsaW5nUmVhc29uOjpPdXRzaWRlVmll
d3BvcnQpKQorICAgIGlmIChyZWFzb25zLmNvbnRhaW5zQW55KHsgVGhyb3R0bGluZ1JlYXNvbjo6
VmlzdWFsbHlJZGxlLCBUaHJvdHRsaW5nUmVhc29uOjpPdXRzaWRlVmlld3BvcnQgfSkpCiAgICAg
ICAgIHJldHVybiBBZ2dyZXNzaXZlVGhyb3R0bGluZ0FuaW1hdGlvbkludGVydmFsOwogICAgIAog
ICAgIGlmIChyZWFzb25zLmNvbnRhaW5zQW55KHsgVGhyb3R0bGluZ1JlYXNvbjo6TG93UG93ZXJN
b2RlLCBUaHJvdHRsaW5nUmVhc29uOjpOb25JbnRlcmFjdGVkQ3Jvc3NPcmlnaW5GcmFtZSB9KSkK
QEAgLTc0LDMyICs3MywyMiBAQCBpbmxpbmUgRnJhbWVzUGVyU2Vjb25kIHByZWZlcnJlZEZyYW1l
c1BlCiAgICAgcmV0dXJuIFplcm9GcmFtZXNQZXJTZWNvbmQ7CiB9CiAKLWlubGluZSBUZXh0U3Ry
ZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJlYW0mIHRzLCBjb25zdCBPcHRpb25TZXQ8VGhyb3R0bGlu
Z1JlYXNvbj4mIHJlYXNvbnMpCitpbmxpbmUgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3Ry
ZWFtJiB0cywgVGhyb3R0bGluZ1JlYXNvbiByZWFzb24pCiB7Ci0gICAgYm9vbCBkaWRBcHBlbmQg
PSBmYWxzZTsKLQotICAgIGZvciAoYXV0byByZWFzb24gOiByZWFzb25zKSB7Ci0gICAgICAgIGlm
IChkaWRBcHBlbmQpCi0gICAgICAgICAgICB0cyA8PCAifCI7Ci0gICAgICAgIHN3aXRjaCAocmVh
c29uKSB7Ci0gICAgICAgIGNhc2UgVGhyb3R0bGluZ1JlYXNvbjo6VmlzdWFsbHlJZGxlOgotICAg
ICAgICAgICAgdHMgPDwgIlZpc3VhbGx5SWRsZSI7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAg
ICAgY2FzZSBUaHJvdHRsaW5nUmVhc29uOjpPdXRzaWRlVmlld3BvcnQ6Ci0gICAgICAgICAgICB0
cyA8PCAiT3V0c2lkZVZpZXdwb3J0IjsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNl
IFRocm90dGxpbmdSZWFzb246Okxvd1Bvd2VyTW9kZToKLSAgICAgICAgICAgIHRzIDw8ICJMb3dQ
b3dlck1vZGUiOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgVGhyb3R0bGluZ1Jl
YXNvbjo6Tm9uSW50ZXJhY3RlZENyb3NzT3JpZ2luRnJhbWU6Ci0gICAgICAgICAgICB0cyA8PCAi
Tm9uSW50ZXJhY3RpdmVDcm9zc09yaWdpbkZyYW1lIjsKLSAgICAgICAgICAgIGJyZWFrOwotICAg
ICAgICB9Ci0gICAgICAgIGRpZEFwcGVuZCA9IHRydWU7CisgICAgc3dpdGNoIChyZWFzb24pIHsK
KyAgICBjYXNlIFRocm90dGxpbmdSZWFzb246OlZpc3VhbGx5SWRsZToKKyAgICAgICAgdHMgPDwg
IlZpc3VhbGx5SWRsZSI7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgVGhyb3R0bGluZ1JlYXNv
bjo6T3V0c2lkZVZpZXdwb3J0OgorICAgICAgICB0cyA8PCAiT3V0c2lkZVZpZXdwb3J0IjsKKyAg
ICAgICAgYnJlYWs7CisgICAgY2FzZSBUaHJvdHRsaW5nUmVhc29uOjpMb3dQb3dlck1vZGU6Cisg
ICAgICAgIHRzIDw8ICJMb3dQb3dlck1vZGUiOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFRo
cm90dGxpbmdSZWFzb246Ok5vbkludGVyYWN0ZWRDcm9zc09yaWdpbkZyYW1lOgorICAgICAgICB0
cyA8PCAiTm9uSW50ZXJhY3RpdmVDcm9zc09yaWdpbkZyYW1lIjsKKyAgICAgICAgYnJlYWs7CiAg
ICAgfQotCi0gICAgaWYgKHJlYXNvbnMuaXNFbXB0eSgpKQotICAgICAgICB0cyA8PCAiW1VudGhy
b3R0bGVkXSI7CiAgICAgcmV0dXJuIHRzOwogfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuY3BwCShyZXZpc2lvbiAyNjE3MzIpCisrKyBTb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEzOTMsOCArMTM5Myw3IEBAIFN0cmlu
ZyBJbnRlcm5hbHM6OnJlcXVlc3RBbmltYXRpb25GcmFtZVQKICAgICAgICAgcmV0dXJuIFN0cmlu
ZygpOwogICAgICAgICAKICAgICBUZXh0U3RyZWFtIHRzOwotICAgIHRzIDw8IHNjcmlwdGVkQW5p
bWF0aW9uQ29udHJvbGxlci0+dGhyb3R0bGluZ1JlYXNvbnMoKTsKLSAgICByZXR1cm4gdHMucmVs
ZWFzZSgpOworICAgIHJldHVybiAodHMgPDwgc2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLT50
aHJvdHRsaW5nUmVhc29ucygpKS5yZWxlYXNlKCk7CiB9CiAKIGRvdWJsZSBJbnRlcm5hbHM6OnJl
cXVlc3RBbmltYXRpb25GcmFtZUludGVydmFsKCkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCShyZXZpc2lv
biAyNjE3NTkpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE3IEBACisyMDIwLTA1LTE1ICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3
YUBhcHBsZS5jb20+CisKKyAgICAgICAgUmUtZW5hYmxlICdWaXN1YWxseUlkbGUnIFJlbmRlcmlu
Z1VwZGF0ZSB0aHJvdHRsaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMTE2NTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlUHJveHk6OnVwZGF0ZUFjdGl2aXR5U3RhdGUpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OmFjdGl2aXR5U3RhdGVEaWRDaGFuZ2UpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OmRpc3BhdGNoQWN0aXZpdHlTdGF0ZUNoYW5nZSk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpz
ZXRBY3Rpdml0eVN0YXRlKToKKwogMjAyMC0wNS0xNSAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAg
PGFwZXJlekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEszXSBCcmluZyBiYWNrIHVzYWdlIG9m
IEd0a01lbnUgZm9yIGNvbnRleHQgbWVudXMKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUGFnZVByb3h5LmNwcAkocmV2aXNpb24gMjYxNzMyKQorKysgU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTg4OCw4ICsxODg4LDEw
IEBAIHZvaWQgV2ViUGFnZVByb3h5Ojp1cGRhdGVBY3Rpdml0eVN0YXRlKE8KICAgICAgICAgbV9h
Y3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0eVN0YXRlOjpJc1Zpc2libGVPck9jY2x1ZGVkKTsKICAg
ICBpZiAoZmxhZ3NUb1VwZGF0ZSAmIEFjdGl2aXR5U3RhdGU6OklzSW5XaW5kb3cgJiYgcGFnZUNs
aWVudCgpLmlzVmlld0luV2luZG93KCkpCiAgICAgICAgIG1fYWN0aXZpdHlTdGF0ZS5hZGQoQWN0
aXZpdHlTdGF0ZTo6SXNJbldpbmRvdyk7Ci0gICAgaWYgKGZsYWdzVG9VcGRhdGUgJiBBY3Rpdml0
eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSAmJiBwYWdlQ2xpZW50KCkuaXNWaXN1YWxseUlkbGUoKSkK
KyAgICBpZiAoZmxhZ3NUb1VwZGF0ZSAmIEFjdGl2aXR5U3RhdGU6OklzVmlzdWFsbHlJZGxlICYm
IHBhZ2VDbGllbnQoKS5pc1Zpc3VhbGx5SWRsZSgpKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygi
V2ViUGFnZVByb3h5Ojp1cGRhdGVBY3Rpdml0eVN0YXRlKCk6IGlzVmlzdWFsbHlJZGxlID0gJWQi
LCBtX2FjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUp
KTsKICAgICAgICAgbV9hY3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0eVN0YXRlOjpJc1Zpc3VhbGx5
SWRsZSk7CisgICAgfQogICAgIGlmIChmbGFnc1RvVXBkYXRlICYgQWN0aXZpdHlTdGF0ZTo6SXNB
dWRpYmxlICYmIG1fbWVkaWFTdGF0ZSAmIE1lZGlhUHJvZHVjZXI6OklzUGxheWluZ0F1ZGlvICYm
ICEobV9tdXRlZFN0YXRlICYgTWVkaWFQcm9kdWNlcjo6QXVkaW9Jc011dGVkKSkKICAgICAgICAg
bV9hY3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0eVN0YXRlOjpJc0F1ZGlibGUpOwogICAgIGlmIChm
bGFnc1RvVXBkYXRlICYgQWN0aXZpdHlTdGF0ZTo6SXNMb2FkaW5nICYmIG1fcGFnZUxvYWRTdGF0
ZS5pc0xvYWRpbmcoKSkKQEAgLTE5MDUsOCArMTkwNywxMCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6
YWN0aXZpdHlTdGF0ZURpZENoYW5nCiAgICAgbV9wb3RlbnRpYWxseUNoYW5nZWRBY3Rpdml0eVN0
YXRlRmxhZ3MuYWRkKG1heUhhdmVDaGFuZ2VkKTsKICAgICBtX2FjdGl2aXR5U3RhdGVDaGFuZ2VX
YW50c1N5bmNocm9ub3VzUmVwbHkgPSBtX2FjdGl2aXR5U3RhdGVDaGFuZ2VXYW50c1N5bmNocm9u
b3VzUmVwbHkgfHwgcmVwbHlNb2RlID09IEFjdGl2aXR5U3RhdGVDaGFuZ2VSZXBseU1vZGU6OlN5
bmNocm9ub3VzOwogCi0gICAgaWYgKG1fc3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlcyAmJiBkaXNw
YXRjaE1vZGUgIT0gQWN0aXZpdHlTdGF0ZUNoYW5nZURpc3BhdGNoTW9kZTo6SW1tZWRpYXRlKQor
ICAgIGlmIChtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMgJiYgZGlzcGF0Y2hNb2RlICE9IEFj
dGl2aXR5U3RhdGVDaGFuZ2VEaXNwYXRjaE1vZGU6OkltbWVkaWF0ZSkgeworICAgICAgICBXVEZM
b2dBbHdheXMoIldlYlBhZ2VQcm94eTo6YWN0aXZpdHlTdGF0ZURpZENoYW5nZSgpOiBWaXNpYmls
aXR5IHVwZGF0ZXMgd2VyZSBzdXBwcmVzc2VkIik7CiAgICAgICAgIHJldHVybjsKKyAgICB9CiAK
ICNpZiBQTEFURk9STShDT0NPQSkKICAgICBib29sIGlzTmV3bHlJbldpbmRvdyA9ICFpc0luV2lu
ZG93KCkgJiYgKG1heUhhdmVDaGFuZ2VkICYgQWN0aXZpdHlTdGF0ZTo6SXNJbldpbmRvdykgJiYg
cGFnZUNsaWVudCgpLmlzVmlld0luV2luZG93KCk7CkBAIC0xOTg0LDggKzE5ODgsMTAgQEAgdm9p
ZCBXZWJQYWdlUHJveHk6OmRpc3BhdGNoQWN0aXZpdHlTdGF0ZQogCiAgICAgYXV0byBhY3Rpdml0
eVN0YXRlQ2hhbmdlSUQgPSBtX2FjdGl2aXR5U3RhdGVDaGFuZ2VXYW50c1N5bmNocm9ub3VzUmVw
bHkgPyB0YWtlTmV4dEFjdGl2aXR5U3RhdGVDaGFuZ2VJRCgpIDogc3RhdGljX2Nhc3Q8QWN0aXZp
dHlTdGF0ZUNoYW5nZUlEPihBY3Rpdml0eVN0YXRlQ2hhbmdlQXN5bmNocm9ub3VzKTsKIAotICAg
IGlmIChjaGFuZ2VkIHx8IGFjdGl2aXR5U3RhdGVDaGFuZ2VJRCAhPSBBY3Rpdml0eVN0YXRlQ2hh
bmdlQXN5bmNocm9ub3VzIHx8ICFtX25leHRBY3Rpdml0eVN0YXRlQ2hhbmdlQ2FsbGJhY2tzLmlz
RW1wdHkoKSkKKyAgICBpZiAoY2hhbmdlZCB8fCBhY3Rpdml0eVN0YXRlQ2hhbmdlSUQgIT0gQWN0
aXZpdHlTdGF0ZUNoYW5nZUFzeW5jaHJvbm91cyB8fCAhbV9uZXh0QWN0aXZpdHlTdGF0ZUNoYW5n
ZUNhbGxiYWNrcy5pc0VtcHR5KCkpIHsKKyAgICAgICAgV1RGTG9nQWx3YXlzKCJXZWJQYWdlUHJv
eHk6OmRpc3BhdGNoQWN0aXZpdHlTdGF0ZUNoYW5nZSgpOiBNZXNzYWdlIHdpbGwgYmUgc2VudCB0
byB0aGUgV2ViUHJvY2VzczogbV9hY3Rpdml0eVN0YXRlLmlzVmlzdWFsbHlJZGxlID0gJWQiLCBt
X2FjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUpKTsK
ICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0QWN0aXZpdHlTdGF0ZShtX2FjdGl2
aXR5U3RhdGUsIGFjdGl2aXR5U3RhdGVDaGFuZ2VJRCwgbV9uZXh0QWN0aXZpdHlTdGF0ZUNoYW5n
ZUNhbGxiYWNrcykpOworICAgIH0KIAogICAgIG1fbmV4dEFjdGl2aXR5U3RhdGVDaGFuZ2VDYWxs
YmFja3MuY2xlYXIoKTsKIApJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHAJKHJldmlzaW9uIDI2MTczMikKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMjI5LDYgKzMyMjks
NyBAQCB2b2lkIFdlYlBhZ2U6OnNldEFjdGl2aXR5U3RhdGUoT3B0aW9uU2V0CiAKICAgICBBU1NF
UlRfV0lUSF9NRVNTQUdFKG1fcGFnZSwgInNldEFjdGl2aXR5U3RhdGUgY2FsbGVkIG9uICUiIFBS
SXU2NCAiIGJ1dCBXZWJDb3JlIHBhZ2Ugd2FzIG51bGwiLCBpZGVudGlmaWVyKCkudG9VSW50NjQo
KSk7CiAgICAgaWYgKG1fcGFnZSkgeworICAgICAgICBXVEZMb2dBbHdheXMoIldlYlBhZ2U6OnNl
dEFjdGl2aXR5U3RhdGUoKTogaXNWaXN1YWxseUlkbGUgPSAlZCIsIGFjdGl2aXR5U3RhdGUuY29u
dGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUpKTsKICAgICAgICAgU2V0Rm9yU2Nv
cGU8T3B0aW9uU2V0PEFjdGl2aXR5U3RhdGU6OkZsYWc+PiBjdXJyZW50bHlDaGFuZ2luZ0FjdGl2
aXR5U3RhdGUgeyBtX2xhc3RBY3Rpdml0eVN0YXRlQ2hhbmdlcywgY2hhbmdlZCB9OwogICAgICAg
ICBtX3BhZ2UtPnNldEFjdGl2aXR5U3RhdGUoYWN0aXZpdHlTdGF0ZSk7CiAgICAgfQpJbmRleDog
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxv
ZwkocmV2aXNpb24gMjYxNzMyKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAtMDUtMTUgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fi
b3VoYWxsYXdhQGFwcGxlLmNvbT4KKworICAgICAgICBSZS1lbmFibGUgJ1Zpc3VhbGx5SWRsZScg
UmVuZGVyaW5nVXBkYXRlIHRocm90dGxpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMTY1NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJh
bWUtdGhyb3R0bGluZy1kZXRhY2hlZC1pZnJhbWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZh
c3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0aW9uLWZyYW1lLXRocm90dGxpbmctZGV0YWNoZWQt
aWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mcmFtZS10aHJvdHRsaW5nL3JhZi10
aHJvdHRsZS1pbi1jcm9zcy1vcmlnaW4tc3ViZnJhbWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IGh0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2lu
LXN1YmZyYW1lLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnM6
CisgICAgICAgICogcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMjAtMDUtMTQg
IFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgW01vamF2
ZSBEZWJ1ZyBXSzJdIGNvbXBvc2l0aW5nL3RyYW5zZm9ybXMvcGVyc3BlY3RpdmUtd2l0aC1zY3Jv
bGxpbmcuaHRtbCBpcyBmcmVxdWVudGx5IGZhaWxpbmcKSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qv
YW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0aW9uLWZyYW1lLXRocm90dGxpbmctZGV0YWNoZWQtaWZy
YW1lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlv
bi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsaW5nLWRldGFjaGVkLWlmcmFtZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDI2MTczMikKKysrIExheW91dFRlc3RzL2Zhc3QvYW5pbWF0aW9u
L3JlcXVlc3QtYW5pbWF0aW9uLWZyYW1lLXRocm90dGxpbmctZGV0YWNoZWQtaWZyYW1lLWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMywyNyArMywyNyBAQCBUZXN0IHRoYXQgcmVxdWVz
dEFuaW1hdGlvbkZyYW1lIGdldHMgdGhlCiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKIAot
UEFTUyBpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBp
cyAiW1VudGhyb3R0bGVkXSIKK1BBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRo
cm90dGxpbmdSZWFzb25zKCkgaXMgIltdIgogUEFTUyBpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlv
bkZyYW1lSW50ZXJ2YWwgaXMgMC4wMTUKLVBBU1MgZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5h
bHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW1VudGhyb3R0
bGVkXSIKK1BBU1MgZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlv
bkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW10iCiBQQVNTIGZyYW1lLmNvbnRlbnRXaW5k
b3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZUludGVydmFsIGlzIDAuMDE1CiBpbnRl
cm5hbHMuc2V0TG93UG93ZXJNb2RlRW5hYmxlZCh0cnVlKTsKLVBBU1MgaW50ZXJuYWxzLnJlcXVl
c3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIkxvd1Bvd2VyTW9kZSIKK1BB
U1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMg
IltMb3dQb3dlck1vZGVdIgogUEFTUyBpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50
ZXJ2YWwgaXMgMC4wMzAKLVBBU1MgZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVz
dEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiTG93UG93ZXJNb2RlIgorUEFT
UyBmcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJv
dHRsaW5nUmVhc29ucygpIGlzICJbTG93UG93ZXJNb2RlXSIKIFBBU1MgZnJhbWUuY29udGVudFdp
bmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwgaXMgMC4wMzAKIGZy
YW1lLnJlbW92ZSgpCiBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKQotUEFTUyBpbnRl
cm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiTG93UG93
ZXJNb2RlIgorUEFTUyBpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1Jl
YXNvbnMoKSBpcyAiW0xvd1Bvd2VyTW9kZV0iCiBQQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0
aW9uRnJhbWVJbnRlcnZhbCBpcyAwLjAzMAotUEFTUyBmcmFtZS5jb250ZW50V2luZG93LmludGVy
bmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJMb3dQb3dl
ck1vZGUiCitQQVNTIGZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRp
b25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltMb3dQb3dlck1vZGVdIgogUEFTUyBmcmFt
ZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZhbCBp
cyAwLjAzMAogZnJhbWUucmVtb3ZlKCkKIGludGVybmFscy5zZXRMb3dQb3dlck1vZGVFbmFibGVk
KGZhbHNlKTsKLVBBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdS
ZWFzb25zKCkgaXMgIltVbnRocm90dGxlZF0iCitQQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0
aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJbXSIKIFBBU1MgaW50ZXJuYWxzLnJlcXVl
c3RBbmltYXRpb25GcmFtZUludGVydmFsIGlzIDAuMDE1CiBkb2N1bWVudC5ib2R5LmFwcGVuZENo
aWxkKGZyYW1lKQotUEFTUyBmcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5p
bWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJbVW50aHJvdHRsZWRdIgorUEFTUyBm
cmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRs
aW5nUmVhc29ucygpIGlzICJbXSIKIFBBU1MgZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMu
cmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwgaXMgMC4wMTUKIFBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKIApJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9hbmltYXRpb24vcmVxdWVz
dC1hbmltYXRpb24tZnJhbWUtdGhyb3R0bGluZy1kZXRhY2hlZC1pZnJhbWUuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFt
ZS10aHJvdHRsaW5nLWRldGFjaGVkLWlmcmFtZS5odG1sCShyZXZpc2lvbiAyNjE3MzIpCisrKyBM
YXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRs
aW5nLWRldGFjaGVkLWlmcmFtZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xOCwzMyArMTgsMzMg
QEAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGRvV29yayk7CiBjb25zdCBmcmFtZSA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpOwogZnJhbWUuc3JjID0gInJlc291cmNlcy9mcmFtZS13
aXRoLWFuaW1hdGlvbi5odG1sIjsKIGZyYW1lLm9ubG9hZCA9IGZ1bmN0aW9uKCkgewotICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90
dGxpbmdSZWFzb25zKCkiLCAiW1VudGhyb3R0bGVkXSIpOworICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCki
LCAiW10iKTsKICAgICBzaG91bGRCZSgiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZUlu
dGVydmFsIiwgIjAuMDE1Iik7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmcmFtZS5jb250
ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29u
cygpIiwgIltVbnRocm90dGxlZF0iKTsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1l
LmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdS
ZWFzb25zKCkiLCAiW10iKTsKICAgICBzaG91bGRCZSgiZnJhbWUuY29udGVudFdpbmRvdy5pbnRl
cm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwiLCAiMC4wMTUiKTsKIAogICAgIGV2
YWxBbmRMb2coImludGVybmFscy5zZXRMb3dQb3dlck1vZGVFbmFibGVkKHRydWUpOyIpOwotICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRo
cm90dGxpbmdSZWFzb25zKCkiLCAiTG93UG93ZXJNb2RlIik7CisgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMo
KSIsICJbTG93UG93ZXJNb2RlXSIpOwogICAgIHNob3VsZEJlKCJpbnRlcm5hbHMucmVxdWVzdEFu
aW1hdGlvbkZyYW1lSW50ZXJ2YWwiLCAiMC4wMzAiKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRo
cm90dGxpbmdSZWFzb25zKCkiLCAiTG93UG93ZXJNb2RlIik7CisgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJmcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJh
bWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltMb3dQb3dlck1vZGVdIik7CiAgICAgc2hvdWxkQmUo
ImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZUludGVy
dmFsIiwgIjAuMDMwIik7CiAgICAgZXZhbEFuZExvZygiZnJhbWUucmVtb3ZlKCkiKTsKIAogICAg
IGV2YWxBbmRMb2coImRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZnJhbWUpIik7CiAgICAgZnJh
bWUub25sb2FkID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
aW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiTG93
UG93ZXJNb2RlIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJl
cXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW0xvd1Bvd2VyTW9kZV0i
KTsKICAgICAgICAgc2hvdWxkQmUoImludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRl
cnZhbCIsICIwLjAzMCIpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNv
bnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFz
b25zKCkiLCAiTG93UG93ZXJNb2RlIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
ZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0
bGluZ1JlYXNvbnMoKSIsICJbTG93UG93ZXJNb2RlXSIpOwogICAgICAgICBzaG91bGRCZSgiZnJh
bWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwi
LCAiMC4wMzAiKTsKIAogICAgICAgICBldmFsQW5kTG9nKCJmcmFtZS5yZW1vdmUoKSIpOwogICAg
ICAgICBldmFsQW5kTG9nKCJpbnRlcm5hbHMuc2V0TG93UG93ZXJNb2RlRW5hYmxlZChmYWxzZSk7
Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmlt
YXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW1VudGhyb3R0bGVkXSIpOworICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVU
aHJvdHRsaW5nUmVhc29ucygpIiwgIltdIik7CiAgICAgICAgIHNob3VsZEJlKCJpbnRlcm5hbHMu
cmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwiLCAiMC4wMTUiKTsKIAogICAgICAgICBldmFs
QW5kTG9nKCJkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKSIpOwogICAgICAgICBmcmFt
ZS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygiZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhy
b3R0bGluZ1JlYXNvbnMoKSIsICJbVW50aHJvdHRsZWRdIik7CisgICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmlt
YXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW10iKTsKICAgICAgICAgICAgIHNob3Vs
ZEJlKCJmcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJ
bnRlcnZhbCIsICIwLjAxNSIpOwogICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CiAgICAgICAg
IH0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhy
b3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZyYW1lLXRocm90dGxpbmcvcmFmLXRocm90dGxlLWlu
LWNyb3NzLW9yaWdpbi1zdWJmcmFtZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI2MTczMikKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4t
Y3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNiwx
NiArNiwxNiBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiBSZWNl
aXZlZCBtZXNzYWdlOiBmcmFtZWxvYWQKIFJlY2VpdmVkIG1lc3NhZ2U6IGZyYW1lbG9hZAogQ2hl
Y2tpbmcgdGhhdCByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgaXMgdGhyb3R0bGVkIGluIGNyb3NzIG9y
aWdpbiBmcmFtZQotUmVjZWl2ZWQgbWVzc2FnZTogdGhyb3R0bGVkW2Nyb3NzXTogTm9uSW50ZXJh
Y3RpdmVDcm9zc09yaWdpbkZyYW1lCi1SZWNlaXZlZCBtZXNzYWdlOiB0aHJvdHRsZWRbc2FtZV06
IFtVbnRocm90dGxlZF0KK1JlY2VpdmVkIG1lc3NhZ2U6IHRocm90dGxlZFtjcm9zc106IFtOb25J
bnRlcmFjdGl2ZUNyb3NzT3JpZ2luRnJhbWVdCitSZWNlaXZlZCBtZXNzYWdlOiB0aHJvdHRsZWRb
c2FtZV06IFtdCiBQQVNTIHRocm90dGxlZFN0YXRlWydjcm9zcyddIGlzICJOb25JbnRlcmFjdGl2
ZUNyb3NzT3JpZ2luRnJhbWUiCi1QQVNTIHRocm90dGxlZFN0YXRlWydzYW1lJ10gaXMgIltVbnRo
cm90dGxlZF0iCitQQVNTIHRocm90dGxlZFN0YXRlWydzYW1lJ10gaXMgIiIKIEludGVyYWN0ZWQg
d2l0aCBjcm9zcy1vcmlnaW4gZnJhbWUKIEludGVyYWN0ZWQgd2l0aCBzYW1lLW9yaWdpbiBmcmFt
ZQotUmVjZWl2ZWQgbWVzc2FnZTogdGhyb3R0bGVkW2Nyb3NzXTogW1VudGhyb3R0bGVkXQotUmVj
ZWl2ZWQgbWVzc2FnZTogdGhyb3R0bGVkW3NhbWVdOiBbVW50aHJvdHRsZWRdCi1QQVNTIHRocm90
dGxlZFN0YXRlWydjcm9zcyddIGlzICJbVW50aHJvdHRsZWRdIgotUEFTUyB0aHJvdHRsZWRTdGF0
ZVsnc2FtZSddIGlzICJbVW50aHJvdHRsZWRdIgorUmVjZWl2ZWQgbWVzc2FnZTogdGhyb3R0bGVk
W2Nyb3NzXTogW10KK1JlY2VpdmVkIG1lc3NhZ2U6IHRocm90dGxlZFtzYW1lXTogW10KK1BBU1Mg
dGhyb3R0bGVkU3RhdGVbJ2Nyb3NzJ10gaXMgIiIKK1BBU1MgdGhyb3R0bGVkU3RhdGVbJ3NhbWUn
XSBpcyAiIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRF
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZyYW1lLXRocm90dGxpbmcvcmFmLXRocm90
dGxlLWluLWNyb3NzLW9yaWdpbi1zdWJmcmFtZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3Jp
Z2luLXN1YmZyYW1lLmh0bWwJKHJldmlzaW9uIDI2MTczMikKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZy
YW1lLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTU1LDE0ICs1NSwxNCBAQAogICAgIGZ1bmN0aW9u
IGNoZWNrSW5pdGlhbGx5VGhyb3R0bGVkKCkKICAgICB7CiAgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygidGhyb3R0bGVkU3RhdGVbJ2Nyb3NzJ10iLCAiTm9uSW50ZXJhY3RpdmVDcm9zc09y
aWdpbkZyYW1lIik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygidGhyb3R0bGVkU3Rh
dGVbJ3NhbWUnXSIsICJbVW50aHJvdHRsZWRdIik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJp
bmcoInRocm90dGxlZFN0YXRlWydzYW1lJ10iKTsKICAgICAgICAgaW50ZXJhY3RXaXRoU3ViZnJh
bWVzKCk7CiAgICAgfQogCiAgICAgZnVuY3Rpb24gY2hlY2tVbnRocm90dGxlZEFmdGVySW50ZXJh
Y3Rpb24oKQogICAgIHsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0aHJvdHRsZWRT
dGF0ZVsnY3Jvc3MnXSIsICJbVW50aHJvdHRsZWRdIik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygidGhyb3R0bGVkU3RhdGVbJ3NhbWUnXSIsICJbVW50aHJvdHRsZWRdIik7CisgICAg
ICAgIHNob3VsZEJlRW1wdHlTdHJpbmcoInRocm90dGxlZFN0YXRlWydjcm9zcyddIik7CisgICAg
ICAgIHNob3VsZEJlRW1wdHlTdHJpbmcoInRocm90dGxlZFN0YXRlWydzYW1lJ10iKTsKICAgICAg
ICAgZmluaXNoSlNUZXN0KCk7CiAgICAgfQogCkBAIC03NSw3ICs3NSw3IEBACiAgICAgICAgICAg
ICByZXR1cm47CiAgICAgICAgIH0KIAotICAgICAgICB2YXIgcmUgPSAvdGhyb3R0bGVkXFsoXHcr
KVxdOiAoKFx3KykoXHxcdyspKnxcW1VudGhyb3R0bGVkXF0pLzsKKyAgICAgICAgdmFyIHJlID0g
L3Rocm90dGxlZFxbKFx3KylcXTogXFsoKChcdyspKCxccypcdyspKik/KVxdLzsKICAgICAgICAg
dmFyIG1hdGNoID0gcmUuZXhlYyhtZXNzYWdlLmRhdGEpOwogICAgICAgICBpZiAobWF0Y2gpIHsK
ICAgICAgICAgICAgIGZyYW1lSUQgPSBtYXRjaFsxXTsKSW5kZXg6IExheW91dFRlc3RzL3BsYXRm
b3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRm
b3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCShyZXZpc2lvbiAyNjE3MzIpCisrKyBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtMTgyLDcg
KzE4Miw2IEBAIGh0dHAvdGVzdHMvY2FjaGUvZGlzay1jYWNoZS9kaXNrLWNhY2hlLW0KIGZhc3Qv
ZXZlbnRzL3RvdWNoIFsgU2tpcCBdCiBmYXN0L3NoYWRvdy1kb20vdG91Y2gtZXZlbnQtaW9zLmh0
bWwgWyBTa2lwIF0KIGZhc3Qvc2hhZG93LWRvbS90b3VjaC1ldmVudC1vbi10ZXh0LWFzc2lnbmVk
LXRvLXNsb3QuaHRtbCBbIFNraXAgXQotaHR0cC90ZXN0cy9mcmFtZS10aHJvdHRsaW5nL3JhZi10
aHJvdHRsZS1pbi1jcm9zcy1vcmlnaW4tc3ViZnJhbWUuaHRtbCBbIFNraXAgXQogaHR0cC90ZXN0
cy9mcmFtZS10aHJvdHRsaW5nL3RpbWVyLXRocm90dGxlLWluLWNyb3NzLW9yaWdpbi1zdWJmcmFt
ZS5odG1sIFsgU2tpcCBdCiBodHRwL3Rlc3RzL3F1aWNrbG9vay9hdC1pbXBvcnQtc3R5bGVzaGVl
dC1ibG9ja2VkLmh0bWwgWyBTa2lwIF0KIGh0dHAvdGVzdHMvcXVpY2tsb29rL2Jhc2UtdXJsLWJs
b2NrZWQuaHRtbCBbIFNraXAgXQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RF
eHBlY3RhdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RF
eHBlY3RhdGlvbnMJKHJldmlzaW9uIDI2MTczMikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9UZXN0RXhwZWN0YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC0xOTU2LDUgKzE5NTYsMyBAQCB3
ZWJraXQub3JnL2IvMjEwNTE3IHN0b3JhZ2UvaW5kZXhlZGRiL3JlCiAjIFRoZXNlIG1lZGlhIGNv
bnRyb2xzIHRlc3RzIGFyZSBub3QgcmVsZXZhbnQgb24gbWFjT1MgYW5kIGlPUy4KIG1lZGlhL21l
ZGlhLWRvY3VtZW50LWF1ZGlvLXJlcGFpbnQuaHRtbCBbIFNraXAgXQogbWVkaWEvY29udHJvbHMt
c3R5bGluZy5odG1sIFsgU2tpcCBdCi0KLWh0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYt
dGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399528</attachid>
            <date>2020-05-15 17:04:16 -0700</date>
            <delta_ts>2020-05-15 19:02:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211657-20200515170413.patch</filename>
            <type>text/plain</type>
            <size>20663</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTczMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDIwLTA1LTE1ICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgUmUtZW5hYmxl
ICdWaXN1YWxseUlkbGUnIFJlbmRlcmluZ1VwZGF0ZSB0aHJvdHRsaW5nCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE2NTcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpQYWdlOjpzZXRBY3Rpdml0eVN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9BbmltYXRpb25GcmFtZVJhdGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OnByZWZl
cnJlZEZyYW1lSW50ZXJ2YWwpOgorICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I8PCk6CisgICAg
ICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxz
OjpyZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucyBjb25zdCk6CisKIDIwMjAt
MDUtMTQgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KIAogICAg
ICAgICBVbnJldmlld2VkLiBGaXggYnVpbGQgd2FybmluZyBhZnRlciByMjYxMTEzCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGFnZS5jcHAJKHJldmlzaW9uIDI2MTczMikKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE1MDQsNiArMTUwNCw3IEBAIHZvaWQgUGFnZTo6
c2V0SXNWaXN1YWxseUlkbGVJbnRlcm5hbChib28KICAgICBpZiAoaXNWaXN1YWxseUlkbGUgPT0g
bV90aHJvdHRsaW5nUmVhc29ucy5jb250YWlucyhUaHJvdHRsaW5nUmVhc29uOjpWaXN1YWxseUlk
bGUpKQogICAgICAgICByZXR1cm47CiAKKyAgICBXVEZMb2dBbHdheXMoIlBhZ2U6OnNldElzVmlz
dWFsbHlJZGxlSW50ZXJuYWwoKTogaXNWaXN1YWxseUlkbGUgPSAlZCIsIGlzVmlzdWFsbHlJZGxl
KTsKICAgICBtX3Rocm90dGxpbmdSZWFzb25zID0gbV90aHJvdHRsaW5nUmVhc29ucyBeIFRocm90
dGxpbmdSZWFzb246OlZpc3VhbGx5SWRsZTsKICAgICByZW5kZXJpbmdVcGRhdGVTY2hlZHVsZXIo
KS5hZGp1c3RSZW5kZXJpbmdVcGRhdGVGcmVxdWVuY3koKTsKIH0KQEAgLTIwMDIsOCArMjAwMywx
MCBAQCB2b2lkIFBhZ2U6OnNldEFjdGl2aXR5U3RhdGUoT3B0aW9uU2V0PEFjCiAgICAgICAgIHNl
dElzVmlzaWJsZUludGVybmFsKGFjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6
SXNWaXNpYmxlKSk7CiAgICAgaWYgKGNoYW5nZWQgJiBBY3Rpdml0eVN0YXRlOjpJc0luV2luZG93
KQogICAgICAgICBzZXRJc0luV2luZG93SW50ZXJuYWwoYWN0aXZpdHlTdGF0ZS5jb250YWlucyhB
Y3Rpdml0eVN0YXRlOjpJc0luV2luZG93KSk7Ci0gICAgaWYgKGNoYW5nZWQgJiBBY3Rpdml0eVN0
YXRlOjpJc1Zpc3VhbGx5SWRsZSkKKyAgICBpZiAoY2hhbmdlZCAmIEFjdGl2aXR5U3RhdGU6Oklz
VmlzdWFsbHlJZGxlKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygiUGFnZTo6c2V0QWN0aXZpdHlT
dGF0ZSgpOiBpc1Zpc3VhbGx5SWRsZSA9ICVkIiwgYWN0aXZpdHlTdGF0ZS5jb250YWlucyhBY3Rp
dml0eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSkpOwogICAgICAgICBzZXRJc1Zpc3VhbGx5SWRsZUlu
dGVybmFsKGFjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlk
bGUpKTsKKyAgICB9CiAgICAgaWYgKGNoYW5nZWQgJiBBY3Rpdml0eVN0YXRlOjpXaW5kb3dJc0Fj
dGl2ZSkgewogICAgICAgICBpZiAoYXV0byogdmlldyA9IG1fbWFpbkZyYW1lLT52aWV3KCkpCiAg
ICAgICAgICAgICB2aWV3LT51cGRhdGVUaWxlZEJhY2tpbmdBZGFwdGl2ZVNpemluZygpOwpJbmRl
eDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQW5pbWF0aW9uRnJhbWVSYXRlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQW5pbWF0aW9u
RnJhbWVSYXRlLmgJKHJldmlzaW9uIDI2MTczMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0FuaW1hdGlvbkZyYW1lUmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01Miw5ICs1
MiwxMCBAQCBjb25zdGV4cHIgY29uc3QgRnJhbWVzUGVyU2Vjb25kIFplcm9GcmFtCiAKIGlubGlu
ZSBTZWNvbmRzIHByZWZlcnJlZEZyYW1lSW50ZXJ2YWwoY29uc3QgT3B0aW9uU2V0PFRocm90dGxp
bmdSZWFzb24+JiByZWFzb25zKQogewotICAgIC8vIEZJWE1FOiBoYW5kbGUgVGhyb3R0bGluZ1Jl
YXNvbjo6VmlzdWFsbHlJZGxlCi0gICAgaWYgKHJlYXNvbnMuY29udGFpbnMoVGhyb3R0bGluZ1Jl
YXNvbjo6T3V0c2lkZVZpZXdwb3J0KSkKKyAgICBpZiAocmVhc29ucy5jb250YWluc0FueSh7IFRo
cm90dGxpbmdSZWFzb246OlZpc3VhbGx5SWRsZSwgVGhyb3R0bGluZ1JlYXNvbjo6T3V0c2lkZVZp
ZXdwb3J0IH0pKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygicHJlZmVycmVkRnJhbWVJbnRlcnZh
bCgpOiBpc1Zpc3VhbGx5SWRsZSA9ICVkIiwgcmVhc29ucy5jb250YWlucyhUaHJvdHRsaW5nUmVh
c29uOjpWaXN1YWxseUlkbGUpKTsKICAgICAgICAgcmV0dXJuIEFnZ3Jlc3NpdmVUaHJvdHRsaW5n
QW5pbWF0aW9uSW50ZXJ2YWw7CisgICAgfQogICAgIAogICAgIGlmIChyZWFzb25zLmNvbnRhaW5z
QW55KHsgVGhyb3R0bGluZ1JlYXNvbjo6TG93UG93ZXJNb2RlLCBUaHJvdHRsaW5nUmVhc29uOjpO
b25JbnRlcmFjdGVkQ3Jvc3NPcmlnaW5GcmFtZSB9KSkKICAgICAgICAgcmV0dXJuIEhhbGZTcGVl
ZFRocm90dGxpbmdBbmltYXRpb25JbnRlcnZhbDsKQEAgLTc0LDMyICs3NSwyMiBAQCBpbmxpbmUg
RnJhbWVzUGVyU2Vjb25kIHByZWZlcnJlZEZyYW1lc1BlCiAgICAgcmV0dXJuIFplcm9GcmFtZXNQ
ZXJTZWNvbmQ7CiB9CiAKLWlubGluZSBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJlYW0m
IHRzLCBjb25zdCBPcHRpb25TZXQ8VGhyb3R0bGluZ1JlYXNvbj4mIHJlYXNvbnMpCitpbmxpbmUg
VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgVGhyb3R0bGluZ1JlYXNvbiBy
ZWFzb24pCiB7Ci0gICAgYm9vbCBkaWRBcHBlbmQgPSBmYWxzZTsKLQotICAgIGZvciAoYXV0byBy
ZWFzb24gOiByZWFzb25zKSB7Ci0gICAgICAgIGlmIChkaWRBcHBlbmQpCi0gICAgICAgICAgICB0
cyA8PCAifCI7Ci0gICAgICAgIHN3aXRjaCAocmVhc29uKSB7Ci0gICAgICAgIGNhc2UgVGhyb3R0
bGluZ1JlYXNvbjo6VmlzdWFsbHlJZGxlOgotICAgICAgICAgICAgdHMgPDwgIlZpc3VhbGx5SWRs
ZSI7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBUaHJvdHRsaW5nUmVhc29uOjpP
dXRzaWRlVmlld3BvcnQ6Ci0gICAgICAgICAgICB0cyA8PCAiT3V0c2lkZVZpZXdwb3J0IjsKLSAg
ICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIFRocm90dGxpbmdSZWFzb246Okxvd1Bvd2Vy
TW9kZToKLSAgICAgICAgICAgIHRzIDw8ICJMb3dQb3dlck1vZGUiOwotICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgIGNhc2UgVGhyb3R0bGluZ1JlYXNvbjo6Tm9uSW50ZXJhY3RlZENyb3NzT3Jp
Z2luRnJhbWU6Ci0gICAgICAgICAgICB0cyA8PCAiTm9uSW50ZXJhY3RpdmVDcm9zc09yaWdpbkZy
YW1lIjsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgICAgIGRpZEFwcGVuZCA9
IHRydWU7CisgICAgc3dpdGNoIChyZWFzb24pIHsKKyAgICBjYXNlIFRocm90dGxpbmdSZWFzb246
OlZpc3VhbGx5SWRsZToKKyAgICAgICAgdHMgPDwgIlZpc3VhbGx5SWRsZSI7CisgICAgICAgIGJy
ZWFrOworICAgIGNhc2UgVGhyb3R0bGluZ1JlYXNvbjo6T3V0c2lkZVZpZXdwb3J0OgorICAgICAg
ICB0cyA8PCAiT3V0c2lkZVZpZXdwb3J0IjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUaHJv
dHRsaW5nUmVhc29uOjpMb3dQb3dlck1vZGU6CisgICAgICAgIHRzIDw8ICJMb3dQb3dlck1vZGUi
OworICAgICAgICBicmVhazsKKyAgICBjYXNlIFRocm90dGxpbmdSZWFzb246Ok5vbkludGVyYWN0
ZWRDcm9zc09yaWdpbkZyYW1lOgorICAgICAgICB0cyA8PCAiTm9uSW50ZXJhY3RpdmVDcm9zc09y
aWdpbkZyYW1lIjsKKyAgICAgICAgYnJlYWs7CiAgICAgfQotCi0gICAgaWYgKHJlYXNvbnMuaXNF
bXB0eSgpKQotICAgICAgICB0cyA8PCAiW1VudGhyb3R0bGVkXSI7CiAgICAgcmV0dXJuIHRzOwog
fQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCShyZXZpc2lvbiAyNjE3
MzIpCisrKyBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEzOTMsOCArMTM5Myw3IEBAIFN0cmluZyBJbnRlcm5hbHM6OnJlcXVlc3RBbmltYXRp
b25GcmFtZVQKICAgICAgICAgcmV0dXJuIFN0cmluZygpOwogICAgICAgICAKICAgICBUZXh0U3Ry
ZWFtIHRzOwotICAgIHRzIDw8IHNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci0+dGhyb3R0bGlu
Z1JlYXNvbnMoKTsKLSAgICByZXR1cm4gdHMucmVsZWFzZSgpOworICAgIHJldHVybiAodHMgPDwg
c2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLT50aHJvdHRsaW5nUmVhc29ucygpKS5yZWxlYXNl
KCk7CiB9CiAKIGRvdWJsZSBJbnRlcm5hbHM6OnJlcXVlc3RBbmltYXRpb25GcmFtZUludGVydmFs
KCkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjE3NTkpCisrKyBTb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDIwLTA1LTE1ICBT
YWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgUmUt
ZW5hYmxlICdWaXN1YWxseUlkbGUnIFJlbmRlcmluZ1VwZGF0ZSB0aHJvdHRsaW5nCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE2NTcKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnVwZGF0ZUFjdGl2
aXR5U3RhdGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmFjdGl2aXR5U3RhdGVE
aWRDaGFuZ2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRpc3BhdGNoQWN0aXZp
dHlTdGF0ZUNoYW5nZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZXRBY3Rpdml0eVN0YXRlKToKKwogMjAyMC0w
NS0xNSAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAgPGFwZXJlekBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFtHVEszXSBCcmluZyBiYWNrIHVzYWdlIG9mIEd0a01lbnUgZm9yIGNvbnRleHQgbWVudXMK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkocmV2aXNpb24g
MjYxNzMyKQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTg4OCw4ICsxODg4LDEwIEBAIHZvaWQgV2ViUGFnZVByb3h5Ojp1cGRh
dGVBY3Rpdml0eVN0YXRlKE8KICAgICAgICAgbV9hY3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0eVN0
YXRlOjpJc1Zpc2libGVPck9jY2x1ZGVkKTsKICAgICBpZiAoZmxhZ3NUb1VwZGF0ZSAmIEFjdGl2
aXR5U3RhdGU6OklzSW5XaW5kb3cgJiYgcGFnZUNsaWVudCgpLmlzVmlld0luV2luZG93KCkpCiAg
ICAgICAgIG1fYWN0aXZpdHlTdGF0ZS5hZGQoQWN0aXZpdHlTdGF0ZTo6SXNJbldpbmRvdyk7Ci0g
ICAgaWYgKGZsYWdzVG9VcGRhdGUgJiBBY3Rpdml0eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSAmJiBw
YWdlQ2xpZW50KCkuaXNWaXN1YWxseUlkbGUoKSkKKyAgICBpZiAoZmxhZ3NUb1VwZGF0ZSAmIEFj
dGl2aXR5U3RhdGU6OklzVmlzdWFsbHlJZGxlICYmIHBhZ2VDbGllbnQoKS5pc1Zpc3VhbGx5SWRs
ZSgpKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygiV2ViUGFnZVByb3h5Ojp1cGRhdGVBY3Rpdml0
eVN0YXRlKCk6IGlzVmlzdWFsbHlJZGxlID0gJWQiLCBtX2FjdGl2aXR5U3RhdGUuY29udGFpbnMo
QWN0aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUpKTsKICAgICAgICAgbV9hY3Rpdml0eVN0YXRl
LmFkZChBY3Rpdml0eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSk7CisgICAgfQogICAgIGlmIChmbGFn
c1RvVXBkYXRlICYgQWN0aXZpdHlTdGF0ZTo6SXNBdWRpYmxlICYmIG1fbWVkaWFTdGF0ZSAmIE1l
ZGlhUHJvZHVjZXI6OklzUGxheWluZ0F1ZGlvICYmICEobV9tdXRlZFN0YXRlICYgTWVkaWFQcm9k
dWNlcjo6QXVkaW9Jc011dGVkKSkKICAgICAgICAgbV9hY3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0
eVN0YXRlOjpJc0F1ZGlibGUpOwogICAgIGlmIChmbGFnc1RvVXBkYXRlICYgQWN0aXZpdHlTdGF0
ZTo6SXNMb2FkaW5nICYmIG1fcGFnZUxvYWRTdGF0ZS5pc0xvYWRpbmcoKSkKQEAgLTE5MDUsOCAr
MTkwNywxMCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6YWN0aXZpdHlTdGF0ZURpZENoYW5nCiAgICAg
bV9wb3RlbnRpYWxseUNoYW5nZWRBY3Rpdml0eVN0YXRlRmxhZ3MuYWRkKG1heUhhdmVDaGFuZ2Vk
KTsKICAgICBtX2FjdGl2aXR5U3RhdGVDaGFuZ2VXYW50c1N5bmNocm9ub3VzUmVwbHkgPSBtX2Fj
dGl2aXR5U3RhdGVDaGFuZ2VXYW50c1N5bmNocm9ub3VzUmVwbHkgfHwgcmVwbHlNb2RlID09IEFj
dGl2aXR5U3RhdGVDaGFuZ2VSZXBseU1vZGU6OlN5bmNocm9ub3VzOwogCi0gICAgaWYgKG1fc3Vw
cHJlc3NWaXNpYmlsaXR5VXBkYXRlcyAmJiBkaXNwYXRjaE1vZGUgIT0gQWN0aXZpdHlTdGF0ZUNo
YW5nZURpc3BhdGNoTW9kZTo6SW1tZWRpYXRlKQorICAgIGlmIChtX3N1cHByZXNzVmlzaWJpbGl0
eVVwZGF0ZXMgJiYgZGlzcGF0Y2hNb2RlICE9IEFjdGl2aXR5U3RhdGVDaGFuZ2VEaXNwYXRjaE1v
ZGU6OkltbWVkaWF0ZSkgeworICAgICAgICBXVEZMb2dBbHdheXMoIldlYlBhZ2VQcm94eTo6YWN0
aXZpdHlTdGF0ZURpZENoYW5nZSgpOiBWaXNpYmlsaXR5IHVwZGF0ZXMgd2VyZSBzdXBwcmVzc2Vk
Iik7CiAgICAgICAgIHJldHVybjsKKyAgICB9CiAKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBi
b29sIGlzTmV3bHlJbldpbmRvdyA9ICFpc0luV2luZG93KCkgJiYgKG1heUhhdmVDaGFuZ2VkICYg
QWN0aXZpdHlTdGF0ZTo6SXNJbldpbmRvdykgJiYgcGFnZUNsaWVudCgpLmlzVmlld0luV2luZG93
KCk7CkBAIC0xOTg0LDggKzE5ODgsMTAgQEAgdm9pZCBXZWJQYWdlUHJveHk6OmRpc3BhdGNoQWN0
aXZpdHlTdGF0ZQogCiAgICAgYXV0byBhY3Rpdml0eVN0YXRlQ2hhbmdlSUQgPSBtX2FjdGl2aXR5
U3RhdGVDaGFuZ2VXYW50c1N5bmNocm9ub3VzUmVwbHkgPyB0YWtlTmV4dEFjdGl2aXR5U3RhdGVD
aGFuZ2VJRCgpIDogc3RhdGljX2Nhc3Q8QWN0aXZpdHlTdGF0ZUNoYW5nZUlEPihBY3Rpdml0eVN0
YXRlQ2hhbmdlQXN5bmNocm9ub3VzKTsKIAotICAgIGlmIChjaGFuZ2VkIHx8IGFjdGl2aXR5U3Rh
dGVDaGFuZ2VJRCAhPSBBY3Rpdml0eVN0YXRlQ2hhbmdlQXN5bmNocm9ub3VzIHx8ICFtX25leHRB
Y3Rpdml0eVN0YXRlQ2hhbmdlQ2FsbGJhY2tzLmlzRW1wdHkoKSkKKyAgICBpZiAoY2hhbmdlZCB8
fCBhY3Rpdml0eVN0YXRlQ2hhbmdlSUQgIT0gQWN0aXZpdHlTdGF0ZUNoYW5nZUFzeW5jaHJvbm91
cyB8fCAhbV9uZXh0QWN0aXZpdHlTdGF0ZUNoYW5nZUNhbGxiYWNrcy5pc0VtcHR5KCkpIHsKKyAg
ICAgICAgV1RGTG9nQWx3YXlzKCJXZWJQYWdlUHJveHk6OmRpc3BhdGNoQWN0aXZpdHlTdGF0ZUNo
YW5nZSgpOiBNZXNzYWdlIHdpbGwgYmUgc2VudCB0byB0aGUgV2ViUHJvY2VzczogbV9hY3Rpdml0
eVN0YXRlLmlzVmlzdWFsbHlJZGxlID0gJWQiLCBtX2FjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0
aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUpKTsKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6U2V0QWN0aXZpdHlTdGF0ZShtX2FjdGl2aXR5U3RhdGUsIGFjdGl2aXR5U3RhdGVDaGFu
Z2VJRCwgbV9uZXh0QWN0aXZpdHlTdGF0ZUNoYW5nZUNhbGxiYWNrcykpOworICAgIH0KIAogICAg
IG1fbmV4dEFjdGl2aXR5U3RhdGVDaGFuZ2VDYWxsYmFja3MuY2xlYXIoKTsKIApJbmRleDogU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHJldmlzaW9uIDI2
MTczMikKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0zMjI5LDYgKzMyMjksNyBAQCB2b2lkIFdlYlBhZ2U6OnNldEFjdGl2
aXR5U3RhdGUoT3B0aW9uU2V0CiAKICAgICBBU1NFUlRfV0lUSF9NRVNTQUdFKG1fcGFnZSwgInNl
dEFjdGl2aXR5U3RhdGUgY2FsbGVkIG9uICUiIFBSSXU2NCAiIGJ1dCBXZWJDb3JlIHBhZ2Ugd2Fz
IG51bGwiLCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSk7CiAgICAgaWYgKG1fcGFnZSkgeworICAg
ICAgICBXVEZMb2dBbHdheXMoIldlYlBhZ2U6OnNldEFjdGl2aXR5U3RhdGUoKTogaXNWaXN1YWxs
eUlkbGUgPSAlZCIsIGFjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNWaXN1
YWxseUlkbGUpKTsKICAgICAgICAgU2V0Rm9yU2NvcGU8T3B0aW9uU2V0PEFjdGl2aXR5U3RhdGU6
OkZsYWc+PiBjdXJyZW50bHlDaGFuZ2luZ0FjdGl2aXR5U3RhdGUgeyBtX2xhc3RBY3Rpdml0eVN0
YXRlQ2hhbmdlcywgY2hhbmdlZCB9OwogICAgICAgICBtX3BhZ2UtPnNldEFjdGl2aXR5U3RhdGUo
YWN0aXZpdHlTdGF0ZSk7CiAgICAgfQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjYxNzMyKQorKysgTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAt
MDUtMTUgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KKworICAg
ICAgICBSZS1lbmFibGUgJ1Zpc3VhbGx5SWRsZScgUmVuZGVyaW5nVXBkYXRlIHRocm90dGxpbmcK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTY1Nwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9h
bmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJhbWUtdGhyb3R0bGluZy1kZXRhY2hlZC1pZnJh
bWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0
aW9uLWZyYW1lLXRocm90dGxpbmctZGV0YWNoZWQtaWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9mcmFtZS10aHJvdHRsaW5nL3JhZi10aHJvdHRsZS1pbi1jcm9zcy1vcmlnaW4tc3Vi
ZnJhbWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGlu
Zy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLmh0bWw6CisgICAgICAgICog
cGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1Rl
c3RFeHBlY3RhdGlvbnM6CisKIDIwMjAtMDUtMTQgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNl
ckBhcHBsZS5jb20+CiAKICAgICAgICAgW01vamF2ZSBEZWJ1ZyBXSzJdIGNvbXBvc2l0aW5nL3Ry
YW5zZm9ybXMvcGVyc3BlY3RpdmUtd2l0aC1zY3JvbGxpbmcuaHRtbCBpcyBmcmVxdWVudGx5IGZh
aWxpbmcKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0aW9u
LWZyYW1lLXRocm90dGxpbmctZGV0YWNoZWQtaWZyYW1lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10
aHJvdHRsaW5nLWRldGFjaGVkLWlmcmFtZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI2MTczMikK
KysrIExheW91dFRlc3RzL2Zhc3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0aW9uLWZyYW1lLXRo
cm90dGxpbmctZGV0YWNoZWQtaWZyYW1lLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAt
MywyNyArMywyNyBAQCBUZXN0IHRoYXQgcmVxdWVzdEFuaW1hdGlvbkZyYW1lIGdldHMgdGhlCiBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKIAotUEFTUyBpbnRlcm5hbHMucmVxdWVzdEFuaW1h
dGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW1VudGhyb3R0bGVkXSIKK1BBU1MgaW50
ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltdIgog
UEFTUyBpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwgaXMgMC4wMTUKLVBB
U1MgZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhy
b3R0bGluZ1JlYXNvbnMoKSBpcyAiW1VudGhyb3R0bGVkXSIKK1BBU1MgZnJhbWUuY29udGVudFdp
bmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBp
cyAiW10iCiBQQVNTIGZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRp
b25GcmFtZUludGVydmFsIGlzIDAuMDE1CiBpbnRlcm5hbHMuc2V0TG93UG93ZXJNb2RlRW5hYmxl
ZCh0cnVlKTsKLVBBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdS
ZWFzb25zKCkgaXMgIkxvd1Bvd2VyTW9kZSIKK1BBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRp
b25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltMb3dQb3dlck1vZGVdIgogUEFTUyBpbnRl
cm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwgaXMgMC4wMzAKLVBBU1MgZnJhbWUu
Y29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1Jl
YXNvbnMoKSBpcyAiTG93UG93ZXJNb2RlIgorUEFTUyBmcmFtZS5jb250ZW50V2luZG93LmludGVy
bmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJbTG93UG93
ZXJNb2RlXSIKIFBBU1MgZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1h
dGlvbkZyYW1lSW50ZXJ2YWwgaXMgMC4wMzAKIGZyYW1lLnJlbW92ZSgpCiBkb2N1bWVudC5ib2R5
LmFwcGVuZENoaWxkKGZyYW1lKQotUEFTUyBpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1l
VGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiTG93UG93ZXJNb2RlIgorUEFTUyBpbnRlcm5hbHMucmVx
dWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW0xvd1Bvd2VyTW9kZV0i
CiBQQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZhbCBpcyAwLjAzMAot
UEFTUyBmcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVU
aHJvdHRsaW5nUmVhc29ucygpIGlzICJMb3dQb3dlck1vZGUiCitQQVNTIGZyYW1lLmNvbnRlbnRX
aW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkg
aXMgIltMb3dQb3dlck1vZGVdIgogUEFTUyBmcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5y
ZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZhbCBpcyAwLjAzMAogZnJhbWUucmVtb3ZlKCkKIGlu
dGVybmFscy5zZXRMb3dQb3dlck1vZGVFbmFibGVkKGZhbHNlKTsKLVBBU1MgaW50ZXJuYWxzLnJl
cXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltVbnRocm90dGxlZF0i
CitQQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygp
IGlzICJbXSIKIFBBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZUludGVydmFsIGlz
IDAuMDE1CiBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKQotUEFTUyBmcmFtZS5jb250
ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29u
cygpIGlzICJbVW50aHJvdHRsZWRdIgorUEFTUyBmcmFtZS5jb250ZW50V2luZG93LmludGVybmFs
cy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJbXSIKIFBBU1Mg
ZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2
YWwgaXMgMC4wMTUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJhbWUtdGhyb3R0bGlu
Zy1kZXRhY2hlZC1pZnJhbWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Fu
aW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsaW5nLWRldGFjaGVkLWlmcmFt
ZS5odG1sCShyZXZpc2lvbiAyNjE3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9y
ZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsaW5nLWRldGFjaGVkLWlmcmFtZS5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0xOCwzMyArMTgsMzMgQEAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGRv
V29yayk7CiBjb25zdCBmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpOwog
ZnJhbWUuc3JjID0gInJlc291cmNlcy9mcmFtZS13aXRoLWFuaW1hdGlvbi5odG1sIjsKIGZyYW1l
Lm9ubG9hZCA9IGZ1bmN0aW9uKCkgewotICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJu
YWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW1VudGhyb3R0
bGVkXSIpOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmlt
YXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW10iKTsKICAgICBzaG91bGRCZSgiaW50
ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZUludGVydmFsIiwgIjAuMDE1Iik7Ci0gICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJmcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0
QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltVbnRocm90dGxlZF0iKTsKKyAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJl
cXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW10iKTsKICAgICBzaG91
bGRCZSgiZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1l
SW50ZXJ2YWwiLCAiMC4wMTUiKTsKIAogICAgIGV2YWxBbmRMb2coImludGVybmFscy5zZXRMb3dQ
b3dlck1vZGVFbmFibGVkKHRydWUpOyIpOwotICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50
ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiTG93UG93
ZXJNb2RlIik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnRlcm5hbHMucmVxdWVzdEFu
aW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbTG93UG93ZXJNb2RlXSIpOwogICAg
IHNob3VsZEJlKCJpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwiLCAiMC4w
MzAiKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50
ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiTG93UG93
ZXJNb2RlIik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmcmFtZS5jb250ZW50V2luZG93
LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltM
b3dQb3dlck1vZGVdIik7CiAgICAgc2hvdWxkQmUoImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJu
YWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZUludGVydmFsIiwgIjAuMDMwIik7CiAgICAgZXZhbEFu
ZExvZygiZnJhbWUucmVtb3ZlKCkiKTsKIAogICAgIGV2YWxBbmRMb2coImRvY3VtZW50LmJvZHku
YXBwZW5kQ2hpbGQoZnJhbWUpIik7CiAgICAgZnJhbWUub25sb2FkID0gZnVuY3Rpb24oKSB7Ci0g
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25G
cmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiTG93UG93ZXJNb2RlIik7CisgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxp
bmdSZWFzb25zKCkiLCAiW0xvd1Bvd2VyTW9kZV0iKTsKICAgICAgICAgc2hvdWxkQmUoImludGVy
bmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZhbCIsICIwLjAzMCIpOwotICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVl
c3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiTG93UG93ZXJNb2RlIik7Cisg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5h
bHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbTG93UG93ZXJN
b2RlXSIpOwogICAgICAgICBzaG91bGRCZSgiZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMu
cmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwiLCAiMC4wMzAiKTsKIAogICAgICAgICBldmFs
QW5kTG9nKCJmcmFtZS5yZW1vdmUoKSIpOwogICAgICAgICBldmFsQW5kTG9nKCJpbnRlcm5hbHMu
c2V0TG93UG93ZXJNb2RlRW5hYmxlZChmYWxzZSk7Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25z
KCkiLCAiW1VudGhyb3R0bGVkXSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImlu
dGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltdIik7
CiAgICAgICAgIHNob3VsZEJlKCJpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2
YWwiLCAiMC4wMTUiKTsKIAogICAgICAgICBldmFsQW5kTG9nKCJkb2N1bWVudC5ib2R5LmFwcGVu
ZENoaWxkKGZyYW1lKSIpOwogICAgICAgICBmcmFtZS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZnJhbWUuY29udGVudFdpbmRvdy5pbnRl
cm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbVW50aHJv
dHRsZWRdIik7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNvbnRl
bnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25z
KCkiLCAiW10iKTsKICAgICAgICAgICAgIHNob3VsZEJlKCJmcmFtZS5jb250ZW50V2luZG93Lmlu
dGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZhbCIsICIwLjAxNSIpOwogICAgICAg
ICAgICAgZmluaXNoSlNUZXN0KCk7CiAgICAgICAgIH0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZy
YW1lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Zy
YW1lLXRocm90dGxpbmcvcmFmLXRocm90dGxlLWluLWNyb3NzLW9yaWdpbi1zdWJmcmFtZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDI2MTczMikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZnJh
bWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNiwxNiArNiwxNiBAQCBPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiBSZWNlaXZlZCBtZXNzYWdlOiBmcmFtZWxvYWQKIFJl
Y2VpdmVkIG1lc3NhZ2U6IGZyYW1lbG9hZAogQ2hlY2tpbmcgdGhhdCByZXF1ZXN0QW5pbWF0aW9u
RnJhbWUgaXMgdGhyb3R0bGVkIGluIGNyb3NzIG9yaWdpbiBmcmFtZQotUmVjZWl2ZWQgbWVzc2Fn
ZTogdGhyb3R0bGVkW2Nyb3NzXTogTm9uSW50ZXJhY3RpdmVDcm9zc09yaWdpbkZyYW1lCi1SZWNl
aXZlZCBtZXNzYWdlOiB0aHJvdHRsZWRbc2FtZV06IFtVbnRocm90dGxlZF0KK1JlY2VpdmVkIG1l
c3NhZ2U6IHRocm90dGxlZFtjcm9zc106IFtOb25JbnRlcmFjdGl2ZUNyb3NzT3JpZ2luRnJhbWVd
CitSZWNlaXZlZCBtZXNzYWdlOiB0aHJvdHRsZWRbc2FtZV06IFtdCiBQQVNTIHRocm90dGxlZFN0
YXRlWydjcm9zcyddIGlzICJOb25JbnRlcmFjdGl2ZUNyb3NzT3JpZ2luRnJhbWUiCi1QQVNTIHRo
cm90dGxlZFN0YXRlWydzYW1lJ10gaXMgIltVbnRocm90dGxlZF0iCitQQVNTIHRocm90dGxlZFN0
YXRlWydzYW1lJ10gaXMgIiIKIEludGVyYWN0ZWQgd2l0aCBjcm9zcy1vcmlnaW4gZnJhbWUKIElu
dGVyYWN0ZWQgd2l0aCBzYW1lLW9yaWdpbiBmcmFtZQotUmVjZWl2ZWQgbWVzc2FnZTogdGhyb3R0
bGVkW2Nyb3NzXTogW1VudGhyb3R0bGVkXQotUmVjZWl2ZWQgbWVzc2FnZTogdGhyb3R0bGVkW3Nh
bWVdOiBbVW50aHJvdHRsZWRdCi1QQVNTIHRocm90dGxlZFN0YXRlWydjcm9zcyddIGlzICJbVW50
aHJvdHRsZWRdIgotUEFTUyB0aHJvdHRsZWRTdGF0ZVsnc2FtZSddIGlzICJbVW50aHJvdHRsZWRd
IgorUmVjZWl2ZWQgbWVzc2FnZTogdGhyb3R0bGVkW2Nyb3NzXTogW10KK1JlY2VpdmVkIG1lc3Nh
Z2U6IHRocm90dGxlZFtzYW1lXTogW10KK1BBU1MgdGhyb3R0bGVkU3RhdGVbJ2Nyb3NzJ10gaXMg
IiIKK1BBU1MgdGhyb3R0bGVkU3RhdGVbJ3NhbWUnXSBpcyAiIgogUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2ZyYW1lLXRocm90dGxpbmcvcmFmLXRocm90dGxlLWluLWNyb3NzLW9yaWdpbi1zdWJmcmFt
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZnJhbWUtdGhyb3R0
bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLmh0bWwJKHJldmlzaW9u
IDI2MTczMikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYt
dGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTU1LDE0ICs1NSwxNCBAQAogICAgIGZ1bmN0aW9uIGNoZWNrSW5pdGlhbGx5VGhyb3R0bGVkKCkK
ICAgICB7CiAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygidGhyb3R0bGVkU3RhdGVbJ2Ny
b3NzJ10iLCAiTm9uSW50ZXJhY3RpdmVDcm9zc09yaWdpbkZyYW1lIik7Ci0gICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygidGhyb3R0bGVkU3RhdGVbJ3NhbWUnXSIsICJbVW50aHJvdHRsZWRd
Iik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmcoInRocm90dGxlZFN0YXRlWydzYW1lJ10i
KTsKICAgICAgICAgaW50ZXJhY3RXaXRoU3ViZnJhbWVzKCk7CiAgICAgfQogCiAgICAgZnVuY3Rp
b24gY2hlY2tVbnRocm90dGxlZEFmdGVySW50ZXJhY3Rpb24oKQogICAgIHsKLSAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJ0aHJvdHRsZWRTdGF0ZVsnY3Jvc3MnXSIsICJbVW50aHJvdHRs
ZWRdIik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygidGhyb3R0bGVkU3RhdGVbJ3Nh
bWUnXSIsICJbVW50aHJvdHRsZWRdIik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmcoInRo
cm90dGxlZFN0YXRlWydjcm9zcyddIik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmcoInRo
cm90dGxlZFN0YXRlWydzYW1lJ10iKTsKICAgICAgICAgZmluaXNoSlNUZXN0KCk7CiAgICAgfQog
CkBAIC03NSw3ICs3NSw3IEBACiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIAotICAg
ICAgICB2YXIgcmUgPSAvdGhyb3R0bGVkXFsoXHcrKVxdOiAoKFx3KykoXHxcdyspKnxcW1VudGhy
b3R0bGVkXF0pLzsKKyAgICAgICAgdmFyIHJlID0gL3Rocm90dGxlZFxbKFx3KylcXTogXFsoKChc
dyspKCxccypcdyspKik/KVxdLzsKICAgICAgICAgdmFyIG1hdGNoID0gcmUuZXhlYyhtZXNzYWdl
LmRhdGEpOwogICAgICAgICBpZiAobWF0Y2gpIHsKICAgICAgICAgICAgIGZyYW1lSUQgPSBtYXRj
aFsxXTsKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCShy
ZXZpc2lvbiAyNjE3MzIpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0
aW9ucwkod29ya2luZyBjb3B5KQpAQCAtMTgyLDcgKzE4Miw2IEBAIGh0dHAvdGVzdHMvY2FjaGUv
ZGlzay1jYWNoZS9kaXNrLWNhY2hlLW0KIGZhc3QvZXZlbnRzL3RvdWNoIFsgU2tpcCBdCiBmYXN0
L3NoYWRvdy1kb20vdG91Y2gtZXZlbnQtaW9zLmh0bWwgWyBTa2lwIF0KIGZhc3Qvc2hhZG93LWRv
bS90b3VjaC1ldmVudC1vbi10ZXh0LWFzc2lnbmVkLXRvLXNsb3QuaHRtbCBbIFNraXAgXQotaHR0
cC90ZXN0cy9mcmFtZS10aHJvdHRsaW5nL3JhZi10aHJvdHRsZS1pbi1jcm9zcy1vcmlnaW4tc3Vi
ZnJhbWUuaHRtbCBbIFNraXAgXQogaHR0cC90ZXN0cy9mcmFtZS10aHJvdHRsaW5nL3RpbWVyLXRo
cm90dGxlLWluLWNyb3NzLW9yaWdpbi1zdWJmcmFtZS5odG1sIFsgU2tpcCBdCiBodHRwL3Rlc3Rz
L3F1aWNrbG9vay9hdC1pbXBvcnQtc3R5bGVzaGVldC1ibG9ja2VkLmh0bWwgWyBTa2lwIF0KIGh0
dHAvdGVzdHMvcXVpY2tsb29rL2Jhc2UtdXJsLWJsb2NrZWQuaHRtbCBbIFNraXAgXQpJbmRleDog
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMJKHJldmlzaW9uIDI2MTcz
MikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCSh3b3JraW5n
IGNvcHkpCkBAIC0xOTU2LDUgKzE5NTYsMyBAQCB3ZWJraXQub3JnL2IvMjEwNTE3IHN0b3JhZ2Uv
aW5kZXhlZGRiL3JlCiAjIFRoZXNlIG1lZGlhIGNvbnRyb2xzIHRlc3RzIGFyZSBub3QgcmVsZXZh
bnQgb24gbWFjT1MgYW5kIGlPUy4KIG1lZGlhL21lZGlhLWRvY3VtZW50LWF1ZGlvLXJlcGFpbnQu
aHRtbCBbIFNraXAgXQogbWVkaWEvY29udHJvbHMtc3R5bGluZy5odG1sIFsgU2tpcCBdCi0KLWh0
dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1
YmZyYW1lLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399538</attachid>
            <date>2020-05-15 19:02:57 -0700</date>
            <delta_ts>2020-05-15 19:02:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211657-20200515190254.patch</filename>
            <type>text/plain</type>
            <size>34004</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTczMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA1LTE1ICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgUmUtZW5hYmxl
ICdWaXN1YWxseUlkbGUnIFJlbmRlcmluZ1VwZGF0ZSB0aHJvdHRsaW5nCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE2NTcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjptX2xvYWRzRnJvbU5ldHdvcmspOgorICAgICAgICAoV2ViQ29yZTo6UGFn
ZTo6cHJlZmVycmVkUmVuZGVyaW5nVXBkYXRlSW50ZXJ2YWwgY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UGFnZTo6c2V0SXNWaXN1YWxseUlkbGVJbnRlcm5hbCk6CisgICAgICAgIChXZWJDb3Jl
OjpQYWdlOjpzZXRBY3Rpdml0eVN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9B
bmltYXRpb25GcmFtZVJhdGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OnByZWZlcnJlZEZyYW1lSW50
ZXJ2YWwpOgorICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I8PCk6CisgICAgICAgICogdGVzdGlu
Zy9JbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpyZXF1ZXN0QW5p
bWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucyBjb25zdCk6CisKIDIwMjAtMDUtMTQgIFNhaWQg
QWJvdS1IYWxsYXdhICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmll
d2VkLiBGaXggYnVpbGQgd2FybmluZyBhZnRlciByMjYxMTEzCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1BhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5j
cHAJKHJldmlzaW9uIDI2MTczMikKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI5OSw2ICsyOTksNyBAQCBQYWdlOjpQYWdlKFBhZ2VDb25maWd1cmF0
aW9uJiYgcGFnZUNvbmZpCiAgICAgLCBtX2xvYWRzU3VicmVzb3VyY2VzKHBhZ2VDb25maWd1cmF0
aW9uLmxvYWRzU3VicmVzb3VyY2VzKQogICAgICwgbV9sb2Fkc0Zyb21OZXR3b3JrKHBhZ2VDb25m
aWd1cmF0aW9uLmxvYWRzRnJvbU5ldHdvcmspCiB7CisgICAgV1RGTG9nQWx3YXlzKCJQYWdlOjpQ
YWdlKCk6IGlzVmlzdWFsbHlJZGxlID0gJWQiLCBtX2FjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0
aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUpKTsKICAgICB1cGRhdGVUaW1lclRocm90dGxpbmdT
dGF0ZSgpOwogCiAgICAgbV9wbHVnaW5JbmZvUHJvdmlkZXItPmFkZFBhZ2UoKnRoaXMpOwpAQCAt
MTQ5Niw2ICsxNDk3LDcgQEAgdm9pZCBQYWdlOjpyZXN1bWVTY3JpcHRlZEFuaW1hdGlvbnMoKQog
CiBTZWNvbmRzIFBhZ2U6OnByZWZlcnJlZFJlbmRlcmluZ1VwZGF0ZUludGVydmFsKCkgY29uc3QK
IHsKKyAgICBXVEZMb2dBbHdheXMoIlBhZ2U6OnByZWZlcnJlZFJlbmRlcmluZ1VwZGF0ZUludGVy
dmFsKCk6IGlzVmlzdWFsbHlJZGxlID0gJWQiLCBtX3Rocm90dGxpbmdSZWFzb25zLmNvbnRhaW5z
KFRocm90dGxpbmdSZWFzb246OlZpc3VhbGx5SWRsZSkpOwogICAgIHJldHVybiBwcmVmZXJyZWRG
cmFtZUludGVydmFsKG1fdGhyb3R0bGluZ1JlYXNvbnMpOwogfQogCkBAIC0xNTA0LDYgKzE1MDYs
NyBAQCB2b2lkIFBhZ2U6OnNldElzVmlzdWFsbHlJZGxlSW50ZXJuYWwoYm9vCiAgICAgaWYgKGlz
VmlzdWFsbHlJZGxlID09IG1fdGhyb3R0bGluZ1JlYXNvbnMuY29udGFpbnMoVGhyb3R0bGluZ1Jl
YXNvbjo6VmlzdWFsbHlJZGxlKSkKICAgICAgICAgcmV0dXJuOwogCisgICAgV1RGTG9nQWx3YXlz
KCJQYWdlOjpzZXRJc1Zpc3VhbGx5SWRsZUludGVybmFsKCk6IGlzVmlzdWFsbHlJZGxlID0gJWQi
LCBpc1Zpc3VhbGx5SWRsZSk7CiAgICAgbV90aHJvdHRsaW5nUmVhc29ucyA9IG1fdGhyb3R0bGlu
Z1JlYXNvbnMgXiBUaHJvdHRsaW5nUmVhc29uOjpWaXN1YWxseUlkbGU7CiAgICAgcmVuZGVyaW5n
VXBkYXRlU2NoZWR1bGVyKCkuYWRqdXN0UmVuZGVyaW5nVXBkYXRlRnJlcXVlbmN5KCk7CiB9CkBA
IC0yMDAyLDggKzIwMDUsMTAgQEAgdm9pZCBQYWdlOjpzZXRBY3Rpdml0eVN0YXRlKE9wdGlvblNl
dDxBYwogICAgICAgICBzZXRJc1Zpc2libGVJbnRlcm5hbChhY3Rpdml0eVN0YXRlLmNvbnRhaW5z
KEFjdGl2aXR5U3RhdGU6OklzVmlzaWJsZSkpOwogICAgIGlmIChjaGFuZ2VkICYgQWN0aXZpdHlT
dGF0ZTo6SXNJbldpbmRvdykKICAgICAgICAgc2V0SXNJbldpbmRvd0ludGVybmFsKGFjdGl2aXR5
U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNJbldpbmRvdykpOwotICAgIGlmIChjaGFu
Z2VkICYgQWN0aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUpCisgICAgaWYgKGNoYW5nZWQgJiBB
Y3Rpdml0eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSkgeworICAgICAgICBXVEZMb2dBbHdheXMoIlBh
Z2U6OnNldEFjdGl2aXR5U3RhdGUoKTogaXNWaXN1YWxseUlkbGUgPSAlZCIsIGFjdGl2aXR5U3Rh
dGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUpKTsKICAgICAgICAgc2V0
SXNWaXN1YWxseUlkbGVJbnRlcm5hbChhY3Rpdml0eVN0YXRlLmNvbnRhaW5zKEFjdGl2aXR5U3Rh
dGU6OklzVmlzdWFsbHlJZGxlKSk7CisgICAgfQogICAgIGlmIChjaGFuZ2VkICYgQWN0aXZpdHlT
dGF0ZTo6V2luZG93SXNBY3RpdmUpIHsKICAgICAgICAgaWYgKGF1dG8qIHZpZXcgPSBtX21haW5G
cmFtZS0+dmlldygpKQogICAgICAgICAgICAgdmlldy0+dXBkYXRlVGlsZWRCYWNraW5nQWRhcHRp
dmVTaXppbmcoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0FuaW1h
dGlvbkZyYW1lUmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0FuaW1hdGlvbkZyYW1lUmF0ZS5oCShyZXZpc2lvbiAyNjE3MzIpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9BbmltYXRpb25GcmFtZVJhdGUuaAkod29ya2luZyBj
b3B5KQpAQCAtNTIsOCArNTIsNyBAQCBjb25zdGV4cHIgY29uc3QgRnJhbWVzUGVyU2Vjb25kIFpl
cm9GcmFtCiAKIGlubGluZSBTZWNvbmRzIHByZWZlcnJlZEZyYW1lSW50ZXJ2YWwoY29uc3QgT3B0
aW9uU2V0PFRocm90dGxpbmdSZWFzb24+JiByZWFzb25zKQogewotICAgIC8vIEZJWE1FOiBoYW5k
bGUgVGhyb3R0bGluZ1JlYXNvbjo6VmlzdWFsbHlJZGxlCi0gICAgaWYgKHJlYXNvbnMuY29udGFp
bnMoVGhyb3R0bGluZ1JlYXNvbjo6T3V0c2lkZVZpZXdwb3J0KSkKKyAgICBpZiAocmVhc29ucy5j
b250YWluc0FueSh7IFRocm90dGxpbmdSZWFzb246OlZpc3VhbGx5SWRsZSwgVGhyb3R0bGluZ1Jl
YXNvbjo6T3V0c2lkZVZpZXdwb3J0IH0pKQogICAgICAgICByZXR1cm4gQWdncmVzc2l2ZVRocm90
dGxpbmdBbmltYXRpb25JbnRlcnZhbDsKICAgICAKICAgICBpZiAocmVhc29ucy5jb250YWluc0Fu
eSh7IFRocm90dGxpbmdSZWFzb246Okxvd1Bvd2VyTW9kZSwgVGhyb3R0bGluZ1JlYXNvbjo6Tm9u
SW50ZXJhY3RlZENyb3NzT3JpZ2luRnJhbWUgfSkpCkBAIC03NCwzMiArNzMsMjIgQEAgaW5saW5l
IEZyYW1lc1BlclNlY29uZCBwcmVmZXJyZWRGcmFtZXNQZQogICAgIHJldHVybiBaZXJvRnJhbWVz
UGVyU2Vjb25kOwogfQogCi1pbmxpbmUgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFt
JiB0cywgY29uc3QgT3B0aW9uU2V0PFRocm90dGxpbmdSZWFzb24+JiByZWFzb25zKQoraW5saW5l
IFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIFRocm90dGxpbmdSZWFzb24g
cmVhc29uKQogewotICAgIGJvb2wgZGlkQXBwZW5kID0gZmFsc2U7Ci0KLSAgICBmb3IgKGF1dG8g
cmVhc29uIDogcmVhc29ucykgewotICAgICAgICBpZiAoZGlkQXBwZW5kKQotICAgICAgICAgICAg
dHMgPDwgInwiOwotICAgICAgICBzd2l0Y2ggKHJlYXNvbikgewotICAgICAgICBjYXNlIFRocm90
dGxpbmdSZWFzb246OlZpc3VhbGx5SWRsZToKLSAgICAgICAgICAgIHRzIDw8ICJWaXN1YWxseUlk
bGUiOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgVGhyb3R0bGluZ1JlYXNvbjo6
T3V0c2lkZVZpZXdwb3J0OgotICAgICAgICAgICAgdHMgPDwgIk91dHNpZGVWaWV3cG9ydCI7Ci0g
ICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBUaHJvdHRsaW5nUmVhc29uOjpMb3dQb3dl
ck1vZGU6Ci0gICAgICAgICAgICB0cyA8PCAiTG93UG93ZXJNb2RlIjsKLSAgICAgICAgICAgIGJy
ZWFrOwotICAgICAgICBjYXNlIFRocm90dGxpbmdSZWFzb246Ok5vbkludGVyYWN0ZWRDcm9zc09y
aWdpbkZyYW1lOgotICAgICAgICAgICAgdHMgPDwgIk5vbkludGVyYWN0aXZlQ3Jvc3NPcmlnaW5G
cmFtZSI7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgICAgICBkaWRBcHBlbmQg
PSB0cnVlOworICAgIHN3aXRjaCAocmVhc29uKSB7CisgICAgY2FzZSBUaHJvdHRsaW5nUmVhc29u
OjpWaXN1YWxseUlkbGU6CisgICAgICAgIHRzIDw8ICJWaXN1YWxseUlkbGUiOworICAgICAgICBi
cmVhazsKKyAgICBjYXNlIFRocm90dGxpbmdSZWFzb246Ok91dHNpZGVWaWV3cG9ydDoKKyAgICAg
ICAgdHMgPDwgIk91dHNpZGVWaWV3cG9ydCI7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgVGhy
b3R0bGluZ1JlYXNvbjo6TG93UG93ZXJNb2RlOgorICAgICAgICB0cyA8PCAiTG93UG93ZXJNb2Rl
IjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUaHJvdHRsaW5nUmVhc29uOjpOb25JbnRlcmFj
dGVkQ3Jvc3NPcmlnaW5GcmFtZToKKyAgICAgICAgdHMgPDwgIk5vbkludGVyYWN0aXZlQ3Jvc3NP
cmlnaW5GcmFtZSI7CisgICAgICAgIGJyZWFrOwogICAgIH0KLQotICAgIGlmIChyZWFzb25zLmlz
RW1wdHkoKSkKLSAgICAgICAgdHMgPDwgIltVbnRocm90dGxlZF0iOwogICAgIHJldHVybiB0czsK
IH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAkocmV2aXNpb24gMjYx
NzMyKQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xMzkzLDggKzEzOTMsNyBAQCBTdHJpbmcgSW50ZXJuYWxzOjpyZXF1ZXN0QW5pbWF0
aW9uRnJhbWVUCiAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKICAgICAgICAgCiAgICAgVGV4dFN0
cmVhbSB0czsKLSAgICB0cyA8PCBzY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXItPnRocm90dGxp
bmdSZWFzb25zKCk7Ci0gICAgcmV0dXJuIHRzLnJlbGVhc2UoKTsKKyAgICByZXR1cm4gKHRzIDw8
IHNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci0+dGhyb3R0bGluZ1JlYXNvbnMoKSkucmVsZWFz
ZSgpOwogfQogCiBkb3VibGUgSW50ZXJuYWxzOjpyZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZh
bCgpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkocmV2aXNpb24gMjYxNzczKQorKysgU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNyBAQAorMjAyMC0wNS0xNSAg
U2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgorCisgICAgICAgIFJl
LWVuYWJsZSAnVmlzdWFsbHlJZGxlJyBSZW5kZXJpbmdVcGRhdGUgdGhyb3R0bGluZworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNjU3CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojp1cGRhdGVBY3Rp
dml0eVN0YXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjphY3Rpdml0eVN0YXRl
RGlkQ2hhbmdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpkaXNwYXRjaEFjdGl2
aXR5U3RhdGVDaGFuZ2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6c2V0QWN0aXZpdHlTdGF0ZSk6CisKIDIwMjAt
MDUtMTUgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAg
ICAgICBbaU9TIFNpbXVsYXRvcl0gVGVzdFdlYktpdEFQSS5fV0tEb3dubG9hZC5SZXN1bWUgaXMg
YSBmbGFreSBjcmFzaApJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwCShyZXZpc2lvbiAyNjE3MzIpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODg4LDggKzE4ODgsMTAgQEAgdm9pZCBXZWJQ
YWdlUHJveHk6OnVwZGF0ZUFjdGl2aXR5U3RhdGUoTwogICAgICAgICBtX2FjdGl2aXR5U3RhdGUu
YWRkKEFjdGl2aXR5U3RhdGU6OklzVmlzaWJsZU9yT2NjbHVkZWQpOwogICAgIGlmIChmbGFnc1Rv
VXBkYXRlICYgQWN0aXZpdHlTdGF0ZTo6SXNJbldpbmRvdyAmJiBwYWdlQ2xpZW50KCkuaXNWaWV3
SW5XaW5kb3coKSkKICAgICAgICAgbV9hY3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0eVN0YXRlOjpJ
c0luV2luZG93KTsKLSAgICBpZiAoZmxhZ3NUb1VwZGF0ZSAmIEFjdGl2aXR5U3RhdGU6OklzVmlz
dWFsbHlJZGxlICYmIHBhZ2VDbGllbnQoKS5pc1Zpc3VhbGx5SWRsZSgpKQorICAgIGlmIChmbGFn
c1RvVXBkYXRlICYgQWN0aXZpdHlTdGF0ZTo6SXNWaXN1YWxseUlkbGUgJiYgcGFnZUNsaWVudCgp
LmlzVmlzdWFsbHlJZGxlKCkpIHsKKyAgICAgICAgV1RGTG9nQWx3YXlzKCJXZWJQYWdlUHJveHk6
OnVwZGF0ZUFjdGl2aXR5U3RhdGUoKTogaXNWaXN1YWxseUlkbGUgPSAlZCIsIG1fYWN0aXZpdHlT
dGF0ZS5jb250YWlucyhBY3Rpdml0eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSkpOwogICAgICAgICBt
X2FjdGl2aXR5U3RhdGUuYWRkKEFjdGl2aXR5U3RhdGU6OklzVmlzdWFsbHlJZGxlKTsKKyAgICB9
CiAgICAgaWYgKGZsYWdzVG9VcGRhdGUgJiBBY3Rpdml0eVN0YXRlOjpJc0F1ZGlibGUgJiYgbV9t
ZWRpYVN0YXRlICYgTWVkaWFQcm9kdWNlcjo6SXNQbGF5aW5nQXVkaW8gJiYgIShtX211dGVkU3Rh
dGUgJiBNZWRpYVByb2R1Y2VyOjpBdWRpb0lzTXV0ZWQpKQogICAgICAgICBtX2FjdGl2aXR5U3Rh
dGUuYWRkKEFjdGl2aXR5U3RhdGU6OklzQXVkaWJsZSk7CiAgICAgaWYgKGZsYWdzVG9VcGRhdGUg
JiBBY3Rpdml0eVN0YXRlOjpJc0xvYWRpbmcgJiYgbV9wYWdlTG9hZFN0YXRlLmlzTG9hZGluZygp
KQpAQCAtMTkwNSw4ICsxOTA3LDEwIEBAIHZvaWQgV2ViUGFnZVByb3h5OjphY3Rpdml0eVN0YXRl
RGlkQ2hhbmcKICAgICBtX3BvdGVudGlhbGx5Q2hhbmdlZEFjdGl2aXR5U3RhdGVGbGFncy5hZGQo
bWF5SGF2ZUNoYW5nZWQpOwogICAgIG1fYWN0aXZpdHlTdGF0ZUNoYW5nZVdhbnRzU3luY2hyb25v
dXNSZXBseSA9IG1fYWN0aXZpdHlTdGF0ZUNoYW5nZVdhbnRzU3luY2hyb25vdXNSZXBseSB8fCBy
ZXBseU1vZGUgPT0gQWN0aXZpdHlTdGF0ZUNoYW5nZVJlcGx5TW9kZTo6U3luY2hyb25vdXM7CiAK
LSAgICBpZiAobV9zdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzICYmIGRpc3BhdGNoTW9kZSAhPSBB
Y3Rpdml0eVN0YXRlQ2hhbmdlRGlzcGF0Y2hNb2RlOjpJbW1lZGlhdGUpCisgICAgaWYgKG1fc3Vw
cHJlc3NWaXNpYmlsaXR5VXBkYXRlcyAmJiBkaXNwYXRjaE1vZGUgIT0gQWN0aXZpdHlTdGF0ZUNo
YW5nZURpc3BhdGNoTW9kZTo6SW1tZWRpYXRlKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygiV2Vi
UGFnZVByb3h5OjphY3Rpdml0eVN0YXRlRGlkQ2hhbmdlKCk6IFZpc2liaWxpdHkgdXBkYXRlcyB3
ZXJlIHN1cHByZXNzZWQiKTsKICAgICAgICAgcmV0dXJuOworICAgIH0KIAogI2lmIFBMQVRGT1JN
KENPQ09BKQogICAgIGJvb2wgaXNOZXdseUluV2luZG93ID0gIWlzSW5XaW5kb3coKSAmJiAobWF5
SGF2ZUNoYW5nZWQgJiBBY3Rpdml0eVN0YXRlOjpJc0luV2luZG93KSAmJiBwYWdlQ2xpZW50KCku
aXNWaWV3SW5XaW5kb3coKTsKQEAgLTE5ODQsOCArMTk4OCwxMCBAQCB2b2lkIFdlYlBhZ2VQcm94
eTo6ZGlzcGF0Y2hBY3Rpdml0eVN0YXRlCiAKICAgICBhdXRvIGFjdGl2aXR5U3RhdGVDaGFuZ2VJ
RCA9IG1fYWN0aXZpdHlTdGF0ZUNoYW5nZVdhbnRzU3luY2hyb25vdXNSZXBseSA/IHRha2VOZXh0
QWN0aXZpdHlTdGF0ZUNoYW5nZUlEKCkgOiBzdGF0aWNfY2FzdDxBY3Rpdml0eVN0YXRlQ2hhbmdl
SUQ+KEFjdGl2aXR5U3RhdGVDaGFuZ2VBc3luY2hyb25vdXMpOwogCi0gICAgaWYgKGNoYW5nZWQg
fHwgYWN0aXZpdHlTdGF0ZUNoYW5nZUlEICE9IEFjdGl2aXR5U3RhdGVDaGFuZ2VBc3luY2hyb25v
dXMgfHwgIW1fbmV4dEFjdGl2aXR5U3RhdGVDaGFuZ2VDYWxsYmFja3MuaXNFbXB0eSgpKQorICAg
IGlmIChjaGFuZ2VkIHx8IGFjdGl2aXR5U3RhdGVDaGFuZ2VJRCAhPSBBY3Rpdml0eVN0YXRlQ2hh
bmdlQXN5bmNocm9ub3VzIHx8ICFtX25leHRBY3Rpdml0eVN0YXRlQ2hhbmdlQ2FsbGJhY2tzLmlz
RW1wdHkoKSkgeworICAgICAgICBXVEZMb2dBbHdheXMoIldlYlBhZ2VQcm94eTo6ZGlzcGF0Y2hB
Y3Rpdml0eVN0YXRlQ2hhbmdlKCk6IE1lc3NhZ2Ugd2lsbCBiZSBzZW50IHRvIHRoZSBXZWJQcm9j
ZXNzOiBtX2FjdGl2aXR5U3RhdGUuaXNWaXN1YWxseUlkbGUgPSAlZCIsIG1fYWN0aXZpdHlTdGF0
ZS5jb250YWlucyhBY3Rpdml0eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSkpOwogICAgICAgICBzZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRBY3Rpdml0eVN0YXRlKG1fYWN0aXZpdHlTdGF0ZSwgYWN0
aXZpdHlTdGF0ZUNoYW5nZUlELCBtX25leHRBY3Rpdml0eVN0YXRlQ2hhbmdlQ2FsbGJhY2tzKSk7
CisgICAgfQogCiAgICAgbV9uZXh0QWN0aXZpdHlTdGF0ZUNoYW5nZUNhbGxiYWNrcy5jbGVhcigp
OwogCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cAkocmV2aXNpb24gMjYxNzMyKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyMjksNiArMzIyOSw3IEBAIHZvaWQgV2Vi
UGFnZTo6c2V0QWN0aXZpdHlTdGF0ZShPcHRpb25TZXQKIAogICAgIEFTU0VSVF9XSVRIX01FU1NB
R0UobV9wYWdlLCAic2V0QWN0aXZpdHlTdGF0ZSBjYWxsZWQgb24gJSIgUFJJdTY0ICIgYnV0IFdl
YkNvcmUgcGFnZSB3YXMgbnVsbCIsIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpKTsKICAgICBpZiAo
bV9wYWdlKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygiV2ViUGFnZTo6c2V0QWN0aXZpdHlTdGF0
ZSgpOiBpc1Zpc3VhbGx5SWRsZSA9ICVkIiwgYWN0aXZpdHlTdGF0ZS5jb250YWlucyhBY3Rpdml0
eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSkpOwogICAgICAgICBTZXRGb3JTY29wZTxPcHRpb25TZXQ8
QWN0aXZpdHlTdGF0ZTo6RmxhZz4+IGN1cnJlbnRseUNoYW5naW5nQWN0aXZpdHlTdGF0ZSB7IG1f
bGFzdEFjdGl2aXR5U3RhdGVDaGFuZ2VzLCBjaGFuZ2VkIH07CiAgICAgICAgIG1fcGFnZS0+c2V0
QWN0aXZpdHlTdGF0ZShhY3Rpdml0eVN0YXRlKTsKICAgICB9CkluZGV4OiBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAy
NjE3MzIpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyAr
MSwyNSBAQAorMjAyMC0wNS0xNSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBw
bGUuY29tPgorCisgICAgICAgIFJlLWVuYWJsZSAnVmlzdWFsbHlJZGxlJyBSZW5kZXJpbmdVcGRh
dGUgdGhyb3R0bGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjExNjU3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBmYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1p
bnNpZGUtb3ZlcmZsb3ctc2Nyb2xsLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2FuaW1h
dGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1pbnNpZGUtb3ZlcmZsb3ctc2Ny
b2xsLmh0bWw6CisgICAgICAgICogZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJh
bWUtdGhyb3R0bGUtc3ViZnJhbWUtZGlzcGxheS1ub25lLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBmYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFt
ZS1kaXNwbGF5LW5vbmUuaHRtbDoKKyAgICAgICAgKiBmYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFu
aW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
ZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJhbWUtdGhyb3R0bGUtc3ViZnJhbWUt
emVyby1zaXplLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2FuaW1hdGlvbi9yZXF1ZXN0
LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS16ZXJvLXNpemUuaHRtbDoKKyAgICAg
ICAgKiBmYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJm
cmFtZS5odG1sOgorICAgICAgICAqIGZhc3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0aW9uLWZy
YW1lLXRocm90dGxpbmctZGV0YWNoZWQtaWZyYW1lLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBm
YXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsaW5nLWRldGFjaGVk
LWlmcmFtZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYt
dGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL2ZyYW1lLXRocm90dGxpbmcvcmFmLXRocm90dGxlLWluLWNyb3NzLW9yaWdp
bi1zdWJmcmFtZS5odG1sOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25z
OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zOgorCiAyMDIwLTA1LTE0
ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFtNb2ph
dmUgRGVidWcgV0syXSBjb21wb3NpdGluZy90cmFuc2Zvcm1zL3BlcnNwZWN0aXZlLXdpdGgtc2Ny
b2xsaW5nLmh0bWwgaXMgZnJlcXVlbnRseSBmYWlsaW5nCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0
L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1pbnNpZGUtb3ZlcmZs
b3ctc2Nyb2xsLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Fu
aW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1pbnNpZGUtb3ZlcmZsb3ct
c2Nyb2xsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjYxNzMyKQorKysgTGF5b3V0VGVzdHMvZmFz
dC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJhbWUtdGhyb3R0bGUtaW5zaWRlLW92ZXJm
bG93LXNjcm9sbC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTQsMTAgKzQsMTAgQEAg
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIEZyYW1lIGlzIGlu
aXRpYWxseSBpbnNpZGUgdGhlIHZpZXdwb3J0IHNvIHJlcXVlc3RBbmltYXRpb25GcmFtZSBzaG91
bGQgbm90IGJlIHRocm90dGxlZAotUEFTUyB0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5h
bHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW1VudGhyb3R0
bGVkXSIKK1BBU1MgdGVzdEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmlt
YXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltdIgogU2Nyb2xsaW5nIG92ZXJmbG93
LgogcmVxdWVzdEFuaW1hdGlvbkZyYW1lIHNob3VsZCBzdGlsbCBub3QgYmUgdGhyb3R0bGVkCi1Q
QVNTIHRlc3RGcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJh
bWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJbVW50aHJvdHRsZWRdIgorUEFTUyB0ZXN0RnJhbWUu
Y29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1Jl
YXNvbnMoKSBpcyAiW10iCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1Qg
Q09NUExFVEUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0
aW9uLWZyYW1lLXRocm90dGxlLWluc2lkZS1vdmVyZmxvdy1zY3JvbGwuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10
aHJvdHRsZS1pbnNpZGUtb3ZlcmZsb3ctc2Nyb2xsLmh0bWwJKHJldmlzaW9uIDI2MTczMikKKysr
IExheW91dFRlc3RzL2Zhc3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0aW9uLWZyYW1lLXRocm90
dGxlLWluc2lkZS1vdmVyZmxvdy1zY3JvbGwuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQsNyAr
MTQsNyBAQCBmdW5jdGlvbiBzY3JvbGxPdmVyZmxvdygpCiAgICAgY29udGFpbmVyLnNjcm9sbExl
ZnQgPSB3aW5kb3cuaW5uZXJXaWR0aCArIDEwOwogCiAgICAgZGVidWcoInJlcXVlc3RBbmltYXRp
b25GcmFtZSBzaG91bGQgc3RpbGwgbm90IGJlIHRocm90dGxlZCIpOwotICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygidGVzdEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmlt
YXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW1VudGhyb3R0bGVkXSIpOworICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygidGVzdEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJl
cXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW10iKTsKICAgICAKICAg
ICBmaW5pc2hKU1Rlc3QoKTsKIH0KQEAgLTIzLDcgKzIzLDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgp
CiB7CiAgICAgdGVzdEZyYW1lID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RGcmFtZSIp
OwogICAgIGRlYnVnKCJGcmFtZSBpcyBpbml0aWFsbHkgaW5zaWRlIHRoZSB2aWV3cG9ydCBzbyBy
ZXF1ZXN0QW5pbWF0aW9uRnJhbWUgc2hvdWxkIG5vdCBiZSB0aHJvdHRsZWQiKTsKLSAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoInRlc3RGcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1
ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltVbnRocm90dGxlZF0iKTsK
KyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInRlc3RGcmFtZS5jb250ZW50V2luZG93LmludGVy
bmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltdIik7CiAg
ICAgc2Nyb2xsT3ZlcmZsb3coKTsKIH0KIDwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJhbWUtdGhyb3R0bGUtc3ViZnJhbWUtZGlz
cGxheS1ub25lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Fu
aW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS1kaXNwbGF5
LW5vbmUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNjE3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS1kaXNw
bGF5LW5vbmUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0zLDcgKzMsNyBAQCBUZXN0
cyB0aGF0IHJlcXVlc3RBbmltYXRpb25GcmFtZSBpcyBub3QgCiBPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCiAKIAotUEFTUyB0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVz
dEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW1VudGhyb3R0bGVkXSIKK1BB
U1MgdGVzdEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFt
ZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltdIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9y
ZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS1kaXNwbGF5LW5vbmUuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1h
dGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS1kaXNwbGF5LW5vbmUuaHRtbAkocmV2aXNpb24g
MjYxNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24t
ZnJhbWUtdGhyb3R0bGUtc3ViZnJhbWUtZGlzcGxheS1ub25lLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTEzLDcgKzEzLDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgLy8gRm9yY2UgbGF5b3V0
LgogICAgIGRvY3VtZW50LmJvZHkub2Zmc2V0VG9wOwogCi0gICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJ0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZy
YW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbVW50aHJvdHRsZWRdIik7CisgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJ0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFu
aW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbXSIpOwogICAgIGZpbmlzaEpTVGVz
dCgpOwogfQogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1
ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJh
bWUtdGhyb3R0bGUtc3ViZnJhbWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNjE3MzIpCisrKyBM
YXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRs
ZS1zdWJmcmFtZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTQsMjAgKzQsMjAgQEAg
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIEZyYW1lIGlzIGlu
aXRpYWxseSBvdXRzaWRlIHRoZSB2aWV3cG9ydCBzbyByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgc2hv
dWxkIGJlIHRocm90dGxlZAotUEFTUyB0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMu
cmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBiZWNhbWUgIk91dHNpZGVW
aWV3cG9ydCIKLVBBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdS
ZWFzb25zKCkgaXMgIltVbnRocm90dGxlZF0iCi1QQVNTIHRlc3RGcmFtZS5jb250ZW50V2luZG93
LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJP
dXRzaWRlVmlld3BvcnQiCi1QQVNTIGdyYW5kQ2hpbGRGcmFtZS5jb250ZW50V2luZG93LmludGVy
bmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJPdXRzaWRl
Vmlld3BvcnQiCitQQVNTIHRlc3RGcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0
QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGJlY2FtZSAiW091dHNpZGVWaWV3cG9y
dF0iCitQQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29u
cygpIGlzICJbXSIKK1BBU1MgdGVzdEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVl
c3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltPdXRzaWRlVmlld3BvcnRd
IgorUEFTUyBncmFuZENoaWxkRnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFu
aW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW091dHNpZGVWaWV3cG9ydF0iCiBT
Y3JvbGxpbmcgZnJhbWUgaW50byB2aWV3LgogUmVxdWVzdEFuaW1hdGlvbkZyYW1lIHNob3VsZCBu
byBsb25nZXIgYmUgdGhyb3R0bGVkCi1QQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJh
bWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJbVW50aHJvdHRsZWRdIgotUEFTUyBncmFuZENoaWxk
RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0
bGluZ1JlYXNvbnMoKSBpcyAiW1VudGhyb3R0bGVkXSIKLVBBU1MgdGVzdEZyYW1lLmNvbnRlbnRX
aW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkg
aXMgIltVbnRocm90dGxlZF0iCitQQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVU
aHJvdHRsaW5nUmVhc29ucygpIGlzICJbXSIKK1BBU1MgZ3JhbmRDaGlsZEZyYW1lLmNvbnRlbnRX
aW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkg
aXMgIltdIgorUEFTUyB0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFu
aW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW10iCiBTY3JvbGxpbmcgZnJhbWUg
b3V0IG9mIHZpZXcgYWdhaW4uCi1QQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVU
aHJvdHRsaW5nUmVhc29ucygpIGlzICJbVW50aHJvdHRsZWRdIgotUEFTUyB0ZXN0RnJhbWUuY29u
dGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNv
bnMoKSBiZWNhbWUgIk91dHNpZGVWaWV3cG9ydCIKLVBBU1MgdGVzdEZyYW1lLmNvbnRlbnRXaW5k
b3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMg
Ik91dHNpZGVWaWV3cG9ydCIKLVBBU1MgZ3JhbmRDaGlsZEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50
ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIk91dHNp
ZGVWaWV3cG9ydCIKK1BBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxp
bmdSZWFzb25zKCkgaXMgIltdIgorUEFTUyB0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5h
bHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBiZWNhbWUgIltPdXRz
aWRlVmlld3BvcnRdIgorUEFTUyB0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVx
dWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW091dHNpZGVWaWV3cG9y
dF0iCitQQVNTIGdyYW5kQ2hpbGRGcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0
QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJbT3V0c2lkZVZpZXdwb3J0XSIK
IFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJhbWUtdGhyb3R0
bGUtc3ViZnJhbWUtemVyby1zaXplLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJm
cmFtZS16ZXJvLXNpemUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNjE3MzIpCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJm
cmFtZS16ZXJvLXNpemUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0zLDcgKzMsNyBA
QCBUZXN0cyB0aGF0IHJlcXVlc3RBbmltYXRpb25GcmFtZSBpcyBub3QgCiBPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCiAKIAotUEFTUyB0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMu
cmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW1VudGhyb3R0bGVk
XSIKK1BBU1MgdGVzdEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRp
b25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltdIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2FuaW1h
dGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS16ZXJvLXNpemUu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFu
aW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS16ZXJvLXNpemUuaHRtbAkocmV2aXNpb24g
MjYxNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24t
ZnJhbWUtdGhyb3R0bGUtc3ViZnJhbWUtemVyby1zaXplLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTEzLDcgKzEzLDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgLy8gRm9yY2UgbGF5b3V0Lgog
ICAgIGRvY3VtZW50LmJvZHkub2Zmc2V0VG9wOwogCi0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJ0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1l
VGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbVW50aHJvdHRsZWRdIik7CisgICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJ0ZXN0RnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1h
dGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbXSIpOwogICAgIGZpbmlzaEpTVGVzdCgp
OwogfQogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0
LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsZS1zdWJmcmFtZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2Zhc3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0aW9uLWZyYW1lLXRocm90dGxl
LXN1YmZyYW1lLmh0bWwJKHJldmlzaW9uIDI2MTczMikKKysrIExheW91dFRlc3RzL2Zhc3QvYW5p
bWF0aW9uL3JlcXVlc3QtYW5pbWF0aW9uLWZyYW1lLXRocm90dGxlLXN1YmZyYW1lLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTExLDggKzExLDggQEAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCiAKIGZ1
bmN0aW9uIGNoZWNrU3ViZnJhbWVzVGhyb3R0bGVkKCkKIHsKLSAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoInRlc3RGcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9u
RnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIk91dHNpZGVWaWV3cG9ydCIpOwotICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygiZ3JhbmRDaGlsZEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxz
LnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiT3V0c2lkZVZpZXdw
b3J0Iik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0ZXN0RnJhbWUuY29udGVudFdpbmRv
dy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJb
T3V0c2lkZVZpZXdwb3J0XSIpOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZ3JhbmRDaGls
ZEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90
dGxpbmdSZWFzb25zKCkiLCAiW091dHNpZGVWaWV3cG9ydF0iKTsKIAogICAgIGZpbmlzaEpTVGVz
dCgpOwogfQpAQCAtMjIsMjMgKzIyLDIzIEBAIGZ1bmN0aW9uIHNjcm9sbEZyYW1lT3V0T2ZWaWV3
KCkKICAgICBkZWJ1ZygiU2Nyb2xsaW5nIGZyYW1lIG91dCBvZiB2aWV3IGFnYWluLiIpOwogICAg
IHdpbmRvdy5zY3JvbGwoMCwgMCk7CiAKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImludGVy
bmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltVbnRocm90
dGxlZF0iKTsKLSAgICBzaG91bGRCZWNvbWVFcXVhbFRvU3RyaW5nKCJ0ZXN0RnJhbWUuY29udGVu
dFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMo
KSIsICJPdXRzaWRlVmlld3BvcnQiLCBjaGVja1N1YmZyYW1lc1Rocm90dGxlZCk7CisgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0
bGluZ1JlYXNvbnMoKSIsICJbXSIpOworICAgIHNob3VsZEJlY29tZUVxdWFsVG9TdHJpbmcoInRl
c3RGcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJv
dHRsaW5nUmVhc29ucygpIiwgIltPdXRzaWRlVmlld3BvcnRdIiwgY2hlY2tTdWJmcmFtZXNUaHJv
dHRsZWQpOwogfQogCiBmdW5jdGlvbiBzY3JvbGxGcmFtZUludG9WaWV3KCkKIHsKLSAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoImludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRs
aW5nUmVhc29ucygpIiwgIltVbnRocm90dGxlZF0iKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInRlc3RGcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJh
bWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIk91dHNpZGVWaWV3cG9ydCIpOwotICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygiZ3JhbmRDaGlsZEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJl
cXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiT3V0c2lkZVZpZXdwb3J0
Iik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlv
bkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbXSIpOworICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygidGVzdEZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25G
cmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW091dHNpZGVWaWV3cG9ydF0iKTsKKyAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoImdyYW5kQ2hpbGRGcmFtZS5jb250ZW50V2luZG93LmludGVybmFs
cy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltPdXRzaWRlVmll
d3BvcnRdIik7CiAKICAgICBkZWJ1ZygiU2Nyb2xsaW5nIGZyYW1lIGludG8gdmlldy4iKTsKICAg
ICB3aW5kb3cuaW50ZXJuYWxzLnNjcm9sbEVsZW1lbnRUb1JlY3QodGVzdEZyYW1lLCAwLCAwLCAz
MDAsIDMwMCk7CiAKICAgICBkZWJ1ZygiUmVxdWVzdEFuaW1hdGlvbkZyYW1lIHNob3VsZCBubyBs
b25nZXIgYmUgdGhyb3R0bGVkIik7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnRlcm5h
bHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbVW50aHJvdHRs
ZWRdIik7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJncmFuZENoaWxkRnJhbWUuY29udGVu
dFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMo
KSIsICJbVW50aHJvdHRsZWRdIik7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0ZXN0RnJh
bWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGlu
Z1JlYXNvbnMoKSIsICJbVW50aHJvdHRsZWRdIik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJb
XSIpOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZ3JhbmRDaGlsZEZyYW1lLmNvbnRlbnRX
aW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCki
LCAiW10iKTsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInRlc3RGcmFtZS5jb250ZW50V2lu
ZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwg
IltdIik7CiAKICAgICBzY3JvbGxGcmFtZU91dE9mVmlldygpOwogfQpAQCAtNDgsNyArNDgsNyBA
QCBmdW5jdGlvbiBydW5UZXN0KCkKICAgICB0ZXN0RnJhbWUgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGVzdEZyYW1lIik7CiAgICAgZ3JhbmRDaGlsZEZyYW1lID0gdGVzdEZyYW1lLmNvbnRl
bnREb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3JhbmRDaGlsZEZyYW1lIik7CiAgICAgZGVidWco
IkZyYW1lIGlzIGluaXRpYWxseSBvdXRzaWRlIHRoZSB2aWV3cG9ydCBzbyByZXF1ZXN0QW5pbWF0
aW9uRnJhbWUgc2hvdWxkIGJlIHRocm90dGxlZCIpOwotICAgIHNob3VsZEJlY29tZUVxdWFsVG9T
dHJpbmcoInRlc3RGcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9u
RnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIk91dHNpZGVWaWV3cG9ydCIsIHNjcm9sbEZyYW1l
SW50b1ZpZXcpOworICAgIHNob3VsZEJlY29tZUVxdWFsVG9TdHJpbmcoInRlc3RGcmFtZS5jb250
ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29u
cygpIiwgIltPdXRzaWRlVmlld3BvcnRdIiwgc2Nyb2xsRnJhbWVJbnRvVmlldyk7CiB9CiAKIHZh
ciBpID0gMDsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0
aW9uLWZyYW1lLXRocm90dGxpbmctZGV0YWNoZWQtaWZyYW1lLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFt
ZS10aHJvdHRsaW5nLWRldGFjaGVkLWlmcmFtZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI2MTcz
MikKKysrIExheW91dFRlc3RzL2Zhc3QvYW5pbWF0aW9uL3JlcXVlc3QtYW5pbWF0aW9uLWZyYW1l
LXRocm90dGxpbmctZGV0YWNoZWQtaWZyYW1lLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMywyNyArMywyNyBAQCBUZXN0IHRoYXQgcmVxdWVzdEFuaW1hdGlvbkZyYW1lIGdldHMgdGhl
CiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKIAotUEFTUyBpbnRlcm5hbHMucmVxdWVzdEFu
aW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW1VudGhyb3R0bGVkXSIKK1BBU1Mg
aW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltd
IgogUEFTUyBpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwgaXMgMC4wMTUK
LVBBU1MgZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1l
VGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW1VudGhyb3R0bGVkXSIKK1BBU1MgZnJhbWUuY29udGVu
dFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMo
KSBpcyAiW10iCiBQQVNTIGZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmlt
YXRpb25GcmFtZUludGVydmFsIGlzIDAuMDE1CiBpbnRlcm5hbHMuc2V0TG93UG93ZXJNb2RlRW5h
YmxlZCh0cnVlKTsKLVBBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxp
bmdSZWFzb25zKCkgaXMgIkxvd1Bvd2VyTW9kZSIKK1BBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmlt
YXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltMb3dQb3dlck1vZGVdIgogUEFTUyBp
bnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwgaXMgMC4wMzAKLVBBU1MgZnJh
bWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGlu
Z1JlYXNvbnMoKSBpcyAiTG93UG93ZXJNb2RlIgorUEFTUyBmcmFtZS5jb250ZW50V2luZG93Lmlu
dGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJbTG93
UG93ZXJNb2RlXSIKIFBBU1MgZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFu
aW1hdGlvbkZyYW1lSW50ZXJ2YWwgaXMgMC4wMzAKIGZyYW1lLnJlbW92ZSgpCiBkb2N1bWVudC5i
b2R5LmFwcGVuZENoaWxkKGZyYW1lKQotUEFTUyBpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZy
YW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiTG93UG93ZXJNb2RlIgorUEFTUyBpbnRlcm5hbHMu
cmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSBpcyAiW0xvd1Bvd2VyTW9k
ZV0iCiBQQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZhbCBpcyAwLjAz
MAotUEFTUyBmcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJh
bWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJMb3dQb3dlck1vZGUiCitQQVNTIGZyYW1lLmNvbnRl
bnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25z
KCkgaXMgIltMb3dQb3dlck1vZGVdIgogUEFTUyBmcmFtZS5jb250ZW50V2luZG93LmludGVybmFs
cy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZhbCBpcyAwLjAzMAogZnJhbWUucmVtb3ZlKCkK
IGludGVybmFscy5zZXRMb3dQb3dlck1vZGVFbmFibGVkKGZhbHNlKTsKLVBBU1MgaW50ZXJuYWxz
LnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkgaXMgIltVbnRocm90dGxl
ZF0iCitQQVNTIGludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29u
cygpIGlzICJbXSIKIFBBU1MgaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZUludGVydmFs
IGlzIDAuMDE1CiBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKQotUEFTUyBmcmFtZS5j
b250ZW50V2luZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVh
c29ucygpIGlzICJbVW50aHJvdHRsZWRdIgorUEFTUyBmcmFtZS5jb250ZW50V2luZG93LmludGVy
bmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIGlzICJbXSIKIFBB
U1MgZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50
ZXJ2YWwgaXMgMC4wMTUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJhbWUtdGhyb3R0
bGluZy1kZXRhY2hlZC1pZnJhbWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2FuaW1hdGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsaW5nLWRldGFjaGVkLWlm
cmFtZS5odG1sCShyZXZpc2lvbiAyNjE3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2FuaW1hdGlv
bi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS10aHJvdHRsaW5nLWRldGFjaGVkLWlmcmFtZS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0xOCwzMyArMTgsMzMgQEAgcmVxdWVzdEFuaW1hdGlvbkZyYW1l
KGRvV29yayk7CiBjb25zdCBmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIp
OwogZnJhbWUuc3JjID0gInJlc291cmNlcy9mcmFtZS13aXRoLWFuaW1hdGlvbi5odG1sIjsKIGZy
YW1lLm9ubG9hZCA9IGZ1bmN0aW9uKCkgewotICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50
ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW1VudGhy
b3R0bGVkXSIpOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RB
bmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW10iKTsKICAgICBzaG91bGRCZSgi
aW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZUludGVydmFsIiwgIjAuMDE1Iik7Ci0gICAg
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmcmFtZS5jb250ZW50V2luZG93LmludGVybmFscy5yZXF1
ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltVbnRocm90dGxlZF0iKTsK
KyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxz
LnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiW10iKTsKICAgICBz
aG91bGRCZSgiZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZy
YW1lSW50ZXJ2YWwiLCAiMC4wMTUiKTsKIAogICAgIGV2YWxBbmRMb2coImludGVybmFscy5zZXRM
b3dQb3dlck1vZGVFbmFibGVkKHRydWUpOyIpOwotICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
aW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiTG93
UG93ZXJNb2RlIik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbnRlcm5hbHMucmVxdWVz
dEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbTG93UG93ZXJNb2RlXSIpOwog
ICAgIHNob3VsZEJlKCJpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwiLCAi
MC4wMzAiKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNvbnRlbnRXaW5kb3cu
aW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiTG93
UG93ZXJNb2RlIik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmcmFtZS5jb250ZW50V2lu
ZG93LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwg
IltMb3dQb3dlck1vZGVdIik7CiAgICAgc2hvdWxkQmUoImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50
ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZUludGVydmFsIiwgIjAuMDMwIik7CiAgICAgZXZh
bEFuZExvZygiZnJhbWUucmVtb3ZlKCkiKTsKIAogICAgIGV2YWxBbmRMb2coImRvY3VtZW50LmJv
ZHkuYXBwZW5kQ2hpbGQoZnJhbWUpIik7CiAgICAgZnJhbWUub25sb2FkID0gZnVuY3Rpb24oKSB7
Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRp
b25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiTG93UG93ZXJNb2RlIik7CisgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90
dGxpbmdSZWFzb25zKCkiLCAiW0xvd1Bvd2VyTW9kZV0iKTsKICAgICAgICAgc2hvdWxkQmUoImlu
dGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZhbCIsICIwLjAzMCIpOwotICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNvbnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJl
cXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFzb25zKCkiLCAiTG93UG93ZXJNb2RlIik7
CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZnJhbWUuY29udGVudFdpbmRvdy5pbnRl
cm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbTG93UG93
ZXJNb2RlXSIpOwogICAgICAgICBzaG91bGRCZSgiZnJhbWUuY29udGVudFdpbmRvdy5pbnRlcm5h
bHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50ZXJ2YWwiLCAiMC4wMzAiKTsKIAogICAgICAgICBl
dmFsQW5kTG9nKCJmcmFtZS5yZW1vdmUoKSIpOwogICAgICAgICBldmFsQW5kTG9nKCJpbnRlcm5h
bHMuc2V0TG93UG93ZXJNb2RlRW5hYmxlZChmYWxzZSk7Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFz
b25zKCkiLCAiW1VudGhyb3R0bGVkXSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
ImludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVUaHJvdHRsaW5nUmVhc29ucygpIiwgIltd
Iik7CiAgICAgICAgIHNob3VsZEJlKCJpbnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lSW50
ZXJ2YWwiLCAiMC4wMTUiKTsKIAogICAgICAgICBldmFsQW5kTG9nKCJkb2N1bWVudC5ib2R5LmFw
cGVuZENoaWxkKGZyYW1lKSIpOwogICAgICAgICBmcmFtZS5vbmxvYWQgPSBmdW5jdGlvbigpIHsK
LSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZnJhbWUuY29udGVudFdpbmRvdy5p
bnRlcm5hbHMucmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGluZ1JlYXNvbnMoKSIsICJbVW50
aHJvdHRsZWRdIik7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZyYW1lLmNv
bnRlbnRXaW5kb3cuaW50ZXJuYWxzLnJlcXVlc3RBbmltYXRpb25GcmFtZVRocm90dGxpbmdSZWFz
b25zKCkiLCAiW10iKTsKICAgICAgICAgICAgIHNob3VsZEJlKCJmcmFtZS5jb250ZW50V2luZG93
LmludGVybmFscy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJbnRlcnZhbCIsICIwLjAxNSIpOwogICAg
ICAgICAgICAgZmluaXNoSlNUZXN0KCk7CiAgICAgICAgIH0KSW5kZXg6IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1
YmZyYW1lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2ZyYW1lLXRocm90dGxpbmcvcmFmLXRocm90dGxlLWluLWNyb3NzLW9yaWdpbi1zdWJmcmFtZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDI2MTczMikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
ZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLWV4
cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNiwxNiArNiwxNiBAQCBPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiBSZWNlaXZlZCBtZXNzYWdlOiBmcmFtZWxvYWQK
IFJlY2VpdmVkIG1lc3NhZ2U6IGZyYW1lbG9hZAogQ2hlY2tpbmcgdGhhdCByZXF1ZXN0QW5pbWF0
aW9uRnJhbWUgaXMgdGhyb3R0bGVkIGluIGNyb3NzIG9yaWdpbiBmcmFtZQotUmVjZWl2ZWQgbWVz
c2FnZTogdGhyb3R0bGVkW2Nyb3NzXTogTm9uSW50ZXJhY3RpdmVDcm9zc09yaWdpbkZyYW1lCi1S
ZWNlaXZlZCBtZXNzYWdlOiB0aHJvdHRsZWRbc2FtZV06IFtVbnRocm90dGxlZF0KK1JlY2VpdmVk
IG1lc3NhZ2U6IHRocm90dGxlZFtjcm9zc106IFtOb25JbnRlcmFjdGl2ZUNyb3NzT3JpZ2luRnJh
bWVdCitSZWNlaXZlZCBtZXNzYWdlOiB0aHJvdHRsZWRbc2FtZV06IFtdCiBQQVNTIHRocm90dGxl
ZFN0YXRlWydjcm9zcyddIGlzICJOb25JbnRlcmFjdGl2ZUNyb3NzT3JpZ2luRnJhbWUiCi1QQVNT
IHRocm90dGxlZFN0YXRlWydzYW1lJ10gaXMgIltVbnRocm90dGxlZF0iCitQQVNTIHRocm90dGxl
ZFN0YXRlWydzYW1lJ10gaXMgIiIKIEludGVyYWN0ZWQgd2l0aCBjcm9zcy1vcmlnaW4gZnJhbWUK
IEludGVyYWN0ZWQgd2l0aCBzYW1lLW9yaWdpbiBmcmFtZQotUmVjZWl2ZWQgbWVzc2FnZTogdGhy
b3R0bGVkW2Nyb3NzXTogW1VudGhyb3R0bGVkXQotUmVjZWl2ZWQgbWVzc2FnZTogdGhyb3R0bGVk
W3NhbWVdOiBbVW50aHJvdHRsZWRdCi1QQVNTIHRocm90dGxlZFN0YXRlWydjcm9zcyddIGlzICJb
VW50aHJvdHRsZWRdIgotUEFTUyB0aHJvdHRsZWRTdGF0ZVsnc2FtZSddIGlzICJbVW50aHJvdHRs
ZWRdIgorUmVjZWl2ZWQgbWVzc2FnZTogdGhyb3R0bGVkW2Nyb3NzXTogW10KK1JlY2VpdmVkIG1l
c3NhZ2U6IHRocm90dGxlZFtzYW1lXTogW10KK1BBU1MgdGhyb3R0bGVkU3RhdGVbJ2Nyb3NzJ10g
aXMgIiIKK1BBU1MgdGhyb3R0bGVkU3RhdGVbJ3NhbWUnXSBpcyAiIgogUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ZyYW1lLXRocm90dGxpbmcvcmFmLXRocm90dGxlLWluLWNyb3NzLW9yaWdpbi1zdWJm
cmFtZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZnJhbWUtdGhy
b3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLmh0bWwJKHJldmlz
aW9uIDI2MTczMikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9y
YWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2luLXN1YmZyYW1lLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTU1LDE0ICs1NSwxNCBAQAogICAgIGZ1bmN0aW9uIGNoZWNrSW5pdGlhbGx5VGhyb3R0bGVk
KCkKICAgICB7CiAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygidGhyb3R0bGVkU3RhdGVb
J2Nyb3NzJ10iLCAiTm9uSW50ZXJhY3RpdmVDcm9zc09yaWdpbkZyYW1lIik7Ci0gICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygidGhyb3R0bGVkU3RhdGVbJ3NhbWUnXSIsICJbVW50aHJvdHRs
ZWRdIik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmcoInRocm90dGxlZFN0YXRlWydzYW1l
J10iKTsKICAgICAgICAgaW50ZXJhY3RXaXRoU3ViZnJhbWVzKCk7CiAgICAgfQogCiAgICAgZnVu
Y3Rpb24gY2hlY2tVbnRocm90dGxlZEFmdGVySW50ZXJhY3Rpb24oKQogICAgIHsKLSAgICAgICAg
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0aHJvdHRsZWRTdGF0ZVsnY3Jvc3MnXSIsICJbVW50aHJv
dHRsZWRdIik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygidGhyb3R0bGVkU3RhdGVb
J3NhbWUnXSIsICJbVW50aHJvdHRsZWRdIik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmco
InRocm90dGxlZFN0YXRlWydjcm9zcyddIik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmco
InRocm90dGxlZFN0YXRlWydzYW1lJ10iKTsKICAgICAgICAgZmluaXNoSlNUZXN0KCk7CiAgICAg
fQogCkBAIC03NSw3ICs3NSw3IEBACiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIAot
ICAgICAgICB2YXIgcmUgPSAvdGhyb3R0bGVkXFsoXHcrKVxdOiAoKFx3KykoXHxcdyspKnxcW1Vu
dGhyb3R0bGVkXF0pLzsKKyAgICAgICAgdmFyIHJlID0gL3Rocm90dGxlZFxbKFx3KylcXTogXFso
KChcdyspKCxccypcdyspKik/KVxdLzsKICAgICAgICAgdmFyIG1hdGNoID0gcmUuZXhlYyhtZXNz
YWdlLmRhdGEpOwogICAgICAgICBpZiAobWF0Y2gpIHsKICAgICAgICAgICAgIGZyYW1lSUQgPSBt
YXRjaFsxXTsKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25z
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25z
CShyZXZpc2lvbiAyNjE3MzIpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVj
dGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtMTgyLDcgKzE4Miw2IEBAIGh0dHAvdGVzdHMvY2Fj
aGUvZGlzay1jYWNoZS9kaXNrLWNhY2hlLW0KIGZhc3QvZXZlbnRzL3RvdWNoIFsgU2tpcCBdCiBm
YXN0L3NoYWRvdy1kb20vdG91Y2gtZXZlbnQtaW9zLmh0bWwgWyBTa2lwIF0KIGZhc3Qvc2hhZG93
LWRvbS90b3VjaC1ldmVudC1vbi10ZXh0LWFzc2lnbmVkLXRvLXNsb3QuaHRtbCBbIFNraXAgXQot
aHR0cC90ZXN0cy9mcmFtZS10aHJvdHRsaW5nL3JhZi10aHJvdHRsZS1pbi1jcm9zcy1vcmlnaW4t
c3ViZnJhbWUuaHRtbCBbIFNraXAgXQogaHR0cC90ZXN0cy9mcmFtZS10aHJvdHRsaW5nL3RpbWVy
LXRocm90dGxlLWluLWNyb3NzLW9yaWdpbi1zdWJmcmFtZS5odG1sIFsgU2tpcCBdCiBodHRwL3Rl
c3RzL3F1aWNrbG9vay9hdC1pbXBvcnQtc3R5bGVzaGVldC1ibG9ja2VkLmh0bWwgWyBTa2lwIF0K
IGh0dHAvdGVzdHMvcXVpY2tsb29rL2Jhc2UtdXJsLWJsb2NrZWQuaHRtbCBbIFNraXAgXQpJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMJKHJldmlzaW9uIDI2
MTczMikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xOTU2LDUgKzE5NTYsMyBAQCB3ZWJraXQub3JnL2IvMjEwNTE3IHN0b3Jh
Z2UvaW5kZXhlZGRiL3JlCiAjIFRoZXNlIG1lZGlhIGNvbnRyb2xzIHRlc3RzIGFyZSBub3QgcmVs
ZXZhbnQgb24gbWFjT1MgYW5kIGlPUy4KIG1lZGlhL21lZGlhLWRvY3VtZW50LWF1ZGlvLXJlcGFp
bnQuaHRtbCBbIFNraXAgXQogbWVkaWEvY29udHJvbHMtc3R5bGluZy5odG1sIFsgU2tpcCBdCi0K
LWh0dHAvdGVzdHMvZnJhbWUtdGhyb3R0bGluZy9yYWYtdGhyb3R0bGUtaW4tY3Jvc3Mtb3JpZ2lu
LXN1YmZyYW1lLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>