<?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>191758</bug_id>
          
          <creation_ts>2018-11-16 10:34:45 -0800</creation_ts>
          <short_desc>Web Inspector: Audit: add default tests</short_desc>
          <delta_ts>2018-11-26 19:43:58 -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>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          <dependson>190754</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>mattbaker</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1479494</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2018-11-16 10:34:45 -0800</bug_when>
    <thetext>We should create some default tests so that the initial Audit tab isn&apos;t empty.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479497</commentid>
    <comment_count>1</comment_count>
      <attachid>355075</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2018-11-16 10:37:15 -0800</bug_when>
    <thetext>Created attachment 355075
Patch

I&apos;d like to add another default test, so this is not committable yet.  It is reviewable tho :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479578</commentid>
    <comment_count>2</comment_count>
      <attachid>355075</attachid>
    <who name="Matt Baker">mattbaker</who>
    <bug_when>2018-11-16 13:11:08 -0800</bug_when>
    <thetext>Comment on attachment 355075
Patch

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

r=me

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:85
&gt; +localizedStrings[&quot;Add default audits&quot;] = &quot;Add default audits&quot;;

Push button text should use title case: &quot;Add Default Audits&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479579</commentid>
    <comment_count>3</comment_count>
    <who name="Matt Baker">mattbaker</who>
    <bug_when>2018-11-16 13:11:38 -0800</bug_when>
    <thetext>Since this just adds the accessibility audit, the name of the bug should probably be retitled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479580</commentid>
    <comment_count>4</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2018-11-16 13:15:03 -0800</bug_when>
    <thetext>(In reply to Matt Baker from comment #3)
&gt; Since this just adds the accessibility audit, the name of the bug should
&gt; probably be retitled.
I’m planning on adding another audit later today (reuploading a new patch).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479764</commentid>
    <comment_count>5</comment_count>
      <attachid>355165</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2018-11-16 17:12:05 -0800</bug_when>
    <thetext>Created attachment 355165
Patch

Any feedback on the default audits I&apos;ve written would be greatly appreciated :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479770</commentid>
    <comment_count>6</comment_count>
      <attachid>355167</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2018-11-16 17:19:39 -0800</bug_when>
    <thetext>Created attachment 355167
Patch

Use template strings for audit test names and functions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479788</commentid>
    <comment_count>7</comment_count>
      <attachid>355167</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-16 18:14:53 -0800</bug_when>
    <thetext>Comment on attachment 355167
Patch

Clearing flags on attachment: 355167

Committed r238334: &lt;https://trac.webkit.org/changeset/238334&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479789</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-16 18:14:55 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479790</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-11-16 18:15:27 -0800</bug_when>
    <thetext>&lt;rdar://problem/46145781&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355075</attachid>
            <date>2018-11-16 10:37:15 -0800</date>
            <delta_ts>2018-11-16 17:12:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191758-20181116103714.patch</filename>
            <type>text/plain</type>
            <size>17585</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IGY4NDI4YmY5Y2NkMThiNTY0NWY2ZTA2YmM4NzJl
Y2IyM2UxY2IyNmYuLjc5YzAwYWQ5NjI5NjAwNTYxZTE2OTJjYTAxOGQxODQxNzhhZGNjNGEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE4LTExLTE2ICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBB
dWRpdDogYWRkIGRlZmF1bHQgdGVzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5MTc1OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVycy9BdWRpdE1hbmFnZXIu
anM6CisgICAgICAgIChXSS5BdWRpdE1hbmFnZXIucHJvdG90eXBlLmxvYWRTdG9yZWRUZXN0cyk6
CisgICAgICAgIChXSS5BdWRpdE1hbmFnZXIucHJvdG90eXBlLmFkZERlZmF1bHRUZXN0c0lmTmVl
ZGVkKTogQWRkZWQuCisgICAgICAgIElmIHRoZXJlIGFyZSBubyBwcmV2aW91c2x5IHNhdmVkIHRl
c3RzIGluIHRoZSBkYXRhYmFzZSwgYXV0b21hdGljYWxseSBhZGQgdGhlIGRlZmF1bHQgc2V0Lgor
CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFu
ZWwuanM6CisgICAgICAgIChXSS5BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFuZWwucHJvdG90eXBl
Ll9hZGRUZXN0KToKKyAgICAgICAgKFdJLkF1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90
b3R5cGUuX2FkZFJlc3VsdCk6CisgICAgICAgIChXSS5BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFu
ZWwucHJvdG90eXBlLl9oYW5kbGVBdWRpdFRlc3RSZW1vdmVkKToKKyAgICAgICAgKiBVc2VySW50
ZXJmYWNlL1ZpZXdzL0F1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5jc3M6CisgICAgICAgICgu
c2lkZWJhciA+IC5wYW5lbC5uYXZpZ2F0aW9uLmF1ZGl0Lmhhcy1yZXN1bHRzOm5vdCguaGFzLXRl
c3RzKSA+IC5jb250ZW50ID4gLm1lc3NhZ2UtdGV4dC12aWV3KTogQWRkZWQuCisgICAgICAgICgu
c2lkZWJhciA+IC5wYW5lbC5uYXZpZ2F0aW9uLmF1ZGl0Lmhhcy1yZXN1bHRzOm5vdCguaGFzLXRl
c3RzKSA+IC5jb250ZW50ID4gLm1lc3NhZ2UtdGV4dC12aWV3ID4gLm1lc3NhZ2UpOiBBZGRlZC4K
KyAgICAgICAgKC5zaWRlYmFyID4gLnBhbmVsLm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3VsdHM6
bm90KC5oYXMtdGVzdHMpID4gLmNvbnRlbnQgPiAubWVzc2FnZS10ZXh0LXZpZXcgPiBidXR0b24p
OiBBZGRlZC4KKyAgICAgICAgV2hlbiB0aGUgbGFzdCB0ZXN0IGlzIHJlbW92ZWQsIHNob3cgYSBw
bGFjZWhvbGRlciBtZXNzYWdlIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIHJlLWFkZCB0aGUKKyAg
ICAgICAgZGVmYXVsdCBzZXQgb2YgdGVzdHMuCisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1Zp
ZXdzL05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5OYXZpZ2F0aW9uU2lk
ZWJhclBhbmVsLnByb3RvdHlwZS5zaG93RW1wdHlDb250ZW50UGxhY2Vob2xkZXIpOgorICAgICAg
ICAoV0kuTmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2NyZWF0ZUVtcHR5Q29udGVu
dFBsYWNlaG9sZGVySWZOZWVkZWQpOgorCisgICAgICAgICogTG9jYWxpemF0aW9ucy9lbi5scHJv
ai9sb2NhbGl6ZWRTdHJpbmdzLmpzOgorCiAyMDE4LTExLTE0ICBNYXR0IEJha2VyICA8bWF0dGJh
a2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBUYWJsZSBzaG91bGQgcmVj
YWxjdWxhdGUgc2Nyb2xsYWJsZSBoZWlnaHQgd2hlbiByZXNpemVkCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRTdHJpbmdz
LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHByb2ovbG9jYWxp
emVkU3RyaW5ncy5qcwppbmRleCAwMjJlOTc1Njc1ZDE3ODA1NTIyZTg5MmQwZmIxNjRlNzUwOWU1
N2NhLi5jMGJmMDYwNGVlMzAzYTFhZjExYmJkNzI2YWNiYmFkMDM5NTFiNTNmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRT
dHJpbmdzLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxw
cm9qL2xvY2FsaXplZFN0cmluZ3MuanMKQEAgLTgyLDYgKzgyLDcgQEAgbG9jYWxpemVkU3RyaW5n
c1siQWRkIE5ldyBDbGFzcyJdID0gIkFkZCBOZXcgQ2xhc3MiOwogbG9jYWxpemVkU3RyaW5nc1si
QWRkIE5ldyBQcm9iZSBFeHByZXNzaW9uIl0gPSAiQWRkIE5ldyBQcm9iZSBFeHByZXNzaW9uIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkFkZCBOZXcgV2F0Y2ggRXhwcmVzc2lvbiJdID0gIkFkZCBOZXcg
V2F0Y2ggRXhwcmVzc2lvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBZGQgYSBDbGFzcyJdID0gIkFk
ZCBhIENsYXNzIjsKK2xvY2FsaXplZFN0cmluZ3NbIkFkZCBkZWZhdWx0IGF1ZGl0cyJdID0gIkFk
ZCBkZWZhdWx0IGF1ZGl0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBZGQgbmV3IGJyZWFrcG9pbnQg
YWN0aW9uIGFmdGVyIHRoaXMgYWN0aW9uIl0gPSAiQWRkIG5ldyBicmVha3BvaW50IGFjdGlvbiBh
ZnRlciB0aGlzIGFjdGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBZGQgbmV3IHJ1bGUiXSA9ICJB
ZGQgbmV3IHJ1bGUiOwogbG9jYWxpemVkU3RyaW5nc1siQWRkIHByb2JlIGV4cHJlc3Npb24iXSA9
ICJBZGQgcHJvYmUgZXhwcmVzc2lvbiI7CkBAIC0zNjAsNiArMzYxLDE1IEBAIGxvY2FsaXplZFN0
cmluZ3NbIkVuYWJsZSBwYWludCBmbGFzaGluZyJdID0gIkVuYWJsZSBwYWludCBmbGFzaGluZyI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJFbmFibGVkIl0gPSAiRW5hYmxlZCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJFbmNvZGVkIl0gPSAiRW5jb2RlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJFbmNvZGluZyJd
ID0gIkVuY29kaW5nIjsKK2xvY2FsaXplZFN0cmluZ3NbIkVuc3VyZSA8YXJlYT4gZWxlbWVudHMg
b2YgaW1hZ2UgbWFwcyBoYXZlIGFsdGVybmF0ZSB0ZXh0Il0gPSAiRW5zdXJlIDxhcmVhPiBlbGVt
ZW50cyBvZiBpbWFnZSBtYXBzIGhhdmUgYWx0ZXJuYXRlIHRleHQiOworbG9jYWxpemVkU3RyaW5n
c1siRW5zdXJlIDxkdD4gYW5kIDxkZD4gZWxlbWVudHMgYXJlIGNvbnRhaW5lZCBieSBhIDxkbD4i
XSA9ICJFbnN1cmUgPGR0PiBhbmQgPGRkPiBlbGVtZW50cyBhcmUgY29udGFpbmVkIGJ5IGEgPGRs
PiI7Citsb2NhbGl6ZWRTdHJpbmdzWyJFbnN1cmUgPGltZz4gZWxlbWVudHMgaGF2ZSBhbHRlcm5h
dGUgdGV4dCJdID0gIkVuc3VyZSA8aW1nPiBlbGVtZW50cyBoYXZlIGFsdGVybmF0ZSB0ZXh0IjsK
K2xvY2FsaXplZFN0cmluZ3NbIkVuc3VyZSA8bWV0YSBodHRwLWVxdWl2PXJlZnJlc2g+IGlzIG5v
dCB1c2VkIl0gPSAiRW5zdXJlIDxtZXRhIGh0dHAtZXF1aXY9cmVmcmVzaD4gaXMgbm90IHVzZWQi
OworbG9jYWxpemVkU3RyaW5nc1siRW5zdXJlIGV4YWN0bHkgb25lIDxsZWdlbmQ+IGV4aXN0cyBw
ZXIgZm9ybSJdID0gIkVuc3VyZSBleGFjdGx5IG9uZSA8bGVnZW5kPiBleGlzdHMgcGVyIGZvcm0i
OworbG9jYWxpemVkU3RyaW5nc1siRW5zdXJlIGZvcm1zIGhhdmUgYXQgbGVhc3Qgb25lIGlucHV0
Il0gPSAiRW5zdXJlIGZvcm1zIGhhdmUgYXQgbGVhc3Qgb25lIGlucHV0IjsKK2xvY2FsaXplZFN0
cmluZ3NbIkVuc3VyZSBoaWRkZW49dHJ1ZSBpcyBub3QgcHJlc2VudCBvbiB0aGUgZG9jdW1lbnQg
Ym9keSJdID0gIkVuc3VyZSBoaWRkZW49dHJ1ZSBpcyBub3QgcHJlc2VudCBvbiB0aGUgZG9jdW1l
bnQgYm9keSI7Citsb2NhbGl6ZWRTdHJpbmdzWyJFbnN1cmUgbGVnZW5kIGlzIGZpcnN0IGNoaWxk
IGluIGZvcm0iXSA9ICJFbnN1cmUgbGVnZW5kIGlzIGZpcnN0IGNoaWxkIGluIGZvcm0iOworbG9j
YWxpemVkU3RyaW5nc1siRW5zdXJlIHRhYmluZGV4IGlzIGEgbnVtYmVyIl0gPSAiRW5zdXJlIHRh
YmluZGV4IGlzIGEgbnVtYmVyIjsKIGxvY2FsaXplZFN0cmluZ3NbIkVudGlyZSBSZWNvcmRpbmci
XSA9ICJFbnRpcmUgUmVjb3JkaW5nIjsKIGxvY2FsaXplZFN0cmluZ3NbIkVycm9yIl0gPSAiRXJy
b3IiOwogbG9jYWxpemVkU3RyaW5nc1siRXJyb3I6ICJdID0gIkVycm9yOiAiOwpAQCAtNDE1LDYg
KzQyNSw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIkZvcm1hdDogUkdCIl0gPSAiRm9ybWF0OiBSR0Ii
OwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBSR0JBIl0gPSAiRm9ybWF0OiBSR0JBIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkZvcm1hdDogU2hvcnQgSGV4Il0gPSAiRm9ybWF0OiBTaG9ydCBIZXgi
OwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBTaG9ydCBIZXggd2l0aCBBbHBoYSJdID0gIkZv
cm1hdDogU2hvcnQgSGV4IHdpdGggQWxwaGEiOworbG9jYWxpemVkU3RyaW5nc1siRm9ybXMiXSA9
ICJGb3JtcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3J3YXJkICglcykiXSA9ICJGb3J3YXJkICgl
cykiOwogbG9jYWxpemVkU3RyaW5nc1siRnJhZ21lbnQiXSA9ICJGcmFnbWVudCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJGcmFnbWVudCBTaGFkZXIiXSA9ICJGcmFnbWVudCBTaGFkZXIiOwpAQCAtNTkz
LDYgKzYwNCw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIk5vIFJlc3VsdHMgRm91bmQiXSA9ICJObyBS
ZXN1bHRzIEZvdW5kIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIFNlYXJjaCBSZXN1bHRzIl0gPSAi
Tm8gU2VhcmNoIFJlc3VsdHMiOwogbG9jYWxpemVkU3RyaW5nc1siTm8gV2F0Y2ggRXhwcmVzc2lv
bnMiXSA9ICJObyBXYXRjaCBFeHByZXNzaW9ucyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBhdWRp
dCBzZWxlY3RlZCJdID0gIk5vIGF1ZGl0IHNlbGVjdGVkIjsKK2xvY2FsaXplZFN0cmluZ3NbIk5v
IGF1ZGl0cyJdID0gIk5vIGF1ZGl0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBtYXRjaGluZyBB
UklBIHJvbGUiXSA9ICJObyBtYXRjaGluZyBBUklBIHJvbGUiOwogbG9jYWxpemVkU3RyaW5nc1si
Tm8gcHJldmlldyBhdmFpbGFibGUiXSA9ICJObyBwcmV2aWV3IGF2YWlsYWJsZSI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJObyByZXF1ZXN0IGNvb2tpZXMuIl0gPSAiTm8gcmVxdWVzdCBjb29raWVzLiI7
CkBAIC04ODcsNiArODk5LDEwIEBAIGxvY2FsaXplZFN0cmluZ3NbIlRhYnMiXSA9ICJUYWJzIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlRhZyJdID0gIlRhZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWtl
IHNuYXBzaG90Il0gPSAiVGFrZSBzbmFwc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUZW1wbGF0
ZSBDb250ZW50Il0gPSAiVGVtcGxhdGUgQ29udGVudCI7Citsb2NhbGl6ZWRTdHJpbmdzWyJUZXN0
cyBmb3IgZWxlbWVudCBhY2Nlc3NpYmlsaXR5IGlzc3Vlcy4iXSA9ICJUZXN0cyBmb3IgZWxlbWVu
dCBhY2Nlc3NpYmlsaXR5IGlzc3Vlcy4iOworbG9jYWxpemVkU3RyaW5nc1siVGVzdHMgZm9yIGVs
ZW1lbnQgYXR0cmlidXRlIGFjY2Vzc2liaWxpdHkgaXNzdWVzLiJdID0gIlRlc3RzIGZvciBlbGVt
ZW50IGF0dHJpYnV0ZSBhY2Nlc3NpYmlsaXR5IGlzc3Vlcy4iOworbG9jYWxpemVkU3RyaW5nc1si
VGVzdHMgZm9yIHdheXMgdG8gaW1wcm92ZSBhY2Nlc3NpYmlsaXR5LiJdID0gIlRlc3RzIGZvciB3
YXlzIHRvIGltcHJvdmUgYWNjZXNzaWJpbGl0eS4iOworbG9jYWxpemVkU3RyaW5nc1siVGVzdHMg
dGhlIGFjY2Vzc2liaWxpdHkgb2YgZm9ybSBlbGVtZW50cy4iXSA9ICJUZXN0cyB0aGUgYWNjZXNz
aWJpbGl0eSBvZiBmb3JtIGVsZW1lbnRzLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUZXh0Il0gPSAi
VGV4dCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUZXh0IEZyYW1lIl0gPSAiVGV4dCBGcmFtZSI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJUZXh0IE5vZGUiXSA9ICJUZXh0IE5vZGUiOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvQXVkaXRNYW5h
Z2VyLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMv
QXVkaXRNYW5hZ2VyLmpzCmluZGV4IGQ3NDc4NjhjODRkYTNlOGNlM2QwMWM1ZDQyMzg4ZTdlNzc1
NTRjMjAuLjgyOTM4YzZiYWU0OTBhYmQzODQwZmQxMTAzYTRkNGE3YmNkMTQ4ODMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0F1ZGl0
TWFuYWdlci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250
cm9sbGVycy9BdWRpdE1hbmFnZXIuanMKQEAgLTE0OCw2ICsxNDgsOCBAQCBXSS5BdWRpdE1hbmFn
ZXIgPSBjbGFzcyBBdWRpdE1hbmFnZXIgZXh0ZW5kcyBXSS5PYmplY3QKIAogICAgICAgICAgICAg
ICAgIHRoaXMuX2FkZFRlc3QodGVzdCk7CiAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHRo
aXMuYWRkRGVmYXVsdFRlc3RzSWZOZWVkZWQoKTsKICAgICAgICAgfSk7CiAgICAgfQogCkBAIC0x
ODEsNiArMTgzLDQwIEBAIFdJLkF1ZGl0TWFuYWdlciA9IGNsYXNzIEF1ZGl0TWFuYWdlciBleHRl
bmRzIFdJLk9iamVjdAogICAgICAgICAgICAgaW5kZXg6IHRoaXMuX3Jlc3VsdHMubGVuZ3RoIC0g
MSwKICAgICAgICAgfSk7CiAgICAgfQorCisgICAgYWRkRGVmYXVsdFRlc3RzSWZOZWVkZWQoKQor
ICAgIHsKKyAgICAgICAgaWYgKHRoaXMuX3Rlc3RzLmxlbmd0aCkKKyAgICAgICAgICAgIHJldHVy
bjsKKworICAgICAgICBjb25zdCBkZWZhdWx0VGVzdHMgPSBbCisgICAgICAgICAgICBuZXcgV0ku
QXVkaXRUZXN0R3JvdXAoV0kuVUlTdHJpbmcoIkFjY2Vzc2liaWxpdHkiKSwgWworICAgICAgICAg
ICAgICAgIG5ldyBXSS5BdWRpdFRlc3RHcm91cChXSS5VSVN0cmluZygiQXR0cmlidXRlcyIpLCBb
CisgICAgICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJpbWctYWx0IiwgImZ1
bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKFwiaW1nXCIpKS5maWx0ZXIoKGltZykgPT4gIWltZy5hbHQgfHwgIWltZy5hbHQu
bGVuZ3RoKTsgcmV0dXJuIHsgbGV2ZWw6IGRvbU5vZGVzLmxlbmd0aCA/IFwiZmFpbFwiIDogXCJw
YXNzXCIsIGRvbU5vZGVzLCBkb21BdHRyaWJ1dGVzOiBbXCJhbHRcIl0gfTsgfSIsIHtkZXNjcmlw
dGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSA8aW1nPiBlbGVtZW50cyBoYXZlIGFsdGVybmF0ZSB0
ZXh0Iil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoImFyZWEt
YWx0IiwgImZ1bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50Lmdl
dEVsZW1lbnRzQnlUYWdOYW1lKFwiYXJlYVwiKSkuZmlsdGVyKChhcmVhKSA9PiAhYXJlYS5hbHQg
fHwgIWFyZWEuYWx0Lmxlbmd0aCk7IHJldHVybiB7IGxldmVsOiBkb21Ob2Rlcy5sZW5ndGggPyBc
ImZhaWxcIiA6IFwicGFzc1wiLCBkb21Ob2RlcywgZG9tQXR0cmlidXRlczogW1wiYWx0XCJdIH07
IH0iLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJFbnN1cmUgPGFyZWE+IGVsZW1lbnRzIG9m
IGltYWdlIG1hcHMgaGF2ZSBhbHRlcm5hdGUgdGV4dCIpfSksCisgICAgICAgICAgICAgICAgICAg
IG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJ2YWxpZC10YWJpbmRleCIsICJmdW5jdGlvbigpIHsgbGV0
IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiKlt0YWJp
bmRleF1cIikpIC5maWx0ZXIoKG5vZGUpID0+IHsgbGV0IHRhYmluZGV4ID0gbm9kZS5nZXRBdHRy
aWJ1dGUoXCJ0YWJpbmRleFwiKTsgaWYgKCF0YWJpbmRleCkgcmV0dXJuIGZhbHNlOyB0YWJpbmRl
eCA9IHBhcnNlSW50KHRhYmluZGV4KTsgcmV0dXJuIGlzTmFOKHRhYmluZGV4KSB8fCAodGFiaW5k
ZXggIT09IDAgJiYgdGFiaW5kZXggIT09IC0xKTsgfSk7IHJldHVybiB7IGxldmVsOiBkb21Ob2Rl
cy5sZW5ndGggPyBcImZhaWxcIiA6IFwicGFzc1wiLCBkb21Ob2RlcywgZG9tQXR0cmlidXRlczog
W1widGFiaW5kZXhcIl0gfTsgfSIsIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSB0
YWJpbmRleCBpcyBhIG51bWJlciIpfSksCisgICAgICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRp
dFRlc3RDYXNlKCJmcmFtZS10aXRsZSIsICJmdW5jdGlvbigpIHsgbGV0IGRvbU5vZGVzID0gQXJy
YXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiaWZyYW1lLCBmcmFtZVwiKSkgLmZp
bHRlcigobm9kZSkgPT4geyBsZXQgdGl0bGUgPSBub2RlLmdldEF0dHJpYnV0ZShcInRpdGxlXCIp
OyByZXR1cm4gIXRpdGxlIHx8ICF0aXRsZS50cmltKCkubGVuZ3RoOyB9KTsgcmV0dXJuIHsgbGV2
ZWw6IGRvbU5vZGVzLmxlbmd0aCA/IFwiZmFpbFwiIDogXCJwYXNzXCIsIGRvbU5vZGVzLCBkb21B
dHRyaWJ1dGVzOiBbXCJ0aXRsZVwiXSB9OyB9Iiwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygi
RW5zdXJlIDxhcmVhPiBlbGVtZW50cyBvZiBpbWFnZSBtYXBzIGhhdmUgYWx0ZXJuYXRlIHRleHQi
KX0pLAorICAgICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZSgiaGlkZGVuLWJv
ZHkiLCAiZnVuY3Rpb24oKSB7IGxldCBkb21Ob2RlcyA9IEFycmF5LmZyb20oZG9jdW1lbnQucXVl
cnlTZWxlY3RvckFsbChcImJvZHlbaGlkZGVuXVwiKSkuZmlsdGVyKChib2R5KSA9PiBib2R5Lmhp
ZGRlbik7IHJldHVybiB7IGxldmVsOiBkb21Ob2Rlcy5sZW5ndGggPyBcImZhaWxcIiA6IFwicGFz
c1wiLCBkb21Ob2RlcywgZG9tQXR0cmlidXRlczogW1wiaGlkZGVuXCJdIH07IH0iLCB7ZGVzY3Jp
cHRpb246IFdJLlVJU3RyaW5nKCJFbnN1cmUgaGlkZGVuPXRydWUgaXMgbm90IHByZXNlbnQgb24g
dGhlIGRvY3VtZW50IGJvZHkiKX0pLAorICAgICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRU
ZXN0Q2FzZSgibWV0YS1yZWZyZXNoIiwgImZ1bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJh
eS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJtZXRhW2h0dHAtZXF1aXY9cmVmcmVz
aF1cIikpOyByZXR1cm4geyBsZXZlbDogZG9tTm9kZXMubGVuZ3RoID8gXCJ3YXJuXCIgOiBcInBh
c3NcIiwgZG9tTm9kZXMsIGRvbUF0dHJpYnV0ZXM6IFtcImh0dHAtZXF1aXZcIl0gfTsgfSIsIHtk
ZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSA8bWV0YSBodHRwLWVxdWl2PXJlZnJlc2g+
IGlzIG5vdCB1c2VkIil9KSwKKyAgICAgICAgICAgICAgICBdLCB7ZGVzY3JpcHRpb246IFdJLlVJ
U3RyaW5nKCJUZXN0cyBmb3IgZWxlbWVudCBhdHRyaWJ1dGUgYWNjZXNzaWJpbGl0eSBpc3N1ZXMu
Iil9KSwKKyAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0R3JvdXAoV0kuVUlTdHJpbmco
IkVsZW1lbnRzIiksIFsKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2Uo
ImJsaW5rIiwgImZ1bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50
LmdldEVsZW1lbnRzQnlUYWdOYW1lKFwiYmxpbmtcIikpOyByZXR1cm4geyBsZXZlbDogZG9tTm9k
ZXMubGVuZ3RoID8gXCJ3YXJuXCIgOiBcInBhc3NcIiwgZG9tTm9kZXMgfTsgfSIsIHtkZXNjcmlw
dGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSBoaWRkZW49dHJ1ZSBpcyBub3QgcHJlc2VudCBvbiB0
aGUgZG9jdW1lbnQgYm9keSIpfSksCisgICAgICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRl
c3RDYXNlKCJtYXJxdWVlIiwgImZ1bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJheS5mcm9t
KGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKFwibWFycXVlZVwiKSk7IHJldHVybiB7IGxl
dmVsOiBkb21Ob2Rlcy5sZW5ndGggPyBcIndhcm5cIiA6IFwicGFzc1wiLCBkb21Ob2RlcyB9OyB9
Iiwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiRW5zdXJlIGhpZGRlbj10cnVlIGlzIG5vdCBw
cmVzZW50IG9uIHRoZSBkb2N1bWVudCBib2R5Iil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3
IFdJLkF1ZGl0VGVzdENhc2UoImRsaXRlbSIsICJmdW5jdGlvbigpIHsgZnVuY3Rpb24gY2hlY2so
bm9kZSkgeyBpZiAoIW5vZGUpIHsgcmV0dXJuIGZhbHNlOyB9IGlmIChub2RlLm5vZGVOYW1lID09
PSBcIkREXCIpIHsgcmV0dXJuIHRydWU7IH0gcmV0dXJuIGNoZWNrKG5vZGUucGFyZW50Tm9kZSk7
IH0gbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwi
ZHQsIGRkXCIpKS5maWx0ZXIoY2hlY2spOyByZXR1cm4geyBsZXZlbDogZG9tTm9kZXMubGVuZ3Ro
ID8gXCJ3YXJuXCIgOiBcInBhc3NcIiwgZG9tTm9kZXMgfTsgfSIsIHtkZXNjcmlwdGlvbjogV0ku
VUlTdHJpbmcoIkVuc3VyZSA8ZHQ+IGFuZCA8ZGQ+IGVsZW1lbnRzIGFyZSBjb250YWluZWQgYnkg
YSA8ZGw+Iil9KSwKKyAgICAgICAgICAgICAgICBdLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5n
KCJUZXN0cyBmb3IgZWxlbWVudCBhY2Nlc3NpYmlsaXR5IGlzc3Vlcy4iKX0pLAorICAgICAgICAg
ICAgICAgIG5ldyBXSS5BdWRpdFRlc3RHcm91cChXSS5VSVN0cmluZygiRm9ybXMiKSwgWworICAg
ICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZSgib25lLWxlZ2VuZCIsICJmdW5j
dGlvbigpIHsgbGV0IGZvcm1MZWdlbmRzTWFwID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNl
bGVjdG9yQWxsKFwiZm9ybSBsZWdlbmRcIikpLnJlZHVjZSgoYWNjdW11bGF0b3IsIG5vZGUpID0+
IHsgbGV0IGV4aXN0aW5nID0gYWNjdW11bGF0b3IuZ2V0KG5vZGUuZm9ybSk7IGlmICghZXhpc3Rp
bmcpIHsgZXhpc3RpbmcgPSBbXTsgYWNjdW11bGF0b3Iuc2V0KG5vZGUuZm9ybSwgZXhpc3Rpbmcp
OyB9IGV4aXN0aW5nLnB1c2gobm9kZSk7IHJldHVybiBhY2N1bXVsYXRvcjsgfSwgbmV3IE1hcCk7
IGxldCBkb21Ob2RlcyA9IEFycmF5LmZyb20oZm9ybUxlZ2VuZHNNYXAudmFsdWVzKCkpLnJlZHVj
ZSgoYWNjdW11bGF0b3IsIGxlZ2VuZHMpID0+IGFjY3VtdWxhdG9yLmNvbmNhdCh9bGVnZW5kcyks
IFtdKTsgcmV0dXJuIHsgbGV2ZWw6IGRvbU5vZGVzLmxlbmd0aCA/IFwid2FyblwiIDogXCJwYXNz
XCIsIGRvbU5vZGVzIH07IH0iLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJFbnN1cmUgZXhh
Y3RseSBvbmUgPGxlZ2VuZD4gZXhpc3RzIHBlciBmb3JtIil9KSwKKyAgICAgICAgICAgICAgICAg
ICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoImxlZ2VuZC1maXJzdC1jaGlsZCIsICJmdW5jdGlvbigp
IHsgbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwi
Zm9ybSA+IGxlZ2VuZDpub3QoOmZpcnN0LWNoaWxkKVwiKSk7IHJldHVybiB7IGxldmVsOiBkb21O
b2Rlcy5sZW5ndGggPyBcIndhcm5cIiA6IFwicGFzc1wiLCBkb21Ob2RlcyB9OyB9Iiwge2Rlc2Ny
aXB0aW9uOiBXSS5VSVN0cmluZygiRW5zdXJlIGxlZ2VuZCBpcyBmaXJzdCBjaGlsZCBpbiBmb3Jt
Iil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoImZvcm0taW5w
dXQiLCAiZnVuY3Rpb24oKSB7IGxldCBkb21Ob2RlcyA9IEFycmF5LmZyb20oZG9jdW1lbnQuZ2V0
RWxlbWVudHNCeVRhZ05hbWVzKFwiZm9ybVwiKSkgLmZpbHRlcihub2RlID0+ICFub2RlLmVsZW1l
bnRzLmxlbmd0aCk7IHJldHVybiB7IGxldmVsOiBkb21Ob2Rlcy5sZW5ndGggPyBcIndhcm5cIiA6
IFwicGFzc1wiLCBkb21Ob2RlcyB9OyB9Iiwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiRW5z
dXJlIGZvcm1zIGhhdmUgYXQgbGVhc3Qgb25lIGlucHV0Iil9KSwKKyAgICAgICAgICAgICAgICBd
LCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJUZXN0cyB0aGUgYWNjZXNzaWJpbGl0eSBvZiBm
b3JtIGVsZW1lbnRzLiIpfSksCisgICAgICAgICAgICBdLCB7ZGVzY3JpcHRpb246IFdJLlVJU3Ry
aW5nKCJUZXN0cyBmb3Igd2F5cyB0byBpbXByb3ZlIGFjY2Vzc2liaWxpdHkuIil9KQorICAgICAg
ICBdOworCisgICAgICAgIGZvciAobGV0IHRlc3Qgb2YgZGVmYXVsdFRlc3RzKSB7CisgICAgICAg
ICAgICB0aGlzLl9hZGRUZXN0KHRlc3QpOworICAgICAgICAgICAgV0kub2JqZWN0U3RvcmVzLmF1
ZGl0cy5hZGRPYmplY3QodGVzdCk7CisgICAgICAgIH0KKyAgICB9CiB9OwogCiBXSS5BdWRpdE1h
bmFnZXIuUnVubmluZ1N0YXRlID0gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmNzcyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0TmF2aWdhdGlvblNp
ZGViYXJQYW5lbC5jc3MKaW5kZXggOTBkNmVhYjM3MDc3MWY5YTAyYjg0YzAxYjBlMTQ1OWY4NmJh
ZTc5YS4uOWZhODhkOGRiMmUxMTQ4NDUyNDAzMTc5NThlNmY0OWMyYzY3ZjMwNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZpZ2F0
aW9uU2lkZWJhclBhbmVsLmNzcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFuZWwuY3NzCkBAIC0yNiwzICsyNiwx
NiBAQAogLnNpZGViYXIgPiAucGFuZWwubmF2aWdhdGlvbi5hdWRpdCA+IC5jb250ZW50IHsKICAg
ICB0b3A6IHZhcigtLW5hdmlnYXRpb24tYmFyLWhlaWdodCk7CiB9CisKKy5zaWRlYmFyID4gLnBh
bmVsLm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3VsdHM6bm90KC5oYXMtdGVzdHMpID4gLmNvbnRl
bnQgPiAubWVzc2FnZS10ZXh0LXZpZXcgeworICAgIHBvc2l0aW9uOiBpbml0aWFsOworICAgIGJv
cmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpOworfQorCisuc2lkZWJh
ciA+IC5wYW5lbC5uYXZpZ2F0aW9uLmF1ZGl0Lmhhcy1yZXN1bHRzOm5vdCguaGFzLXRlc3RzKSA+
IC5jb250ZW50ID4gLm1lc3NhZ2UtdGV4dC12aWV3ID4gLm1lc3NhZ2UgeworICAgIGRpc3BsYXk6
IG5vbmU7Cit9CisKKy5zaWRlYmFyID4gLnBhbmVsLm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3Vs
dHM6bm90KC5oYXMtdGVzdHMpID4gLmNvbnRlbnQgPiAubWVzc2FnZS10ZXh0LXZpZXcgPiBidXR0
b24geworICAgIG1hcmdpbjogOHB4IDAgN3B4OworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBhbmVs
LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZp
Z2F0aW9uU2lkZWJhclBhbmVsLmpzCmluZGV4IDU2NThkYTdjZjhjZmZlZTUyZDc0NGFmYjBkODA0
ZGFiMzJjMWZjYTQuLjcyNzQyZThlOGNkMWI0ODgxZDRiNTQ3Mzk0NTFkMzlmNWRhYjc5NWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0
TmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKQEAgLTEwNSwx
NSArMTA1LDIxIEBAIFdJLkF1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIEF1ZGl0
TmF2aWdhdGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hCiAKICAgICBfYWRkVGVzdCh0ZXN0
KQogICAgIHsKKyAgICAgICAgdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoImhhcy10ZXN0cyIp
OworCiAgICAgICAgIHRoaXMuX3VwZGF0ZVN0YXJ0U3RvcEJ1dHRvbk5hdmlnYXRpb25JdGVtU3Rh
dGUoKTsKIAogICAgICAgICB0aGlzLmNvbnRlbnRUcmVlT3V0bGluZS5pbnNlcnRDaGlsZChuZXcg
V0kuQXVkaXRUcmVlRWxlbWVudCh0ZXN0KSwgdGhpcy5jb250ZW50VHJlZU91dGxpbmUuY2hpbGRy
ZW4uaW5kZXhPZih0aGlzLl9yZXN1bHRzRm9sZGVyVHJlZUVsZW1lbnQpKTsKIAogICAgICAgICB0
aGlzLl9yZXN1bHRzRm9sZGVyVHJlZUVsZW1lbnQuaGlkZGVuID0gIXRoaXMuX3Jlc3VsdHNGb2xk
ZXJUcmVlRWxlbWVudC5jaGlsZHJlbi5sZW5ndGg7CisKKyAgICAgICAgdGhpcy5oaWRlRW1wdHlD
b250ZW50UGxhY2Vob2xkZXIoKTsKICAgICB9CiAKICAgICBfYWRkUmVzdWx0KHJlc3VsdCwgaW5k
ZXgpCiAgICAgeworICAgICAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaGFzLXJlc3Vs
dHMiKTsKKwogICAgICAgICB0aGlzLl91cGRhdGVTdGFydFN0b3BCdXR0b25OYXZpZ2F0aW9uSXRl
bVN0YXRlKCk7CiAKICAgICAgICAgdGhpcy5fcmVzdWx0c0ZvbGRlclRyZWVFbGVtZW50LmhpZGRl
biA9IGZhbHNlOwpAQCAtMTUyLDYgKzE1OCwyOCBAQCBXSS5BdWRpdE5hdmlnYXRpb25TaWRlYmFy
UGFuZWwgPSBjbGFzcyBBdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5OYQog
ICAgICAgICBsZXQgdHJlZUVsZW1lbnQgPSB0aGlzLnRyZWVFbGVtZW50Rm9yUmVwcmVzZW50ZWRP
YmplY3QodGVzdCk7CiAgICAgICAgIHRoaXMuY29udGVudFRyZWVPdXRsaW5lLnJlbW92ZUNoaWxk
KHRyZWVFbGVtZW50KTsKIAorICAgICAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LnRvZ2dsZSgi
aGFzLXRlc3RzIiwgISFXSS5hdWRpdE1hbmFnZXIudGVzdHMubGVuZ3RoKTsKKworICAgICAgICBp
ZiAoIVdJLmF1ZGl0TWFuYWdlci50ZXN0cy5sZW5ndGgpIHsKKyAgICAgICAgICAgIGxldCBjb250
ZW50UGxhY2Vob2xkZXIgPSBXSS5jcmVhdGVNZXNzYWdlVGV4dFZpZXcoV0kuVUlTdHJpbmcoIk5v
IGF1ZGl0cyIpKTsKKworICAgICAgICAgICAgbGV0IGRlZmF1bHRCdXR0b25FbGVtZW50ID0gY29u
dGVudFBsYWNlaG9sZGVyLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRv
biIpKTsKKyAgICAgICAgICAgIGRlZmF1bHRCdXR0b25FbGVtZW50LnRleHRDb250ZW50ID0gV0ku
VUlTdHJpbmcoIkFkZCBkZWZhdWx0IGF1ZGl0cyIpOworICAgICAgICAgICAgZGVmYXVsdEJ1dHRv
bkVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCAoKSA9PiB7CisgICAgICAgICAgICAg
ICAgV0kuYXVkaXRNYW5hZ2VyLmFkZERlZmF1bHRUZXN0c0lmTmVlZGVkKCk7CisgICAgICAgICAg
ICB9KTsKKworICAgICAgICAgICAgY29udGVudFBsYWNlaG9sZGVyID0gdGhpcy5zaG93RW1wdHlD
b250ZW50UGxhY2Vob2xkZXIoY29udGVudFBsYWNlaG9sZGVyKTsKKworICAgICAgICAgICAgaWYg
KFdJLmF1ZGl0TWFuYWdlci5yZXN1bHRzLmxlbmd0aCkgeworICAgICAgICAgICAgICAgIGNvbnNv
bGUuYXNzZXJ0KHRoaXMuY29udGVudFRyZWVPdXRsaW5lLmNoaWxkcmVuWzBdID09PSB0aGlzLl9y
ZXN1bHRzRm9sZGVyVHJlZUVsZW1lbnQpOworCisgICAgICAgICAgICAgICAgLy8gTW92ZSB0aGUg
cGxhY2Vob2xkZXIgdG8gYmUgdGhlIGZpcnN0IGVsZW1lbnQgaW4gdGhlIGNvbnRlbnQgYXJlYSwg
d2hlcmUgaXQgd2lsbAorICAgICAgICAgICAgICAgIC8vIGJlIHN0eWxlZCBzdWNoIHRoYXQgb25s
eSB0aGUgYnV0dG9uIGlzIHZpc2libGUuCisgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50Vmll
dy5lbGVtZW50Lmluc2VydEJlZm9yZShjb250ZW50UGxhY2Vob2xkZXIsIHRoaXMuY29udGVudFZp
ZXcuZWxlbWVudC5maXJzdENoaWxkKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAg
ICAgIHRoaXMuX3VwZGF0ZVN0YXJ0U3RvcEJ1dHRvbk5hdmlnYXRpb25JdGVtU3RhdGUoKTsKICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9OYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzCmluZGV4IDNhYjFkYmFm
NzRhNjY3NWI4ZTY5MDk1N2RmN2FjOGNmNWEzNzI5ZjguLjVlYmVhZTkxZjgxYWQ0MmU3YzZlNWU0
Nzk1ODc4YjExODVhNTZiMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmF2aWdhdGlvblNpZGViYXJQYW5lbC5q
cwpAQCAtMjY3LDEyICsyNjcsMTQgQEAgV0kuTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNz
IE5hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5TaWRlYmFyUGFuZWwKIAogICAgICAg
ICBsZXQgZW1wdHlDb250ZW50UGxhY2Vob2xkZXJFbGVtZW50ID0gdGhpcy5fY3JlYXRlRW1wdHlD
b250ZW50UGxhY2Vob2xkZXJJZk5lZWRlZCh0cmVlT3V0bGluZSwgbWVzc2FnZSk7CiAgICAgICAg
IGlmIChlbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1lbnQucGFyZW50Tm9kZSkKLSAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgICAgIHJldHVybiBlbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVs
ZW1lbnQ7CiAKICAgICAgICAgbGV0IGVtcHR5Q29udGVudFBsYWNlaG9sZGVyUGFyZW50RWxlbWVu
dCA9IHRyZWVPdXRsaW5lLmVsZW1lbnQucGFyZW50Tm9kZTsKICAgICAgICAgZW1wdHlDb250ZW50
UGxhY2Vob2xkZXJQYXJlbnRFbGVtZW50LmFwcGVuZENoaWxkKGVtcHR5Q29udGVudFBsYWNlaG9s
ZGVyRWxlbWVudCk7CiAKICAgICAgICAgdGhpcy5fdXBkYXRlQ29udGVudE92ZXJmbG93U2hhZG93
VmlzaWJpbGl0eSgpOworCisgICAgICAgIHJldHVybiBlbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVs
ZW1lbnQ7CiAgICAgfQogCiAgICAgaGlkZUVtcHR5Q29udGVudFBsYWNlaG9sZGVyKHRyZWVPdXRs
aW5lKQpAQCAtNzI1LDcgKzcyNyw3IEBAIFdJLk5hdmlnYXRpb25TaWRlYmFyUGFuZWwgPSBjbGFz
cyBOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuU2lkZWJhclBhbmVsCiAgICAgICAg
IGlmIChlbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1lbnQpCiAgICAgICAgICAgICByZXR1cm4g
ZW1wdHlDb250ZW50UGxhY2Vob2xkZXJFbGVtZW50OwogCi0gICAgICAgIGVtcHR5Q29udGVudFBs
YWNlaG9sZGVyRWxlbWVudCA9IFdJLmNyZWF0ZU1lc3NhZ2VUZXh0VmlldyhtZXNzYWdlKTsKKyAg
ICAgICAgZW1wdHlDb250ZW50UGxhY2Vob2xkZXJFbGVtZW50ID0gbWVzc2FnZSBpbnN0YW5jZW9m
IE5vZGUgPyBtZXNzYWdlIDogV0kuY3JlYXRlTWVzc2FnZVRleHRWaWV3KG1lc3NhZ2UpOwogICAg
ICAgICB0aGlzLl9lbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1lbnRzLnNldCh0cmVlT3V0bGlu
ZSwgZW1wdHlDb250ZW50UGxhY2Vob2xkZXJFbGVtZW50KTsKIAogICAgICAgICByZXR1cm4gZW1w
dHlDb250ZW50UGxhY2Vob2xkZXJFbGVtZW50Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355165</attachid>
            <date>2018-11-16 17:12:05 -0800</date>
            <delta_ts>2018-11-16 17:19:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191758-20181116171205.patch</filename>
            <type>text/plain</type>
            <size>23905</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IGY4NDI4YmY5Y2NkMThiNTY0NWY2ZTA2YmM4NzJl
Y2IyM2UxY2IyNmYuLmE3ZjUzMzI4Mjk2NTIwYWFlOGJhZmU5ZWUzMWY3YzFiMmMzOTRlY2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE4LTExLTE2ICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBB
dWRpdDogYWRkIGRlZmF1bHQgdGVzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5MTc1OAorCisgICAgICAgIFJldmlld2VkIGJ5IE1hdHQgQmFrZXIu
CisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0F1ZGl0TWFuYWdlci5qczoK
KyAgICAgICAgKFdJLkF1ZGl0TWFuYWdlci5wcm90b3R5cGUubG9hZFN0b3JlZFRlc3RzKToKKyAg
ICAgICAgKFdJLkF1ZGl0TWFuYWdlci5wcm90b3R5cGUuYWRkRGVmYXVsdFRlc3RzSWZOZWVkZWQp
OiBBZGRlZC4KKyAgICAgICAgSWYgdGhlcmUgYXJlIG5vIHByZXZpb3VzbHkgc2F2ZWQgdGVzdHMg
aW4gdGhlIGRhdGFiYXNlLCBhdXRvbWF0aWNhbGx5IGFkZCB0aGUgZGVmYXVsdCBzZXQuCisKKyAg
ICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5q
czoKKyAgICAgICAgKFdJLkF1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2Fk
ZFRlc3QpOgorICAgICAgICAoV0kuQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlw
ZS5fYWRkUmVzdWx0KToKKyAgICAgICAgKFdJLkF1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5w
cm90b3R5cGUuX2hhbmRsZUF1ZGl0VGVzdFJlbW92ZWQpOgorICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvVmlld3MvQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmNzczoKKyAgICAgICAgKC5zaWRl
YmFyID4gLnBhbmVsLm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3VsdHM6bm90KC5oYXMtdGVzdHMp
ID4gLmNvbnRlbnQgPiAubWVzc2FnZS10ZXh0LXZpZXcpOiBBZGRlZC4KKyAgICAgICAgKC5zaWRl
YmFyID4gLnBhbmVsLm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3VsdHM6bm90KC5oYXMtdGVzdHMp
ID4gLmNvbnRlbnQgPiAubWVzc2FnZS10ZXh0LXZpZXcgPiAubWVzc2FnZSk6IEFkZGVkLgorICAg
ICAgICAoLnNpZGViYXIgPiAucGFuZWwubmF2aWdhdGlvbi5hdWRpdC5oYXMtcmVzdWx0czpub3Qo
Lmhhcy10ZXN0cykgPiAuY29udGVudCA+IC5tZXNzYWdlLXRleHQtdmlldyA+IGJ1dHRvbik6IEFk
ZGVkLgorICAgICAgICBXaGVuIHRoZSBsYXN0IHRlc3QgaXMgcmVtb3ZlZCwgc2hvdyBhIHBsYWNl
aG9sZGVyIG1lc3NhZ2UgdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gcmUtYWRkIHRoZQorICAgICAg
ICBkZWZhdWx0IHNldCBvZiB0ZXN0cy4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3Mv
TmF2aWdhdGlvblNpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJLk5hdmlnYXRpb25TaWRlYmFy
UGFuZWwucHJvdG90eXBlLnNob3dFbXB0eUNvbnRlbnRQbGFjZWhvbGRlcik6CisgICAgICAgIChX
SS5OYXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlwZS5fY3JlYXRlRW1wdHlDb250ZW50UGxh
Y2Vob2xkZXJJZk5lZWRlZCk6CisKKyAgICAgICAgKiBMb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xv
Y2FsaXplZFN0cmluZ3MuanM6CisKIDIwMTgtMTEtMTQgIE1hdHQgQmFrZXIgIDxtYXR0YmFrZXJA
YXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFRhYmxlIHNob3VsZCByZWNhbGN1
bGF0ZSBzY3JvbGxhYmxlIGhlaWdodCB3aGVuIHJlc2l6ZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRT
dHJpbmdzLmpzCmluZGV4IDAyMmU5NzU2NzVkMTc4MDU1MjJlODkyZDBmYjE2NGU3NTA5ZTU3Y2Eu
LjJmOWZiYjU2YWU1NjdiZmE3OWZlMTBiZTcyOGYyOGU2MDY5MDRhZDEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2FsaXplZFN0cmlu
Z3MuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHByb2ov
bG9jYWxpemVkU3RyaW5ncy5qcwpAQCAtNzcsNiArNzcsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJB
Y3Rpdml0eSBWaWV3ZXIiXSA9ICJBY3Rpdml0eSBWaWV3ZXIiOwogbG9jYWxpemVkU3RyaW5nc1si
QWRkIl0gPSAiQWRkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFkZCBBY3Rpb24iXSA9ICJBZGQgQWN0
aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFkZCBCcmVha3BvaW50Il0gPSAiQWRkIEJyZWFrcG9p
bnQiOworbG9jYWxpemVkU3RyaW5nc1siQWRkIERlZmF1bHQgQXVkaXRzIl0gPSAiQWRkIERlZmF1
bHQgQXVkaXRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFkZCBOZXciXSA9ICJBZGQgTmV3IjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkFkZCBOZXcgQ2xhc3MiXSA9ICJBZGQgTmV3IENsYXNzIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkFkZCBOZXcgUHJvYmUgRXhwcmVzc2lvbiJdID0gIkFkZCBOZXcgUHJvYmUg
RXhwcmVzc2lvbiI7CkBAIC0yNzksNiArMjgwLDcgQEAgbG9jYWxpemVkU3RyaW5nc1siRGVjb2Rl
ZCJdID0gIkRlY29kZWQiOwogbG9jYWxpemVkU3RyaW5nc1siRGVsZXRlIl0gPSAiRGVsZXRlIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkRlbGV0ZSBCcmVha3BvaW50Il0gPSAiRGVsZXRlIEJyZWFrcG9p
bnQiOwogbG9jYWxpemVkU3RyaW5nc1siRGVsZXRlIEJyZWFrcG9pbnRzIl0gPSAiRGVsZXRlIEJy
ZWFrcG9pbnRzIjsKK2xvY2FsaXplZFN0cmluZ3NbIkRlbW8gQXVkaXQiXSA9ICJEZW1vIEF1ZGl0
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkRldGFjaCBpbnRvIHNlcGFyYXRlIHdpbmRvdyJdID0gIkRl
dGFjaCBpbnRvIHNlcGFyYXRlIHdpbmRvdyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJEZXRhY2hlZCJd
ID0gIkRldGFjaGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkRldGFpbHMiXSA9ICJEZXRhaWxzIjsK
QEAgLTM2MCw2ICszNjIsMTUgQEAgbG9jYWxpemVkU3RyaW5nc1siRW5hYmxlIHBhaW50IGZsYXNo
aW5nIl0gPSAiRW5hYmxlIHBhaW50IGZsYXNoaW5nIjsKIGxvY2FsaXplZFN0cmluZ3NbIkVuYWJs
ZWQiXSA9ICJFbmFibGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkVuY29kZWQiXSA9ICJFbmNvZGVk
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkVuY29kaW5nIl0gPSAiRW5jb2RpbmciOworbG9jYWxpemVk
U3RyaW5nc1siRW5zdXJlIDxhcmVhPiBlbGVtZW50cyBvZiBpbWFnZSBtYXBzIGhhdmUgYWx0ZXJu
YXRlIHRleHQuIl0gPSAiRW5zdXJlIDxhcmVhPiBlbGVtZW50cyBvZiBpbWFnZSBtYXBzIGhhdmUg
YWx0ZXJuYXRlIHRleHQuIjsKK2xvY2FsaXplZFN0cmluZ3NbIkVuc3VyZSA8ZHQ+IGFuZCA8ZGQ+
IGVsZW1lbnRzIGFyZSBjb250YWluZWQgYnkgYSA8ZGw+LiJdID0gIkVuc3VyZSA8ZHQ+IGFuZCA8
ZGQ+IGVsZW1lbnRzIGFyZSBjb250YWluZWQgYnkgYSA8ZGw+LiI7Citsb2NhbGl6ZWRTdHJpbmdz
WyJFbnN1cmUgPGltZz4gZWxlbWVudHMgaGF2ZSBhbHRlcm5hdGUgdGV4dC4iXSA9ICJFbnN1cmUg
PGltZz4gZWxlbWVudHMgaGF2ZSBhbHRlcm5hdGUgdGV4dC4iOworbG9jYWxpemVkU3RyaW5nc1si
RW5zdXJlIDxtZXRhIGh0dHAtZXF1aXY9cmVmcmVzaD4gaXMgbm90IHVzZWQuIl0gPSAiRW5zdXJl
IDxtZXRhIGh0dHAtZXF1aXY9cmVmcmVzaD4gaXMgbm90IHVzZWQuIjsKK2xvY2FsaXplZFN0cmlu
Z3NbIkVuc3VyZSBleGFjdGx5IG9uZSA8bGVnZW5kPiBleGlzdHMgcGVyIGZvcm0uIl0gPSAiRW5z
dXJlIGV4YWN0bHkgb25lIDxsZWdlbmQ+IGV4aXN0cyBwZXIgZm9ybS4iOworbG9jYWxpemVkU3Ry
aW5nc1siRW5zdXJlIGZvcm1zIGhhdmUgYXQgbGVhc3Qgb25lIGlucHV0LiJdID0gIkVuc3VyZSBm
b3JtcyBoYXZlIGF0IGxlYXN0IG9uZSBpbnB1dC4iOworbG9jYWxpemVkU3RyaW5nc1siRW5zdXJl
IGhpZGRlbj10cnVlIGlzIG5vdCBwcmVzZW50IG9uIHRoZSBkb2N1bWVudCBib2R5LiJdID0gIkVu
c3VyZSBoaWRkZW49dHJ1ZSBpcyBub3QgcHJlc2VudCBvbiB0aGUgZG9jdW1lbnQgYm9keS4iOwor
bG9jYWxpemVkU3RyaW5nc1siRW5zdXJlIGxlZ2VuZCBpcyBmaXJzdCBjaGlsZCBpbiBmb3JtLiJd
ID0gIkVuc3VyZSBsZWdlbmQgaXMgZmlyc3QgY2hpbGQgaW4gZm9ybS4iOworbG9jYWxpemVkU3Ry
aW5nc1siRW5zdXJlIHRhYmluZGV4IGlzIGEgbnVtYmVyLiJdID0gIkVuc3VyZSB0YWJpbmRleCBp
cyBhIG51bWJlci4iOwogbG9jYWxpemVkU3RyaW5nc1siRW50aXJlIFJlY29yZGluZyJdID0gIkVu
dGlyZSBSZWNvcmRpbmciOwogbG9jYWxpemVkU3RyaW5nc1siRXJyb3IiXSA9ICJFcnJvciI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJFcnJvcjogIl0gPSAiRXJyb3I6ICI7CkBAIC00MTUsNiArNDI2LDcg
QEAgbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBSR0IiXSA9ICJGb3JtYXQ6IFJHQiI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJGb3JtYXQ6IFJHQkEiXSA9ICJGb3JtYXQ6IFJHQkEiOwogbG9jYWxpemVk
U3RyaW5nc1siRm9ybWF0OiBTaG9ydCBIZXgiXSA9ICJGb3JtYXQ6IFNob3J0IEhleCI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJGb3JtYXQ6IFNob3J0IEhleCB3aXRoIEFscGhhIl0gPSAiRm9ybWF0OiBT
aG9ydCBIZXggd2l0aCBBbHBoYSI7Citsb2NhbGl6ZWRTdHJpbmdzWyJGb3JtcyJdID0gIkZvcm1z
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkZvcndhcmQgKCVzKSJdID0gIkZvcndhcmQgKCVzKSI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJGcmFnbWVudCJdID0gIkZyYWdtZW50IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkZyYWdtZW50IFNoYWRlciJdID0gIkZyYWdtZW50IFNoYWRlciI7CkBAIC01OTMsNiArNjA1
LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siTm8gUmVzdWx0cyBGb3VuZCJdID0gIk5vIFJlc3VsdHMg
Rm91bmQiOwogbG9jYWxpemVkU3RyaW5nc1siTm8gU2VhcmNoIFJlc3VsdHMiXSA9ICJObyBTZWFy
Y2ggUmVzdWx0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBXYXRjaCBFeHByZXNzaW9ucyJdID0g
Ik5vIFdhdGNoIEV4cHJlc3Npb25zIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIGF1ZGl0IHNlbGVj
dGVkIl0gPSAiTm8gYXVkaXQgc2VsZWN0ZWQiOworbG9jYWxpemVkU3RyaW5nc1siTm8gYXVkaXRz
Il0gPSAiTm8gYXVkaXRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIG1hdGNoaW5nIEFSSUEgcm9s
ZSJdID0gIk5vIG1hdGNoaW5nIEFSSUEgcm9sZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBwcmV2
aWV3IGF2YWlsYWJsZSJdID0gIk5vIHByZXZpZXcgYXZhaWxhYmxlIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIk5vIHJlcXVlc3QgY29va2llcy4iXSA9ICJObyByZXF1ZXN0IGNvb2tpZXMuIjsKQEAgLTcy
OSw2ICs3NDIsOCBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJSZXNwb25zZSBIZWFkZXJzIl0gPSAiUmVz
cG9uc2UgSGVhZGVycyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXNwb25zZToiXSA9ICJSZXNwb25z
ZToiOwogbG9jYWxpemVkU3RyaW5nc1siUmVzdGFydCAoJXMpIl0gPSAiUmVzdGFydCAoJXMpIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlJlc3RhcnQgYW5pbWF0aW9uIl0gPSAiUmVzdGFydCBhbmltYXRp
b24iOworbG9jYWxpemVkU3RyaW5nc1siUmVzdWx0IERhdGEiXSA9ICJSZXN1bHQgRGF0YSI7Cits
b2NhbGl6ZWRTdHJpbmdzWyJSZXN1bHQgTGV2ZWxzIl0gPSAiUmVzdWx0IExldmVscyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJSZXN1bHRzIl0gPSAiUmVzdWx0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJS
ZXN1bWUgUHJvY2Vzc2luZyJdID0gIlJlc3VtZSBQcm9jZXNzaW5nIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlJlc3VtZSBUaHJlYWQiXSA9ICJSZXN1bWUgVGhyZWFkIjsKQEAgLTg4Nyw2ICs5MDIsMTAg
QEAgbG9jYWxpemVkU3RyaW5nc1siVGFicyJdID0gIlRhYnMiOwogbG9jYWxpemVkU3RyaW5nc1si
VGFnIl0gPSAiVGFnIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRha2Ugc25hcHNob3QiXSA9ICJUYWtl
IHNuYXBzaG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRlbXBsYXRlIENvbnRlbnQiXSA9ICJUZW1w
bGF0ZSBDb250ZW50IjsKK2xvY2FsaXplZFN0cmluZ3NbIlRlc3RzIGZvciBlbGVtZW50IGFjY2Vz
c2liaWxpdHkgaXNzdWVzLiJdID0gIlRlc3RzIGZvciBlbGVtZW50IGFjY2Vzc2liaWxpdHkgaXNz
dWVzLiI7Citsb2NhbGl6ZWRTdHJpbmdzWyJUZXN0cyBmb3IgZWxlbWVudCBhdHRyaWJ1dGUgYWNj
ZXNzaWJpbGl0eSBpc3N1ZXMuIl0gPSAiVGVzdHMgZm9yIGVsZW1lbnQgYXR0cmlidXRlIGFjY2Vz
c2liaWxpdHkgaXNzdWVzLiI7Citsb2NhbGl6ZWRTdHJpbmdzWyJUZXN0cyBmb3Igd2F5cyB0byBp
bXByb3ZlIGFjY2Vzc2liaWxpdHkuIl0gPSAiVGVzdHMgZm9yIHdheXMgdG8gaW1wcm92ZSBhY2Nl
c3NpYmlsaXR5LiI7Citsb2NhbGl6ZWRTdHJpbmdzWyJUZXN0cyB0aGUgYWNjZXNzaWJpbGl0eSBv
ZiBmb3JtIGVsZW1lbnRzLiJdID0gIlRlc3RzIHRoZSBhY2Nlc3NpYmlsaXR5IG9mIGZvcm0gZWxl
bWVudHMuIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRleHQiXSA9ICJUZXh0IjsKIGxvY2FsaXplZFN0
cmluZ3NbIlRleHQgRnJhbWUiXSA9ICJUZXh0IEZyYW1lIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRl
eHQgTm9kZSJdID0gIlRleHQgTm9kZSI7CkBAIC04OTgsOCArOTE3LDE5IEBAIGxvY2FsaXplZFN0
cmluZ3NbIlRoZSDigJwlc+KAnCBhdWRpdCBwYXNzZWQiXSA9ICJUaGUg4oCcJXPigJwgYXVkaXQg
cGFzc2VkIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRoZSDigJwlc+KAnCBhdWRpdCB0aHJldyBhbiBl
cnJvciJdID0gIlRoZSDigJwlc+KAnCBhdWRpdCB0aHJldyBhbiBlcnJvciI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJUaGUg4oCcJXPigJwgYXVkaXQgd2FybmVkIl0gPSAiVGhlIOKAnCVz4oCcIGF1ZGl0
IHdhcm5lZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUaGUg4oCcJXPigJ1cbnRhYmxlIGlzIGVtcHR5
LiJdID0gIlRoZSDigJwlc+KAnVxudGFibGUgaXMgZW1wdHkuIjsKK2xvY2FsaXplZFN0cmluZ3Nb
IlRoZXNlIGFyZSBhbGwgb2YgdGhlIGRpZmZlcmVudCB0ZXN0IHJlc3VsdCBsZXZlbHMuIl0gPSAi
VGhlc2UgYXJlIGFsbCBvZiB0aGUgZGlmZmVyZW50IHRlc3QgcmVzdWx0IGxldmVscy4iOworbG9j
YWxpemVkU3RyaW5nc1siVGhlc2UgYXJlIGFsbCBvZiB0aGUgZGlmZmVyZW50IHR5cGVzIG9mIGRh
dGEgdGhhdCBjYW4gYmUgcmV0dXJuZWQgd2l0aCB0aGUgdGVzdCByZXN1bHQuIl0gPSAiVGhlc2Ug
YXJlIGFsbCBvZiB0aGUgZGlmZmVyZW50IHR5cGVzIG9mIGRhdGEgdGhhdCBjYW4gYmUgcmV0dXJu
ZWQgd2l0aCB0aGUgdGVzdCByZXN1bHQuIjsKK2xvY2FsaXplZFN0cmluZ3NbIlRoZXNlIHRlc3Rz
IHNlcnZlIGFzIGEgZGVtb25zdHJhdGlvbiBvZiB0aGUgZnVuY3Rpb25hbGl0eSBhbmQgc3RydWN0
dXJlIG9mIGF1ZGl0cy4iXSA9ICJUaGVzZSB0ZXN0cyBzZXJ2ZSBhcyBhIGRlbW9uc3RyYXRpb24g
b2YgdGhlIGZ1bmN0aW9uYWxpdHkgYW5kIHN0cnVjdHVyZSBvZiBhdWRpdHMuIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlRoaXMgYWN0aW9uIGNhdXNlcyBubyB2aXN1YWwgY2hhbmdlIl0gPSAiVGhpcyBh
Y3Rpb24gY2F1c2VzIG5vIHZpc3VhbCBjaGFuZ2UiOwogbG9jYWxpemVkU3RyaW5nc1siVGhpcyBh
Y3Rpb24gbW92ZXMgdGhlIHBhdGggb3V0c2lkZSB0aGUgdmlzaWJsZSBhcmVhIl0gPSAiVGhpcyBh
Y3Rpb24gbW92ZXMgdGhlIHBhdGggb3V0c2lkZSB0aGUgdmlzaWJsZSBhcmVhIjsKK2xvY2FsaXpl
ZFN0cmluZ3NbIlRoaXMgaXMgYW4gZXhhbXBsZSBvZiBob3cgZXJyb3JzIGFyZSBzaG93bi4gVGhl
IGVycm9yIHdhcyB0aHJvd24gbWFudWFsbHksIGJ1dCBleGVjdXRpb24gZXJyb3JzIHdpbGwgYXBw
ZWFyIGluIHRoZSBzYW1lIHdheS4iXSA9ICJUaGlzIGlzIGFuIGV4YW1wbGUgb2YgaG93IGVycm9y
cyBhcmUgc2hvd24uIFRoZSBlcnJvciB3YXMgdGhyb3duIG1hbnVhbGx5LCBidXQgZXhlY3V0aW9u
IGVycm9ycyB3aWxsIGFwcGVhciBpbiB0aGUgc2FtZSB3YXkuIjsKK2xvY2FsaXplZFN0cmluZ3Nb
IlRoaXMgaXMgYW4gZXhhbXBsZSBvZiBob3cgcmVzdWx0IERPTSBub2RlcyBhcmUgc2hvd24uIEl0
IHdpbGwgcGFzcyB3aXRoIGFsbCBlbGVtZW50cyB3aXRoIGFuIGlkIGF0dHJpYnV0ZS4iXSA9ICJU
aGlzIGlzIGFuIGV4YW1wbGUgb2YgaG93IHJlc3VsdCBET00gbm9kZXMgYXJlIHNob3duLiBJdCB3
aWxsIHBhc3Mgd2l0aCBhbGwgZWxlbWVudHMgd2l0aCBhbiBpZCBhdHRyaWJ1dGUuIjsKK2xvY2Fs
aXplZFN0cmluZ3NbIlRoaXMgaXMgYW4gZXhhbXBsZSBvZiBob3cgcmVzdWx0IERPTSBub2RlcyBh
cmUgc2hvd24uIEl0IHdpbGwgcGFzcyB3aXRoIHRoZSA8Ym9keT4gZWxlbWVudC4iXSA9ICJUaGlz
IGlzIGFuIGV4YW1wbGUgb2YgaG93IHJlc3VsdCBET00gbm9kZXMgYXJlIHNob3duLiBJdCB3aWxs
IHBhc3Mgd2l0aCB0aGUgPGJvZHk+IGVsZW1lbnQuIjsKK2xvY2FsaXplZFN0cmluZ3NbIlRoaXMg
aXMgd2hhdCB0aGUgcmVzdWx0IG9mIGEgZmFpbGluZyB0ZXN0IHdpdGggbm8gZGF0YSBsb29rcyBs
aWtlLiJdID0gIlRoaXMgaXMgd2hhdCB0aGUgcmVzdWx0IG9mIGEgZmFpbGluZyB0ZXN0IHdpdGgg
bm8gZGF0YSBsb29rcyBsaWtlLiI7Citsb2NhbGl6ZWRTdHJpbmdzWyJUaGlzIGlzIHdoYXQgdGhl
IHJlc3VsdCBvZiBhIHBhc3NpbmcgdGVzdCB3aXRoIG5vIGRhdGEgbG9va3MgbGlrZS4iXSA9ICJU
aGlzIGlzIHdoYXQgdGhlIHJlc3VsdCBvZiBhIHBhc3NpbmcgdGVzdCB3aXRoIG5vIGRhdGEgbG9v
a3MgbGlrZS4iOworbG9jYWxpemVkU3RyaW5nc1siVGhpcyBpcyB3aGF0IHRoZSByZXN1bHQgb2Yg
YSB0ZXN0IHRoYXQgdGhyZXcgYW4gZXJyb3Igd2l0aCBubyBkYXRhIGxvb2tzIGxpa2UuIl0gPSAi
VGhpcyBpcyB3aGF0IHRoZSByZXN1bHQgb2YgYSB0ZXN0IHRoYXQgdGhyZXcgYW4gZXJyb3Igd2l0
aCBubyBkYXRhIGxvb2tzIGxpa2UuIjsKK2xvY2FsaXplZFN0cmluZ3NbIlRoaXMgaXMgd2hhdCB0
aGUgcmVzdWx0IG9mIGEgdW5zdXBwb3J0ZWQgdGVzdCB3aXRoIG5vIGRhdGEgbG9va3MgbGlrZS4i
XSA9ICJUaGlzIGlzIHdoYXQgdGhlIHJlc3VsdCBvZiBhIHVuc3VwcG9ydGVkIHRlc3Qgd2l0aCBu
byBkYXRhIGxvb2tzIGxpa2UuIjsKK2xvY2FsaXplZFN0cmluZ3NbIlRoaXMgaXMgd2hhdCB0aGUg
cmVzdWx0IG9mIGEgd2FybmluZyB0ZXN0IHdpdGggbm8gZGF0YSBsb29rcyBsaWtlLiJdID0gIlRo
aXMgaXMgd2hhdCB0aGUgcmVzdWx0IG9mIGEgd2FybmluZyB0ZXN0IHdpdGggbm8gZGF0YSBsb29r
cyBsaWtlLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUaGlzIG9iamVjdCBpcyBhIHJvb3QiXSA9ICJU
aGlzIG9iamVjdCBpcyBhIHJvb3QiOwogbG9jYWxpemVkU3RyaW5nc1siVGhpcyBvYmplY3QgaXMg
cmVmZXJlbmNlZCBieSBpbnRlcm5hbCBvYmplY3RzIl0gPSAiVGhpcyBvYmplY3QgaXMgcmVmZXJl
bmNlZCBieSBpbnRlcm5hbCBvYmplY3RzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRoaXMgdGV4dCBy
ZXNvdXJjZSBjb3VsZCBiZW5lZml0IGZyb20gY29tcHJlc3Npb24iXSA9ICJUaGlzIHRleHQgcmVz
b3VyY2UgY291bGQgYmVuZWZpdCBmcm9tIGNvbXByZXNzaW9uIjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0F1ZGl0TWFuYWdlci5q
cyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0F1ZGl0
TWFuYWdlci5qcwppbmRleCBkNzQ3ODY4Yzg0ZGEzZThjZTNkMDFjNWQ0MjM4OGU3ZTc3NTU0YzIw
Li5mZmI0Zjg5NTg3ZjI3ZTAxODIwMTlhOWViN2E5YTJmNWY1YmI1ZmNiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9BdWRpdE1hbmFn
ZXIuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxl
cnMvQXVkaXRNYW5hZ2VyLmpzCkBAIC0xNDgsNiArMTQ4LDggQEAgV0kuQXVkaXRNYW5hZ2VyID0g
Y2xhc3MgQXVkaXRNYW5hZ2VyIGV4dGVuZHMgV0kuT2JqZWN0CiAKICAgICAgICAgICAgICAgICB0
aGlzLl9hZGRUZXN0KHRlc3QpOwogICAgICAgICAgICAgfQorCisgICAgICAgICAgICB0aGlzLmFk
ZERlZmF1bHRUZXN0c0lmTmVlZGVkKCk7CiAgICAgICAgIH0pOwogICAgIH0KIApAQCAtMTgxLDYg
KzE4Myw1NCBAQCBXSS5BdWRpdE1hbmFnZXIgPSBjbGFzcyBBdWRpdE1hbmFnZXIgZXh0ZW5kcyBX
SS5PYmplY3QKICAgICAgICAgICAgIGluZGV4OiB0aGlzLl9yZXN1bHRzLmxlbmd0aCAtIDEsCiAg
ICAgICAgIH0pOwogICAgIH0KKworICAgIGFkZERlZmF1bHRUZXN0c0lmTmVlZGVkKCkKKyAgICB7
CisgICAgICAgIGlmICh0aGlzLl90ZXN0cy5sZW5ndGgpCisgICAgICAgICAgICByZXR1cm47CisK
KyAgICAgICAgY29uc3QgZGVmYXVsdFRlc3RzID0gWworICAgICAgICAgICAgbmV3IFdJLkF1ZGl0
VGVzdEdyb3VwKFdJLlVJU3RyaW5nKCJEZW1vIEF1ZGl0IiksIFsKKyAgICAgICAgICAgICAgICBu
ZXcgV0kuQXVkaXRUZXN0R3JvdXAoV0kuVUlTdHJpbmcoIlJlc3VsdCBMZXZlbHMiKSwgWworICAg
ICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZSgibGV2ZWwtcGFzcyIsICJmdW5j
dGlvbigpIHsgcmV0dXJuIHtsZXZlbDogXCJwYXNzXCJ9OyB9Iiwge2Rlc2NyaXB0aW9uOiBXSS5V
SVN0cmluZygiVGhpcyBpcyB3aGF0IHRoZSByZXN1bHQgb2YgYSBwYXNzaW5nIHRlc3Qgd2l0aCBu
byBkYXRhIGxvb2tzIGxpa2UuIil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0
VGVzdENhc2UoImxldmVsLXdhcm4iLCAiZnVuY3Rpb24oKSB7IHJldHVybiB7bGV2ZWw6IFwid2Fy
blwifTsgfSIsIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIlRoaXMgaXMgd2hhdCB0aGUgcmVz
dWx0IG9mIGEgd2FybmluZyB0ZXN0IHdpdGggbm8gZGF0YSBsb29rcyBsaWtlLiIpfSksCisgICAg
ICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJsZXZlbC1mYWlsIiwgImZ1bmN0
aW9uKCkgeyByZXR1cm4ge2xldmVsOiBcImZhaWxcIn07IH0iLCB7ZGVzY3JpcHRpb246IFdJLlVJ
U3RyaW5nKCJUaGlzIGlzIHdoYXQgdGhlIHJlc3VsdCBvZiBhIGZhaWxpbmcgdGVzdCB3aXRoIG5v
IGRhdGEgbG9va3MgbGlrZS4iKX0pLAorICAgICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRU
ZXN0Q2FzZSgibGV2ZWwtZXJyb3IiLCAiZnVuY3Rpb24oKSB7IHJldHVybiB7bGV2ZWw6IFwiZXJy
b3JcIn07IH0iLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJUaGlzIGlzIHdoYXQgdGhlIHJl
c3VsdCBvZiBhIHRlc3QgdGhhdCB0aHJldyBhbiBlcnJvciB3aXRoIG5vIGRhdGEgbG9va3MgbGlr
ZS4iKX0pLAorICAgICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZSgibGV2ZWwt
dW5zdXBwb3J0ZWQiLCAiZnVuY3Rpb24oKSB7IHJldHVybiB7bGV2ZWw6IFwidW5zdXBwb3J0ZWRc
In07IH0iLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJUaGlzIGlzIHdoYXQgdGhlIHJlc3Vs
dCBvZiBhIHVuc3VwcG9ydGVkIHRlc3Qgd2l0aCBubyBkYXRhIGxvb2tzIGxpa2UuIil9KSwKKyAg
ICAgICAgICAgICAgICBdLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJUaGVzZSBhcmUgYWxs
IG9mIHRoZSBkaWZmZXJlbnQgdGVzdCByZXN1bHQgbGV2ZWxzLiIpfSksCisgICAgICAgICAgICAg
ICAgbmV3IFdJLkF1ZGl0VGVzdEdyb3VwKFdJLlVJU3RyaW5nKCJSZXN1bHQgRGF0YSIpLCBbCisg
ICAgICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJkYXRhLWRvbU5vZGVzIiwg
ImZ1bmN0aW9uKCkgeyByZXR1cm4ge2RvbU5vZGVzOiBbZG9jdW1lbnQuYm9keV0sIGxldmVsOiBc
InBhc3NcIn07IH0iLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJUaGlzIGlzIGFuIGV4YW1w
bGUgb2YgaG93IHJlc3VsdCBET00gbm9kZXMgYXJlIHNob3duLiBJdCB3aWxsIHBhc3Mgd2l0aCB0
aGUgPGJvZHk+IGVsZW1lbnQuIil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0
VGVzdENhc2UoImRhdGEtZG9tQXR0cmlidXRlcyIsICJmdW5jdGlvbigpIHsgcmV0dXJuIHtkb21O
b2RlczogQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiW2lkXVwiKSksIGRv
bUF0dHJpYnV0ZXM6IFtcImlkXCJdLCBsZXZlbDogXCJwYXNzXCJ9OyB9Iiwge2Rlc2NyaXB0aW9u
OiBXSS5VSVN0cmluZygiVGhpcyBpcyBhbiBleGFtcGxlIG9mIGhvdyByZXN1bHQgRE9NIG5vZGVz
IGFyZSBzaG93bi4gSXQgd2lsbCBwYXNzIHdpdGggYWxsIGVsZW1lbnRzIHdpdGggYW4gaWQgYXR0
cmlidXRlLiIpfSksCisgICAgICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJk
YXRhLWVycm9ycyIsICJmdW5jdGlvbigpIHsgdGhyb3cgRXJyb3IoXCJ0aGlzIGVycm9yIHdhcyB0
aHJvd24gZnJvbSBpbnNpZGUgdGhlIGF1ZGl0IHRlc3QgY29kZS5cIik7IH0iLCB7ZGVzY3JpcHRp
b246IFdJLlVJU3RyaW5nKCJUaGlzIGlzIGFuIGV4YW1wbGUgb2YgaG93IGVycm9ycyBhcmUgc2hv
d24uIFRoZSBlcnJvciB3YXMgdGhyb3duIG1hbnVhbGx5LCBidXQgZXhlY3V0aW9uIGVycm9ycyB3
aWxsIGFwcGVhciBpbiB0aGUgc2FtZSB3YXkuIil9KSwKKyAgICAgICAgICAgICAgICBdLCB7ZGVz
Y3JpcHRpb246IFdJLlVJU3RyaW5nKCJUaGVzZSBhcmUgYWxsIG9mIHRoZSBkaWZmZXJlbnQgdHlw
ZXMgb2YgZGF0YSB0aGF0IGNhbiBiZSByZXR1cm5lZCB3aXRoIHRoZSB0ZXN0IHJlc3VsdC4iKX0p
LAorICAgICAgICAgICAgXSwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiVGhlc2UgdGVzdHMg
c2VydmUgYXMgYSBkZW1vbnN0cmF0aW9uIG9mIHRoZSBmdW5jdGlvbmFsaXR5IGFuZCBzdHJ1Y3R1
cmUgb2YgYXVkaXRzLiIpfSksCisgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0R3JvdXAoV0ku
VUlTdHJpbmcoIkFjY2Vzc2liaWxpdHkiKSwgWworICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRp
dFRlc3RHcm91cChXSS5VSVN0cmluZygiQXR0cmlidXRlcyIpLCBbCisgICAgICAgICAgICAgICAg
ICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJpbWctYWx0IiwgImZ1bmN0aW9uKCkgeyBsZXQgZG9t
Tm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKFwiaW1nXCIp
KS5maWx0ZXIoKGltZykgPT4gIWltZy5hbHQgfHwgIWltZy5hbHQubGVuZ3RoKTsgcmV0dXJuIHsg
bGV2ZWw6IGRvbU5vZGVzLmxlbmd0aCA/IFwiZmFpbFwiIDogXCJwYXNzXCIsIGRvbU5vZGVzLCBk
b21BdHRyaWJ1dGVzOiBbXCJhbHRcIl0gfTsgfSIsIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmco
IkVuc3VyZSA8aW1nPiBlbGVtZW50cyBoYXZlIGFsdGVybmF0ZSB0ZXh0LiIpfSksCisgICAgICAg
ICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJhcmVhLWFsdCIsICJmdW5jdGlvbigp
IHsgbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFt
ZShcImFyZWFcIikpLmZpbHRlcigoYXJlYSkgPT4gIWFyZWEuYWx0IHx8ICFhcmVhLmFsdC5sZW5n
dGgpOyByZXR1cm4geyBsZXZlbDogZG9tTm9kZXMubGVuZ3RoID8gXCJmYWlsXCIgOiBcInBhc3Nc
IiwgZG9tTm9kZXMsIGRvbUF0dHJpYnV0ZXM6IFtcImFsdFwiXSB9OyB9Iiwge2Rlc2NyaXB0aW9u
OiBXSS5VSVN0cmluZygiRW5zdXJlIDxhcmVhPiBlbGVtZW50cyBvZiBpbWFnZSBtYXBzIGhhdmUg
YWx0ZXJuYXRlIHRleHQuIil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVz
dENhc2UoInZhbGlkLXRhYmluZGV4IiwgImZ1bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJh
eS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCIqW3RhYmluZGV4XVwiKSkgLmZpbHRl
cigobm9kZSkgPT4geyBsZXQgdGFiaW5kZXggPSBub2RlLmdldEF0dHJpYnV0ZShcInRhYmluZGV4
XCIpOyBpZiAoIXRhYmluZGV4KSByZXR1cm4gZmFsc2U7IHRhYmluZGV4ID0gcGFyc2VJbnQodGFi
aW5kZXgpOyByZXR1cm4gaXNOYU4odGFiaW5kZXgpIHx8ICh0YWJpbmRleCAhPT0gMCAmJiB0YWJp
bmRleCAhPT0gLTEpOyB9KTsgcmV0dXJuIHsgbGV2ZWw6IGRvbU5vZGVzLmxlbmd0aCA/IFwiZmFp
bFwiIDogXCJwYXNzXCIsIGRvbU5vZGVzLCBkb21BdHRyaWJ1dGVzOiBbXCJ0YWJpbmRleFwiXSB9
OyB9Iiwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiRW5zdXJlIHRhYmluZGV4IGlzIGEgbnVt
YmVyLiIpfSksCisgICAgICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJmcmFt
ZS10aXRsZSIsICJmdW5jdGlvbigpIHsgbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVu
dC5xdWVyeVNlbGVjdG9yQWxsKFwiaWZyYW1lLCBmcmFtZVwiKSkgLmZpbHRlcigobm9kZSkgPT4g
eyBsZXQgdGl0bGUgPSBub2RlLmdldEF0dHJpYnV0ZShcInRpdGxlXCIpOyByZXR1cm4gIXRpdGxl
IHx8ICF0aXRsZS50cmltKCkubGVuZ3RoOyB9KTsgcmV0dXJuIHsgbGV2ZWw6IGRvbU5vZGVzLmxl
bmd0aCA/IFwiZmFpbFwiIDogXCJwYXNzXCIsIGRvbU5vZGVzLCBkb21BdHRyaWJ1dGVzOiBbXCJ0
aXRsZVwiXSB9OyB9Iiwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiRW5zdXJlIDxhcmVhPiBl
bGVtZW50cyBvZiBpbWFnZSBtYXBzIGhhdmUgYWx0ZXJuYXRlIHRleHQuIil9KSwKKyAgICAgICAg
ICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoImhpZGRlbi1ib2R5IiwgImZ1bmN0aW9u
KCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwo
XCJib2R5W2hpZGRlbl1cIikpLmZpbHRlcigoYm9keSkgPT4gYm9keS5oaWRkZW4pOyByZXR1cm4g
eyBsZXZlbDogZG9tTm9kZXMubGVuZ3RoID8gXCJmYWlsXCIgOiBcInBhc3NcIiwgZG9tTm9kZXMs
IGRvbUF0dHJpYnV0ZXM6IFtcImhpZGRlblwiXSB9OyB9Iiwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0
cmluZygiRW5zdXJlIGhpZGRlbj10cnVlIGlzIG5vdCBwcmVzZW50IG9uIHRoZSBkb2N1bWVudCBi
b2R5LiIpfSksCisgICAgICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJtZXRh
LXJlZnJlc2giLCAiZnVuY3Rpb24oKSB7IGxldCBkb21Ob2RlcyA9IEFycmF5LmZyb20oZG9jdW1l
bnQucXVlcnlTZWxlY3RvckFsbChcIm1ldGFbaHR0cC1lcXVpdj1yZWZyZXNoXVwiKSk7IHJldHVy
biB7IGxldmVsOiBkb21Ob2Rlcy5sZW5ndGggPyBcIndhcm5cIiA6IFwicGFzc1wiLCBkb21Ob2Rl
cywgZG9tQXR0cmlidXRlczogW1wiaHR0cC1lcXVpdlwiXSB9OyB9Iiwge2Rlc2NyaXB0aW9uOiBX
SS5VSVN0cmluZygiRW5zdXJlIDxtZXRhIGh0dHAtZXF1aXY9cmVmcmVzaD4gaXMgbm90IHVzZWQu
Iil9KSwKKyAgICAgICAgICAgICAgICBdLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJUZXN0
cyBmb3IgZWxlbWVudCBhdHRyaWJ1dGUgYWNjZXNzaWJpbGl0eSBpc3N1ZXMuIil9KSwKKyAgICAg
ICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0R3JvdXAoV0kuVUlTdHJpbmcoIkVsZW1lbnRzIiks
IFsKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoImJsaW5rIiwgImZ1
bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKFwiYmxpbmtcIikpOyByZXR1cm4geyBsZXZlbDogZG9tTm9kZXMubGVuZ3RoID8g
XCJ3YXJuXCIgOiBcInBhc3NcIiwgZG9tTm9kZXMgfTsgfSIsIHtkZXNjcmlwdGlvbjogV0kuVUlT
dHJpbmcoIkVuc3VyZSBoaWRkZW49dHJ1ZSBpcyBub3QgcHJlc2VudCBvbiB0aGUgZG9jdW1lbnQg
Ym9keS4iKX0pLAorICAgICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZSgibWFy
cXVlZSIsICJmdW5jdGlvbigpIHsgbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5n
ZXRFbGVtZW50c0J5VGFnTmFtZShcIm1hcnF1ZWVcIikpOyByZXR1cm4geyBsZXZlbDogZG9tTm9k
ZXMubGVuZ3RoID8gXCJ3YXJuXCIgOiBcInBhc3NcIiwgZG9tTm9kZXMgfTsgfSIsIHtkZXNjcmlw
dGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSBoaWRkZW49dHJ1ZSBpcyBub3QgcHJlc2VudCBvbiB0
aGUgZG9jdW1lbnQgYm9keS4iKX0pLAorICAgICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRU
ZXN0Q2FzZSgiZGxpdGVtIiwgImZ1bmN0aW9uKCkgeyBmdW5jdGlvbiBjaGVjayhub2RlKSB7IGlm
ICghbm9kZSkgeyByZXR1cm4gZmFsc2U7IH0gaWYgKG5vZGUubm9kZU5hbWUgPT09IFwiRERcIikg
eyByZXR1cm4gdHJ1ZTsgfSByZXR1cm4gY2hlY2sobm9kZS5wYXJlbnROb2RlKTsgfSBsZXQgZG9t
Tm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJkdCwgZGRcIikp
LmZpbHRlcihjaGVjayk7IHJldHVybiB7IGxldmVsOiBkb21Ob2Rlcy5sZW5ndGggPyBcIndhcm5c
IiA6IFwicGFzc1wiLCBkb21Ob2RlcyB9OyB9Iiwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygi
RW5zdXJlIDxkdD4gYW5kIDxkZD4gZWxlbWVudHMgYXJlIGNvbnRhaW5lZCBieSBhIDxkbD4uIil9
KSwKKyAgICAgICAgICAgICAgICBdLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJUZXN0cyBm
b3IgZWxlbWVudCBhY2Nlc3NpYmlsaXR5IGlzc3Vlcy4iKX0pLAorICAgICAgICAgICAgICAgIG5l
dyBXSS5BdWRpdFRlc3RHcm91cChXSS5VSVN0cmluZygiRm9ybXMiKSwgWworICAgICAgICAgICAg
ICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZSgib25lLWxlZ2VuZCIsICJmdW5jdGlvbigpIHsg
bGV0IGZvcm1MZWdlbmRzTWFwID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxs
KFwiZm9ybSBsZWdlbmRcIikpLnJlZHVjZSgoYWNjdW11bGF0b3IsIG5vZGUpID0+IHsgbGV0IGV4
aXN0aW5nID0gYWNjdW11bGF0b3IuZ2V0KG5vZGUuZm9ybSk7IGlmICghZXhpc3RpbmcpIHsgZXhp
c3RpbmcgPSBbXTsgYWNjdW11bGF0b3Iuc2V0KG5vZGUuZm9ybSwgZXhpc3RpbmcpOyB9IGV4aXN0
aW5nLnB1c2gobm9kZSk7IHJldHVybiBhY2N1bXVsYXRvcjsgfSwgbmV3IE1hcCk7IGxldCBkb21O
b2RlcyA9IEFycmF5LmZyb20oZm9ybUxlZ2VuZHNNYXAudmFsdWVzKCkpLnJlZHVjZSgoYWNjdW11
bGF0b3IsIGxlZ2VuZHMpID0+IGFjY3VtdWxhdG9yLmNvbmNhdChsZWdlbmRzKSwgW10pOyByZXR1
cm4geyBsZXZlbDogZG9tTm9kZXMubGVuZ3RoID8gXCJ3YXJuXCIgOiBcInBhc3NcIiwgZG9tTm9k
ZXMgfTsgfSIsIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSBleGFjdGx5IG9uZSA8
bGVnZW5kPiBleGlzdHMgcGVyIGZvcm0uIil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJ
LkF1ZGl0VGVzdENhc2UoImxlZ2VuZC1maXJzdC1jaGlsZCIsICJmdW5jdGlvbigpIHsgbGV0IGRv
bU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiZm9ybSA+IGxl
Z2VuZDpub3QoOmZpcnN0LWNoaWxkKVwiKSk7IHJldHVybiB7IGxldmVsOiBkb21Ob2Rlcy5sZW5n
dGggPyBcIndhcm5cIiA6IFwicGFzc1wiLCBkb21Ob2RlcyB9OyB9Iiwge2Rlc2NyaXB0aW9uOiBX
SS5VSVN0cmluZygiRW5zdXJlIGxlZ2VuZCBpcyBmaXJzdCBjaGlsZCBpbiBmb3JtLiIpfSksCisg
ICAgICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKCJmb3JtLWlucHV0IiwgImZ1
bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKFwiZm9ybVwiKSkgLmZpbHRlcihub2RlID0+ICFub2RlLmVsZW1lbnRzLmxlbmd0
aCk7IHJldHVybiB7IGxldmVsOiBkb21Ob2Rlcy5sZW5ndGggPyBcIndhcm5cIiA6IFwicGFzc1wi
LCBkb21Ob2RlcyB9OyB9Iiwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiRW5zdXJlIGZvcm1z
IGhhdmUgYXQgbGVhc3Qgb25lIGlucHV0LiIpfSksCisgICAgICAgICAgICAgICAgXSwge2Rlc2Ny
aXB0aW9uOiBXSS5VSVN0cmluZygiVGVzdHMgdGhlIGFjY2Vzc2liaWxpdHkgb2YgZm9ybSBlbGVt
ZW50cy4iKX0pLAorICAgICAgICAgICAgXSwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiVGVz
dHMgZm9yIHdheXMgdG8gaW1wcm92ZSBhY2Nlc3NpYmlsaXR5LiIpfSksCisgICAgICAgIF07CisK
KyAgICAgICAgZm9yIChsZXQgdGVzdCBvZiBkZWZhdWx0VGVzdHMpIHsKKyAgICAgICAgICAgIHRo
aXMuX2FkZFRlc3QodGVzdCk7CisgICAgICAgICAgICBXSS5vYmplY3RTdG9yZXMuYXVkaXRzLmFk
ZE9iamVjdCh0ZXN0KTsKKyAgICAgICAgfQorICAgIH0KIH07CiAKIFdJLkF1ZGl0TWFuYWdlci5S
dW5uaW5nU3RhdGUgPSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFuZWwuY3NzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBh
bmVsLmNzcwppbmRleCA5MGQ2ZWFiMzcwNzcxZjlhMDJiODRjMDFiMGUxNDU5Zjg2YmFlNzlhLi45
ZmE4OGQ4ZGIyZTExNDg0NTI0MDMxNzk1OGU2ZjQ5YzJjNjdmMzA3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9BdWRpdE5hdmlnYXRpb25TaWRl
YmFyUGFuZWwuY3NzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL0F1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5jc3MKQEAgLTI2LDMgKzI2LDE2IEBACiAu
c2lkZWJhciA+IC5wYW5lbC5uYXZpZ2F0aW9uLmF1ZGl0ID4gLmNvbnRlbnQgewogICAgIHRvcDog
dmFyKC0tbmF2aWdhdGlvbi1iYXItaGVpZ2h0KTsKIH0KKworLnNpZGViYXIgPiAucGFuZWwubmF2
aWdhdGlvbi5hdWRpdC5oYXMtcmVzdWx0czpub3QoLmhhcy10ZXN0cykgPiAuY29udGVudCA+IC5t
ZXNzYWdlLXRleHQtdmlldyB7CisgICAgcG9zaXRpb246IGluaXRpYWw7CisgICAgYm9yZGVyLWJv
dHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7Cit9CisKKy5zaWRlYmFyID4gLnBh
bmVsLm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3VsdHM6bm90KC5oYXMtdGVzdHMpID4gLmNvbnRl
bnQgPiAubWVzc2FnZS10ZXh0LXZpZXcgPiAubWVzc2FnZSB7CisgICAgZGlzcGxheTogbm9uZTsK
K30KKworLnNpZGViYXIgPiAucGFuZWwubmF2aWdhdGlvbi5hdWRpdC5oYXMtcmVzdWx0czpub3Qo
Lmhhcy10ZXN0cykgPiAuY29udGVudCA+IC5tZXNzYWdlLXRleHQtdmlldyA+IGJ1dHRvbiB7Cisg
ICAgbWFyZ2luOiA4cHggMCA3cHg7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9BdWRpdE5hdmlnYXRpb25T
aWRlYmFyUGFuZWwuanMKaW5kZXggNTY1OGRhN2NmOGNmZmVlNTJkNzQ0YWZiMGQ4MDRkYWIzMmMx
ZmNhNC4uMjI1NGQ4ZjU5MjJlOWNlZDQ5ZmMxM2E4OTVhMGQwOGQ4YmNlZGNjZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZpZ2F0
aW9uU2lkZWJhclBhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL0F1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcwpAQCAtMTA1LDE1ICsxMDUs
MjEgQEAgV0kuQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBhbmVsID0gY2xhc3MgQXVkaXROYXZpZ2F0
aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuTmEKIAogICAgIF9hZGRUZXN0KHRlc3QpCiAgICAg
eworICAgICAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaGFzLXRlc3RzIik7CisKICAg
ICAgICAgdGhpcy5fdXBkYXRlU3RhcnRTdG9wQnV0dG9uTmF2aWdhdGlvbkl0ZW1TdGF0ZSgpOwog
CiAgICAgICAgIHRoaXMuY29udGVudFRyZWVPdXRsaW5lLmluc2VydENoaWxkKG5ldyBXSS5BdWRp
dFRyZWVFbGVtZW50KHRlc3QpLCB0aGlzLmNvbnRlbnRUcmVlT3V0bGluZS5jaGlsZHJlbi5pbmRl
eE9mKHRoaXMuX3Jlc3VsdHNGb2xkZXJUcmVlRWxlbWVudCkpOwogCiAgICAgICAgIHRoaXMuX3Jl
c3VsdHNGb2xkZXJUcmVlRWxlbWVudC5oaWRkZW4gPSAhdGhpcy5fcmVzdWx0c0ZvbGRlclRyZWVF
bGVtZW50LmNoaWxkcmVuLmxlbmd0aDsKKworICAgICAgICB0aGlzLmhpZGVFbXB0eUNvbnRlbnRQ
bGFjZWhvbGRlcigpOwogICAgIH0KIAogICAgIF9hZGRSZXN1bHQocmVzdWx0LCBpbmRleCkKICAg
ICB7CisgICAgICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJoYXMtcmVzdWx0cyIpOwor
CiAgICAgICAgIHRoaXMuX3VwZGF0ZVN0YXJ0U3RvcEJ1dHRvbk5hdmlnYXRpb25JdGVtU3RhdGUo
KTsKIAogICAgICAgICB0aGlzLl9yZXN1bHRzRm9sZGVyVHJlZUVsZW1lbnQuaGlkZGVuID0gZmFs
c2U7CkBAIC0xNTIsNiArMTU4LDI4IEBAIFdJLkF1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbCA9
IGNsYXNzIEF1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hCiAgICAgICAg
IGxldCB0cmVlRWxlbWVudCA9IHRoaXMudHJlZUVsZW1lbnRGb3JSZXByZXNlbnRlZE9iamVjdCh0
ZXN0KTsKICAgICAgICAgdGhpcy5jb250ZW50VHJlZU91dGxpbmUucmVtb3ZlQ2hpbGQodHJlZUVs
ZW1lbnQpOwogCisgICAgICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QudG9nZ2xlKCJoYXMtdGVz
dHMiLCAhIVdJLmF1ZGl0TWFuYWdlci50ZXN0cy5sZW5ndGgpOworCisgICAgICAgIGlmICghV0ku
YXVkaXRNYW5hZ2VyLnRlc3RzLmxlbmd0aCkgeworICAgICAgICAgICAgbGV0IGNvbnRlbnRQbGFj
ZWhvbGRlciA9IFdJLmNyZWF0ZU1lc3NhZ2VUZXh0VmlldyhXSS5VSVN0cmluZygiTm8gYXVkaXRz
IikpOworCisgICAgICAgICAgICBsZXQgZGVmYXVsdEJ1dHRvbkVsZW1lbnQgPSBjb250ZW50UGxh
Y2Vob2xkZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIikpOwor
ICAgICAgICAgICAgZGVmYXVsdEJ1dHRvbkVsZW1lbnQudGV4dENvbnRlbnQgPSBXSS5VSVN0cmlu
ZygiQWRkIERlZmF1bHQgQXVkaXRzIik7CisgICAgICAgICAgICBkZWZhdWx0QnV0dG9uRWxlbWVu
dC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsICgpID0+IHsKKyAgICAgICAgICAgICAgICBXSS5h
dWRpdE1hbmFnZXIuYWRkRGVmYXVsdFRlc3RzSWZOZWVkZWQoKTsKKyAgICAgICAgICAgIH0pOwor
CisgICAgICAgICAgICBjb250ZW50UGxhY2Vob2xkZXIgPSB0aGlzLnNob3dFbXB0eUNvbnRlbnRQ
bGFjZWhvbGRlcihjb250ZW50UGxhY2Vob2xkZXIpOworCisgICAgICAgICAgICBpZiAoV0kuYXVk
aXRNYW5hZ2VyLnJlc3VsdHMubGVuZ3RoKSB7CisgICAgICAgICAgICAgICAgY29uc29sZS5hc3Nl
cnQodGhpcy5jb250ZW50VHJlZU91dGxpbmUuY2hpbGRyZW5bMF0gPT09IHRoaXMuX3Jlc3VsdHNG
b2xkZXJUcmVlRWxlbWVudCk7CisKKyAgICAgICAgICAgICAgICAvLyBNb3ZlIHRoZSBwbGFjZWhv
bGRlciB0byBiZSB0aGUgZmlyc3QgZWxlbWVudCBpbiB0aGUgY29udGVudCBhcmVhLCB3aGVyZSBp
dCB3aWxsCisgICAgICAgICAgICAgICAgLy8gYmUgc3R5bGVkIHN1Y2ggdGhhdCBvbmx5IHRoZSBi
dXR0b24gaXMgdmlzaWJsZS4KKyAgICAgICAgICAgICAgICB0aGlzLmNvbnRlbnRWaWV3LmVsZW1l
bnQuaW5zZXJ0QmVmb3JlKGNvbnRlbnRQbGFjZWhvbGRlciwgdGhpcy5jb250ZW50Vmlldy5lbGVt
ZW50LmZpcnN0Q2hpbGQpOworICAgICAgICAgICAgfQorICAgICAgICB9CisKICAgICAgICAgdGhp
cy5fdXBkYXRlU3RhcnRTdG9wQnV0dG9uTmF2aWdhdGlvbkl0ZW1TdGF0ZSgpOwogICAgIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmF2
aWdhdGlvblNpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKaW5kZXggM2FiMWRiYWY3NGE2Njc1
YjhlNjkwOTU3ZGY3YWM4Y2Y1YTM3MjlmOC4uNWViZWFlOTFmODFhZDQyZTdjNmU1ZTQ3OTU4Nzhi
MTE4NWE1NmIxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzCkBAIC0y
NjcsMTIgKzI2NywxNCBAQCBXSS5OYXZpZ2F0aW9uU2lkZWJhclBhbmVsID0gY2xhc3MgTmF2aWdh
dGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFdJLlNpZGViYXJQYW5lbAogCiAgICAgICAgIGxldCBl
bXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1lbnQgPSB0aGlzLl9jcmVhdGVFbXB0eUNvbnRlbnRQ
bGFjZWhvbGRlcklmTmVlZGVkKHRyZWVPdXRsaW5lLCBtZXNzYWdlKTsKICAgICAgICAgaWYgKGVt
cHR5Q29udGVudFBsYWNlaG9sZGVyRWxlbWVudC5wYXJlbnROb2RlKQotICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICAgICAgcmV0dXJuIGVtcHR5Q29udGVudFBsYWNlaG9sZGVyRWxlbWVudDsK
IAogICAgICAgICBsZXQgZW1wdHlDb250ZW50UGxhY2Vob2xkZXJQYXJlbnRFbGVtZW50ID0gdHJl
ZU91dGxpbmUuZWxlbWVudC5wYXJlbnROb2RlOwogICAgICAgICBlbXB0eUNvbnRlbnRQbGFjZWhv
bGRlclBhcmVudEVsZW1lbnQuYXBwZW5kQ2hpbGQoZW1wdHlDb250ZW50UGxhY2Vob2xkZXJFbGVt
ZW50KTsKIAogICAgICAgICB0aGlzLl91cGRhdGVDb250ZW50T3ZlcmZsb3dTaGFkb3dWaXNpYmls
aXR5KCk7CisKKyAgICAgICAgcmV0dXJuIGVtcHR5Q29udGVudFBsYWNlaG9sZGVyRWxlbWVudDsK
ICAgICB9CiAKICAgICBoaWRlRW1wdHlDb250ZW50UGxhY2Vob2xkZXIodHJlZU91dGxpbmUpCkBA
IC03MjUsNyArNzI3LDcgQEAgV0kuTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIE5hdmln
YXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5TaWRlYmFyUGFuZWwKICAgICAgICAgaWYgKGVt
cHR5Q29udGVudFBsYWNlaG9sZGVyRWxlbWVudCkKICAgICAgICAgICAgIHJldHVybiBlbXB0eUNv
bnRlbnRQbGFjZWhvbGRlckVsZW1lbnQ7CiAKLSAgICAgICAgZW1wdHlDb250ZW50UGxhY2Vob2xk
ZXJFbGVtZW50ID0gV0kuY3JlYXRlTWVzc2FnZVRleHRWaWV3KG1lc3NhZ2UpOworICAgICAgICBl
bXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1lbnQgPSBtZXNzYWdlIGluc3RhbmNlb2YgTm9kZSA/
IG1lc3NhZ2UgOiBXSS5jcmVhdGVNZXNzYWdlVGV4dFZpZXcobWVzc2FnZSk7CiAgICAgICAgIHRo
aXMuX2VtcHR5Q29udGVudFBsYWNlaG9sZGVyRWxlbWVudHMuc2V0KHRyZWVPdXRsaW5lLCBlbXB0
eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1lbnQpOwogCiAgICAgICAgIHJldHVybiBlbXB0eUNvbnRl
bnRQbGFjZWhvbGRlckVsZW1lbnQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355167</attachid>
            <date>2018-11-16 17:19:39 -0800</date>
            <delta_ts>2018-11-16 18:14:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191758-20181116171938.patch</filename>
            <type>text/plain</type>
            <size>23795</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IGY4NDI4YmY5Y2NkMThiNTY0NWY2ZTA2YmM4NzJl
Y2IyM2UxY2IyNmYuLmE3ZjUzMzI4Mjk2NTIwYWFlOGJhZmU5ZWUzMWY3YzFiMmMzOTRlY2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE4LTExLTE2ICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBB
dWRpdDogYWRkIGRlZmF1bHQgdGVzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5MTc1OAorCisgICAgICAgIFJldmlld2VkIGJ5IE1hdHQgQmFrZXIu
CisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0F1ZGl0TWFuYWdlci5qczoK
KyAgICAgICAgKFdJLkF1ZGl0TWFuYWdlci5wcm90b3R5cGUubG9hZFN0b3JlZFRlc3RzKToKKyAg
ICAgICAgKFdJLkF1ZGl0TWFuYWdlci5wcm90b3R5cGUuYWRkRGVmYXVsdFRlc3RzSWZOZWVkZWQp
OiBBZGRlZC4KKyAgICAgICAgSWYgdGhlcmUgYXJlIG5vIHByZXZpb3VzbHkgc2F2ZWQgdGVzdHMg
aW4gdGhlIGRhdGFiYXNlLCBhdXRvbWF0aWNhbGx5IGFkZCB0aGUgZGVmYXVsdCBzZXQuCisKKyAg
ICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5q
czoKKyAgICAgICAgKFdJLkF1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2Fk
ZFRlc3QpOgorICAgICAgICAoV0kuQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlw
ZS5fYWRkUmVzdWx0KToKKyAgICAgICAgKFdJLkF1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbC5w
cm90b3R5cGUuX2hhbmRsZUF1ZGl0VGVzdFJlbW92ZWQpOgorICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvVmlld3MvQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmNzczoKKyAgICAgICAgKC5zaWRl
YmFyID4gLnBhbmVsLm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3VsdHM6bm90KC5oYXMtdGVzdHMp
ID4gLmNvbnRlbnQgPiAubWVzc2FnZS10ZXh0LXZpZXcpOiBBZGRlZC4KKyAgICAgICAgKC5zaWRl
YmFyID4gLnBhbmVsLm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3VsdHM6bm90KC5oYXMtdGVzdHMp
ID4gLmNvbnRlbnQgPiAubWVzc2FnZS10ZXh0LXZpZXcgPiAubWVzc2FnZSk6IEFkZGVkLgorICAg
ICAgICAoLnNpZGViYXIgPiAucGFuZWwubmF2aWdhdGlvbi5hdWRpdC5oYXMtcmVzdWx0czpub3Qo
Lmhhcy10ZXN0cykgPiAuY29udGVudCA+IC5tZXNzYWdlLXRleHQtdmlldyA+IGJ1dHRvbik6IEFk
ZGVkLgorICAgICAgICBXaGVuIHRoZSBsYXN0IHRlc3QgaXMgcmVtb3ZlZCwgc2hvdyBhIHBsYWNl
aG9sZGVyIG1lc3NhZ2UgdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gcmUtYWRkIHRoZQorICAgICAg
ICBkZWZhdWx0IHNldCBvZiB0ZXN0cy4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3Mv
TmF2aWdhdGlvblNpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJLk5hdmlnYXRpb25TaWRlYmFy
UGFuZWwucHJvdG90eXBlLnNob3dFbXB0eUNvbnRlbnRQbGFjZWhvbGRlcik6CisgICAgICAgIChX
SS5OYXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlwZS5fY3JlYXRlRW1wdHlDb250ZW50UGxh
Y2Vob2xkZXJJZk5lZWRlZCk6CisKKyAgICAgICAgKiBMb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xv
Y2FsaXplZFN0cmluZ3MuanM6CisKIDIwMTgtMTEtMTQgIE1hdHQgQmFrZXIgIDxtYXR0YmFrZXJA
YXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFRhYmxlIHNob3VsZCByZWNhbGN1
bGF0ZSBzY3JvbGxhYmxlIGhlaWdodCB3aGVuIHJlc2l6ZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRT
dHJpbmdzLmpzCmluZGV4IDAyMmU5NzU2NzVkMTc4MDU1MjJlODkyZDBmYjE2NGU3NTA5ZTU3Y2Eu
LjJmOWZiYjU2YWU1NjdiZmE3OWZlMTBiZTcyOGYyOGU2MDY5MDRhZDEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2FsaXplZFN0cmlu
Z3MuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHByb2ov
bG9jYWxpemVkU3RyaW5ncy5qcwpAQCAtNzcsNiArNzcsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJB
Y3Rpdml0eSBWaWV3ZXIiXSA9ICJBY3Rpdml0eSBWaWV3ZXIiOwogbG9jYWxpemVkU3RyaW5nc1si
QWRkIl0gPSAiQWRkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFkZCBBY3Rpb24iXSA9ICJBZGQgQWN0
aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFkZCBCcmVha3BvaW50Il0gPSAiQWRkIEJyZWFrcG9p
bnQiOworbG9jYWxpemVkU3RyaW5nc1siQWRkIERlZmF1bHQgQXVkaXRzIl0gPSAiQWRkIERlZmF1
bHQgQXVkaXRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFkZCBOZXciXSA9ICJBZGQgTmV3IjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkFkZCBOZXcgQ2xhc3MiXSA9ICJBZGQgTmV3IENsYXNzIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkFkZCBOZXcgUHJvYmUgRXhwcmVzc2lvbiJdID0gIkFkZCBOZXcgUHJvYmUg
RXhwcmVzc2lvbiI7CkBAIC0yNzksNiArMjgwLDcgQEAgbG9jYWxpemVkU3RyaW5nc1siRGVjb2Rl
ZCJdID0gIkRlY29kZWQiOwogbG9jYWxpemVkU3RyaW5nc1siRGVsZXRlIl0gPSAiRGVsZXRlIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkRlbGV0ZSBCcmVha3BvaW50Il0gPSAiRGVsZXRlIEJyZWFrcG9p
bnQiOwogbG9jYWxpemVkU3RyaW5nc1siRGVsZXRlIEJyZWFrcG9pbnRzIl0gPSAiRGVsZXRlIEJy
ZWFrcG9pbnRzIjsKK2xvY2FsaXplZFN0cmluZ3NbIkRlbW8gQXVkaXQiXSA9ICJEZW1vIEF1ZGl0
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkRldGFjaCBpbnRvIHNlcGFyYXRlIHdpbmRvdyJdID0gIkRl
dGFjaCBpbnRvIHNlcGFyYXRlIHdpbmRvdyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJEZXRhY2hlZCJd
ID0gIkRldGFjaGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkRldGFpbHMiXSA9ICJEZXRhaWxzIjsK
QEAgLTM2MCw2ICszNjIsMTUgQEAgbG9jYWxpemVkU3RyaW5nc1siRW5hYmxlIHBhaW50IGZsYXNo
aW5nIl0gPSAiRW5hYmxlIHBhaW50IGZsYXNoaW5nIjsKIGxvY2FsaXplZFN0cmluZ3NbIkVuYWJs
ZWQiXSA9ICJFbmFibGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkVuY29kZWQiXSA9ICJFbmNvZGVk
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkVuY29kaW5nIl0gPSAiRW5jb2RpbmciOworbG9jYWxpemVk
U3RyaW5nc1siRW5zdXJlIDxhcmVhPiBlbGVtZW50cyBvZiBpbWFnZSBtYXBzIGhhdmUgYWx0ZXJu
YXRlIHRleHQuIl0gPSAiRW5zdXJlIDxhcmVhPiBlbGVtZW50cyBvZiBpbWFnZSBtYXBzIGhhdmUg
YWx0ZXJuYXRlIHRleHQuIjsKK2xvY2FsaXplZFN0cmluZ3NbIkVuc3VyZSA8ZHQ+IGFuZCA8ZGQ+
IGVsZW1lbnRzIGFyZSBjb250YWluZWQgYnkgYSA8ZGw+LiJdID0gIkVuc3VyZSA8ZHQ+IGFuZCA8
ZGQ+IGVsZW1lbnRzIGFyZSBjb250YWluZWQgYnkgYSA8ZGw+LiI7Citsb2NhbGl6ZWRTdHJpbmdz
WyJFbnN1cmUgPGltZz4gZWxlbWVudHMgaGF2ZSBhbHRlcm5hdGUgdGV4dC4iXSA9ICJFbnN1cmUg
PGltZz4gZWxlbWVudHMgaGF2ZSBhbHRlcm5hdGUgdGV4dC4iOworbG9jYWxpemVkU3RyaW5nc1si
RW5zdXJlIDxtZXRhIGh0dHAtZXF1aXY9cmVmcmVzaD4gaXMgbm90IHVzZWQuIl0gPSAiRW5zdXJl
IDxtZXRhIGh0dHAtZXF1aXY9cmVmcmVzaD4gaXMgbm90IHVzZWQuIjsKK2xvY2FsaXplZFN0cmlu
Z3NbIkVuc3VyZSBleGFjdGx5IG9uZSA8bGVnZW5kPiBleGlzdHMgcGVyIGZvcm0uIl0gPSAiRW5z
dXJlIGV4YWN0bHkgb25lIDxsZWdlbmQ+IGV4aXN0cyBwZXIgZm9ybS4iOworbG9jYWxpemVkU3Ry
aW5nc1siRW5zdXJlIGZvcm1zIGhhdmUgYXQgbGVhc3Qgb25lIGlucHV0LiJdID0gIkVuc3VyZSBm
b3JtcyBoYXZlIGF0IGxlYXN0IG9uZSBpbnB1dC4iOworbG9jYWxpemVkU3RyaW5nc1siRW5zdXJl
IGhpZGRlbj10cnVlIGlzIG5vdCBwcmVzZW50IG9uIHRoZSBkb2N1bWVudCBib2R5LiJdID0gIkVu
c3VyZSBoaWRkZW49dHJ1ZSBpcyBub3QgcHJlc2VudCBvbiB0aGUgZG9jdW1lbnQgYm9keS4iOwor
bG9jYWxpemVkU3RyaW5nc1siRW5zdXJlIGxlZ2VuZCBpcyBmaXJzdCBjaGlsZCBpbiBmb3JtLiJd
ID0gIkVuc3VyZSBsZWdlbmQgaXMgZmlyc3QgY2hpbGQgaW4gZm9ybS4iOworbG9jYWxpemVkU3Ry
aW5nc1siRW5zdXJlIHRhYmluZGV4IGlzIGEgbnVtYmVyLiJdID0gIkVuc3VyZSB0YWJpbmRleCBp
cyBhIG51bWJlci4iOwogbG9jYWxpemVkU3RyaW5nc1siRW50aXJlIFJlY29yZGluZyJdID0gIkVu
dGlyZSBSZWNvcmRpbmciOwogbG9jYWxpemVkU3RyaW5nc1siRXJyb3IiXSA9ICJFcnJvciI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJFcnJvcjogIl0gPSAiRXJyb3I6ICI7CkBAIC00MTUsNiArNDI2LDcg
QEAgbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBSR0IiXSA9ICJGb3JtYXQ6IFJHQiI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJGb3JtYXQ6IFJHQkEiXSA9ICJGb3JtYXQ6IFJHQkEiOwogbG9jYWxpemVk
U3RyaW5nc1siRm9ybWF0OiBTaG9ydCBIZXgiXSA9ICJGb3JtYXQ6IFNob3J0IEhleCI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJGb3JtYXQ6IFNob3J0IEhleCB3aXRoIEFscGhhIl0gPSAiRm9ybWF0OiBT
aG9ydCBIZXggd2l0aCBBbHBoYSI7Citsb2NhbGl6ZWRTdHJpbmdzWyJGb3JtcyJdID0gIkZvcm1z
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkZvcndhcmQgKCVzKSJdID0gIkZvcndhcmQgKCVzKSI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJGcmFnbWVudCJdID0gIkZyYWdtZW50IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkZyYWdtZW50IFNoYWRlciJdID0gIkZyYWdtZW50IFNoYWRlciI7CkBAIC01OTMsNiArNjA1
LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siTm8gUmVzdWx0cyBGb3VuZCJdID0gIk5vIFJlc3VsdHMg
Rm91bmQiOwogbG9jYWxpemVkU3RyaW5nc1siTm8gU2VhcmNoIFJlc3VsdHMiXSA9ICJObyBTZWFy
Y2ggUmVzdWx0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBXYXRjaCBFeHByZXNzaW9ucyJdID0g
Ik5vIFdhdGNoIEV4cHJlc3Npb25zIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIGF1ZGl0IHNlbGVj
dGVkIl0gPSAiTm8gYXVkaXQgc2VsZWN0ZWQiOworbG9jYWxpemVkU3RyaW5nc1siTm8gYXVkaXRz
Il0gPSAiTm8gYXVkaXRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIG1hdGNoaW5nIEFSSUEgcm9s
ZSJdID0gIk5vIG1hdGNoaW5nIEFSSUEgcm9sZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBwcmV2
aWV3IGF2YWlsYWJsZSJdID0gIk5vIHByZXZpZXcgYXZhaWxhYmxlIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIk5vIHJlcXVlc3QgY29va2llcy4iXSA9ICJObyByZXF1ZXN0IGNvb2tpZXMuIjsKQEAgLTcy
OSw2ICs3NDIsOCBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJSZXNwb25zZSBIZWFkZXJzIl0gPSAiUmVz
cG9uc2UgSGVhZGVycyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXNwb25zZToiXSA9ICJSZXNwb25z
ZToiOwogbG9jYWxpemVkU3RyaW5nc1siUmVzdGFydCAoJXMpIl0gPSAiUmVzdGFydCAoJXMpIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlJlc3RhcnQgYW5pbWF0aW9uIl0gPSAiUmVzdGFydCBhbmltYXRp
b24iOworbG9jYWxpemVkU3RyaW5nc1siUmVzdWx0IERhdGEiXSA9ICJSZXN1bHQgRGF0YSI7Cits
b2NhbGl6ZWRTdHJpbmdzWyJSZXN1bHQgTGV2ZWxzIl0gPSAiUmVzdWx0IExldmVscyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJSZXN1bHRzIl0gPSAiUmVzdWx0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJS
ZXN1bWUgUHJvY2Vzc2luZyJdID0gIlJlc3VtZSBQcm9jZXNzaW5nIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlJlc3VtZSBUaHJlYWQiXSA9ICJSZXN1bWUgVGhyZWFkIjsKQEAgLTg4Nyw2ICs5MDIsMTAg
QEAgbG9jYWxpemVkU3RyaW5nc1siVGFicyJdID0gIlRhYnMiOwogbG9jYWxpemVkU3RyaW5nc1si
VGFnIl0gPSAiVGFnIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRha2Ugc25hcHNob3QiXSA9ICJUYWtl
IHNuYXBzaG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRlbXBsYXRlIENvbnRlbnQiXSA9ICJUZW1w
bGF0ZSBDb250ZW50IjsKK2xvY2FsaXplZFN0cmluZ3NbIlRlc3RzIGZvciBlbGVtZW50IGFjY2Vz
c2liaWxpdHkgaXNzdWVzLiJdID0gIlRlc3RzIGZvciBlbGVtZW50IGFjY2Vzc2liaWxpdHkgaXNz
dWVzLiI7Citsb2NhbGl6ZWRTdHJpbmdzWyJUZXN0cyBmb3IgZWxlbWVudCBhdHRyaWJ1dGUgYWNj
ZXNzaWJpbGl0eSBpc3N1ZXMuIl0gPSAiVGVzdHMgZm9yIGVsZW1lbnQgYXR0cmlidXRlIGFjY2Vz
c2liaWxpdHkgaXNzdWVzLiI7Citsb2NhbGl6ZWRTdHJpbmdzWyJUZXN0cyBmb3Igd2F5cyB0byBp
bXByb3ZlIGFjY2Vzc2liaWxpdHkuIl0gPSAiVGVzdHMgZm9yIHdheXMgdG8gaW1wcm92ZSBhY2Nl
c3NpYmlsaXR5LiI7Citsb2NhbGl6ZWRTdHJpbmdzWyJUZXN0cyB0aGUgYWNjZXNzaWJpbGl0eSBv
ZiBmb3JtIGVsZW1lbnRzLiJdID0gIlRlc3RzIHRoZSBhY2Nlc3NpYmlsaXR5IG9mIGZvcm0gZWxl
bWVudHMuIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRleHQiXSA9ICJUZXh0IjsKIGxvY2FsaXplZFN0
cmluZ3NbIlRleHQgRnJhbWUiXSA9ICJUZXh0IEZyYW1lIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRl
eHQgTm9kZSJdID0gIlRleHQgTm9kZSI7CkBAIC04OTgsOCArOTE3LDE5IEBAIGxvY2FsaXplZFN0
cmluZ3NbIlRoZSDigJwlc+KAnCBhdWRpdCBwYXNzZWQiXSA9ICJUaGUg4oCcJXPigJwgYXVkaXQg
cGFzc2VkIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRoZSDigJwlc+KAnCBhdWRpdCB0aHJldyBhbiBl
cnJvciJdID0gIlRoZSDigJwlc+KAnCBhdWRpdCB0aHJldyBhbiBlcnJvciI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJUaGUg4oCcJXPigJwgYXVkaXQgd2FybmVkIl0gPSAiVGhlIOKAnCVz4oCcIGF1ZGl0
IHdhcm5lZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUaGUg4oCcJXPigJ1cbnRhYmxlIGlzIGVtcHR5
LiJdID0gIlRoZSDigJwlc+KAnVxudGFibGUgaXMgZW1wdHkuIjsKK2xvY2FsaXplZFN0cmluZ3Nb
IlRoZXNlIGFyZSBhbGwgb2YgdGhlIGRpZmZlcmVudCB0ZXN0IHJlc3VsdCBsZXZlbHMuIl0gPSAi
VGhlc2UgYXJlIGFsbCBvZiB0aGUgZGlmZmVyZW50IHRlc3QgcmVzdWx0IGxldmVscy4iOworbG9j
YWxpemVkU3RyaW5nc1siVGhlc2UgYXJlIGFsbCBvZiB0aGUgZGlmZmVyZW50IHR5cGVzIG9mIGRh
dGEgdGhhdCBjYW4gYmUgcmV0dXJuZWQgd2l0aCB0aGUgdGVzdCByZXN1bHQuIl0gPSAiVGhlc2Ug
YXJlIGFsbCBvZiB0aGUgZGlmZmVyZW50IHR5cGVzIG9mIGRhdGEgdGhhdCBjYW4gYmUgcmV0dXJu
ZWQgd2l0aCB0aGUgdGVzdCByZXN1bHQuIjsKK2xvY2FsaXplZFN0cmluZ3NbIlRoZXNlIHRlc3Rz
IHNlcnZlIGFzIGEgZGVtb25zdHJhdGlvbiBvZiB0aGUgZnVuY3Rpb25hbGl0eSBhbmQgc3RydWN0
dXJlIG9mIGF1ZGl0cy4iXSA9ICJUaGVzZSB0ZXN0cyBzZXJ2ZSBhcyBhIGRlbW9uc3RyYXRpb24g
b2YgdGhlIGZ1bmN0aW9uYWxpdHkgYW5kIHN0cnVjdHVyZSBvZiBhdWRpdHMuIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlRoaXMgYWN0aW9uIGNhdXNlcyBubyB2aXN1YWwgY2hhbmdlIl0gPSAiVGhpcyBh
Y3Rpb24gY2F1c2VzIG5vIHZpc3VhbCBjaGFuZ2UiOwogbG9jYWxpemVkU3RyaW5nc1siVGhpcyBh
Y3Rpb24gbW92ZXMgdGhlIHBhdGggb3V0c2lkZSB0aGUgdmlzaWJsZSBhcmVhIl0gPSAiVGhpcyBh
Y3Rpb24gbW92ZXMgdGhlIHBhdGggb3V0c2lkZSB0aGUgdmlzaWJsZSBhcmVhIjsKK2xvY2FsaXpl
ZFN0cmluZ3NbIlRoaXMgaXMgYW4gZXhhbXBsZSBvZiBob3cgZXJyb3JzIGFyZSBzaG93bi4gVGhl
IGVycm9yIHdhcyB0aHJvd24gbWFudWFsbHksIGJ1dCBleGVjdXRpb24gZXJyb3JzIHdpbGwgYXBw
ZWFyIGluIHRoZSBzYW1lIHdheS4iXSA9ICJUaGlzIGlzIGFuIGV4YW1wbGUgb2YgaG93IGVycm9y
cyBhcmUgc2hvd24uIFRoZSBlcnJvciB3YXMgdGhyb3duIG1hbnVhbGx5LCBidXQgZXhlY3V0aW9u
IGVycm9ycyB3aWxsIGFwcGVhciBpbiB0aGUgc2FtZSB3YXkuIjsKK2xvY2FsaXplZFN0cmluZ3Nb
IlRoaXMgaXMgYW4gZXhhbXBsZSBvZiBob3cgcmVzdWx0IERPTSBub2RlcyBhcmUgc2hvd24uIEl0
IHdpbGwgcGFzcyB3aXRoIGFsbCBlbGVtZW50cyB3aXRoIGFuIGlkIGF0dHJpYnV0ZS4iXSA9ICJU
aGlzIGlzIGFuIGV4YW1wbGUgb2YgaG93IHJlc3VsdCBET00gbm9kZXMgYXJlIHNob3duLiBJdCB3
aWxsIHBhc3Mgd2l0aCBhbGwgZWxlbWVudHMgd2l0aCBhbiBpZCBhdHRyaWJ1dGUuIjsKK2xvY2Fs
aXplZFN0cmluZ3NbIlRoaXMgaXMgYW4gZXhhbXBsZSBvZiBob3cgcmVzdWx0IERPTSBub2RlcyBh
cmUgc2hvd24uIEl0IHdpbGwgcGFzcyB3aXRoIHRoZSA8Ym9keT4gZWxlbWVudC4iXSA9ICJUaGlz
IGlzIGFuIGV4YW1wbGUgb2YgaG93IHJlc3VsdCBET00gbm9kZXMgYXJlIHNob3duLiBJdCB3aWxs
IHBhc3Mgd2l0aCB0aGUgPGJvZHk+IGVsZW1lbnQuIjsKK2xvY2FsaXplZFN0cmluZ3NbIlRoaXMg
aXMgd2hhdCB0aGUgcmVzdWx0IG9mIGEgZmFpbGluZyB0ZXN0IHdpdGggbm8gZGF0YSBsb29rcyBs
aWtlLiJdID0gIlRoaXMgaXMgd2hhdCB0aGUgcmVzdWx0IG9mIGEgZmFpbGluZyB0ZXN0IHdpdGgg
bm8gZGF0YSBsb29rcyBsaWtlLiI7Citsb2NhbGl6ZWRTdHJpbmdzWyJUaGlzIGlzIHdoYXQgdGhl
IHJlc3VsdCBvZiBhIHBhc3NpbmcgdGVzdCB3aXRoIG5vIGRhdGEgbG9va3MgbGlrZS4iXSA9ICJU
aGlzIGlzIHdoYXQgdGhlIHJlc3VsdCBvZiBhIHBhc3NpbmcgdGVzdCB3aXRoIG5vIGRhdGEgbG9v
a3MgbGlrZS4iOworbG9jYWxpemVkU3RyaW5nc1siVGhpcyBpcyB3aGF0IHRoZSByZXN1bHQgb2Yg
YSB0ZXN0IHRoYXQgdGhyZXcgYW4gZXJyb3Igd2l0aCBubyBkYXRhIGxvb2tzIGxpa2UuIl0gPSAi
VGhpcyBpcyB3aGF0IHRoZSByZXN1bHQgb2YgYSB0ZXN0IHRoYXQgdGhyZXcgYW4gZXJyb3Igd2l0
aCBubyBkYXRhIGxvb2tzIGxpa2UuIjsKK2xvY2FsaXplZFN0cmluZ3NbIlRoaXMgaXMgd2hhdCB0
aGUgcmVzdWx0IG9mIGEgdW5zdXBwb3J0ZWQgdGVzdCB3aXRoIG5vIGRhdGEgbG9va3MgbGlrZS4i
XSA9ICJUaGlzIGlzIHdoYXQgdGhlIHJlc3VsdCBvZiBhIHVuc3VwcG9ydGVkIHRlc3Qgd2l0aCBu
byBkYXRhIGxvb2tzIGxpa2UuIjsKK2xvY2FsaXplZFN0cmluZ3NbIlRoaXMgaXMgd2hhdCB0aGUg
cmVzdWx0IG9mIGEgd2FybmluZyB0ZXN0IHdpdGggbm8gZGF0YSBsb29rcyBsaWtlLiJdID0gIlRo
aXMgaXMgd2hhdCB0aGUgcmVzdWx0IG9mIGEgd2FybmluZyB0ZXN0IHdpdGggbm8gZGF0YSBsb29r
cyBsaWtlLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUaGlzIG9iamVjdCBpcyBhIHJvb3QiXSA9ICJU
aGlzIG9iamVjdCBpcyBhIHJvb3QiOwogbG9jYWxpemVkU3RyaW5nc1siVGhpcyBvYmplY3QgaXMg
cmVmZXJlbmNlZCBieSBpbnRlcm5hbCBvYmplY3RzIl0gPSAiVGhpcyBvYmplY3QgaXMgcmVmZXJl
bmNlZCBieSBpbnRlcm5hbCBvYmplY3RzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRoaXMgdGV4dCBy
ZXNvdXJjZSBjb3VsZCBiZW5lZml0IGZyb20gY29tcHJlc3Npb24iXSA9ICJUaGlzIHRleHQgcmVz
b3VyY2UgY291bGQgYmVuZWZpdCBmcm9tIGNvbXByZXNzaW9uIjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0F1ZGl0TWFuYWdlci5q
cyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0F1ZGl0
TWFuYWdlci5qcwppbmRleCBkNzQ3ODY4Yzg0ZGEzZThjZTNkMDFjNWQ0MjM4OGU3ZTc3NTU0YzIw
Li4wZDU2NTdlYzRkOGQzODUxZjU3MzljMDViYjQwODVlY2M5ODA1ZjQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9BdWRpdE1hbmFn
ZXIuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxl
cnMvQXVkaXRNYW5hZ2VyLmpzCkBAIC0xNDgsNiArMTQ4LDggQEAgV0kuQXVkaXRNYW5hZ2VyID0g
Y2xhc3MgQXVkaXRNYW5hZ2VyIGV4dGVuZHMgV0kuT2JqZWN0CiAKICAgICAgICAgICAgICAgICB0
aGlzLl9hZGRUZXN0KHRlc3QpOwogICAgICAgICAgICAgfQorCisgICAgICAgICAgICB0aGlzLmFk
ZERlZmF1bHRUZXN0c0lmTmVlZGVkKCk7CiAgICAgICAgIH0pOwogICAgIH0KIApAQCAtMTgxLDYg
KzE4Myw1NCBAQCBXSS5BdWRpdE1hbmFnZXIgPSBjbGFzcyBBdWRpdE1hbmFnZXIgZXh0ZW5kcyBX
SS5PYmplY3QKICAgICAgICAgICAgIGluZGV4OiB0aGlzLl9yZXN1bHRzLmxlbmd0aCAtIDEsCiAg
ICAgICAgIH0pOwogICAgIH0KKworICAgIGFkZERlZmF1bHRUZXN0c0lmTmVlZGVkKCkKKyAgICB7
CisgICAgICAgIGlmICh0aGlzLl90ZXN0cy5sZW5ndGgpCisgICAgICAgICAgICByZXR1cm47CisK
KyAgICAgICAgY29uc3QgZGVmYXVsdFRlc3RzID0gWworICAgICAgICAgICAgbmV3IFdJLkF1ZGl0
VGVzdEdyb3VwKFdJLlVJU3RyaW5nKCJEZW1vIEF1ZGl0IiksIFsKKyAgICAgICAgICAgICAgICBu
ZXcgV0kuQXVkaXRUZXN0R3JvdXAoV0kuVUlTdHJpbmcoIlJlc3VsdCBMZXZlbHMiKSwgWworICAg
ICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZShgbGV2ZWwtcGFzc2AsIGBmdW5j
dGlvbigpIHsgcmV0dXJuIHtsZXZlbDogInBhc3MifTsgfWAsIHtkZXNjcmlwdGlvbjogV0kuVUlT
dHJpbmcoIlRoaXMgaXMgd2hhdCB0aGUgcmVzdWx0IG9mIGEgcGFzc2luZyB0ZXN0IHdpdGggbm8g
ZGF0YSBsb29rcyBsaWtlLiIpfSksCisgICAgICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRl
c3RDYXNlKGBsZXZlbC13YXJuYCwgYGZ1bmN0aW9uKCkgeyByZXR1cm4ge2xldmVsOiAid2FybiJ9
OyB9YCwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiVGhpcyBpcyB3aGF0IHRoZSByZXN1bHQg
b2YgYSB3YXJuaW5nIHRlc3Qgd2l0aCBubyBkYXRhIGxvb2tzIGxpa2UuIil9KSwKKyAgICAgICAg
ICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoYGxldmVsLWZhaWxgLCBgZnVuY3Rpb24o
KSB7IHJldHVybiB7bGV2ZWw6ICJmYWlsIn07IH1gLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5n
KCJUaGlzIGlzIHdoYXQgdGhlIHJlc3VsdCBvZiBhIGZhaWxpbmcgdGVzdCB3aXRoIG5vIGRhdGEg
bG9va3MgbGlrZS4iKX0pLAorICAgICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2Fz
ZShgbGV2ZWwtZXJyb3JgLCBgZnVuY3Rpb24oKSB7IHJldHVybiB7bGV2ZWw6ICJlcnJvciJ9OyB9
YCwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiVGhpcyBpcyB3aGF0IHRoZSByZXN1bHQgb2Yg
YSB0ZXN0IHRoYXQgdGhyZXcgYW4gZXJyb3Igd2l0aCBubyBkYXRhIGxvb2tzIGxpa2UuIil9KSwK
KyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoYGxldmVsLXVuc3VwcG9y
dGVkYCwgYGZ1bmN0aW9uKCkgeyByZXR1cm4ge2xldmVsOiAidW5zdXBwb3J0ZWQifTsgfWAsIHtk
ZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIlRoaXMgaXMgd2hhdCB0aGUgcmVzdWx0IG9mIGEgdW5z
dXBwb3J0ZWQgdGVzdCB3aXRoIG5vIGRhdGEgbG9va3MgbGlrZS4iKX0pLAorICAgICAgICAgICAg
ICAgIF0sIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIlRoZXNlIGFyZSBhbGwgb2YgdGhlIGRp
ZmZlcmVudCB0ZXN0IHJlc3VsdCBsZXZlbHMuIil9KSwKKyAgICAgICAgICAgICAgICBuZXcgV0ku
QXVkaXRUZXN0R3JvdXAoV0kuVUlTdHJpbmcoIlJlc3VsdCBEYXRhIiksIFsKKyAgICAgICAgICAg
ICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoYGRhdGEtZG9tTm9kZXNgLCBgZnVuY3Rpb24o
KSB7IHJldHVybiB7ZG9tTm9kZXM6IFtkb2N1bWVudC5ib2R5XSwgbGV2ZWw6ICJwYXNzIn07IH1g
LCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJUaGlzIGlzIGFuIGV4YW1wbGUgb2YgaG93IHJl
c3VsdCBET00gbm9kZXMgYXJlIHNob3duLiBJdCB3aWxsIHBhc3Mgd2l0aCB0aGUgPGJvZHk+IGVs
ZW1lbnQuIil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoYGRh
dGEtZG9tQXR0cmlidXRlc2AsIGBmdW5jdGlvbigpIHsgcmV0dXJuIHtkb21Ob2RlczogQXJyYXku
ZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJbaWRdIikpLCBkb21BdHRyaWJ1dGVzOiBb
ImlkIl0sIGxldmVsOiAicGFzcyJ9OyB9YCwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiVGhp
cyBpcyBhbiBleGFtcGxlIG9mIGhvdyByZXN1bHQgRE9NIG5vZGVzIGFyZSBzaG93bi4gSXQgd2ls
bCBwYXNzIHdpdGggYWxsIGVsZW1lbnRzIHdpdGggYW4gaWQgYXR0cmlidXRlLiIpfSksCisgICAg
ICAgICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKGBkYXRhLWVycm9yc2AsIGBmdW5j
dGlvbigpIHsgdGhyb3cgRXJyb3IoInRoaXMgZXJyb3Igd2FzIHRocm93biBmcm9tIGluc2lkZSB0
aGUgYXVkaXQgdGVzdCBjb2RlLiIpOyB9YCwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiVGhp
cyBpcyBhbiBleGFtcGxlIG9mIGhvdyBlcnJvcnMgYXJlIHNob3duLiBUaGUgZXJyb3Igd2FzIHRo
cm93biBtYW51YWxseSwgYnV0IGV4ZWN1dGlvbiBlcnJvcnMgd2lsbCBhcHBlYXIgaW4gdGhlIHNh
bWUgd2F5LiIpfSksCisgICAgICAgICAgICAgICAgXSwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmlu
ZygiVGhlc2UgYXJlIGFsbCBvZiB0aGUgZGlmZmVyZW50IHR5cGVzIG9mIGRhdGEgdGhhdCBjYW4g
YmUgcmV0dXJuZWQgd2l0aCB0aGUgdGVzdCByZXN1bHQuIil9KSwKKyAgICAgICAgICAgIF0sIHtk
ZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIlRoZXNlIHRlc3RzIHNlcnZlIGFzIGEgZGVtb25zdHJh
dGlvbiBvZiB0aGUgZnVuY3Rpb25hbGl0eSBhbmQgc3RydWN0dXJlIG9mIGF1ZGl0cy4iKX0pLAor
ICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdEdyb3VwKFdJLlVJU3RyaW5nKCJBY2Nlc3NpYmls
aXR5IiksIFsKKyAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0R3JvdXAoV0kuVUlTdHJp
bmcoIkF0dHJpYnV0ZXMiKSwgWworICAgICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0
Q2FzZShgaW1nLWFsdGAsIGBmdW5jdGlvbigpIHsgbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShk
b2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaW1nIikpLmZpbHRlcigoaW1nKSA9PiAhaW1n
LmFsdCB8fCAhaW1nLmFsdC5sZW5ndGgpOyByZXR1cm4geyBsZXZlbDogZG9tTm9kZXMubGVuZ3Ro
ID8gImZhaWwiIDogInBhc3MiLCBkb21Ob2RlcywgZG9tQXR0cmlidXRlczogWyJhbHQiXSB9OyB9
YCwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiRW5zdXJlIDxpbWc+IGVsZW1lbnRzIGhhdmUg
YWx0ZXJuYXRlIHRleHQuIil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVz
dENhc2UoYGFyZWEtYWx0YCwgYGZ1bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJheS5mcm9t
KGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJhcmVhIikpLmZpbHRlcigoYXJlYSkgPT4g
IWFyZWEuYWx0IHx8ICFhcmVhLmFsdC5sZW5ndGgpOyByZXR1cm4geyBsZXZlbDogZG9tTm9kZXMu
bGVuZ3RoID8gImZhaWwiIDogInBhc3MiLCBkb21Ob2RlcywgZG9tQXR0cmlidXRlczogWyJhbHQi
XSB9OyB9YCwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiRW5zdXJlIDxhcmVhPiBlbGVtZW50
cyBvZiBpbWFnZSBtYXBzIGhhdmUgYWx0ZXJuYXRlIHRleHQuIil9KSwKKyAgICAgICAgICAgICAg
ICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoYHZhbGlkLXRhYmluZGV4YCwgYGZ1bmN0aW9uKCkg
eyBsZXQgZG9tTm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIipb
dGFiaW5kZXhdIikpIC5maWx0ZXIoKG5vZGUpID0+IHsgbGV0IHRhYmluZGV4ID0gbm9kZS5nZXRB
dHRyaWJ1dGUoInRhYmluZGV4Iik7IGlmICghdGFiaW5kZXgpIHJldHVybiBmYWxzZTsgdGFiaW5k
ZXggPSBwYXJzZUludCh0YWJpbmRleCk7IHJldHVybiBpc05hTih0YWJpbmRleCkgfHwgKHRhYmlu
ZGV4ICE9PSAwICYmIHRhYmluZGV4ICE9PSAtMSk7IH0pOyByZXR1cm4geyBsZXZlbDogZG9tTm9k
ZXMubGVuZ3RoID8gImZhaWwiIDogInBhc3MiLCBkb21Ob2RlcywgZG9tQXR0cmlidXRlczogWyJ0
YWJpbmRleCJdIH07IH1gLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJFbnN1cmUgdGFiaW5k
ZXggaXMgYSBudW1iZXIuIil9KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVz
dENhc2UoYGZyYW1lLXRpdGxlYCwgYGZ1bmN0aW9uKCkgeyBsZXQgZG9tTm9kZXMgPSBBcnJheS5m
cm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImlmcmFtZSwgZnJhbWUiKSkgLmZpbHRlcigo
bm9kZSkgPT4geyBsZXQgdGl0bGUgPSBub2RlLmdldEF0dHJpYnV0ZSgidGl0bGUiKTsgcmV0dXJu
ICF0aXRsZSB8fCAhdGl0bGUudHJpbSgpLmxlbmd0aDsgfSk7IHJldHVybiB7IGxldmVsOiBkb21O
b2Rlcy5sZW5ndGggPyAiZmFpbCIgOiAicGFzcyIsIGRvbU5vZGVzLCBkb21BdHRyaWJ1dGVzOiBb
InRpdGxlIl0gfTsgfWAsIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSA8YXJlYT4g
ZWxlbWVudHMgb2YgaW1hZ2UgbWFwcyBoYXZlIGFsdGVybmF0ZSB0ZXh0LiIpfSksCisgICAgICAg
ICAgICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKGBoaWRkZW4tYm9keWAsIGBmdW5jdGlv
bigpIHsgbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxs
KCJib2R5W2hpZGRlbl0iKSkuZmlsdGVyKChib2R5KSA9PiBib2R5LmhpZGRlbik7IHJldHVybiB7
IGxldmVsOiBkb21Ob2Rlcy5sZW5ndGggPyAiZmFpbCIgOiAicGFzcyIsIGRvbU5vZGVzLCBkb21B
dHRyaWJ1dGVzOiBbImhpZGRlbiJdIH07IH1gLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJF
bnN1cmUgaGlkZGVuPXRydWUgaXMgbm90IHByZXNlbnQgb24gdGhlIGRvY3VtZW50IGJvZHkuIil9
KSwKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoYG1ldGEtcmVmcmVz
aGAsIGBmdW5jdGlvbigpIHsgbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVy
eVNlbGVjdG9yQWxsKCJtZXRhW2h0dHAtZXF1aXY9cmVmcmVzaF0iKSk7IHJldHVybiB7IGxldmVs
OiBkb21Ob2Rlcy5sZW5ndGggPyAid2FybiIgOiAicGFzcyIsIGRvbU5vZGVzLCBkb21BdHRyaWJ1
dGVzOiBbImh0dHAtZXF1aXYiXSB9OyB9YCwge2Rlc2NyaXB0aW9uOiBXSS5VSVN0cmluZygiRW5z
dXJlIDxtZXRhIGh0dHAtZXF1aXY9cmVmcmVzaD4gaXMgbm90IHVzZWQuIil9KSwKKyAgICAgICAg
ICAgICAgICBdLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJUZXN0cyBmb3IgZWxlbWVudCBh
dHRyaWJ1dGUgYWNjZXNzaWJpbGl0eSBpc3N1ZXMuIil9KSwKKyAgICAgICAgICAgICAgICBuZXcg
V0kuQXVkaXRUZXN0R3JvdXAoV0kuVUlTdHJpbmcoIkVsZW1lbnRzIiksIFsKKyAgICAgICAgICAg
ICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoYGJsaW5rYCwgYGZ1bmN0aW9uKCkgeyBsZXQg
ZG9tTm9kZXMgPSBBcnJheS5mcm9tKGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJibGlu
ayIpKTsgcmV0dXJuIHsgbGV2ZWw6IGRvbU5vZGVzLmxlbmd0aCA/ICJ3YXJuIiA6ICJwYXNzIiwg
ZG9tTm9kZXMgfTsgfWAsIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSBoaWRkZW49
dHJ1ZSBpcyBub3QgcHJlc2VudCBvbiB0aGUgZG9jdW1lbnQgYm9keS4iKX0pLAorICAgICAgICAg
ICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZShgbWFycXVlZWAsIGBmdW5jdGlvbigpIHsg
bGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgi
bWFycXVlZSIpKTsgcmV0dXJuIHsgbGV2ZWw6IGRvbU5vZGVzLmxlbmd0aCA/ICJ3YXJuIiA6ICJw
YXNzIiwgZG9tTm9kZXMgfTsgfWAsIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSBo
aWRkZW49dHJ1ZSBpcyBub3QgcHJlc2VudCBvbiB0aGUgZG9jdW1lbnQgYm9keS4iKX0pLAorICAg
ICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZShgZGxpdGVtYCwgYGZ1bmN0aW9u
KCkgeyBmdW5jdGlvbiBjaGVjayhub2RlKSB7IGlmICghbm9kZSkgeyByZXR1cm4gZmFsc2U7IH0g
aWYgKG5vZGUubm9kZU5hbWUgPT09ICJERCIpIHsgcmV0dXJuIHRydWU7IH0gcmV0dXJuIGNoZWNr
KG5vZGUucGFyZW50Tm9kZSk7IH0gbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5x
dWVyeVNlbGVjdG9yQWxsKCJkdCwgZGQiKSkuZmlsdGVyKGNoZWNrKTsgcmV0dXJuIHsgbGV2ZWw6
IGRvbU5vZGVzLmxlbmd0aCA/ICJ3YXJuIiA6ICJwYXNzIiwgZG9tTm9kZXMgfTsgfWAsIHtkZXNj
cmlwdGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSA8ZHQ+IGFuZCA8ZGQ+IGVsZW1lbnRzIGFyZSBj
b250YWluZWQgYnkgYSA8ZGw+LiIpfSksCisgICAgICAgICAgICAgICAgXSwge2Rlc2NyaXB0aW9u
OiBXSS5VSVN0cmluZygiVGVzdHMgZm9yIGVsZW1lbnQgYWNjZXNzaWJpbGl0eSBpc3N1ZXMuIil9
KSwKKyAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0R3JvdXAoV0kuVUlTdHJpbmcoIkZv
cm1zIiksIFsKKyAgICAgICAgICAgICAgICAgICAgbmV3IFdJLkF1ZGl0VGVzdENhc2UoYG9uZS1s
ZWdlbmRgLCBgZnVuY3Rpb24oKSB7IGxldCBmb3JtTGVnZW5kc01hcCA9IEFycmF5LmZyb20oZG9j
dW1lbnQucXVlcnlTZWxlY3RvckFsbCgiZm9ybSBsZWdlbmQiKSkucmVkdWNlKChhY2N1bXVsYXRv
ciwgbm9kZSkgPT4geyBsZXQgZXhpc3RpbmcgPSBhY2N1bXVsYXRvci5nZXQobm9kZS5mb3JtKTsg
aWYgKCFleGlzdGluZykgeyBleGlzdGluZyA9IFtdOyBhY2N1bXVsYXRvci5zZXQobm9kZS5mb3Jt
LCBleGlzdGluZyk7IH0gZXhpc3RpbmcucHVzaChub2RlKTsgcmV0dXJuIGFjY3VtdWxhdG9yOyB9
LCBuZXcgTWFwKTsgbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShmb3JtTGVnZW5kc01hcC52YWx1
ZXMoKSkucmVkdWNlKChhY2N1bXVsYXRvciwgbGVnZW5kcykgPT4gYWNjdW11bGF0b3IuY29uY2F0
KGxlZ2VuZHMpLCBbXSk7IHJldHVybiB7IGxldmVsOiBkb21Ob2Rlcy5sZW5ndGggPyAid2FybiIg
OiAicGFzcyIsIGRvbU5vZGVzIH07IH1gLCB7ZGVzY3JpcHRpb246IFdJLlVJU3RyaW5nKCJFbnN1
cmUgZXhhY3RseSBvbmUgPGxlZ2VuZD4gZXhpc3RzIHBlciBmb3JtLiIpfSksCisgICAgICAgICAg
ICAgICAgICAgIG5ldyBXSS5BdWRpdFRlc3RDYXNlKGBsZWdlbmQtZmlyc3QtY2hpbGRgLCBgZnVu
Y3Rpb24oKSB7IGxldCBkb21Ob2RlcyA9IEFycmF5LmZyb20oZG9jdW1lbnQucXVlcnlTZWxlY3Rv
ckFsbCgiZm9ybSA+IGxlZ2VuZDpub3QoOmZpcnN0LWNoaWxkKSIpKTsgcmV0dXJuIHsgbGV2ZWw6
IGRvbU5vZGVzLmxlbmd0aCA/ICJ3YXJuIiA6ICJwYXNzIiwgZG9tTm9kZXMgfTsgfWAsIHtkZXNj
cmlwdGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSBsZWdlbmQgaXMgZmlyc3QgY2hpbGQgaW4gZm9y
bS4iKX0pLAorICAgICAgICAgICAgICAgICAgICBuZXcgV0kuQXVkaXRUZXN0Q2FzZShgZm9ybS1p
bnB1dGAsIGBmdW5jdGlvbigpIHsgbGV0IGRvbU5vZGVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5n
ZXRFbGVtZW50c0J5VGFnTmFtZSgiZm9ybSIpKSAuZmlsdGVyKG5vZGUgPT4gIW5vZGUuZWxlbWVu
dHMubGVuZ3RoKTsgcmV0dXJuIHsgbGV2ZWw6IGRvbU5vZGVzLmxlbmd0aCA/ICJ3YXJuIiA6ICJw
YXNzIiwgZG9tTm9kZXMgfTsgfWAsIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIkVuc3VyZSBm
b3JtcyBoYXZlIGF0IGxlYXN0IG9uZSBpbnB1dC4iKX0pLAorICAgICAgICAgICAgICAgIF0sIHtk
ZXNjcmlwdGlvbjogV0kuVUlTdHJpbmcoIlRlc3RzIHRoZSBhY2Nlc3NpYmlsaXR5IG9mIGZvcm0g
ZWxlbWVudHMuIil9KSwKKyAgICAgICAgICAgIF0sIHtkZXNjcmlwdGlvbjogV0kuVUlTdHJpbmco
IlRlc3RzIGZvciB3YXlzIHRvIGltcHJvdmUgYWNjZXNzaWJpbGl0eS4iKX0pLAorICAgICAgICBd
OworCisgICAgICAgIGZvciAobGV0IHRlc3Qgb2YgZGVmYXVsdFRlc3RzKSB7CisgICAgICAgICAg
ICB0aGlzLl9hZGRUZXN0KHRlc3QpOworICAgICAgICAgICAgV0kub2JqZWN0U3RvcmVzLmF1ZGl0
cy5hZGRPYmplY3QodGVzdCk7CisgICAgICAgIH0KKyAgICB9CiB9OwogCiBXSS5BdWRpdE1hbmFn
ZXIuUnVubmluZ1N0YXRlID0gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmNzcyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0TmF2aWdhdGlvblNpZGVi
YXJQYW5lbC5jc3MKaW5kZXggOTBkNmVhYjM3MDc3MWY5YTAyYjg0YzAxYjBlMTQ1OWY4NmJhZTc5
YS4uOWZhODhkOGRiMmUxMTQ4NDUyNDAzMTc5NThlNmY0OWMyYzY3ZjMwNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZpZ2F0aW9u
U2lkZWJhclBhbmVsLmNzcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFuZWwuY3NzCkBAIC0yNiwzICsyNiwxNiBA
QAogLnNpZGViYXIgPiAucGFuZWwubmF2aWdhdGlvbi5hdWRpdCA+IC5jb250ZW50IHsKICAgICB0
b3A6IHZhcigtLW5hdmlnYXRpb24tYmFyLWhlaWdodCk7CiB9CisKKy5zaWRlYmFyID4gLnBhbmVs
Lm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3VsdHM6bm90KC5oYXMtdGVzdHMpID4gLmNvbnRlbnQg
PiAubWVzc2FnZS10ZXh0LXZpZXcgeworICAgIHBvc2l0aW9uOiBpbml0aWFsOworICAgIGJvcmRl
ci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpOworfQorCisuc2lkZWJhciA+
IC5wYW5lbC5uYXZpZ2F0aW9uLmF1ZGl0Lmhhcy1yZXN1bHRzOm5vdCguaGFzLXRlc3RzKSA+IC5j
b250ZW50ID4gLm1lc3NhZ2UtdGV4dC12aWV3ID4gLm1lc3NhZ2UgeworICAgIGRpc3BsYXk6IG5v
bmU7Cit9CisKKy5zaWRlYmFyID4gLnBhbmVsLm5hdmlnYXRpb24uYXVkaXQuaGFzLXJlc3VsdHM6
bm90KC5oYXMtdGVzdHMpID4gLmNvbnRlbnQgPiAubWVzc2FnZS10ZXh0LXZpZXcgPiBidXR0b24g
eworICAgIG1hcmdpbjogOHB4IDAgN3B4OworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpz
IGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXROYXZpZ2F0
aW9uU2lkZWJhclBhbmVsLmpzCmluZGV4IDU2NThkYTdjZjhjZmZlZTUyZDc0NGFmYjBkODA0ZGFi
MzJjMWZjYTQuLjIyNTRkOGY1OTIyZTljZWQ0OWZjMTNhODk1YTBkMDhkOGJjZWRjY2QgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0TmF2
aWdhdGlvblNpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKQEAgLTEwNSwxNSAr
MTA1LDIxIEBAIFdJLkF1ZGl0TmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIEF1ZGl0TmF2
aWdhdGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hCiAKICAgICBfYWRkVGVzdCh0ZXN0KQog
ICAgIHsKKyAgICAgICAgdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoImhhcy10ZXN0cyIpOwor
CiAgICAgICAgIHRoaXMuX3VwZGF0ZVN0YXJ0U3RvcEJ1dHRvbk5hdmlnYXRpb25JdGVtU3RhdGUo
KTsKIAogICAgICAgICB0aGlzLmNvbnRlbnRUcmVlT3V0bGluZS5pbnNlcnRDaGlsZChuZXcgV0ku
QXVkaXRUcmVlRWxlbWVudCh0ZXN0KSwgdGhpcy5jb250ZW50VHJlZU91dGxpbmUuY2hpbGRyZW4u
aW5kZXhPZih0aGlzLl9yZXN1bHRzRm9sZGVyVHJlZUVsZW1lbnQpKTsKIAogICAgICAgICB0aGlz
Ll9yZXN1bHRzRm9sZGVyVHJlZUVsZW1lbnQuaGlkZGVuID0gIXRoaXMuX3Jlc3VsdHNGb2xkZXJU
cmVlRWxlbWVudC5jaGlsZHJlbi5sZW5ndGg7CisKKyAgICAgICAgdGhpcy5oaWRlRW1wdHlDb250
ZW50UGxhY2Vob2xkZXIoKTsKICAgICB9CiAKICAgICBfYWRkUmVzdWx0KHJlc3VsdCwgaW5kZXgp
CiAgICAgeworICAgICAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaGFzLXJlc3VsdHMi
KTsKKwogICAgICAgICB0aGlzLl91cGRhdGVTdGFydFN0b3BCdXR0b25OYXZpZ2F0aW9uSXRlbVN0
YXRlKCk7CiAKICAgICAgICAgdGhpcy5fcmVzdWx0c0ZvbGRlclRyZWVFbGVtZW50LmhpZGRlbiA9
IGZhbHNlOwpAQCAtMTUyLDYgKzE1OCwyOCBAQCBXSS5BdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFu
ZWwgPSBjbGFzcyBBdWRpdE5hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5OYQogICAg
ICAgICBsZXQgdHJlZUVsZW1lbnQgPSB0aGlzLnRyZWVFbGVtZW50Rm9yUmVwcmVzZW50ZWRPYmpl
Y3QodGVzdCk7CiAgICAgICAgIHRoaXMuY29udGVudFRyZWVPdXRsaW5lLnJlbW92ZUNoaWxkKHRy
ZWVFbGVtZW50KTsKIAorICAgICAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LnRvZ2dsZSgiaGFz
LXRlc3RzIiwgISFXSS5hdWRpdE1hbmFnZXIudGVzdHMubGVuZ3RoKTsKKworICAgICAgICBpZiAo
IVdJLmF1ZGl0TWFuYWdlci50ZXN0cy5sZW5ndGgpIHsKKyAgICAgICAgICAgIGxldCBjb250ZW50
UGxhY2Vob2xkZXIgPSBXSS5jcmVhdGVNZXNzYWdlVGV4dFZpZXcoV0kuVUlTdHJpbmcoIk5vIGF1
ZGl0cyIpKTsKKworICAgICAgICAgICAgbGV0IGRlZmF1bHRCdXR0b25FbGVtZW50ID0gY29udGVu
dFBsYWNlaG9sZGVyLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIp
KTsKKyAgICAgICAgICAgIGRlZmF1bHRCdXR0b25FbGVtZW50LnRleHRDb250ZW50ID0gV0kuVUlT
dHJpbmcoIkFkZCBEZWZhdWx0IEF1ZGl0cyIpOworICAgICAgICAgICAgZGVmYXVsdEJ1dHRvbkVs
ZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCAoKSA9PiB7CisgICAgICAgICAgICAgICAg
V0kuYXVkaXRNYW5hZ2VyLmFkZERlZmF1bHRUZXN0c0lmTmVlZGVkKCk7CisgICAgICAgICAgICB9
KTsKKworICAgICAgICAgICAgY29udGVudFBsYWNlaG9sZGVyID0gdGhpcy5zaG93RW1wdHlDb250
ZW50UGxhY2Vob2xkZXIoY29udGVudFBsYWNlaG9sZGVyKTsKKworICAgICAgICAgICAgaWYgKFdJ
LmF1ZGl0TWFuYWdlci5yZXN1bHRzLmxlbmd0aCkgeworICAgICAgICAgICAgICAgIGNvbnNvbGUu
YXNzZXJ0KHRoaXMuY29udGVudFRyZWVPdXRsaW5lLmNoaWxkcmVuWzBdID09PSB0aGlzLl9yZXN1
bHRzRm9sZGVyVHJlZUVsZW1lbnQpOworCisgICAgICAgICAgICAgICAgLy8gTW92ZSB0aGUgcGxh
Y2Vob2xkZXIgdG8gYmUgdGhlIGZpcnN0IGVsZW1lbnQgaW4gdGhlIGNvbnRlbnQgYXJlYSwgd2hl
cmUgaXQgd2lsbAorICAgICAgICAgICAgICAgIC8vIGJlIHN0eWxlZCBzdWNoIHRoYXQgb25seSB0
aGUgYnV0dG9uIGlzIHZpc2libGUuCisgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50Vmlldy5l
bGVtZW50Lmluc2VydEJlZm9yZShjb250ZW50UGxhY2Vob2xkZXIsIHRoaXMuY29udGVudFZpZXcu
ZWxlbWVudC5maXJzdENoaWxkKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAgICAg
IHRoaXMuX3VwZGF0ZVN0YXJ0U3RvcEJ1dHRvbk5hdmlnYXRpb25JdGVtU3RhdGUoKTsKICAgICB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9OYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzCmluZGV4IDNhYjFkYmFmNzRh
NjY3NWI4ZTY5MDk1N2RmN2FjOGNmNWEzNzI5ZjguLjVlYmVhZTkxZjgxYWQ0MmU3YzZlNWU0Nzk1
ODc4YjExODVhNTZiMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKKysrIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcwpA
QCAtMjY3LDEyICsyNjcsMTQgQEAgV0kuTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIE5h
dmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5TaWRlYmFyUGFuZWwKIAogICAgICAgICBs
ZXQgZW1wdHlDb250ZW50UGxhY2Vob2xkZXJFbGVtZW50ID0gdGhpcy5fY3JlYXRlRW1wdHlDb250
ZW50UGxhY2Vob2xkZXJJZk5lZWRlZCh0cmVlT3V0bGluZSwgbWVzc2FnZSk7CiAgICAgICAgIGlm
IChlbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1lbnQucGFyZW50Tm9kZSkKLSAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgICAgIHJldHVybiBlbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1l
bnQ7CiAKICAgICAgICAgbGV0IGVtcHR5Q29udGVudFBsYWNlaG9sZGVyUGFyZW50RWxlbWVudCA9
IHRyZWVPdXRsaW5lLmVsZW1lbnQucGFyZW50Tm9kZTsKICAgICAgICAgZW1wdHlDb250ZW50UGxh
Y2Vob2xkZXJQYXJlbnRFbGVtZW50LmFwcGVuZENoaWxkKGVtcHR5Q29udGVudFBsYWNlaG9sZGVy
RWxlbWVudCk7CiAKICAgICAgICAgdGhpcy5fdXBkYXRlQ29udGVudE92ZXJmbG93U2hhZG93Vmlz
aWJpbGl0eSgpOworCisgICAgICAgIHJldHVybiBlbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1l
bnQ7CiAgICAgfQogCiAgICAgaGlkZUVtcHR5Q29udGVudFBsYWNlaG9sZGVyKHRyZWVPdXRsaW5l
KQpAQCAtNzI1LDcgKzcyNyw3IEBAIFdJLk5hdmlnYXRpb25TaWRlYmFyUGFuZWwgPSBjbGFzcyBO
YXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuU2lkZWJhclBhbmVsCiAgICAgICAgIGlm
IChlbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1lbnQpCiAgICAgICAgICAgICByZXR1cm4gZW1w
dHlDb250ZW50UGxhY2Vob2xkZXJFbGVtZW50OwogCi0gICAgICAgIGVtcHR5Q29udGVudFBsYWNl
aG9sZGVyRWxlbWVudCA9IFdJLmNyZWF0ZU1lc3NhZ2VUZXh0VmlldyhtZXNzYWdlKTsKKyAgICAg
ICAgZW1wdHlDb250ZW50UGxhY2Vob2xkZXJFbGVtZW50ID0gbWVzc2FnZSBpbnN0YW5jZW9mIE5v
ZGUgPyBtZXNzYWdlIDogV0kuY3JlYXRlTWVzc2FnZVRleHRWaWV3KG1lc3NhZ2UpOwogICAgICAg
ICB0aGlzLl9lbXB0eUNvbnRlbnRQbGFjZWhvbGRlckVsZW1lbnRzLnNldCh0cmVlT3V0bGluZSwg
ZW1wdHlDb250ZW50UGxhY2Vob2xkZXJFbGVtZW50KTsKIAogICAgICAgICByZXR1cm4gZW1wdHlD
b250ZW50UGxhY2Vob2xkZXJFbGVtZW50Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>