<?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>195050</bug_id>
          
          <creation_ts>2019-02-26 08:07:07 -0800</creation_ts>
          <short_desc>Split tests programmatic-scroll-iframe and scroll-iframe</short_desc>
          <delta_ts>2019-02-26 10:28:24 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>194433</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Frédéric Wang (:fredw)">fred.wang</reporter>
          <assigned_to name="Frédéric Wang (:fredw)">fred.wang</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>koivisto</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1510033</commentid>
    <comment_count>0</comment_count>
    <who name="Frédéric Wang (:fredw)">fred.wang</who>
    <bug_when>2019-02-26 08:07:07 -0800</bug_when>
    <thetext>Split tests programmatic-scroll-iframe and scroll-iframe</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510034</commentid>
    <comment_count>1</comment_count>
      <attachid>362987</attachid>
    <who name="Frédéric Wang (:fredw)">fred.wang</who>
    <bug_when>2019-02-26 08:08:13 -0800</bug_when>
    <thetext>Created attachment 362987
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510035</commentid>
    <comment_count>2</comment_count>
    <who name="Frédéric Wang (:fredw)">fred.wang</who>
    <bug_when>2019-02-26 08:09:38 -0800</bug_when>
    <thetext>I haven&apos;t run the tests locally so let&apos;s wait for EWS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510044</commentid>
    <comment_count>3</comment_count>
      <attachid>362989</attachid>
    <who name="Frédéric Wang (:fredw)">fred.wang</who>
    <bug_when>2019-02-26 08:45:35 -0800</bug_when>
    <thetext>Created attachment 362989
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510045</commentid>
    <comment_count>4</comment_count>
    <who name="Frédéric Wang (:fredw)">fred.wang</who>
    <bug_when>2019-02-26 08:48:11 -0800</bug_when>
    <thetext>(In reply to Frédéric Wang (:fredw) from comment #2)
&gt; I haven&apos;t run the tests locally so let&apos;s wait for EWS.

Done, I had forgotten to do s/rectangle/square/ everywhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510061</commentid>
    <comment_count>5</comment_count>
      <attachid>362989</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-02-26 10:14:51 -0800</bug_when>
    <thetext>Comment on attachment 362989
Patch

Clearing flags on attachment: 362989

Committed r242090: &lt;https://trac.webkit.org/changeset/242090&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510062</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-02-26 10:14:53 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510073</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-02-26 10:28:24 -0800</bug_when>
    <thetext>&lt;rdar://problem/48405033&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>362987</attachid>
            <date>2019-02-26 08:08:13 -0800</date>
            <delta_ts>2019-02-26 08:45:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195050-20190226170812.patch</filename>
            <type>text/plain</type>
            <size>49274</size>
            <attacher name="Frédéric Wang (:fredw)">fred.wang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyMDg1CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNDg1MjE2MTg3NjZlN2M0MzU1N2Y5
YzE0MzRlM2RjODBkNWExMTQ4OS4uODY5YWY3ODVmOWI1ZTczYzVlZmM3NGY1ZWZhMGFmMDg3OGRl
ZjcxNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE5LTAyLTI2ICBGcmVkZXJpYyBXYW5nICA8
ZndhbmdAaWdhbGlhLmNvbT4KKworICAgICAgICBTcGxpdCB0ZXN0cyBwcm9ncmFtbWF0aWMtc2Ny
b2xsLWlmcmFtZSBhbmQgc2Nyb2xsLWlmcmFtZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MDUwCisKKyAgICAgICAgVGhpcyBwYXRjaCBzcGxpdHMg
c29tZSBpT1MgZnJhbWUgc2Nyb2xsaW5nIHRlc3RzIGludG8gc2VwYXJhdGUgdGVzdHMgaW4gb3Jk
ZXIgdG8gbWFrZSBkZWJ1Z2dpbmcKKyAgICAgICAgYW5kIHRlc3QgZXhwZWN0YXRpb25zIGVhc2ll
ciB0byBtYW5hZ2UuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBmYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAx
LWV4cGVjdGVkLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lv
cy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5odG1sLgorICAgICAgICAqIGZh
c3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDEuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZy
YW1lLTAwMi1leHBlY3RlZC5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Njcm9s
bGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtZXhwZWN0ZWQuaHRtbC4KKyAgICAg
ICAgKiBmYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAyLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Ny
b2xsLWlmcmFtZS0wMDMtZXhwZWN0ZWQuaHRtbDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvZmFz
dC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLWV4cGVjdGVkLmh0bWwu
CisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1l
LTAwMy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1h
dGljLXNjcm9sbC1pZnJhbWUtMDA0LWV4cGVjdGVkLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRl
c3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS1leHBlY3Rl
ZC5odG1sLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xs
LWlmcmFtZS0wMDQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3By
b2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNS1leHBlY3RlZC5odG1sOiBDb3BpZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUt
ZXhwZWN0ZWQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGlj
LXNjcm9sbC1pZnJhbWUtMDA1Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5n
L2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDYtZXhwZWN0ZWQuaHRtbDogQ29waWVk
IGZyb20gTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwt
aWZyYW1lLWV4cGVjdGVkLmh0bWwuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dy
YW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Nj
cm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA3LWV4cGVjdGVkLmh0bWw6
IENvcGllZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMt
c2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5odG1sLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lv
cy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDcuaHRtbDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwOC1leHBlY3Rl
ZC5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3Jh
bW1hdGljLXNjcm9sbC1pZnJhbWUtZXhwZWN0ZWQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3Njcm9s
bGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA4Lmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDkt
ZXhwZWN0ZWQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lv
cy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5odG1sLgorICAgICAgICAqIGZh
c3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDkuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZy
YW1lLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1p
ZnJhbWUtMDAxLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5n
L2lvcy9zY3JvbGwtaWZyYW1lLTAwMS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Njcm9s
bGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDItZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAyLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMy1leHBlY3RlZC5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDMu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUt
MDA0LWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9z
Y3JvbGwtaWZyYW1lLTAwNC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9p
b3Mvc2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGZhc3Qv
c2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLmh0bWw6IFJlbW92ZWQuCisKIDIwMTktMDItMjYg
IEZyZWRlcmljIFdhbmcgIDxmd2FuZ0BpZ2FsaWEuY29tPgogCiAgICAgICAgIEV4cG9ydCBNYXRo
TUwgZnJhY3Rpb24gdGVzdHMgdG8gV1BUCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Nj
cm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAxLWV4cGVjdGVkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJh
bWUtMDAxLWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzAyYjJhMzM0YTI1OTZhODkxNmIzNjZm
NTM3ODIwYzRjMDI1OWNhYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Ny
b2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDEtZXhwZWN0ZWQuaHRtbApA
QCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8
dGl0bGU+UHJvZ3JhbW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRh
IG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2Nh
bGU9MSI+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5
b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjog
YWJzb2x1dGU7IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91
bmQ6IGdyZWVuOyI+CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFt
ZS0wMDEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMt
c2Nyb2xsLWlmcmFtZS0wMDEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iOGFlNjE1OTVkMGY3YzRkMzIxNDM1
OWQ1MjM3ZTRiNTMwN2E2NmY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9z
Y3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwMS5odG1sCkBAIC0wLDAg
KzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Q
cm9ncmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0i
dmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4K
KyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5h
bHMpCisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGlu
Z0VuYWJsZWQodHJ1ZSk7CisKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAg
ICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVu
IHNxdWFyZS4KKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkb05vdFNjcm9s
bCIpLmNvbnRlbnRXaW5kb3cud2luZG93LnNjcm9sbFRvKDAsIDApOworCisgICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlE
b25lKCk7CisgICAgICAgIH0KKyAgICAgPC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAgICBp
ZnJhbWUgeworICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICBiYWNrZ3JvdW5k
OiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZWQsIG9yYW5nZSk7CisgICAgICAgICAgICBib3Jk
ZXI6IDA7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OworICAgICAgICAgICAgb3ZlcmZsb3c6IG5vbmU7CisgICAgICAgIH0KKyAgICA8L3N0eWxl
PgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNl
ZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+CisgICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFic29s
dXRlOyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBn
cmVlbjsiPgorICAgICAgICA8aWZyYW1lIGlkPSJkb05vdFNjcm9sbCIgc3R5bGU9ImxlZnQ6IDBw
eDsgdG9wOiAwcHg7IiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgICAgIDxib2R5
IHN0eWxlPSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+CisgICAgICAg
ICAgICAgICAgPGRpdiBzdHlsZT0ncG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwcHg7IGhl
aWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+CisgICAgICAgICAgICA8L2Jv
ZHk+IiBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgICAgIDwvaWZyYW1lPgorICAgIDwvZGl2Pgor
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGlu
Zy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAyLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAy
LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzAyYjJhMzM0YTI1OTZhODkxNmIzNjZmNTM3ODIw
YzRjMDI1OWNhYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5n
L2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDItZXhwZWN0ZWQuaHRtbApAQCAtMCww
ICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
UHJvZ3JhbW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9
InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+
CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2Vl
IGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1
dGU7IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdy
ZWVuOyI+CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDIu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xs
LWlmcmFtZS0wMDIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42YmQxY2E4NGZjZTk4OTNkNWQ2MDZlNTlmYzEx
ZDM1YmVkYjY2ZDFiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxp
bmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwMi5odG1sCkBAIC0wLDAgKzEsNDEg
QEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFt
bWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3Bv
cnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8
c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0
UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisg
ICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJs
ZWQodHJ1ZSk7CisKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgICAgIC8v
IFRoaXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVuIHNxdWFy
ZS4KKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYXhTY3JvbGxYIikuY29u
dGVudFdpbmRvdy53aW5kb3cuc2Nyb2xsVG8oMTAwLCAwKTsKKworICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgp
OworICAgICAgICB9CisgICAgIDwvc2NyaXB0PgorICAgIDxzdHlsZT4KKyAgICAgICAgaWZyYW1l
IHsKKyAgICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgICAgYmFja2dyb3VuZDogbGlu
ZWFyLWdyYWRpZW50KDEzNWRlZywgcmVkLCBvcmFuZ2UpOworICAgICAgICAgICAgYm9yZGVyOiAw
OworICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgICAgIHdpZHRoOiAxMDBweDsK
KyAgICAgICAgICAgIG92ZXJmbG93OiBub25lOworICAgICAgICB9CisgICAgPC9zdHlsZT4KKyAg
PC9oZWFkPgorICA8Ym9keT4KKyAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBn
cmVlbiByZWN0YW5nbGUuPC9wPgorICAgIDxkaXYgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsg
dG9wOiAzZW07IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47
Ij4KKyAgICAgICAgPGlmcmFtZSBpZD0ibWF4U2Nyb2xsWCIgc2Nyb2xsaW5nPSJ5ZXMiIHNyY2Rv
Yz0iCisgICAgICAgICAgICA8Ym9keSBzdHlsZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7IGhl
aWdodDogMjAwcHgnPgorICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9J2xlZnQ6IDEwMHB4OyBw
b3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3Vu
ZDogZ3JlZW47Jz48L2Rpdj4KKyAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0icnVuVGVzdCgp
Ij4KKyAgICAgICAgPC9pZnJhbWU+CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Ny
b2xsLWlmcmFtZS0wMDMtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5n
L2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDMtZXhwZWN0ZWQuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4zMDJiMmEzMzRhMjU5NmE4OTE2YjM2NmY1Mzc4MjBjNGMwMjU5Y2FiCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3Jv
bGwtaWZyYW1lLTAwMy1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMgc2Nyb2xsaW5n
IG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9Indp
ZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgPC9oZWFkPgorICA8Ym9keT4K
KyAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9w
PgorICAgIDxkaXYgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAzZW07IHdpZHRoOiAx
MDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47Ij4KKyAgICA8L2Rpdj4KKyAg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcv
aW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwMy5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwMy5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjc1NWYzOTEwNzdiMDQ4YWZjZTFlM2VkZTYwNzA4ZjNkNTE2YzlkZjkKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNj
cm9sbC1pZnJhbWUtMDAzLmh0bWwKQEAgLTAsMCArMSw0MSBAQAorPCFET0NUWVBFIGh0bWw+Cis8
aHRtbD4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPlByb2dyYW1tYXRpYyBzY3JvbGxpbmcgb2YgaWZy
YW1lPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2
aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OworICAgICAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgICAgIGludGVybmFscy5z
ZXR0aW5ncy5zZXRBc3luY0ZyYW1lU2Nyb2xsaW5nRW5hYmxlZCh0cnVlKTsKKworICAgICAgICBm
dW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgICAgICAgLy8gVGhpcyBjaGVja3Mgc2Nyb2xsaW5n
IHRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgZ3JlZW4gc3F1YXJlLgorICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoIm1heFNjcm9sbFkiKS5jb250ZW50V2luZG93LndpbmRvdy5zY3Jv
bGxUbygwLCAxMDApOworCisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgICAgIH0KKyAgICAgPC9z
Y3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAgICBpZnJhbWUgeworICAgICAgICAgICAgZmxvYXQ6
IGxlZnQ7CisgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCBy
ZWQsIG9yYW5nZSk7CisgICAgICAgICAgICBib3JkZXI6IDA7CisgICAgICAgICAgICBoZWlnaHQ6
IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAgb3ZlcmZsb3c6
IG5vbmU7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAg
IDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cisg
ICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4
OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsiPgorICAgICAgICA8aWZyYW1lIGlk
PSJtYXhTY3JvbGxZIiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgICAgIDxib2R5
IHN0eWxlPSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+CisgICAgICAg
ICAgICAgICAgPGRpdiBzdHlsZT0ndG9wOiAxMDBweDsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0
aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+CisgICAg
ICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgICAgIDwvaWZyYW1lPgor
ICAgIDwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA0LWV4cGVjdGVk
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9s
bC1pZnJhbWUtMDA0LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzAyYjJhMzM0YTI1OTZhODkx
NmIzNjZmNTM3ODIwYzRjMDI1OWNhYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDQtZXhwZWN0ZWQu
aHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4K
KyAgICA8dGl0bGU+UHJvZ3JhbW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAg
IDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRp
YWwtc2NhbGU9MSI+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3Nl
cyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3Np
dGlvbjogYWJzb2x1dGU7IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJh
Y2tncm91bmQ6IGdyZWVuOyI+CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xs
LWlmcmFtZS0wMDQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFt
bWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MzdlMjQwMDdlZjEzZmI2
NThmNTNlOTk2Y2EzYWE2MGRiMzQyMTlkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNC5odG1sCkBA
IC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0
aXRsZT5Qcm9ncmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEg
bmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2Fs
ZT0xIj4KKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5p
bnRlcm5hbHMpCisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNj
cm9sbGluZ0VuYWJsZWQodHJ1ZSk7CisKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAg
ICAgICAgICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhl
IGdyZWVuIHNxdWFyZS4KKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYXhT
Y3JvbGxYWSIpLmNvbnRlbnRXaW5kb3cud2luZG93LnNjcm9sbFRvKDEwMCwgMTAwKTsKKworICAg
ICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5u
ZXIubm90aWZ5RG9uZSgpOworICAgICAgICB9CisgICAgIDwvc2NyaXB0PgorICAgIDxzdHlsZT4K
KyAgICAgICAgaWZyYW1lIHsKKyAgICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgICAg
YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmVkLCBvcmFuZ2UpOworICAgICAg
ICAgICAgYm9yZGVyOiAwOworICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgICAg
IHdpZHRoOiAxMDBweDsKKyAgICAgICAgICAgIG92ZXJmbG93OiBub25lOworICAgICAgICB9Cisg
ICAgPC9zdHlsZT4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8cD5UaGlzIHRlc3QgcGFzc2Vz
IGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgorICAgIDxkaXYgc3R5bGU9InBvc2l0
aW9uOiBhYnNvbHV0ZTsgdG9wOiAzZW07IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFj
a2dyb3VuZDogZ3JlZW47Ij4KKyAgICAgICAgPGlmcmFtZSBpZD0ibWF4U2Nyb2xsWFkiIHNjcm9s
bGluZz0ieWVzIiBzcmNkb2M9IgorICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsg
d2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KKyAgICAgICAgICAgICAgICA8ZGl2IHN0eWxl
PSdsZWZ0OiAxMDBweDsgdG9wOiAxMDBweDsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAw
cHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+CisgICAgICAgICAg
ICA8L2JvZHk+IiBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgICAgIDwvaWZyYW1lPgorICAgIDwv
ZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Nj
cm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA1LWV4cGVjdGVkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJh
bWUtMDA1LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzAyYjJhMzM0YTI1OTZhODkxNmIzNjZm
NTM3ODIwYzRjMDI1OWNhYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Ny
b2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDUtZXhwZWN0ZWQuaHRtbApA
QCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8
dGl0bGU+UHJvZ3JhbW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRh
IG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2Nh
bGU9MSI+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5
b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjog
YWJzb2x1dGU7IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91
bmQ6IGdyZWVuOyI+CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFt
ZS0wMDUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMt
c2Nyb2xsLWlmcmFtZS0wMDUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45YTQzYWNjNTI4MTI1ODI3NGYzYzEz
YWU2ZGI2Yzk1Y2Q1YmZlMGY2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9z
Y3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNS5odG1sCkBAIC0wLDAg
KzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Q
cm9ncmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0i
dmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4K
KyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5h
bHMpCisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGlu
Z0VuYWJsZWQodHJ1ZSk7CisKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAg
ICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVu
IHNxdWFyZS4KKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzY3JvbGxNaWRk
bGUiKS5jb250ZW50V2luZG93LndpbmRvdy5zY3JvbGxUbyg1MCwgNTApOworCisgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3Rp
ZnlEb25lKCk7CisgICAgICAgIH0KKyAgICAgPC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAg
ICBpZnJhbWUgeworICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICBiYWNrZ3Jv
dW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZWQsIG9yYW5nZSk7CisgICAgICAgICAgICBi
b3JkZXI6IDA7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6
IDEwMHB4OworICAgICAgICAgICAgb3ZlcmZsb3c6IG5vbmU7CisgICAgICAgIH0KKyAgICA8L3N0
eWxlPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91
IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+CisgICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFi
c29sdXRlOyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5k
OiBncmVlbjsiPgorICAgICAgICA8aWZyYW1lIGlkPSJzY3JvbGxNaWRkbGUiIHNjcm9sbGluZz0i
eWVzIiBzcmNkb2M9IgorICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6
IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KKyAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSdsZWZ0
OiA1MHB4OyB0b3A6IDUwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMHB4OyBoZWln
aHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgorICAgICAgICAgICAgPC9ib2R5
PiIgb25sb2FkPSJydW5UZXN0KCkiPgorICAgICAgICA8L2lmcmFtZT4KKyAgICA8L2Rpdj4KKyAg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcv
aW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNi1leHBlY3RlZC5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNi1l
eHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMwMmIyYTMzNGEyNTk2YTg5MTZiMzY2ZjUzNzgyMGM0
YzAyNTljYWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9p
b3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA2LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCAr
MSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPlBy
b2dyYW1tYXRpYyBzY3JvbGxpbmcgb2YgaWZyYW1lPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJ2
aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiPgor
ICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBh
IGdyZWVuIHJlY3RhbmdsZS48L3A+CisgICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFic29sdXRl
OyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVl
bjsiPgorICAgIDwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA2Lmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1p
ZnJhbWUtMDA2Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzZiYzQ3MDgyMmIxOGNjZWE3MGQxZjg4MDA2Mzgz
ZmU4N2E1NDI1OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5n
L2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDYuaHRtbApAQCAtMCwwICsxLDQxIEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+UHJvZ3JhbW1h
dGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0
IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+CisgICAgPHNj
cmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAg
ICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEFzeW5jRnJhbWVTY3JvbGxpbmdFbmFibGVk
KHRydWUpOworCisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgICAgICAgICAvLyBU
aGlzIGNoZWNrcyBzY3JvbGxpbmcgb3V0c2lkZSB0aGUgbGltaXQgb2YgdGhlIGZyYW1lLgorICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNjcm9sbEJlbG93WExpbWl0IikuY29u
dGVudFdpbmRvdy53aW5kb3cuc2Nyb2xsQnkoLTEwMCwgMCk7CisKKyAgICAgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUo
KTsKKyAgICAgICAgfQorICAgICA8L3NjcmlwdD4KKyAgICA8c3R5bGU+CisgICAgICAgIGlmcmFt
ZSB7CisgICAgICAgICAgICBmbG9hdDogbGVmdDsKKyAgICAgICAgICAgIGJhY2tncm91bmQ6IGxp
bmVhci1ncmFkaWVudCgxMzVkZWcsIHJlZCwgb3JhbmdlKTsKKyAgICAgICAgICAgIGJvcmRlcjog
MDsKKyAgICAgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgICAgICB3aWR0aDogMTAwcHg7
CisgICAgICAgICAgICBvdmVyZmxvdzogbm9uZTsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+Cisg
IDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEg
Z3JlZW4gcmVjdGFuZ2xlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7
IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVu
OyI+CisgICAgICAgIDxpZnJhbWUgaWQ9InNjcm9sbEJlbG93WExpbWl0IiBzY3JvbGxpbmc9Inll
cyIgc3JjZG9jPSIKKyAgICAgICAgICAgIDxib2R5IHN0eWxlPSdtYXJnaW46IDA7IHdpZHRoOiAy
MDBweDsgaGVpZ2h0OiAyMDBweCc+CisgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ncG9zaXRp
b246IGFic29sdXRlOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHg7IGJhY2tncm91bmQ6IGdy
ZWVuOyc+PC9kaXY+CisgICAgICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9InJ1blRlc3QoKSI+Cisg
ICAgICAgIDwvaWZyYW1lPgorICAgIDwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1p
ZnJhbWUtMDA3LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mv
cHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA3LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MzAyYjJhMzM0YTI1OTZhODkxNmIzNjZmNTM3ODIwYzRjMDI1OWNhYgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlm
cmFtZS0wMDctZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+UHJvZ3JhbW1hdGljIHNjcm9sbGluZyBvZiBp
ZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1k
ZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAg
PHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4KKyAg
ICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7
IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+CisgICAgPC9kaXY+CisgIDwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9w
cm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Ny
b2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDcuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4wNGM5NTY3NzRiNzZjYjA0NGNlNmQ5NjdmNDk3ZGFjNzhjMmVmZTU5Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwt
aWZyYW1lLTAwNy5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwv
dGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13
aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAg
ICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQodHJ1ZSk7CisKKyAgICAgICAgZnVuY3Rp
b24gcnVuVGVzdCgpIHsKKyAgICAgICAgICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyBvdXRz
aWRlIHRoZSBsaW1pdCBvZiB0aGUgZnJhbWUuCisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgic2Nyb2xsQWJvdmVYTGltaXQiKS5jb250ZW50V2luZG93LndpbmRvdy5zY3JvbGxC
eSgyMDAsIDApOworCisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgICAgIH0KKyAgICAgPC9zY3Jp
cHQ+CisgICAgPHN0eWxlPgorICAgICAgICBpZnJhbWUgeworICAgICAgICAgICAgZmxvYXQ6IGxl
ZnQ7CisgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZWQs
IG9yYW5nZSk7CisgICAgICAgICAgICBib3JkZXI6IDA7CisgICAgICAgICAgICBoZWlnaHQ6IDEw
MHB4OworICAgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAgb3ZlcmZsb3c6IG5v
bmU7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxw
PlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+CisgICAg
PGRpdiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4OyBo
ZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsiPgorICAgICAgICA8aWZyYW1lIGlkPSJz
Y3JvbGxBYm92ZVhMaW1pdCIgc2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0iCisgICAgICAgICAgICA8
Ym9keSBzdHlsZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHgnPgorICAg
ICAgICAgICAgICAgIDxkaXYgc3R5bGU9J3Bvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDIwMHB4
OyBoZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgorICAgICAgICAgICAg
PC9ib2R5PiIgb25sb2FkPSJydW5UZXN0KCkiPgorICAgICAgICA8L2lmcmFtZT4KKyAgICA8L2Rp
dj4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3Jv
bGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwOC1leHBlY3RlZC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1l
LTAwOC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMwMmIyYTMzNGEyNTk2YTg5MTZiMzY2ZjUz
NzgyMGM0YzAyNTljYWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9s
bGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA4LWV4cGVjdGVkLmh0bWwKQEAg
LTAsMCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgPGhlYWQ+CisgICAgPHRp
dGxlPlByb2dyYW1tYXRpYyBzY3JvbGxpbmcgb2YgaWZyYW1lPC90aXRsZT4KKyAgICA8bWV0YSBu
YW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxl
PTEiPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91
IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+CisgICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFi
c29sdXRlOyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5k
OiBncmVlbjsiPgorICAgIDwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUt
MDA4Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNj
cm9sbC1pZnJhbWUtMDA4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWE3NDcyMGFkZTc3ZmVhZDI5ZDgxYTdl
ZjQ0ZWJkMzA4Yjc1ZTE0NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Ny
b2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDguaHRtbApAQCAtMCwwICsx
LDQ4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+UHJv
Z3JhbW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZp
ZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+Cisg
ICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAg
dGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxz
KQorICAgICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEFzeW5jRnJhbWVTY3JvbGxpbmdF
bmFibGVkKHRydWUpOworCisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgICAgICAg
ICAvLyBUaGlzIGNoZWNrcyBzY3JvbGxpbmcgb3V0c2lkZSB0aGUgbGltaXQgb2YgdGhlIGZyYW1l
LgorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNjcm9sbEJlbG93WUxpbWl0
IikuY29udGVudFdpbmRvdy53aW5kb3cuc2Nyb2xsQnkoMCwgLTEwMCk7CisKKyAgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlm
eURvbmUoKTsKKyAgICAgICAgfQorCisgICAgICAgIHZhciBmcmFtZVRvTG9hZENvdW50ID0gOTsK
KyAgICAgICAgZnVuY3Rpb24gbmV3RnJhbWVMb2FkZWQoKSB7CisgICAgICAgICAgICBmcmFtZVRv
TG9hZENvdW50LS07CisgICAgICAgICAgICBpZiAoZnJhbWVUb0xvYWRDb3VudCA9PSAwKQorICAg
ICAgICAgICAgICAgIHJ1blRlc3QoKTsKKyAgICAgICAgfQorICAgICA8L3NjcmlwdD4KKyAgICA8
c3R5bGU+CisgICAgICAgIGlmcmFtZSB7CisgICAgICAgICAgICBmbG9hdDogbGVmdDsKKyAgICAg
ICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJlZCwgb3JhbmdlKTsK
KyAgICAgICAgICAgIGJvcmRlcjogMDsKKyAgICAgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAg
ICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgICAgICBvdmVyZmxvdzogbm9uZTsKKyAgICAg
ICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0
IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4KKyAgICA8ZGl2IHN0eWxl
PSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAw
cHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+CisgICAgICAgIDxpZnJhbWUgaWQ9InNjcm9sbEJlbG93
WUxpbWl0IiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgICAgIDxib2R5IHN0eWxl
PSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+CisgICAgICAgICAgICAg
ICAgPGRpdiBzdHlsZT0ncG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMjAwcHg7IGhlaWdodDog
MjAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+CisgICAgICAgICAgICA8L2JvZHk+IiBv
bmxvYWQ9InJ1blRlc3QoKSI+CisgICAgICAgIDwvaWZyYW1lPgorICAgIDwvZGl2PgorICA8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mv
cHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA5LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA5LWV4cGVj
dGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMzAyYjJhMzM0YTI1OTZhODkxNmIzNjZmNTM3ODIwYzRjMDI1
OWNhYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9w
cm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDktZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEy
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+UHJvZ3Jh
bW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZpZXdw
b3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+CisgIDwv
aGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3Jl
ZW4gcmVjdGFuZ2xlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHRv
cDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+
CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDkuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFt
ZS0wMDkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYmUxNTA4Mzk3YWMxZjQwMTAzZDRkNGM3ZjhkZGExNzMw
YjM3NTRlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9z
L3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwOS5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMg
c2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNv
bnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0
PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVy
LndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAg
ICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQodHJ1
ZSk7CisKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgICAgIC8vIFRoaXMg
Y2hlY2tzIHNjcm9sbGluZyBvdXRzaWRlIHRoZSBsaW1pdCBvZiB0aGUgZnJhbWUuCisgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Nyb2xsQWJvdmVZTGltaXQiKS5jb250ZW50
V2luZG93LndpbmRvdy5zY3JvbGxCeSgwLCAyMDApOworCisgICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cisg
ICAgICAgIH0KKyAgICAgPC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAgICBpZnJhbWUgewor
ICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXIt
Z3JhZGllbnQoMTM1ZGVnLCByZWQsIG9yYW5nZSk7CisgICAgICAgICAgICBib3JkZXI6IDA7Cisg
ICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAg
ICAgICAgICAgb3ZlcmZsb3c6IG5vbmU7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorICA8L2hl
YWQ+CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVu
IHJlY3RhbmdsZS48L3A+CisgICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyB0b3A6
IDNlbTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsiPgor
ICAgICAgICA8aWZyYW1lIGlkPSJzY3JvbGxBYm92ZVlMaW1pdCIgc2Nyb2xsaW5nPSJ5ZXMiIHNy
Y2RvYz0iCisgICAgICAgICAgICA8Ym9keSBzdHlsZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7
IGhlaWdodDogMjAwcHgnPgorICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9J3Bvc2l0aW9uOiBh
YnNvbHV0ZTsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsn
PjwvZGl2PgorICAgICAgICAgICAgPC9ib2R5PiIgb25sb2FkPSJydW5UZXN0KCkiPgorICAgICAg
ICA8L2lmcmFtZT4KKyAgICA8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1l
LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1h
dGljLXNjcm9sbC1pZnJhbWUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNWVkOWFlMjljZjZkOWEzNDllYjYxNjYzNTJjNTczYjE4NjA2MzY5NS4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Nj
cm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtZXhwZWN0ZWQuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci0gIDxo
ZWFkPgotICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+
Ci0gICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwg
aW5pdGlhbC1zY2FsZT0xIj4KLSAgPC9oZWFkPgotICA8Ym9keT4KLSAgICA8cD5UaGlzIHRlc3Qg
cGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgotICAgIDxkaXYgc3R5bGU9
InBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAzZW07IHdpZHRoOiAzMDBweDsgaGVpZ2h0OiA0MDBw
eDsgYmFja2dyb3VuZDogZ3JlZW47Ij4KLSAgICA8L2Rpdj4KLSAgPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1z
Y3JvbGwtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3Jh
bW1hdGljLXNjcm9sbC1pZnJhbWUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWY4NTgyZjg2OGE4ZDNhM2Y4ZDczMGJjNDUzOGJkZDJlZTFhZjk2OC4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGlu
Zy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDk4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci0gIDxoZWFkPgotICAgIDx0aXRs
ZT5Qcm9ncmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+Ci0gICAgPG1ldGEgbmFt
ZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0x
Ij4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAg
ICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgaWYgKHdpbmRvdy5pbnRl
cm5hbHMpCi0gICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9s
bGluZ0VuYWJsZWQodHJ1ZSk7Ci0KLSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAgICAg
ICAgICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdy
ZWVuIHNxdWFyZS4KLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkb05vdFNj
cm9sbCIpLmNvbnRlbnRXaW5kb3cud2luZG93LnNjcm9sbFRvKDAsIDApOwotICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1heFNjcm9sbFgiKS5jb250ZW50V2luZG93LndpbmRv
dy5zY3JvbGxUbygxMDAsIDApOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
Im1heFNjcm9sbFkiKS5jb250ZW50V2luZG93LndpbmRvdy5zY3JvbGxUbygwLCAxMDApOwotICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1heFNjcm9sbFhZIikuY29udGVudFdp
bmRvdy53aW5kb3cuc2Nyb2xsVG8oMTAwLCAxMDApOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInNjcm9sbE1pZGRsZSIpLmNvbnRlbnRXaW5kb3cud2luZG93LnNjcm9sbFRv
KDUwLCA1MCk7Ci0KLSAgICAgICAgICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyBvdXRzaWRl
IHRoZSBsaW1pdCBvZiB0aGUgZnJhbWUuCi0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgic2Nyb2xsQmVsb3dYTGltaXQiKS5jb250ZW50V2luZG93LndpbmRvdy5zY3JvbGxCeSgt
MTAwLCAwKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzY3JvbGxBYm92
ZVhMaW1pdCIpLmNvbnRlbnRXaW5kb3cud2luZG93LnNjcm9sbEJ5KDIwMCwgMCk7Ci0gICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Nyb2xsQmVsb3dZTGltaXQiKS5jb250ZW50
V2luZG93LndpbmRvdy5zY3JvbGxCeSgwLCAtMTAwKTsKLSAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJzY3JvbGxBYm92ZVlMaW1pdCIpLmNvbnRlbnRXaW5kb3cud2luZG93LnNj
cm9sbEJ5KDAsIDIwMCk7Ci0KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotCi0gICAg
ICAgIHZhciBmcmFtZVRvTG9hZENvdW50ID0gOTsKLSAgICAgICAgZnVuY3Rpb24gbmV3RnJhbWVM
b2FkZWQoKSB7Ci0gICAgICAgICAgICBmcmFtZVRvTG9hZENvdW50LS07Ci0gICAgICAgICAgICBp
ZiAoZnJhbWVUb0xvYWRDb3VudCA9PSAwKQotICAgICAgICAgICAgICAgIHJ1blRlc3QoKTsKLSAg
ICAgICAgfQotICAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGlmcmFtZSB7Ci0g
ICAgICAgICAgICBmbG9hdDogbGVmdDsKLSAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1n
cmFkaWVudCgxMzVkZWcsIHJlZCwgb3JhbmdlKTsKLSAgICAgICAgICAgIGJvcmRlcjogMDsKLSAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAg
ICAgICAgICBvdmVyZmxvdzogbm9uZTsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci0gIDwvaGVh
ZD4KLSAgPGJvZHk+Ci0gICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4g
cmVjdGFuZ2xlLjwvcD4KLSAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDog
M2VtOyB3aWR0aDogMzAwcHg7IGhlaWdodDogNDAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+Ci0g
ICAgICAgIDxpZnJhbWUgaWQ9ImRvTm90U2Nyb2xsIiBzdHlsZT0ibGVmdDogMHB4OyB0b3A6IDBw
eDsiIHNjcm9sbGluZz0ieWVzIiBzcmNkb2M9IgotICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21h
cmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KLSAgICAgICAgICAgICAgICA8
ZGl2IHN0eWxlPSdwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBw
eDsgYmFja2dyb3VuZDogZ3JlZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwvYm9keT4iIG9ubG9h
ZD0ibmV3RnJhbWVMb2FkZWQoKSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAgICAgICA8aWZyYW1l
IGlkPSJtYXhTY3JvbGxYIiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKLSAgICAgICAgICAgIDxi
b2R5IHN0eWxlPSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+Ci0gICAg
ICAgICAgICAgICAgPGRpdiBzdHlsZT0nbGVmdDogMTAwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsg
d2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2Pgot
ICAgICAgICAgICAgPC9ib2R5PiIgb25sb2FkPSJuZXdGcmFtZUxvYWRlZCgpIj4KLSAgICAgICAg
PC9pZnJhbWU+Ci0gICAgICAgIDxpZnJhbWUgaWQ9Im1heFNjcm9sbFkiIHNjcm9sbGluZz0ieWVz
IiBzcmNkb2M9IgotICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIw
MHB4OyBoZWlnaHQ6IDIwMHB4Jz4KLSAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSd0b3A6IDEw
MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFj
a2dyb3VuZDogZ3JlZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0ibmV3
RnJhbWVMb2FkZWQoKSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAgICAgICA8aWZyYW1lIGlkPSJt
YXhTY3JvbGxYWSIgc2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0iCi0gICAgICAgICAgICA8Ym9keSBz
dHlsZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHgnPgotICAgICAgICAg
ICAgICAgIDxkaXYgc3R5bGU9J2xlZnQ6IDEwMHB4OyB0b3A6IDEwMHB4OyBwb3NpdGlvbjogYWJz
b2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47Jz48
L2Rpdj4KLSAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0ibmV3RnJhbWVMb2FkZWQoKSI+Ci0g
ICAgICAgIDwvaWZyYW1lPgotICAgICAgICA8aWZyYW1lIGlkPSJzY3JvbGxNaWRkbGUiIHNjcm9s
bGluZz0ieWVzIiBzcmNkb2M9IgotICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsg
d2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KLSAgICAgICAgICAgICAgICA8ZGl2IHN0eWxl
PSdsZWZ0OiA1MHB4OyB0b3A6IDUwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMHB4
OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgotICAgICAgICAgICAg
PC9ib2R5PiIgb25sb2FkPSJuZXdGcmFtZUxvYWRlZCgpIj4KLSAgICAgICAgPC9pZnJhbWU+Ci0g
ICAgICAgIDxpZnJhbWUgaWQ9InNjcm9sbEJlbG93WExpbWl0IiBzY3JvbGxpbmc9InllcyIgc3Jj
ZG9jPSIKLSAgICAgICAgICAgIDxib2R5IHN0eWxlPSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsg
aGVpZ2h0OiAyMDBweCc+Ci0gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ncG9zaXRpb246IGFi
c29sdXRlOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+
PC9kaXY+Ci0gICAgICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9Im5ld0ZyYW1lTG9hZGVkKCkiPgot
ICAgICAgICA8L2lmcmFtZT4KLSAgICAgICAgPGlmcmFtZSBpZD0ic2Nyb2xsQWJvdmVYTGltaXQi
IHNjcm9sbGluZz0ieWVzIiBzcmNkb2M9IgotICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdp
bjogMDsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KLSAgICAgICAgICAgICAgICA8ZGl2
IHN0eWxlPSdwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweDsg
YmFja2dyb3VuZDogZ3JlZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0i
bmV3RnJhbWVMb2FkZWQoKSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAgICAgICA8aWZyYW1lIGlk
PSJzY3JvbGxCZWxvd1lMaW1pdCIgc2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0iCi0gICAgICAgICAg
ICA8Ym9keSBzdHlsZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHgnPgot
ICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9J3Bvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDIw
MHB4OyBoZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgotICAgICAgICAg
ICAgPC9ib2R5PiIgb25sb2FkPSJuZXdGcmFtZUxvYWRlZCgpIj4KLSAgICAgICAgPC9pZnJhbWU+
Ci0gICAgICAgIDxpZnJhbWUgaWQ9InNjcm9sbEFib3ZlWUxpbWl0IiBzY3JvbGxpbmc9InllcyIg
c3JjZG9jPSIKLSAgICAgICAgICAgIDxib2R5IHN0eWxlPSdtYXJnaW46IDA7IHdpZHRoOiAyMDBw
eDsgaGVpZ2h0OiAyMDBweCc+Ci0gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ncG9zaXRpb246
IGFic29sdXRlOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHg7IGJhY2tncm91bmQ6IGdyZWVu
Oyc+PC9kaXY+Ci0gICAgICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9Im5ld0ZyYW1lTG9hZGVkKCki
PgotICAgICAgICA8L2lmcmFtZT4KLSAgICA8L2Rpdj4KLSAgPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAx
LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlm
cmFtZS0wMDEtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MTM3ZGRhNTBjM2MwMzE4ZWRhMDUw
MjE4ZmI4MzFkN2ZhOTJlMGQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9z
Y3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAxLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwx
OSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbAorICA8aGVhZD4KKyAgICA8dGl0bGU+U2Nyb2xs
aW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPHN0eWxlPgorICAgICAgLnRlc3RkaXYgeworICAg
ICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgIGJhY2tncm91bmQ6IGdyZWVuOworICAgICAg
ICAgIGJvcmRlcjogMDsKKyAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgIHdpZHRo
OiAxMDBweDsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+Cisg
ICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4K
KyAgICA8ZGl2IGNsYXNzPSJ0ZXN0ZGl2Ij48L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAx
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDEu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi45MWM0MDQ4MDFkOWZiNDBlYWFiYjM3ZGExODNjMjEzZjAyYzFjMTYy
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9s
bC1pZnJhbWUtMDAxLmh0bWwKQEAgLTAsMCArMSw1MCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPlNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAg
IDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRp
YWwtc2NhbGU9MSI+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9iYXNpYy1n
ZXN0dXJlcy5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgIHRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOworICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgaW50
ZXJuYWxzLnNldHRpbmdzLnNldEFzeW5jRnJhbWVTY3JvbGxpbmdFbmFibGVkKHRydWUpOworCisg
ICAgICBmdW5jdGlvbiBjZW50ZXJPZihpZCkKKyAgICAgIHsKKyAgICAgICAgICB2YXIgZnJhbWVC
b3ggPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7
CisgICAgICAgICAgcmV0dXJuIHsgeDogZnJhbWVCb3gubGVmdCArIGZyYW1lQm94LndpZHRoIC8g
MiwgeTogZnJhbWVCb3gudG9wICsgZnJhbWVCb3guaGVpZ2h0IC8gMiB9OworICAgICAgfQorCisg
ICAgICBhc3luYyBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgICAgaWYgKCF3aW5kb3cudGVz
dFJ1bm5lciB8fCAhdGVzdFJ1bm5lci5ydW5VSVNjcmlwdCkKKyAgICAgICAgICAgICByZXR1cm47
CisKKyAgICAgICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2Yg
dGhlIGdyZWVuIHNxdWFyZS4KKyAgICAgICAgIHZhciBjID0gY2VudGVyT2YoIm1heFNjcm9sbFgi
KTsKKyAgICAgICAgIGF3YWl0IHRvdWNoQW5kRHJhZ0Zyb21Qb2ludFRvUG9pbnQoYy54LCBjLnks
IGMueCAtIDE1MCwgYy55KTsKKyAgICAgICAgIGF3YWl0IGxpZnRVcEF0UG9pbnQoYy54IC0gMTUw
LCBjLnkpOworCisgICAgICAgICAvLyBXYWl0IGZvciBzY3JvbGxpbmcgdG8gc3RhYmlsaXplIGFu
ZCBmb3Igc2Nyb2xsYmFycyB0byBkaXNhcHBlYXIuCisgICAgICAgICBzZXRUaW1lb3V0KCgpID0+
IHt0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsgfSwgMTAwMCk7CisgICAgICAgfQorICAgIDwvc2Ny
aXB0PgorICAgIDxzdHlsZT4KKyAgICAgICAgaWZyYW1lIHsKKyAgICAgICAgICAgIGZsb2F0OiBs
ZWZ0OworICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmVk
LCBvcmFuZ2UpOworICAgICAgICAgICAgYm9yZGVyOiAwOworICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKKyAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+
CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2Vl
IGEgZ3JlZW4gc3F1YXJlLjwvcD4KKyAgICA8aWZyYW1lIGlkPSJtYXhTY3JvbGxYIiBzY3JvbGxp
bmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6
IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KKyAgICAgICAgICAgIDxkaXYgc3R5bGU9J2xlZnQ6IDEw
MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFj
a2dyb3VuZDogZ3JlZW47Jz48L2Rpdj4KKyAgICAgICAgPC9ib2R5PiIgb25sb2FkPSJydW5UZXN0
KCkiPgorICAgIDwvaWZyYW1lPgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDItZXhwZWN0ZWQuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMi1leHBl
Y3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxMzdkZGE1MGMzYzAzMThlZGEwNTAyMThmYjgzMWQ3ZmE5
MmUwZDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mv
c2Nyb2xsLWlmcmFtZS0wMDItZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDE5IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sCisgIDxoZWFkPgorICAgIDx0aXRsZT5TY3JvbGxpbmcgb2YgaWZyYW1l
PC90aXRsZT4KKyAgICA8c3R5bGU+CisgICAgICAudGVzdGRpdiB7CisgICAgICAgICAgZmxvYXQ6
IGxlZnQ7CisgICAgICAgICAgYmFja2dyb3VuZDogZ3JlZW47CisgICAgICAgICAgYm9yZGVyOiAw
OworICAgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAg
ICAgICB9CisgICAgPC9zdHlsZT4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8cD5UaGlzIHRl
c3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgorICAgIDxkaXYgY2xh
c3M9InRlc3RkaXYiPjwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDIuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMi5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmE1MzJmNmU0ZWMwNTkyMDkxZWQyYjQzZTgyZjM3OGVjOTMyZDg4YWYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDIu
aHRtbApAQCAtMCwwICsxLDUwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4K
KyAgICA8dGl0bGU+U2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0i
dmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4K
KyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2Jhc2ljLWdlc3R1cmVzLmpzIj48
L3NjcmlwdD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
CisgICAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgICBpbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQodHJ1ZSk7CisKKyAgICAgIGZ1bmN0aW9u
IGNlbnRlck9mKGlkKQorICAgICAgeworICAgICAgICAgIHZhciBmcmFtZUJveCA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKGlkKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKKyAgICAgICAgICBy
ZXR1cm4geyB4OiBmcmFtZUJveC5sZWZ0ICsgZnJhbWVCb3gud2lkdGggLyAyLCB5OiBmcmFtZUJv
eC50b3AgKyBmcmFtZUJveC5oZWlnaHQgLyAyIH07CisgICAgICB9CisKKyAgICAgIGFzeW5jIGZ1
bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgICAgICBpZiAoIXdpbmRvdy50ZXN0UnVubmVyIHx8ICF0
ZXN0UnVubmVyLnJ1blVJU2NyaXB0KQorICAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAg
Ly8gVGhpcyBjaGVja3Mgc2Nyb2xsaW5nIHRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgZ3JlZW4gc3F1
YXJlLgorICAgICAgICAgdmFyIGMgPSBjZW50ZXJPZigibWF4U2Nyb2xsWSIpOworICAgICAgICAg
YXdhaXQgdG91Y2hBbmREcmFnRnJvbVBvaW50VG9Qb2ludChjLngsIGMueSwgYy54LCBjLnkgLSAx
NTApOworICAgICAgICAgYXdhaXQgbGlmdFVwQXRQb2ludChjLngsIGMueSAtIDE1MCk7CisgCisg
ICAgICAgICAvLyBXYWl0IGZvciBzY3JvbGxpbmcgdG8gc3RhYmlsaXplIGFuZCBmb3Igc2Nyb2xs
YmFycyB0byBkaXNhcHBlYXIuCisgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHt0ZXN0UnVubmVy
Lm5vdGlmeURvbmUoKTsgfSwgMTAwMCk7CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICAgIDxz
dHlsZT4KKyAgICAgICAgaWZyYW1lIHsKKyAgICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAg
ICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmVkLCBvcmFuZ2UpOwor
ICAgICAgICAgICAgYm9yZGVyOiAwOworICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAg
ICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4K
KyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gc3F1
YXJlLjwvcD4KKyAgICA8aWZyYW1lIGlkPSJtYXhTY3JvbGxZIiBzY3JvbGxpbmc9InllcyIgc3Jj
ZG9jPSIKKyAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWln
aHQ6IDIwMHB4Jz4KKyAgICAgICAgICAgIDxkaXYgc3R5bGU9J3RvcDogMTAwcHg7IHBvc2l0aW9u
OiBhYnNvbHV0ZTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVl
bjsnPjwvZGl2PgorICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgPC9p
ZnJhbWU+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
c2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAzLWV4cGVjdGVkLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNDEzN2RkYTUwYzNjMDMxOGVkYTA1MDIxOGZiODMxZDdmYTkyZTBkOAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1l
LTAwMy1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWwKKyAgPGhlYWQ+CisgICAgPHRpdGxlPlNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAg
IDxzdHlsZT4KKyAgICAgIC50ZXN0ZGl2IHsKKyAgICAgICAgICBmbG9hdDogbGVmdDsKKyAgICAg
ICAgICBiYWNrZ3JvdW5kOiBncmVlbjsKKyAgICAgICAgICBib3JkZXI6IDA7CisgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKKyAgICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIH0KKyAgICA8
L3N0eWxlPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYg
eW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+CisgICAgPGRpdiBjbGFzcz0idGVzdGRpdiI+
PC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
c2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9z
Y3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQxODgxM2Qz
ZWQ4NTE0NjkwMTQwMzdjNzIwZjI1NGIyYTViNDAxZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMy5odG1sCkBAIC0wLDAg
KzEsNTAgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5T
Y3JvbGxpbmcgb2YgaWZyYW1lPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29u
dGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiPgorICAgIDxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvYmFzaWMtZ2VzdHVyZXMuanMiPjwvc2NyaXB0PgorICAg
IDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgIGlmICh3
aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRBc3luY0Zy
YW1lU2Nyb2xsaW5nRW5hYmxlZCh0cnVlKTsKKworICAgICAgZnVuY3Rpb24gY2VudGVyT2YoaWQp
CisgICAgICB7CisgICAgICAgICAgdmFyIGZyYW1lQm94ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoaWQpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOworICAgICAgICAgIHJldHVybiB7IHg6IGZy
YW1lQm94LmxlZnQgKyBmcmFtZUJveC53aWR0aCAvIDIsIHk6IGZyYW1lQm94LnRvcCArIGZyYW1l
Qm94LmhlaWdodCAvIDIgfTsKKyAgICAgIH0KKworICAgICAgYXN5bmMgZnVuY3Rpb24gcnVuVGVz
dCgpIHsKKyAgICAgICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIgfHwgIXRlc3RSdW5uZXIucnVu
VUlTY3JpcHQpCisgICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgICAvLyBUaGlzIGNoZWNr
cyBzY3JvbGxpbmcgdG8gdGhlIGxvY2F0aW9uIG9mIHRoZSBncmVlbiBzcXVhcmUuCisgICAgICAg
ICB2YXIgYyA9IGNlbnRlck9mKCJtYXhTY3JvbGxYWSIpOworICAgICAgICAgYXdhaXQgdG91Y2hB
bmREcmFnRnJvbVBvaW50VG9Qb2ludChjLngsIGMueSwgYy54IC0gMTUwLCBjLnkgLSAxNTApOwor
ICAgICAgICAgYXdhaXQgbGlmdFVwQXRQb2ludChjLnggLSAxNTAsIGMueSAtIDE1MCk7CisKKyAg
ICAgICAgIC8vIFdhaXQgZm9yIHNjcm9sbGluZyB0byBzdGFiaWxpemUgYW5kIGZvciBzY3JvbGxi
YXJzIHRvIGRpc2FwcGVhci4KKyAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge3Rlc3RSdW5uZXIu
bm90aWZ5RG9uZSgpOyB9LCAxMDAwKTsKKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgICAgPHN0
eWxlPgorICAgICAgICBpZnJhbWUgeworICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAg
ICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZWQsIG9yYW5nZSk7Cisg
ICAgICAgICAgICBib3JkZXI6IDA7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAg
ICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICB9CisgICAgPC9zdHlsZT4KKyAgPC9oZWFkPgor
ICA8Ym9keT4KKyAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiBzcXVh
cmUuPC9wPgorICAgIDxpZnJhbWUgaWQ9Im1heFNjcm9sbFhZIiBzY3JvbGxpbmc9InllcyIgc3Jj
ZG9jPSIKKyAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWln
aHQ6IDIwMHB4Jz4KKyAgICAgICAgICAgIDxkaXYgc3R5bGU9J2xlZnQ6IDEwMHB4OyB0b3A6IDEw
MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFj
a2dyb3VuZDogZ3JlZW47Jz48L2Rpdj4KKyAgICAgICAgPC9ib2R5PiIgb25sb2FkPSJydW5UZXN0
KCkiPgorICAgIDwvaWZyYW1lPgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDQtZXhwZWN0ZWQuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwNC1leHBl
Y3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxMzdkZGE1MGMzYzAzMThlZGEwNTAyMThmYjgzMWQ3ZmE5
MmUwZDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mv
c2Nyb2xsLWlmcmFtZS0wMDQtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDE5IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sCisgIDxoZWFkPgorICAgIDx0aXRsZT5TY3JvbGxpbmcgb2YgaWZyYW1l
PC90aXRsZT4KKyAgICA8c3R5bGU+CisgICAgICAudGVzdGRpdiB7CisgICAgICAgICAgZmxvYXQ6
IGxlZnQ7CisgICAgICAgICAgYmFja2dyb3VuZDogZ3JlZW47CisgICAgICAgICAgYm9yZGVyOiAw
OworICAgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAg
ICAgICB9CisgICAgPC9zdHlsZT4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8cD5UaGlzIHRl
c3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgorICAgIDxkaXYgY2xh
c3M9InRlc3RkaXYiPjwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwNC5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjRhNjhlZWFjMTBlNmRjZTM5ZDZhNDFmOWM0OGE4Yjg2YzIyMTM5YjgKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDQu
aHRtbApAQCAtMCwwICsxLDU0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4K
KyAgICA8dGl0bGU+U2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0i
dmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4K
KyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2Jhc2ljLWdlc3R1cmVzLmpzIj48
L3NjcmlwdD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
CisgICAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgICBpbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQodHJ1ZSk7CisKKyAgICAgIGZ1bmN0aW9u
IGNlbnRlck9mKGlkKQorICAgICAgeworICAgICAgICAgIHZhciBmcmFtZUJveCA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKGlkKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKKyAgICAgICAgICBy
ZXR1cm4geyB4OiBmcmFtZUJveC5sZWZ0ICsgZnJhbWVCb3gud2lkdGggLyAyLCB5OiBmcmFtZUJv
eC50b3AgKyBmcmFtZUJveC5oZWlnaHQgLyAyIH07CisgICAgICB9CisKKyAgICAgIGFzeW5jIGZ1
bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgICAgICBpZiAoIXdpbmRvdy50ZXN0UnVubmVyIHx8ICF0
ZXN0UnVubmVyLnJ1blVJU2NyaXB0KQorICAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAg
Ly8gVGhpcyBjaGVja3Mgc2Nyb2xsaW5nIHRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgZ3JlZW4gc3F1
YXJlLgorICAgICAgICAgdmFyIGMgPSBjZW50ZXJPZigibGFyZ2VDb250ZW50Iik7CisgICAgICAg
ICBhd2FpdCB0b3VjaEFuZERyYWdGcm9tUG9pbnRUb1BvaW50KGMueCwgYy55LCBjLngsIGMueSAt
IDIwMDApOworICAgICAgICAgYXdhaXQgbGlmdFVwQXRQb2ludChjLngsIGMueSAtIDIwMDApOwor
CisgICAgICAgICAvLyBXYWl0IGZvciBzY3JvbGxpbmcgdG8gc3RhYmlsaXplIGFuZCBmb3Igc2Ny
b2xsYmFycyB0byBkaXNhcHBlYXIuCisgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHt0ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsgfSwgMjAwMCk7CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICAg
IDxzdHlsZT4KKyAgICAgICAgaWZyYW1lIHsKKyAgICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAg
ICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmVkLCBvcmFuZ2Up
OworICAgICAgICAgICAgYm9yZGVyOiAwOworICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAg
ICAgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVh
ZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4g
c3F1YXJlLjwvcD4KKyAgICA8aWZyYW1lIGlkPSJsYXJnZUNvbnRlbnQiIHNjcm9sbGluZz0ieWVz
IiBzcmNkb2M9IgorICAgICAgICA8Ym9keSBzdHlsZT0nbWFyZ2luOiAwOyc+CisgICAgICAgIDxk
aXYgc3R5bGU9J3dpZHRoOiAxMDBweDsgaGVpZ2h0OiA1MDBweDsgYmFja2dyb3VuZDogcmVkOyc+
PC9kaXY+CisgICAgICAgIDxkaXYgc3R5bGU9J3dpZHRoOiAxMDBweDsgaGVpZ2h0OiA1MDBweDsg
YmFja2dyb3VuZDogYmx1ZTsnPjwvZGl2PgorICAgICAgICA8ZGl2IHN0eWxlPSd3aWR0aDogMTAw
cHg7IGhlaWdodDogNTAwcHg7IGJhY2tncm91bmQ6IHJlZDsnPjwvZGl2PgorICAgICAgICA8ZGl2
IHN0eWxlPSd3aWR0aDogMTAwcHg7IGhlaWdodDogNTAwcHg7IGJhY2tncm91bmQ6IGJsdWU7Jz48
L2Rpdj4KKyAgICAgICAgPGRpdiBzdHlsZT0nd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDUwMHB4OyBi
YWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgorICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9InJ1blRl
c3QoKSI+CisgICAgPC9pZnJhbWU+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLWV4cGVjdGVkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkN2Y2NDZhM2Y1MzYyY2Y0ZGU4YzFj
MTRlNTEyYzcyNGE2OTExOGQ5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyNCArMCwwIEBACi08IURPQ1RZUEUgaHRt
bD4KLTxodG1sCi0gIDxoZWFkPgotICAgIDx0aXRsZT5TY3JvbGxpbmcgb2YgaWZyYW1lPC90aXRs
ZT4KLSAgICA8c3R5bGU+Ci0gICAgICAgIC50ZXN0ZGl2IHsKLSAgICAgICAgICAgIGZsb2F0OiBs
ZWZ0OwotICAgICAgICAgICAgYmFja2dyb3VuZDogZ3JlZW47Ci0gICAgICAgICAgICBib3JkZXI6
IDA7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLSAgPC9oZWFkPgotICA8Ym9keT4KLSAgICA8cD5U
aGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgotICAgIDxk
aXYgc3R5bGU9IndpZHRoOjMwMHB4Ij4KLSAgICAgICAgPGRpdiBjbGFzcz10ZXN0ZGl2PjwvZGl2
PgotICAgICAgICA8ZGl2IGNsYXNzPXRlc3RkaXY+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9
dGVzdGRpdj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz10ZXN0ZGl2PjwvZGl2PgotICAgIDwv
ZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3Jv
bGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5n
L2lvcy9zY3JvbGwtaWZyYW1lLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNi
MWUzM2NkNjczOTE5YTgwY2VhYmNlZTNlOTU2ZGFiNWNjZTA0OTkuLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcv
aW9zL3Njcm9sbC1pZnJhbWUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDkwICswLDAgQEAKLTwh
RE9DVFlQRSBodG1sPgotPGh0bWw+Ci0gIDxoZWFkPgotICAgIDx0aXRsZT5TY3JvbGxpbmcgb2Yg
aWZyYW1lPC90aXRsZT4KLSAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9
ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiPgotICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9yZXNvdXJjZXMvYmFzaWMtZ2VzdHVyZXMuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAg
ICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIGlmICh3aW5kb3cu
aW50ZXJuYWxzKQotICAgICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEFzeW5jRnJhbWVT
Y3JvbGxpbmdFbmFibGVkKHRydWUpOwotCi0gICAgICBmdW5jdGlvbiBjZW50ZXJPZihpZCkKLSAg
ICAgIHsKLSAgICAgICAgICB2YXIgZnJhbWVCb3ggPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChp
ZCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7Ci0gICAgICAgICAgcmV0dXJuIHsgeDogZnJhbWVC
b3gubGVmdCArIGZyYW1lQm94LndpZHRoIC8gMiwgeTogZnJhbWVCb3gudG9wICsgZnJhbWVCb3gu
aGVpZ2h0IC8gMiB9OwotICAgICAgfQotCi0gICAgICBhc3luYyBmdW5jdGlvbiBydW5UZXN0KCkg
ewotICAgICAgICAgaWYgKCF3aW5kb3cudGVzdFJ1bm5lciB8fCAhdGVzdFJ1bm5lci5ydW5VSVNj
cmlwdCkKLSAgICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgIC8vIFRoaXMgY2hlY2tzIHNj
cm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVuIHNxdWFyZS4KLSAgICAgICAgIHZh
ciBjID0gY2VudGVyT2YoIm1heFNjcm9sbFgiKTsKLSAgICAgICAgIGF3YWl0IHRvdWNoQW5kRHJh
Z0Zyb21Qb2ludFRvUG9pbnQoYy54LCBjLnksIGMueCAtIDE1MCwgYy55KTsKLSAgICAgICAgIGF3
YWl0IGxpZnRVcEF0UG9pbnQoYy54IC0gMTUwLCBjLnkpOwotCi0gICAgICAgICBjID0gY2VudGVy
T2YoIm1heFNjcm9sbFkiKTsKLSAgICAgICAgIGF3YWl0IHRvdWNoQW5kRHJhZ0Zyb21Qb2ludFRv
UG9pbnQoYy54LCBjLnksIGMueCwgYy55IC0gMTUwKTsKLSAgICAgICAgIGF3YWl0IGxpZnRVcEF0
UG9pbnQoYy54LCBjLnkgLSAxNTApOwotICAgICAgICAgCi0gICAgICAgICBjID0gY2VudGVyT2Yo
Im1heFNjcm9sbFhZIik7Ci0gICAgICAgICBhd2FpdCB0b3VjaEFuZERyYWdGcm9tUG9pbnRUb1Bv
aW50KGMueCwgYy55LCBjLnggLSAxNTAsIGMueSAtIDE1MCk7Ci0gICAgICAgICBhd2FpdCBsaWZ0
VXBBdFBvaW50KGMueCAtIDE1MCwgYy55IC0gMTUwKTsKLQotICAgICAgICAgYyA9IGNlbnRlck9m
KCJsYXJnZUNvbnRlbnQiKTsKLSAgICAgICAgIGF3YWl0IHRvdWNoQW5kRHJhZ0Zyb21Qb2ludFRv
UG9pbnQoYy54LCBjLnksIGMueCwgYy55IC0gMjAwMCk7Ci0gICAgICAgICBhd2FpdCBsaWZ0VXBB
dFBvaW50KGMueCwgYy55IC0gMjAwMCk7Ci0KLSAgICAgICAgIC8vIFdhaXQgZm9yIHNjcm9sbGlu
ZyB0byBzdGFiaWxpemUgYW5kIGZvciBzY3JvbGxiYXJzIHRvIGRpc2FwcGVhci4KLSAgICAgICAg
IHNldFRpbWVvdXQoKCkgPT4ge3Rlc3RSdW5uZXIubm90aWZ5RG9uZSgpOyB9LCAyMDAwKTsKLSAg
ICAgICB9Ci0KLSAgICAgICB2YXIgZnJhbWVUb0xvYWRDb3VudCA9IDQ7Ci0gICAgICAgZnVuY3Rp
b24gbmV3RnJhbWVMb2FkZWQoKSB7Ci0gICAgICAgICAgIGZyYW1lVG9Mb2FkQ291bnQtLTsKLSAg
ICAgICAgICAgaWYgKGZyYW1lVG9Mb2FkQ291bnQgPT0gMCkKLSAgICAgICAgICAgICAgIHJ1blRl
c3QoKTsKLSAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICBpZnJh
bWUgewotICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiBs
aW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZWQsIG9yYW5nZSk7Ci0gICAgICAgICAgICBib3JkZXI6
IDA7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLSAgPC9oZWFkPgotICA8Ym9keT4KLSAgICA8cD5U
aGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgotICAgIDxk
aXYgc3R5bGU9IndpZHRoOjMwMHB4Ij4KLSAgICAgICAgPGlmcmFtZSBpZD0ibWF4U2Nyb2xsWCIg
c2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0iCi0gICAgICAgICAgICA8Ym9keSBzdHlsZT0nbWFyZ2lu
OiAwOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHgnPgotICAgICAgICAgICAgICAgIDxkaXYg
c3R5bGU9J2xlZnQ6IDEwMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVp
Z2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwvYm9k
eT4iIG9ubG9hZD0ibmV3RnJhbWVMb2FkZWQoKSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAgICAg
ICA8aWZyYW1lIGlkPSJtYXhTY3JvbGxZIiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKLSAgICAg
ICAgICAgIDxib2R5IHN0eWxlPSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBw
eCc+Ci0gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ndG9wOiAxMDBweDsgcG9zaXRpb246IGFi
c29sdXRlOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+
PC9kaXY+Ci0gICAgICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9Im5ld0ZyYW1lTG9hZGVkKCkiPgot
ICAgICAgICA8L2lmcmFtZT4KLSAgICAgICAgPGlmcmFtZSBpZD0ibWF4U2Nyb2xsWFkiIHNjcm9s
bGluZz0ieWVzIiBzcmNkb2M9IgotICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsg
d2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KLSAgICAgICAgICAgICAgICA8ZGl2IHN0eWxl
PSdsZWZ0OiAxMDBweDsgdG9wOiAxMDBweDsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAw
cHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+Ci0gICAgICAgICAg
ICA8L2JvZHk+IiBvbmxvYWQ9Im5ld0ZyYW1lTG9hZGVkKCkiPgotICAgICAgICA8L2lmcmFtZT4K
LSAgICAgICAgPGlmcmFtZSBpZD0ibGFyZ2VDb250ZW50IiBzY3JvbGxpbmc9InllcyIgc3JjZG9j
PSIKLSAgICAgICAgICAgIDxib2R5IHN0eWxlPSdtYXJnaW46IDA7Jz4KLSAgICAgICAgICAgIDxk
aXYgc3R5bGU9J3dpZHRoOiAxMDBweDsgaGVpZ2h0OiA1MDBweDsgYmFja2dyb3VuZDogcmVkOyc+
PC9kaXY+Ci0gICAgICAgICAgICA8ZGl2IHN0eWxlPSd3aWR0aDogMTAwcHg7IGhlaWdodDogNTAw
cHg7IGJhY2tncm91bmQ6IGJsdWU7Jz48L2Rpdj4KLSAgICAgICAgICAgIDxkaXYgc3R5bGU9J3dp
ZHRoOiAxMDBweDsgaGVpZ2h0OiA1MDBweDsgYmFja2dyb3VuZDogcmVkOyc+PC9kaXY+Ci0gICAg
ICAgICAgICA8ZGl2IHN0eWxlPSd3aWR0aDogMTAwcHg7IGhlaWdodDogNTAwcHg7IGJhY2tncm91
bmQ6IGJsdWU7Jz48L2Rpdj4KLSAgICAgICAgICAgIDxkaXYgc3R5bGU9J3dpZHRoOiAxMDBweDsg
aGVpZ2h0OiA1MDBweDsgYmFja2dyb3VuZDogZ3JlZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwv
Ym9keT4iIG9ubG9hZD0ibmV3RnJhbWVMb2FkZWQoKSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAg
IDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>362989</attachid>
            <date>2019-02-26 08:45:35 -0800</date>
            <delta_ts>2019-02-26 10:14:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195050-20190226174533.patch</filename>
            <type>text/plain</type>
            <size>49022</size>
            <attacher name="Frédéric Wang (:fredw)">fred.wang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyMDg1CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNDg1MjE2MTg3NjZlN2M0MzU1N2Y5
YzE0MzRlM2RjODBkNWExMTQ4OS4uODY5YWY3ODVmOWI1ZTczYzVlZmM3NGY1ZWZhMGFmMDg3OGRl
ZjcxNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE5LTAyLTI2ICBGcmVkZXJpYyBXYW5nICA8
ZndhbmdAaWdhbGlhLmNvbT4KKworICAgICAgICBTcGxpdCB0ZXN0cyBwcm9ncmFtbWF0aWMtc2Ny
b2xsLWlmcmFtZSBhbmQgc2Nyb2xsLWlmcmFtZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MDUwCisKKyAgICAgICAgVGhpcyBwYXRjaCBzcGxpdHMg
c29tZSBpT1MgZnJhbWUgc2Nyb2xsaW5nIHRlc3RzIGludG8gc2VwYXJhdGUgdGVzdHMgaW4gb3Jk
ZXIgdG8gbWFrZSBkZWJ1Z2dpbmcKKyAgICAgICAgYW5kIHRlc3QgZXhwZWN0YXRpb25zIGVhc2ll
ciB0byBtYW5hZ2UuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBmYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAx
LWV4cGVjdGVkLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lv
cy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5odG1sLgorICAgICAgICAqIGZh
c3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDEuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZy
YW1lLTAwMi1leHBlY3RlZC5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Njcm9s
bGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtZXhwZWN0ZWQuaHRtbC4KKyAgICAg
ICAgKiBmYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAyLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Ny
b2xsLWlmcmFtZS0wMDMtZXhwZWN0ZWQuaHRtbDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvZmFz
dC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLWV4cGVjdGVkLmh0bWwu
CisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1l
LTAwMy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1h
dGljLXNjcm9sbC1pZnJhbWUtMDA0LWV4cGVjdGVkLmh0bWw6IENvcGllZCBmcm9tIExheW91dFRl
c3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS1leHBlY3Rl
ZC5odG1sLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xs
LWlmcmFtZS0wMDQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3By
b2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNS1leHBlY3RlZC5odG1sOiBDb3BpZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUt
ZXhwZWN0ZWQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGlj
LXNjcm9sbC1pZnJhbWUtMDA1Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5n
L2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDYtZXhwZWN0ZWQuaHRtbDogQ29waWVk
IGZyb20gTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwt
aWZyYW1lLWV4cGVjdGVkLmh0bWwuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dy
YW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Nj
cm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA3LWV4cGVjdGVkLmh0bWw6
IENvcGllZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMt
c2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5odG1sLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lv
cy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDcuaHRtbDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwOC1leHBlY3Rl
ZC5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3Jh
bW1hdGljLXNjcm9sbC1pZnJhbWUtZXhwZWN0ZWQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3Njcm9s
bGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA4Lmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDkt
ZXhwZWN0ZWQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lv
cy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5odG1sLgorICAgICAgICAqIGZh
c3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDkuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZy
YW1lLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1p
ZnJhbWUtMDAxLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5n
L2lvcy9zY3JvbGwtaWZyYW1lLTAwMS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Njcm9s
bGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDItZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAyLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMy1leHBlY3RlZC5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDMu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUt
MDA0LWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2Nyb2xsaW5nL2lvcy9z
Y3JvbGwtaWZyYW1lLTAwNC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9p
b3Mvc2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGZhc3Qv
c2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLmh0bWw6IFJlbW92ZWQuCisKIDIwMTktMDItMjYg
IEZyZWRlcmljIFdhbmcgIDxmd2FuZ0BpZ2FsaWEuY29tPgogCiAgICAgICAgIEV4cG9ydCBNYXRo
TUwgZnJhY3Rpb24gdGVzdHMgdG8gV1BUCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Nj
cm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAxLWV4cGVjdGVkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJh
bWUtMDAxLWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWI4NmYwYTczOGFmZTlmNzk0OTZkYjE0
NTU4NTA4ZWRkOTAxZTJlZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Ny
b2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDEtZXhwZWN0ZWQuaHRtbApA
QCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8
dGl0bGU+UHJvZ3JhbW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRh
IG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2Nh
bGU9MSI+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5
b3Ugc2VlIGEgZ3JlZW4gc3F1YXJlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJz
b2x1dGU7IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6
IGdyZWVuOyI+CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0w
MDEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Ny
b2xsLWlmcmFtZS0wMDEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNTg3NjIwYTg0ZGM2MWI1OTJiZTExOWI0
OWYyYjYxOTAzMTcwZGUyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3Jv
bGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwMS5odG1sCkBAIC0wLDAgKzEs
NDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9n
cmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmll
d3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAg
ICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMp
CisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0Vu
YWJsZWQodHJ1ZSk7CisKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgICAg
IC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVuIHNx
dWFyZS4KKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkb05vdFNjcm9sbCIp
LmNvbnRlbnRXaW5kb3cud2luZG93LnNjcm9sbFRvKDAsIDApOworCisgICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25l
KCk7CisgICAgICAgIH0KKyAgICAgPC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAgICBpZnJh
bWUgeworICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICBiYWNrZ3JvdW5kOiBs
aW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZWQsIG9yYW5nZSk7CisgICAgICAgICAgICBib3JkZXI6
IDA7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OworICAgICAgICAgICAgb3ZlcmZsb3c6IG5vbmU7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgor
ICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBh
IGdyZWVuIHNxdWFyZS48L3A+CisgICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyB0
b3A6IDNlbTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsi
PgorICAgICAgICA8aWZyYW1lIGlkPSJkb05vdFNjcm9sbCIgc3R5bGU9ImxlZnQ6IDBweDsgdG9w
OiAwcHg7IiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgICAgIDxib2R5IHN0eWxl
PSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+CisgICAgICAgICAgICAg
ICAgPGRpdiBzdHlsZT0ncG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwcHg7IGhlaWdodDog
MTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+CisgICAgICAgICAgICA8L2JvZHk+IiBv
bmxvYWQ9InJ1blRlc3QoKSI+CisgICAgICAgIDwvaWZyYW1lPgorICAgIDwvZGl2PgorICA8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mv
cHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAyLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAyLWV4cGVj
dGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOWI4NmYwYTczOGFmZTlmNzk0OTZkYjE0NTU4NTA4ZWRkOTAx
ZTJlZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9w
cm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDItZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEy
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+UHJvZ3Jh
bW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZpZXdw
b3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+CisgIDwv
aGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3Jl
ZW4gc3F1YXJlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDog
M2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+Cisg
ICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDIuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0w
MDIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi41ZDIwOGNlMDhkMDJjYjNmODY0MDc2MjQ1Y2JiM2ZjMDY5NmQ3
N2UxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3By
b2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwMi5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMgc2Ny
b2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRl
bnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0Pgor
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndh
aXRVbnRpbERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAg
ICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQodHJ1ZSk7
CisKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgICAgIC8vIFRoaXMgY2hl
Y2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVuIHNxdWFyZS4KKyAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYXhTY3JvbGxYIikuY29udGVudFdpbmRv
dy53aW5kb3cuc2Nyb2xsVG8oMTAwLCAwKTsKKworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgICAg
ICB9CisgICAgIDwvc2NyaXB0PgorICAgIDxzdHlsZT4KKyAgICAgICAgaWZyYW1lIHsKKyAgICAg
ICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRp
ZW50KDEzNWRlZywgcmVkLCBvcmFuZ2UpOworICAgICAgICAgICAgYm9yZGVyOiAwOworICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAg
ICAgIG92ZXJmbG93OiBub25lOworICAgICAgICB9CisgICAgPC9zdHlsZT4KKyAgPC9oZWFkPgor
ICA8Ym9keT4KKyAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiBzcXVh
cmUuPC9wPgorICAgIDxkaXYgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAzZW07IHdp
ZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47Ij4KKyAgICAgICAg
PGlmcmFtZSBpZD0ibWF4U2Nyb2xsWCIgc2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0iCisgICAgICAg
ICAgICA8Ym9keSBzdHlsZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHgn
PgorICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9J2xlZnQ6IDEwMHB4OyBwb3NpdGlvbjogYWJz
b2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47Jz48
L2Rpdj4KKyAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0icnVuVGVzdCgpIj4KKyAgICAgICAg
PC9pZnJhbWU+CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0w
MDMtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFt
bWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDMtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45Yjg2ZjBh
NzM4YWZlOWY3OTQ5NmRiMTQ1NTg1MDhlZGQ5MDFlMmVkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAw
My1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwv
dGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13
aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8cD5UaGlz
IHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiBzcXVhcmUuPC9wPgorICAgIDxkaXYgc3R5
bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAzZW07IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAx
MDBweDsgYmFja2dyb3VuZDogZ3JlZW47Ij4KKyAgICA8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRp
Yy1zY3JvbGwtaWZyYW1lLTAwMy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9z
L3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwMy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU1MTBmNTY0
NmFiNWFmYzE3YTY2MTIyZjlmMzNmMDdlOWM0YmJlMmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDAz
Lmh0bWwKQEAgLTAsMCArMSw0MSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgPGhlYWQ+
CisgICAgPHRpdGxlPlByb2dyYW1tYXRpYyBzY3JvbGxpbmcgb2YgaWZyYW1lPC90aXRsZT4KKyAg
ICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0
aWFsLXNjYWxlPTEiPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICBpZiAo
d2luZG93LmludGVybmFscykKKyAgICAgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRBc3lu
Y0ZyYW1lU2Nyb2xsaW5nRW5hYmxlZCh0cnVlKTsKKworICAgICAgICBmdW5jdGlvbiBydW5UZXN0
KCkgeworICAgICAgICAgICAgLy8gVGhpcyBjaGVja3Mgc2Nyb2xsaW5nIHRvIHRoZSBsb2NhdGlv
biBvZiB0aGUgZ3JlZW4gc3F1YXJlLgorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoIm1heFNjcm9sbFkiKS5jb250ZW50V2luZG93LndpbmRvdy5zY3JvbGxUbygwLCAxMDApOwor
CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgICAgIH0KKyAgICAgPC9zY3JpcHQ+CisgICAgPHN0
eWxlPgorICAgICAgICBpZnJhbWUgeworICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAg
ICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZWQsIG9yYW5nZSk7Cisg
ICAgICAgICAgICBib3JkZXI6IDA7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAg
ICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAgb3ZlcmZsb3c6IG5vbmU7CisgICAgICAg
IH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBw
YXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHNxdWFyZS48L3A+CisgICAgPGRpdiBzdHlsZT0icG9z
aXRpb246IGFic29sdXRlOyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBi
YWNrZ3JvdW5kOiBncmVlbjsiPgorICAgICAgICA8aWZyYW1lIGlkPSJtYXhTY3JvbGxZIiBzY3Jv
bGxpbmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgICAgIDxib2R5IHN0eWxlPSdtYXJnaW46IDA7
IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+CisgICAgICAgICAgICAgICAgPGRpdiBzdHls
ZT0ndG9wOiAxMDBweDsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwcHg7IGhlaWdodDog
MTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+CisgICAgICAgICAgICA8L2JvZHk+IiBv
bmxvYWQ9InJ1blRlc3QoKSI+CisgICAgICAgIDwvaWZyYW1lPgorICAgIDwvZGl2PgorICA8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mv
cHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA0LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA0LWV4cGVj
dGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOWI4NmYwYTczOGFmZTlmNzk0OTZkYjE0NTU4NTA4ZWRkOTAx
ZTJlZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9w
cm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDQtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEy
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+UHJvZ3Jh
bW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZpZXdw
b3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+CisgIDwv
aGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3Jl
ZW4gc3F1YXJlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDog
M2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+Cisg
ICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDQuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0w
MDQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi40MzExOTVhYWM2N2M4OGIzMWIyZDBmYjVlOGRjODQzY2Y5N2Ux
YzI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3By
b2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNC5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMgc2Ny
b2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRl
bnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0Pgor
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndh
aXRVbnRpbERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAg
ICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQodHJ1ZSk7
CisKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgICAgIC8vIFRoaXMgY2hl
Y2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVuIHNxdWFyZS4KKyAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYXhTY3JvbGxYWSIpLmNvbnRlbnRXaW5k
b3cud2luZG93LnNjcm9sbFRvKDEwMCwgMTAwKTsKKworICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAg
ICAgICB9CisgICAgIDwvc2NyaXB0PgorICAgIDxzdHlsZT4KKyAgICAgICAgaWZyYW1lIHsKKyAg
ICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdy
YWRpZW50KDEzNWRlZywgcmVkLCBvcmFuZ2UpOworICAgICAgICAgICAgYm9yZGVyOiAwOworICAg
ICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAg
ICAgICAgIG92ZXJmbG93OiBub25lOworICAgICAgICB9CisgICAgPC9zdHlsZT4KKyAgPC9oZWFk
PgorICA8Ym9keT4KKyAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiBz
cXVhcmUuPC9wPgorICAgIDxkaXYgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAzZW07
IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47Ij4KKyAgICAg
ICAgPGlmcmFtZSBpZD0ibWF4U2Nyb2xsWFkiIHNjcm9sbGluZz0ieWVzIiBzcmNkb2M9IgorICAg
ICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIw
MHB4Jz4KKyAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSdsZWZ0OiAxMDBweDsgdG9wOiAxMDBw
eDsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tn
cm91bmQ6IGdyZWVuOyc+PC9kaXY+CisgICAgICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9InJ1blRl
c3QoKSI+CisgICAgICAgIDwvaWZyYW1lPgorICAgIDwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGlj
LXNjcm9sbC1pZnJhbWUtMDA1LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9s
bGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA1LWV4cGVjdGVkLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOWI4NmYwYTczOGFmZTlmNzk0OTZkYjE0NTU4NTA4ZWRkOTAxZTJlZAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMt
c2Nyb2xsLWlmcmFtZS0wMDUtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+UHJvZ3JhbW1hdGljIHNjcm9s
bGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50
PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+CisgIDwvaGVhZD4KKyAgPGJv
ZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gc3F1YXJlLjwv
cD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogM2VtOyB3aWR0aDog
MTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+CisgICAgPC9kaXY+Cisg
IDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5n
L2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDUuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDUuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iYjVhMmE0MDdlYjA5NmFlMWNmNDA0NWUxYzU1ZDU1YmRjY2I3YmQ1Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1z
Y3JvbGwtaWZyYW1lLTAwNS5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlm
cmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRl
dmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUo
KTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgICBpbnRlcm5hbHMu
c2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQodHJ1ZSk7CisKKyAgICAgICAg
ZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGlu
ZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVuIHNxdWFyZS4KKyAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJzY3JvbGxNaWRkbGUiKS5jb250ZW50V2luZG93LndpbmRvdy5z
Y3JvbGxUbyg1MCwgNTApOworCisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgICAgIH0KKyAgICAg
PC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAgICBpZnJhbWUgeworICAgICAgICAgICAgZmxv
YXQ6IGxlZnQ7CisgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVn
LCByZWQsIG9yYW5nZSk7CisgICAgICAgICAgICBib3JkZXI6IDA7CisgICAgICAgICAgICBoZWln
aHQ6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAgb3ZlcmZs
b3c6IG5vbmU7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+CisgIDxib2R5Pgor
ICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHNxdWFyZS48L3A+Cisg
ICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4
OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsiPgorICAgICAgICA8aWZyYW1lIGlk
PSJzY3JvbGxNaWRkbGUiIHNjcm9sbGluZz0ieWVzIiBzcmNkb2M9IgorICAgICAgICAgICAgPGJv
ZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KKyAgICAg
ICAgICAgICAgICA8ZGl2IHN0eWxlPSdsZWZ0OiA1MHB4OyB0b3A6IDUwcHg7IHBvc2l0aW9uOiBh
YnNvbHV0ZTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsn
PjwvZGl2PgorICAgICAgICAgICAgPC9ib2R5PiIgb25sb2FkPSJydW5UZXN0KCkiPgorICAgICAg
ICA8L2lmcmFtZT4KKyAgICA8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1l
LTAwNi1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dy
YW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNi1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjliODZm
MGE3MzhhZmU5Zjc5NDk2ZGIxNDU1ODUwOGVkZDkwMWUyZWQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUt
MDA2LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPlByb2dyYW1tYXRpYyBzY3JvbGxpbmcgb2YgaWZyYW1l
PC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNl
LXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPlRo
aXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHNxdWFyZS48L3A+CisgICAgPGRpdiBz
dHlsZT0icG9zaXRpb246IGFic29sdXRlOyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6
IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsiPgorICAgIDwvZGl2PgorICA8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1h
dGljLXNjcm9sbC1pZnJhbWUtMDA2Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9p
b3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA2Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDZlNjc0
NzY4ZjQ3ZWNiZjNlOTMzOTA2ZTY0NjUyMjFlN2RkZmY5ZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0w
MDYuaHRtbApAQCAtMCwwICsxLDQxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVh
ZD4KKyAgICA8dGl0bGU+UHJvZ3JhbW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgor
ICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGlu
aXRpYWwtc2NhbGU9MSI+CisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICAgIGlm
ICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEFz
eW5jRnJhbWVTY3JvbGxpbmdFbmFibGVkKHRydWUpOworCisgICAgICAgIGZ1bmN0aW9uIHJ1blRl
c3QoKSB7CisgICAgICAgICAgICAvLyBUaGlzIGNoZWNrcyBzY3JvbGxpbmcgb3V0c2lkZSB0aGUg
bGltaXQgb2YgdGhlIGZyYW1lLgorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InNjcm9sbEJlbG93WExpbWl0IikuY29udGVudFdpbmRvdy53aW5kb3cuc2Nyb2xsQnkoLTEwMCwg
MCk7CisKKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAg
ICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfQorICAgICA8L3NjcmlwdD4KKyAg
ICA8c3R5bGU+CisgICAgICAgIGlmcmFtZSB7CisgICAgICAgICAgICBmbG9hdDogbGVmdDsKKyAg
ICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJlZCwgb3Jhbmdl
KTsKKyAgICAgICAgICAgIGJvcmRlcjogMDsKKyAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Cisg
ICAgICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgICAgICBvdmVyZmxvdzogbm9uZTsKKyAg
ICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0
ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gc3F1YXJlLjwvcD4KKyAgICA8ZGl2IHN0eWxl
PSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAw
cHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+CisgICAgICAgIDxpZnJhbWUgaWQ9InNjcm9sbEJlbG93
WExpbWl0IiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgICAgIDxib2R5IHN0eWxl
PSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+CisgICAgICAgICAgICAg
ICAgPGRpdiBzdHlsZT0ncG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMjAwcHg7IGhlaWdodDog
MjAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+CisgICAgICAgICAgICA8L2JvZHk+IiBv
bmxvYWQ9InJ1blRlc3QoKSI+CisgICAgICAgIDwvaWZyYW1lPgorICAgIDwvZGl2PgorICA8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mv
cHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA3LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA3LWV4cGVj
dGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOWI4NmYwYTczOGFmZTlmNzk0OTZkYjE0NTU4NTA4ZWRkOTAx
ZTJlZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9w
cm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDctZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEy
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+UHJvZ3Jh
bW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZpZXdw
b3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+CisgIDwv
aGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3Jl
ZW4gc3F1YXJlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDog
M2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+Cisg
ICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDcuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0w
MDcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4xYmUzOGYwYTY4NTM4N2FkMDQyMTE4MTQ3NTllMTY3MDBhMjVi
ZWU3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3By
b2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwNy5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMgc2Ny
b2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRl
bnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0Pgor
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndh
aXRVbnRpbERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAg
ICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQodHJ1ZSk7
CisKKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgICAgIC8vIFRoaXMgY2hl
Y2tzIHNjcm9sbGluZyBvdXRzaWRlIHRoZSBsaW1pdCBvZiB0aGUgZnJhbWUuCisgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Nyb2xsQWJvdmVYTGltaXQiKS5jb250ZW50V2lu
ZG93LndpbmRvdy5zY3JvbGxCeSgyMDAsIDApOworCisgICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAg
ICAgIH0KKyAgICAgPC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAgICBpZnJhbWUgeworICAg
ICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3Jh
ZGllbnQoMTM1ZGVnLCByZWQsIG9yYW5nZSk7CisgICAgICAgICAgICBib3JkZXI6IDA7CisgICAg
ICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAg
ICAgICAgb3ZlcmZsb3c6IG5vbmU7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+
CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHNx
dWFyZS48L3A+CisgICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyB0b3A6IDNlbTsg
d2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsiPgorICAgICAg
ICA8aWZyYW1lIGlkPSJzY3JvbGxBYm92ZVhMaW1pdCIgc2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0i
CisgICAgICAgICAgICA8Ym9keSBzdHlsZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7IGhlaWdo
dDogMjAwcHgnPgorICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9J3Bvc2l0aW9uOiBhYnNvbHV0
ZTsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2
PgorICAgICAgICAgICAgPC9ib2R5PiIgb25sb2FkPSJydW5UZXN0KCkiPgorICAgICAgICA8L2lm
cmFtZT4KKyAgICA8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLTAwOC1l
eHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRp
Yy1zY3JvbGwtaWZyYW1lLTAwOC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjliODZmMGE3Mzhh
ZmU5Zjc5NDk2ZGIxNDU1ODUwOGVkZDkwMWUyZWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA4LWV4
cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAg
PGhlYWQ+CisgICAgPHRpdGxlPlByb2dyYW1tYXRpYyBzY3JvbGxpbmcgb2YgaWZyYW1lPC90aXRs
ZT4KKyAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRo
LCBpbml0aWFsLXNjYWxlPTEiPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVz
dCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHNxdWFyZS48L3A+CisgICAgPGRpdiBzdHlsZT0i
cG9zaXRpb246IGFic29sdXRlOyB0b3A6IDNlbTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4
OyBiYWNrZ3JvdW5kOiBncmVlbjsiPgorICAgIDwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNj
cm9sbC1pZnJhbWUtMDA4Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJv
Z3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTY3MzZhMDEwYmY0
MmVkMjE3ZTg0N2QyM2U1NDZlMTIyZGNlZTdmYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDguaHRt
bApAQCAtMCwwICsxLDQxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAg
ICA8dGl0bGU+UHJvZ3JhbW1hdGljIHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxt
ZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwt
c2NhbGU9MSI+CisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICAgIGlmICh3aW5k
b3cuaW50ZXJuYWxzKQorICAgICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEFzeW5jRnJh
bWVTY3JvbGxpbmdFbmFibGVkKHRydWUpOworCisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7
CisgICAgICAgICAgICAvLyBUaGlzIGNoZWNrcyBzY3JvbGxpbmcgb3V0c2lkZSB0aGUgbGltaXQg
b2YgdGhlIGZyYW1lLgorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNjcm9s
bEJlbG93WUxpbWl0IikuY29udGVudFdpbmRvdy53aW5kb3cuc2Nyb2xsQnkoMCwgLTEwMCk7CisK
KyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfQorICAgICA8L3NjcmlwdD4KKyAgICA8c3R5
bGU+CisgICAgICAgIGlmcmFtZSB7CisgICAgICAgICAgICBmbG9hdDogbGVmdDsKKyAgICAgICAg
ICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJlZCwgb3JhbmdlKTsKKyAg
ICAgICAgICAgIGJvcmRlcjogMDsKKyAgICAgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAgICAg
ICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgICAgICBvdmVyZmxvdzogbm9uZTsKKyAgICAgICAg
fQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBh
c3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gc3F1YXJlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3Np
dGlvbjogYWJzb2x1dGU7IHRvcDogM2VtOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJh
Y2tncm91bmQ6IGdyZWVuOyI+CisgICAgICAgIDxpZnJhbWUgaWQ9InNjcm9sbEJlbG93WUxpbWl0
IiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgICAgIDxib2R5IHN0eWxlPSdtYXJn
aW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+CisgICAgICAgICAgICAgICAgPGRp
diBzdHlsZT0ncG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHg7
IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+CisgICAgICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9
InJ1blRlc3QoKSI+CisgICAgICAgIDwvaWZyYW1lPgorICAgIDwvZGl2PgorICA8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3Jh
bW1hdGljLXNjcm9sbC1pZnJhbWUtMDA5LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtMDA5LWV4cGVjdGVkLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uOWI4NmYwYTczOGFmZTlmNzk0OTZkYjE0NTU4NTA4ZWRkOTAxZTJlZAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFt
bWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDktZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEyIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+UHJvZ3JhbW1hdGlj
IHNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBj
b250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+CisgIDwvaGVhZD4K
KyAgPGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gc3F1
YXJlLjwvcD4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogM2VtOyB3
aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+CisgICAgPC9k
aXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Ny
b2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDkuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9wcm9ncmFtbWF0aWMtc2Nyb2xsLWlmcmFtZS0wMDkuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4zMmU0YTU5NWNmYWU4MzFmN2U1MGEzZTM2YmMxYTBhOTUzZDI5MGVlCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1t
YXRpYy1zY3JvbGwtaWZyYW1lLTAwOS5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5Qcm9ncmFtbWF0aWMgc2Nyb2xsaW5n
IG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9Indp
ZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0PgorICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRp
bERvbmUoKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgICBpbnRl
cm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQodHJ1ZSk7CisKKyAg
ICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgICAgIC8vIFRoaXMgY2hlY2tzIHNj
cm9sbGluZyBvdXRzaWRlIHRoZSBsaW1pdCBvZiB0aGUgZnJhbWUuCisgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgic2Nyb2xsQWJvdmVZTGltaXQiKS5jb250ZW50V2luZG93Lndp
bmRvdy5zY3JvbGxCeSgwLCAyMDApOworCisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgICAgIH0K
KyAgICAgPC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAgICBpZnJhbWUgeworICAgICAgICAg
ICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQo
MTM1ZGVnLCByZWQsIG9yYW5nZSk7CisgICAgICAgICAgICBib3JkZXI6IDA7CisgICAgICAgICAg
ICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAg
b3ZlcmZsb3c6IG5vbmU7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+CisgIDxi
b2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHNxdWFyZS48
L3A+CisgICAgPGRpdiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyB0b3A6IDNlbTsgd2lkdGg6
IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsiPgorICAgICAgICA8aWZy
YW1lIGlkPSJzY3JvbGxBYm92ZVlMaW1pdCIgc2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0iCisgICAg
ICAgICAgICA8Ym9keSBzdHlsZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAw
cHgnPgorICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9J3Bvc2l0aW9uOiBhYnNvbHV0ZTsgd2lk
dGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgorICAg
ICAgICAgICAgPC9ib2R5PiIgb25sb2FkPSJydW5UZXN0KCkiPgorICAgICAgICA8L2lmcmFtZT4K
KyAgICA8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1lLWV4cGVjdGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9sbC1p
ZnJhbWUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWVkOWFl
MjljZjZkOWEzNDllYjYxNjYzNTJjNTczYjE4NjA2MzY5NS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mv
cHJvZ3JhbW1hdGljLXNjcm9sbC1pZnJhbWUtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDEyICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci0gIDxoZWFkPgotICAgIDx0
aXRsZT5Qcm9ncmFtbWF0aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+Ci0gICAgPG1ldGEg
bmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2Fs
ZT0xIj4KLSAgPC9oZWFkPgotICA8Ym9keT4KLSAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlv
dSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgotICAgIDxkaXYgc3R5bGU9InBvc2l0aW9uOiBh
YnNvbHV0ZTsgdG9wOiAzZW07IHdpZHRoOiAzMDBweDsgaGVpZ2h0OiA0MDBweDsgYmFja2dyb3Vu
ZDogZ3JlZW47Ij4KLSAgICA8L2Rpdj4KLSAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Byb2dyYW1tYXRpYy1zY3JvbGwtaWZyYW1l
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3JhbW1hdGljLXNjcm9s
bC1pZnJhbWUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWY4NTgyZjg2OGE4
ZDNhM2Y4ZDczMGJjNDUzOGJkZDJlZTFhZjk2OC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3MvcHJvZ3Jh
bW1hdGljLXNjcm9sbC1pZnJhbWUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDk4ICswLDAgQEAK
LTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci0gIDxoZWFkPgotICAgIDx0aXRsZT5Qcm9ncmFtbWF0
aWMgc2Nyb2xsaW5nIG9mIGlmcmFtZTwvdGl0bGU+Ci0gICAgPG1ldGEgbmFtZT0idmlld3BvcnQi
IGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KLSAgICA8c2Ny
aXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICB0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAg
ICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGluZ0VuYWJsZWQo
dHJ1ZSk7Ci0KLSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAgICAgICAgICAgIC8vIFRo
aXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVuIHNxdWFyZS4K
LSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkb05vdFNjcm9sbCIpLmNvbnRl
bnRXaW5kb3cud2luZG93LnNjcm9sbFRvKDAsIDApOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoIm1heFNjcm9sbFgiKS5jb250ZW50V2luZG93LndpbmRvdy5zY3JvbGxUbygx
MDAsIDApOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1heFNjcm9sbFki
KS5jb250ZW50V2luZG93LndpbmRvdy5zY3JvbGxUbygwLCAxMDApOwotICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1heFNjcm9sbFhZIikuY29udGVudFdpbmRvdy53aW5kb3cu
c2Nyb2xsVG8oMTAwLCAxMDApOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InNjcm9sbE1pZGRsZSIpLmNvbnRlbnRXaW5kb3cud2luZG93LnNjcm9sbFRvKDUwLCA1MCk7Ci0K
LSAgICAgICAgICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyBvdXRzaWRlIHRoZSBsaW1pdCBv
ZiB0aGUgZnJhbWUuCi0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Nyb2xs
QmVsb3dYTGltaXQiKS5jb250ZW50V2luZG93LndpbmRvdy5zY3JvbGxCeSgtMTAwLCAwKTsKLSAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzY3JvbGxBYm92ZVhMaW1pdCIpLmNv
bnRlbnRXaW5kb3cud2luZG93LnNjcm9sbEJ5KDIwMCwgMCk7Ci0gICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgic2Nyb2xsQmVsb3dZTGltaXQiKS5jb250ZW50V2luZG93LndpbmRv
dy5zY3JvbGxCeSgwLCAtMTAwKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJzY3JvbGxBYm92ZVlMaW1pdCIpLmNvbnRlbnRXaW5kb3cud2luZG93LnNjcm9sbEJ5KDAsIDIw
MCk7Ci0KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAg
ICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotCi0gICAgICAgIHZhciBmcmFt
ZVRvTG9hZENvdW50ID0gOTsKLSAgICAgICAgZnVuY3Rpb24gbmV3RnJhbWVMb2FkZWQoKSB7Ci0g
ICAgICAgICAgICBmcmFtZVRvTG9hZENvdW50LS07Ci0gICAgICAgICAgICBpZiAoZnJhbWVUb0xv
YWRDb3VudCA9PSAwKQotICAgICAgICAgICAgICAgIHJ1blRlc3QoKTsKLSAgICAgICAgfQotICAg
ICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGlmcmFtZSB7Ci0gICAgICAgICAgICBm
bG9hdDogbGVmdDsKLSAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVk
ZWcsIHJlZCwgb3JhbmdlKTsKLSAgICAgICAgICAgIGJvcmRlcjogMDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBvdmVy
Zmxvdzogbm9uZTsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci0gIDwvaGVhZD4KLSAgPGJvZHk+
Ci0gICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwv
cD4KLSAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogM2VtOyB3aWR0aDog
MzAwcHg7IGhlaWdodDogNDAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyI+Ci0gICAgICAgIDxpZnJh
bWUgaWQ9ImRvTm90U2Nyb2xsIiBzdHlsZT0ibGVmdDogMHB4OyB0b3A6IDBweDsiIHNjcm9sbGlu
Zz0ieWVzIiBzcmNkb2M9IgotICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lk
dGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KLSAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSdw
b3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3Vu
ZDogZ3JlZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0ibmV3RnJhbWVM
b2FkZWQoKSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAgICAgICA8aWZyYW1lIGlkPSJtYXhTY3Jv
bGxYIiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKLSAgICAgICAgICAgIDxib2R5IHN0eWxlPSdt
YXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+Ci0gICAgICAgICAgICAgICAg
PGRpdiBzdHlsZT0nbGVmdDogMTAwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMHB4
OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgotICAgICAgICAgICAg
PC9ib2R5PiIgb25sb2FkPSJuZXdGcmFtZUxvYWRlZCgpIj4KLSAgICAgICAgPC9pZnJhbWU+Ci0g
ICAgICAgIDxpZnJhbWUgaWQ9Im1heFNjcm9sbFkiIHNjcm9sbGluZz0ieWVzIiBzcmNkb2M9Igot
ICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6
IDIwMHB4Jz4KLSAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSd0b3A6IDEwMHB4OyBwb3NpdGlv
bjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3Jl
ZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0ibmV3RnJhbWVMb2FkZWQo
KSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAgICAgICA8aWZyYW1lIGlkPSJtYXhTY3JvbGxYWSIg
c2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0iCi0gICAgICAgICAgICA8Ym9keSBzdHlsZT0nbWFyZ2lu
OiAwOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHgnPgotICAgICAgICAgICAgICAgIDxkaXYg
c3R5bGU9J2xlZnQ6IDEwMHB4OyB0b3A6IDEwMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRo
OiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47Jz48L2Rpdj4KLSAgICAg
ICAgICAgIDwvYm9keT4iIG9ubG9hZD0ibmV3RnJhbWVMb2FkZWQoKSI+Ci0gICAgICAgIDwvaWZy
YW1lPgotICAgICAgICA8aWZyYW1lIGlkPSJzY3JvbGxNaWRkbGUiIHNjcm9sbGluZz0ieWVzIiBz
cmNkb2M9IgotICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4
OyBoZWlnaHQ6IDIwMHB4Jz4KLSAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSdsZWZ0OiA1MHB4
OyB0b3A6IDUwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEw
MHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgotICAgICAgICAgICAgPC9ib2R5PiIgb25s
b2FkPSJuZXdGcmFtZUxvYWRlZCgpIj4KLSAgICAgICAgPC9pZnJhbWU+Ci0gICAgICAgIDxpZnJh
bWUgaWQ9InNjcm9sbEJlbG93WExpbWl0IiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKLSAgICAg
ICAgICAgIDxib2R5IHN0eWxlPSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBw
eCc+Ci0gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ncG9zaXRpb246IGFic29sdXRlOyB3aWR0
aDogMjAwcHg7IGhlaWdodDogMjAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+Ci0gICAg
ICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9Im5ld0ZyYW1lTG9hZGVkKCkiPgotICAgICAgICA8L2lm
cmFtZT4KLSAgICAgICAgPGlmcmFtZSBpZD0ic2Nyb2xsQWJvdmVYTGltaXQiIHNjcm9sbGluZz0i
eWVzIiBzcmNkb2M9IgotICAgICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6
IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KLSAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSdwb3Np
dGlvbjogYWJzb2x1dGU7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweDsgYmFja2dyb3VuZDog
Z3JlZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0ibmV3RnJhbWVMb2Fk
ZWQoKSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAgICAgICA8aWZyYW1lIGlkPSJzY3JvbGxCZWxv
d1lMaW1pdCIgc2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0iCi0gICAgICAgICAgICA8Ym9keSBzdHls
ZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHgnPgotICAgICAgICAgICAg
ICAgIDxkaXYgc3R5bGU9J3Bvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6
IDIwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgotICAgICAgICAgICAgPC9ib2R5PiIg
b25sb2FkPSJuZXdGcmFtZUxvYWRlZCgpIj4KLSAgICAgICAgPC9pZnJhbWU+Ci0gICAgICAgIDxp
ZnJhbWUgaWQ9InNjcm9sbEFib3ZlWUxpbWl0IiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKLSAg
ICAgICAgICAgIDxib2R5IHN0eWxlPSdtYXJnaW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAy
MDBweCc+Ci0gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ncG9zaXRpb246IGFic29sdXRlOyB3
aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+Ci0g
ICAgICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9Im5ld0ZyYW1lTG9hZGVkKCkiPgotICAgICAgICA8
L2lmcmFtZT4KLSAgICA8L2Rpdj4KLSAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAxLWV4cGVjdGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDEtZXhw
ZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNDZiOTNiMzQ5NDk5Nzg4MjI2Y2Y3ZDlhZDkyM2QzNzc1
ZDI3YjhhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9z
L3Njcm9sbC1pZnJhbWUtMDAxLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwxOSBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbAorICA8aGVhZD4KKyAgICA8dGl0bGU+U2Nyb2xsaW5nIG9mIGlmcmFt
ZTwvdGl0bGU+CisgICAgPHN0eWxlPgorICAgICAgLnRlc3RkaXYgeworICAgICAgICAgIGZsb2F0
OiBsZWZ0OworICAgICAgICAgIGJhY2tncm91bmQ6IGdyZWVuOworICAgICAgICAgIGJvcmRlcjog
MDsKKyAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgIHdpZHRoOiAxMDBweDsKKyAg
ICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhpcyB0
ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gc3F1YXJlLjwvcD4KKyAgICA8ZGl2IGNsYXNz
PSJ0ZXN0ZGl2Ij48L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAxLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDEuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li45MWM0MDQ4MDFkOWZiNDBlYWFiYjM3ZGExODNjMjEzZjAyYzFjMTYyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUtMDAxLmh0
bWwKQEAgLTAsMCArMSw1MCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgPGhlYWQ+Cisg
ICAgPHRpdGxlPlNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9InZp
ZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+Cisg
ICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9iYXNpYy1nZXN0dXJlcy5qcyI+PC9z
Y3JpcHQ+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwor
ICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdz
LnNldEFzeW5jRnJhbWVTY3JvbGxpbmdFbmFibGVkKHRydWUpOworCisgICAgICBmdW5jdGlvbiBj
ZW50ZXJPZihpZCkKKyAgICAgIHsKKyAgICAgICAgICB2YXIgZnJhbWVCb3ggPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZChpZCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7CisgICAgICAgICAgcmV0
dXJuIHsgeDogZnJhbWVCb3gubGVmdCArIGZyYW1lQm94LndpZHRoIC8gMiwgeTogZnJhbWVCb3gu
dG9wICsgZnJhbWVCb3guaGVpZ2h0IC8gMiB9OworICAgICAgfQorCisgICAgICBhc3luYyBmdW5j
dGlvbiBydW5UZXN0KCkgeworICAgICAgICAgaWYgKCF3aW5kb3cudGVzdFJ1bm5lciB8fCAhdGVz
dFJ1bm5lci5ydW5VSVNjcmlwdCkKKyAgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgIC8v
IFRoaXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24gb2YgdGhlIGdyZWVuIHNxdWFy
ZS4KKyAgICAgICAgIHZhciBjID0gY2VudGVyT2YoIm1heFNjcm9sbFgiKTsKKyAgICAgICAgIGF3
YWl0IHRvdWNoQW5kRHJhZ0Zyb21Qb2ludFRvUG9pbnQoYy54LCBjLnksIGMueCAtIDE1MCwgYy55
KTsKKyAgICAgICAgIGF3YWl0IGxpZnRVcEF0UG9pbnQoYy54IC0gMTUwLCBjLnkpOworCisgICAg
ICAgICAvLyBXYWl0IGZvciBzY3JvbGxpbmcgdG8gc3RhYmlsaXplIGFuZCBmb3Igc2Nyb2xsYmFy
cyB0byBkaXNhcHBlYXIuCisgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHt0ZXN0UnVubmVyLm5v
dGlmeURvbmUoKTsgfSwgMTAwMCk7CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICAgIDxzdHls
ZT4KKyAgICAgICAgaWZyYW1lIHsKKyAgICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAg
ICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmVkLCBvcmFuZ2UpOworICAg
ICAgICAgICAgYm9yZGVyOiAwOworICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAg
ICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAg
PGJvZHk+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gc3F1YXJl
LjwvcD4KKyAgICA8aWZyYW1lIGlkPSJtYXhTY3JvbGxYIiBzY3JvbGxpbmc9InllcyIgc3JjZG9j
PSIKKyAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6
IDIwMHB4Jz4KKyAgICAgICAgICAgIDxkaXYgc3R5bGU9J2xlZnQ6IDEwMHB4OyBwb3NpdGlvbjog
YWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47
Jz48L2Rpdj4KKyAgICAgICAgPC9ib2R5PiIgb25sb2FkPSJydW5UZXN0KCkiPgorICAgIDwvaWZy
YW1lPgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Nj
cm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDItZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMi1leHBlY3RlZC5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmU0NmI5M2IzNDk0OTk3ODgyMjZjZjdkOWFkOTIzZDM3NzVkMjdiOGEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0w
MDItZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDE5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
CisgIDxoZWFkPgorICAgIDx0aXRsZT5TY3JvbGxpbmcgb2YgaWZyYW1lPC90aXRsZT4KKyAgICA8
c3R5bGU+CisgICAgICAudGVzdGRpdiB7CisgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAg
ICAgYmFja2dyb3VuZDogZ3JlZW47CisgICAgICAgICAgYm9yZGVyOiAwOworICAgICAgICAgIGhl
aWdodDogMTAwcHg7CisgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICB9CisgICAgPC9z
dHlsZT4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlv
dSBzZWUgYSBncmVlbiBzcXVhcmUuPC9wPgorICAgIDxkaXYgY2xhc3M9InRlc3RkaXYiPjwvZGl2
PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9s
bGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xs
aW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE1MzJmNmU0ZWMwNTky
MDkxZWQyYjQzZTgyZjM3OGVjOTMyZDg4YWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDIuaHRtbApAQCAtMCwwICsxLDUw
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+U2Nyb2xs
aW5nIG9mIGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9
IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vcmVzb3VyY2VzL2Jhc2ljLWdlc3R1cmVzLmpzIj48L3NjcmlwdD4KKyAgICA8c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
CisgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICBpZiAod2luZG93
LmludGVybmFscykKKyAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNj
cm9sbGluZ0VuYWJsZWQodHJ1ZSk7CisKKyAgICAgIGZ1bmN0aW9uIGNlbnRlck9mKGlkKQorICAg
ICAgeworICAgICAgICAgIHZhciBmcmFtZUJveCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlk
KS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKKyAgICAgICAgICByZXR1cm4geyB4OiBmcmFtZUJv
eC5sZWZ0ICsgZnJhbWVCb3gud2lkdGggLyAyLCB5OiBmcmFtZUJveC50b3AgKyBmcmFtZUJveC5o
ZWlnaHQgLyAyIH07CisgICAgICB9CisKKyAgICAgIGFzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKSB7
CisgICAgICAgICBpZiAoIXdpbmRvdy50ZXN0UnVubmVyIHx8ICF0ZXN0UnVubmVyLnJ1blVJU2Ny
aXB0KQorICAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAgLy8gVGhpcyBjaGVja3Mgc2Ny
b2xsaW5nIHRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgZ3JlZW4gc3F1YXJlLgorICAgICAgICAgdmFy
IGMgPSBjZW50ZXJPZigibWF4U2Nyb2xsWSIpOworICAgICAgICAgYXdhaXQgdG91Y2hBbmREcmFn
RnJvbVBvaW50VG9Qb2ludChjLngsIGMueSwgYy54LCBjLnkgLSAxNTApOworICAgICAgICAgYXdh
aXQgbGlmdFVwQXRQb2ludChjLngsIGMueSAtIDE1MCk7CisgCisgICAgICAgICAvLyBXYWl0IGZv
ciBzY3JvbGxpbmcgdG8gc3RhYmlsaXplIGFuZCBmb3Igc2Nyb2xsYmFycyB0byBkaXNhcHBlYXIu
CisgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHt0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsgfSwg
MTAwMCk7CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICAgIDxzdHlsZT4KKyAgICAgICAgaWZy
YW1lIHsKKyAgICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgICAgYmFja2dyb3VuZDog
bGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmVkLCBvcmFuZ2UpOworICAgICAgICAgICAgYm9yZGVy
OiAwOworICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgICAgIHdpZHRoOiAxMDBw
eDsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+
VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gc3F1YXJlLjwvcD4KKyAgICA8aWZy
YW1lIGlkPSJtYXhTY3JvbGxZIiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgPGJv
ZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KKyAgICAg
ICAgICAgIDxkaXYgc3R5bGU9J3RvcDogMTAwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6
IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2PgorICAgICAg
ICA8L2JvZHk+IiBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgPC9pZnJhbWU+CisgIDwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3Jv
bGwtaWZyYW1lLTAwMy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcv
aW9zL3Njcm9sbC1pZnJhbWUtMDAzLWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTQ2YjkzYjM0
OTQ5OTc4ODIyNmNmN2Q5YWQ5MjNkMzc3NWQyN2I4YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwMy1leHBlY3RlZC5odG1s
CkBAIC0wLDAgKzEsMTkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWwKKyAgPGhlYWQ+CisgICAg
PHRpdGxlPlNjcm9sbGluZyBvZiBpZnJhbWU8L3RpdGxlPgorICAgIDxzdHlsZT4KKyAgICAgIC50
ZXN0ZGl2IHsKKyAgICAgICAgICBmbG9hdDogbGVmdDsKKyAgICAgICAgICBiYWNrZ3JvdW5kOiBn
cmVlbjsKKyAgICAgICAgICBib3JkZXI6IDA7CisgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAg
ICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+
CisgIDxib2R5PgorICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHNx
dWFyZS48L3A+CisgICAgPGRpdiBjbGFzcz0idGVzdGRpdiI+PC9kaXY+CisgIDwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwt
aWZyYW1lLTAwMy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1p
ZnJhbWUtMDAzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQxODgxM2QzZWQ4NTE0NjkwMTQwMzdjNzIwZjI1
NGIyYTViNDAxZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5n
L2lvcy9zY3JvbGwtaWZyYW1lLTAwMy5odG1sCkBAIC0wLDAgKzEsNTAgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT5TY3JvbGxpbmcgb2YgaWZyYW1lPC90
aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdp
ZHRoLCBpbml0aWFsLXNjYWxlPTEiPgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJj
ZXMvYmFzaWMtZ2VzdHVyZXMuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KKyAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICB0ZXN0
UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAg
ICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRBc3luY0ZyYW1lU2Nyb2xsaW5nRW5hYmxlZCh0
cnVlKTsKKworICAgICAgZnVuY3Rpb24gY2VudGVyT2YoaWQpCisgICAgICB7CisgICAgICAgICAg
dmFyIGZyYW1lQm94ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpLmdldEJvdW5kaW5nQ2xp
ZW50UmVjdCgpOworICAgICAgICAgIHJldHVybiB7IHg6IGZyYW1lQm94LmxlZnQgKyBmcmFtZUJv
eC53aWR0aCAvIDIsIHk6IGZyYW1lQm94LnRvcCArIGZyYW1lQm94LmhlaWdodCAvIDIgfTsKKyAg
ICAgIH0KKworICAgICAgYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgIGlmICgh
d2luZG93LnRlc3RSdW5uZXIgfHwgIXRlc3RSdW5uZXIucnVuVUlTY3JpcHQpCisgICAgICAgICAg
ICAgcmV0dXJuOworCisgICAgICAgICAvLyBUaGlzIGNoZWNrcyBzY3JvbGxpbmcgdG8gdGhlIGxv
Y2F0aW9uIG9mIHRoZSBncmVlbiBzcXVhcmUuCisgICAgICAgICB2YXIgYyA9IGNlbnRlck9mKCJt
YXhTY3JvbGxYWSIpOworICAgICAgICAgYXdhaXQgdG91Y2hBbmREcmFnRnJvbVBvaW50VG9Qb2lu
dChjLngsIGMueSwgYy54IC0gMTUwLCBjLnkgLSAxNTApOworICAgICAgICAgYXdhaXQgbGlmdFVw
QXRQb2ludChjLnggLSAxNTAsIGMueSAtIDE1MCk7CisKKyAgICAgICAgIC8vIFdhaXQgZm9yIHNj
cm9sbGluZyB0byBzdGFiaWxpemUgYW5kIGZvciBzY3JvbGxiYXJzIHRvIGRpc2FwcGVhci4KKyAg
ICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge3Rlc3RSdW5uZXIubm90aWZ5RG9uZSgpOyB9LCAxMDAw
KTsKKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAgICBpZnJhbWUg
eworICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5l
YXItZ3JhZGllbnQoMTM1ZGVnLCByZWQsIG9yYW5nZSk7CisgICAgICAgICAgICBib3JkZXI6IDA7
CisgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owor
ICAgICAgICB9CisgICAgPC9zdHlsZT4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8cD5UaGlz
IHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiBzcXVhcmUuPC9wPgorICAgIDxpZnJhbWUg
aWQ9Im1heFNjcm9sbFhZIiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKKyAgICAgICAgPGJvZHkg
c3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4Jz4KKyAgICAgICAg
ICAgIDxkaXYgc3R5bGU9J2xlZnQ6IDEwMHB4OyB0b3A6IDEwMHB4OyBwb3NpdGlvbjogYWJzb2x1
dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDogZ3JlZW47Jz48L2Rp
dj4KKyAgICAgICAgPC9ib2R5PiIgb25sb2FkPSJydW5UZXN0KCkiPgorICAgIDwvaWZyYW1lPgor
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGlu
Zy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDQtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
c2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLTAwNC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmU0NmI5M2IzNDk0OTk3ODgyMjZjZjdkOWFkOTIzZDM3NzVkMjdiOGEKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDQtZXhw
ZWN0ZWQuaHRtbApAQCAtMCwwICsxLDE5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sCisgIDxo
ZWFkPgorICAgIDx0aXRsZT5TY3JvbGxpbmcgb2YgaWZyYW1lPC90aXRsZT4KKyAgICA8c3R5bGU+
CisgICAgICAudGVzdGRpdiB7CisgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgYmFj
a2dyb3VuZDogZ3JlZW47CisgICAgICAgICAgYm9yZGVyOiAwOworICAgICAgICAgIGhlaWdodDog
MTAwcHg7CisgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICB9CisgICAgPC9zdHlsZT4K
KyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBzZWUg
YSBncmVlbiBzcXVhcmUuPC9wPgorICAgIDxkaXYgY2xhc3M9InRlc3RkaXYiPjwvZGl2PgorICA8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9p
b3Mvc2Nyb2xsLWlmcmFtZS0wMDQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lv
cy9zY3JvbGwtaWZyYW1lLTAwNC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRhNjhlZWFjMTBlNmRjZTM5ZDZh
NDFmOWM0OGE4Yjg2YzIyMTM5YjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3Njcm9sbGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS0wMDQuaHRtbApAQCAtMCwwICsxLDU0IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+U2Nyb2xsaW5nIG9m
IGlmcmFtZTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRo
PWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vcmVzb3VyY2VzL2Jhc2ljLWdlc3R1cmVzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICBpZiAod2luZG93LmludGVy
bmFscykKKyAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QXN5bmNGcmFtZVNjcm9sbGlu
Z0VuYWJsZWQodHJ1ZSk7CisKKyAgICAgIGZ1bmN0aW9uIGNlbnRlck9mKGlkKQorICAgICAgewor
ICAgICAgICAgIHZhciBmcmFtZUJveCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKS5nZXRC
b3VuZGluZ0NsaWVudFJlY3QoKTsKKyAgICAgICAgICByZXR1cm4geyB4OiBmcmFtZUJveC5sZWZ0
ICsgZnJhbWVCb3gud2lkdGggLyAyLCB5OiBmcmFtZUJveC50b3AgKyBmcmFtZUJveC5oZWlnaHQg
LyAyIH07CisgICAgICB9CisKKyAgICAgIGFzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAg
ICAgICBpZiAoIXdpbmRvdy50ZXN0UnVubmVyIHx8ICF0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KQor
ICAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAgLy8gVGhpcyBjaGVja3Mgc2Nyb2xsaW5n
IHRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgZ3JlZW4gc3F1YXJlLgorICAgICAgICAgdmFyIGMgPSBj
ZW50ZXJPZigibGFyZ2VDb250ZW50Iik7CisgICAgICAgICBhd2FpdCB0b3VjaEFuZERyYWdGcm9t
UG9pbnRUb1BvaW50KGMueCwgYy55LCBjLngsIGMueSAtIDIwMDApOworICAgICAgICAgYXdhaXQg
bGlmdFVwQXRQb2ludChjLngsIGMueSAtIDIwMDApOworCisgICAgICAgICAvLyBXYWl0IGZvciBz
Y3JvbGxpbmcgdG8gc3RhYmlsaXplIGFuZCBmb3Igc2Nyb2xsYmFycyB0byBkaXNhcHBlYXIuCisg
ICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHt0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsgfSwgMjAw
MCk7CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICAgIDxzdHlsZT4KKyAgICAgICAgaWZyYW1l
IHsKKyAgICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgICAgYmFja2dyb3VuZDogbGlu
ZWFyLWdyYWRpZW50KDEzNWRlZywgcmVkLCBvcmFuZ2UpOworICAgICAgICAgICAgYm9yZGVyOiAw
OworICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgICAgIHdpZHRoOiAxMDBweDsK
KyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhp
cyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gc3F1YXJlLjwvcD4KKyAgICA8aWZyYW1l
IGlkPSJsYXJnZUNvbnRlbnQiIHNjcm9sbGluZz0ieWVzIiBzcmNkb2M9IgorICAgICAgICA8Ym9k
eSBzdHlsZT0nbWFyZ2luOiAwOyc+CisgICAgICAgIDxkaXYgc3R5bGU9J3dpZHRoOiAxMDBweDsg
aGVpZ2h0OiA1MDBweDsgYmFja2dyb3VuZDogcmVkOyc+PC9kaXY+CisgICAgICAgIDxkaXYgc3R5
bGU9J3dpZHRoOiAxMDBweDsgaGVpZ2h0OiA1MDBweDsgYmFja2dyb3VuZDogYmx1ZTsnPjwvZGl2
PgorICAgICAgICA8ZGl2IHN0eWxlPSd3aWR0aDogMTAwcHg7IGhlaWdodDogNTAwcHg7IGJhY2tn
cm91bmQ6IHJlZDsnPjwvZGl2PgorICAgICAgICA8ZGl2IHN0eWxlPSd3aWR0aDogMTAwcHg7IGhl
aWdodDogNTAwcHg7IGJhY2tncm91bmQ6IGJsdWU7Jz48L2Rpdj4KKyAgICAgICAgPGRpdiBzdHls
ZT0nd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDUwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsnPjwvZGl2
PgorICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgPC9pZnJhbWU+Cisg
IDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5n
L2lvcy9zY3JvbGwtaWZyYW1lLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9s
bGluZy9pb3Mvc2Nyb2xsLWlmcmFtZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBkN2Y2NDZhM2Y1MzYyY2Y0ZGU4YzFjMTRlNTEyYzcyNGE2OTExOGQ5Li4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zh
c3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSwyNCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sCi0gIDxoZWFkPgotICAg
IDx0aXRsZT5TY3JvbGxpbmcgb2YgaWZyYW1lPC90aXRsZT4KLSAgICA8c3R5bGU+Ci0gICAgICAg
IC50ZXN0ZGl2IHsKLSAgICAgICAgICAgIGZsb2F0OiBsZWZ0OwotICAgICAgICAgICAgYmFja2dy
b3VuZDogZ3JlZW47Ci0gICAgICAgICAgICBib3JkZXI6IDA7Ci0gICAgICAgICAgICBoZWlnaHQ6
IDEwMHB4OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICB9Ci0gICAgPC9zdHls
ZT4KLSAgPC9oZWFkPgotICA8Ym9keT4KLSAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBz
ZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgotICAgIDxkaXYgc3R5bGU9IndpZHRoOjMwMHB4Ij4K
LSAgICAgICAgPGRpdiBjbGFzcz10ZXN0ZGl2PjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPXRl
c3RkaXY+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9dGVzdGRpdj48L2Rpdj4KLSAgICAgICAg
PGRpdiBjbGFzcz10ZXN0ZGl2PjwvZGl2PgotICAgIDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL2lvcy9zY3JvbGwtaWZyYW1lLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNiMWUzM2NkNjczOTE5YTgwY2VhYmNlZTNl
OTU2ZGFiNWNjZTA0OTkuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvaW9zL3Njcm9sbC1pZnJhbWUuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDkwICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci0g
IDxoZWFkPgotICAgIDx0aXRsZT5TY3JvbGxpbmcgb2YgaWZyYW1lPC90aXRsZT4KLSAgICA8bWV0
YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNj
YWxlPTEiPgotICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvYmFzaWMtZ2VzdHVy
ZXMuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLSAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAg
aW50ZXJuYWxzLnNldHRpbmdzLnNldEFzeW5jRnJhbWVTY3JvbGxpbmdFbmFibGVkKHRydWUpOwot
Ci0gICAgICBmdW5jdGlvbiBjZW50ZXJPZihpZCkKLSAgICAgIHsKLSAgICAgICAgICB2YXIgZnJh
bWVCb3ggPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0
KCk7Ci0gICAgICAgICAgcmV0dXJuIHsgeDogZnJhbWVCb3gubGVmdCArIGZyYW1lQm94LndpZHRo
IC8gMiwgeTogZnJhbWVCb3gudG9wICsgZnJhbWVCb3guaGVpZ2h0IC8gMiB9OwotICAgICAgfQot
Ci0gICAgICBhc3luYyBmdW5jdGlvbiBydW5UZXN0KCkgewotICAgICAgICAgaWYgKCF3aW5kb3cu
dGVzdFJ1bm5lciB8fCAhdGVzdFJ1bm5lci5ydW5VSVNjcmlwdCkKLSAgICAgICAgICAgICByZXR1
cm47Ci0KLSAgICAgICAgIC8vIFRoaXMgY2hlY2tzIHNjcm9sbGluZyB0byB0aGUgbG9jYXRpb24g
b2YgdGhlIGdyZWVuIHNxdWFyZS4KLSAgICAgICAgIHZhciBjID0gY2VudGVyT2YoIm1heFNjcm9s
bFgiKTsKLSAgICAgICAgIGF3YWl0IHRvdWNoQW5kRHJhZ0Zyb21Qb2ludFRvUG9pbnQoYy54LCBj
LnksIGMueCAtIDE1MCwgYy55KTsKLSAgICAgICAgIGF3YWl0IGxpZnRVcEF0UG9pbnQoYy54IC0g
MTUwLCBjLnkpOwotCi0gICAgICAgICBjID0gY2VudGVyT2YoIm1heFNjcm9sbFkiKTsKLSAgICAg
ICAgIGF3YWl0IHRvdWNoQW5kRHJhZ0Zyb21Qb2ludFRvUG9pbnQoYy54LCBjLnksIGMueCwgYy55
IC0gMTUwKTsKLSAgICAgICAgIGF3YWl0IGxpZnRVcEF0UG9pbnQoYy54LCBjLnkgLSAxNTApOwot
ICAgICAgICAgCi0gICAgICAgICBjID0gY2VudGVyT2YoIm1heFNjcm9sbFhZIik7Ci0gICAgICAg
ICBhd2FpdCB0b3VjaEFuZERyYWdGcm9tUG9pbnRUb1BvaW50KGMueCwgYy55LCBjLnggLSAxNTAs
IGMueSAtIDE1MCk7Ci0gICAgICAgICBhd2FpdCBsaWZ0VXBBdFBvaW50KGMueCAtIDE1MCwgYy55
IC0gMTUwKTsKLQotICAgICAgICAgYyA9IGNlbnRlck9mKCJsYXJnZUNvbnRlbnQiKTsKLSAgICAg
ICAgIGF3YWl0IHRvdWNoQW5kRHJhZ0Zyb21Qb2ludFRvUG9pbnQoYy54LCBjLnksIGMueCwgYy55
IC0gMjAwMCk7Ci0gICAgICAgICBhd2FpdCBsaWZ0VXBBdFBvaW50KGMueCwgYy55IC0gMjAwMCk7
Ci0KLSAgICAgICAgIC8vIFdhaXQgZm9yIHNjcm9sbGluZyB0byBzdGFiaWxpemUgYW5kIGZvciBz
Y3JvbGxiYXJzIHRvIGRpc2FwcGVhci4KLSAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge3Rlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOyB9LCAyMDAwKTsKLSAgICAgICB9Ci0KLSAgICAgICB2YXIgZnJh
bWVUb0xvYWRDb3VudCA9IDQ7Ci0gICAgICAgZnVuY3Rpb24gbmV3RnJhbWVMb2FkZWQoKSB7Ci0g
ICAgICAgICAgIGZyYW1lVG9Mb2FkQ291bnQtLTsKLSAgICAgICAgICAgaWYgKGZyYW1lVG9Mb2Fk
Q291bnQgPT0gMCkKLSAgICAgICAgICAgICAgIHJ1blRlc3QoKTsKLSAgICAgICB9Ci0gICAgPC9z
Y3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICBpZnJhbWUgewotICAgICAgICAgICAgZmxvYXQ6
IGxlZnQ7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCBy
ZWQsIG9yYW5nZSk7Ci0gICAgICAgICAgICBib3JkZXI6IDA7Ci0gICAgICAgICAgICBoZWlnaHQ6
IDEwMHB4OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICB9Ci0gICAgPC9zdHls
ZT4KLSAgPC9oZWFkPgotICA8Ym9keT4KLSAgICA8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIHlvdSBz
ZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgotICAgIDxkaXYgc3R5bGU9IndpZHRoOjMwMHB4Ij4K
LSAgICAgICAgPGlmcmFtZSBpZD0ibWF4U2Nyb2xsWCIgc2Nyb2xsaW5nPSJ5ZXMiIHNyY2RvYz0i
Ci0gICAgICAgICAgICA8Ym9keSBzdHlsZT0nbWFyZ2luOiAwOyB3aWR0aDogMjAwcHg7IGhlaWdo
dDogMjAwcHgnPgotICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9J2xlZnQ6IDEwMHB4OyBwb3Np
dGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgYmFja2dyb3VuZDog
Z3JlZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0ibmV3RnJhbWVMb2Fk
ZWQoKSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAgICAgICA8aWZyYW1lIGlkPSJtYXhTY3JvbGxZ
IiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKLSAgICAgICAgICAgIDxib2R5IHN0eWxlPSdtYXJn
aW46IDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiAyMDBweCc+Ci0gICAgICAgICAgICAgICAgPGRp
diBzdHlsZT0ndG9wOiAxMDBweDsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwcHg7IGhl
aWdodDogMTAwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyc+PC9kaXY+Ci0gICAgICAgICAgICA8L2Jv
ZHk+IiBvbmxvYWQ9Im5ld0ZyYW1lTG9hZGVkKCkiPgotICAgICAgICA8L2lmcmFtZT4KLSAgICAg
ICAgPGlmcmFtZSBpZD0ibWF4U2Nyb2xsWFkiIHNjcm9sbGluZz0ieWVzIiBzcmNkb2M9IgotICAg
ICAgICAgICAgPGJvZHkgc3R5bGU9J21hcmdpbjogMDsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIw
MHB4Jz4KLSAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSdsZWZ0OiAxMDBweDsgdG9wOiAxMDBw
eDsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IGJhY2tn
cm91bmQ6IGdyZWVuOyc+PC9kaXY+Ci0gICAgICAgICAgICA8L2JvZHk+IiBvbmxvYWQ9Im5ld0Zy
YW1lTG9hZGVkKCkiPgotICAgICAgICA8L2lmcmFtZT4KLSAgICAgICAgPGlmcmFtZSBpZD0ibGFy
Z2VDb250ZW50IiBzY3JvbGxpbmc9InllcyIgc3JjZG9jPSIKLSAgICAgICAgICAgIDxib2R5IHN0
eWxlPSdtYXJnaW46IDA7Jz4KLSAgICAgICAgICAgIDxkaXYgc3R5bGU9J3dpZHRoOiAxMDBweDsg
aGVpZ2h0OiA1MDBweDsgYmFja2dyb3VuZDogcmVkOyc+PC9kaXY+Ci0gICAgICAgICAgICA8ZGl2
IHN0eWxlPSd3aWR0aDogMTAwcHg7IGhlaWdodDogNTAwcHg7IGJhY2tncm91bmQ6IGJsdWU7Jz48
L2Rpdj4KLSAgICAgICAgICAgIDxkaXYgc3R5bGU9J3dpZHRoOiAxMDBweDsgaGVpZ2h0OiA1MDBw
eDsgYmFja2dyb3VuZDogcmVkOyc+PC9kaXY+Ci0gICAgICAgICAgICA8ZGl2IHN0eWxlPSd3aWR0
aDogMTAwcHg7IGhlaWdodDogNTAwcHg7IGJhY2tncm91bmQ6IGJsdWU7Jz48L2Rpdj4KLSAgICAg
ICAgICAgIDxkaXYgc3R5bGU9J3dpZHRoOiAxMDBweDsgaGVpZ2h0OiA1MDBweDsgYmFja2dyb3Vu
ZDogZ3JlZW47Jz48L2Rpdj4KLSAgICAgICAgICAgIDwvYm9keT4iIG9ubG9hZD0ibmV3RnJhbWVM
b2FkZWQoKSI+Ci0gICAgICAgIDwvaWZyYW1lPgotICAgIDwvZGl2PgotPC9ib2R5PgotPC9odG1s
Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>