<?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>79486</bug_id>
          
          <creation_ts>2012-02-24 06:35:44 -0800</creation_ts>
          <short_desc>[Qt] API: Unify the loading properties and signals.</short_desc>
          <delta_ts>2012-02-24 09:51:13 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>74403</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jocelyn Turcotte">jturcotte</reporter>
          <assigned_to name="Jocelyn Turcotte">jturcotte</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hausmann</cc>
    
    <cc>menard</cc>
    
    <cc>vestbo</cc>
    
    <cc>zalan</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>564278</commentid>
    <comment_count>0</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-02-24 06:35:44 -0800</bug_when>
    <thetext>[Qt] API: Unify the loading properties and signals.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564290</commentid>
    <comment_count>1</comment_count>
      <attachid>128725</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-02-24 06:44:35 -0800</bug_when>
    <thetext>Created attachment 128725
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564329</commentid>
    <comment_count>2</comment_count>
      <attachid>128725</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-02-24 08:03:01 -0800</bug_when>
    <thetext>Comment on attachment 128725
Patch

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

r=me.

The only iffy thing that I think can be easily fixed if it actually turns out to be a problem (I&apos;m not sure it is), is that the argument to the loadingChanged signal is very short-lived. This isn&apos;t quite specific to this patch, but perhaps we should consider using actual JavaScript objects as parameters (QJSValue) with according properties. (or JSON if you want so :)

&gt; Source/WebKit2/UIProcess/API/qt/qwebloadrequest_p.h:47
&gt; +    QWebLoadRequestPrivate* d;

As a general rule perhaps we should consider adopting the Qt rule of using QScopedPointer for the d-pointer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564398</commentid>
    <comment_count>3</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-02-24 09:51:13 -0800</bug_when>
    <thetext>Committed r108815: &lt;http://trac.webkit.org/changeset/108815&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128725</attachid>
            <date>2012-02-24 06:44:35 -0800</date>
            <delta_ts>2012-02-24 08:03:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79486-20120224153845.patch</filename>
            <type>text/plain</type>
            <size>74978</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA4MjMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IDQ2NzIxMzBkNmNj
OTE0YWZhN2Q4ZjQxYzI1M2QyMTVjYTllNzlhYTYuLjkzY2Q2M2JhOWNmMzJmMmE0MGRmMmJlYzA2
OWI2ODA5Nzc5NGM2YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTItMDIt
MjQgIEpvY2VseW4gVHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQG5va2lhLmNvbT4KKworICAg
ICAgICBbUXRdIEFQSTogVW5pZnkgdGhlIGxvYWRpbmcgcHJvcGVydGllcyBhbmQgc2lnbmFscy4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc5NDg2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkZWNsYXJh
dGl2ZS9wbHVnaW4uY3BwOgorICAgICAgICAoV2ViS2l0UW1sUGx1Z2luOjpyZWdpc3RlclR5cGVz
KToKKwogMjAxMi0wMi0xNiAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5j
b20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBicm93bi1wYXBlciBiYWcgYnVpbGQgZml4LgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCmluZGV4IDZjNTkzODFkODkyNzJjZDA1NDU5YTgzYjlhMzFiMTU2YzBhYjgxOWIuLjI1MzYx
YWEyOGFkZjI1YWZlMWNmOTQ0YTUxMTU0YTFiNGU4NGRhOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSw4OSBAQAorMjAxMi0wMi0yNCAgSm9jZWx5biBUdXJjb3R0ZSAgPGpvY2VseW4udHVyY290dGVA
bm9raWEuY29tPgorCisgICAgICAgIFtRdF0gQVBJOiBVbmlmeSB0aGUgbG9hZGluZyBwcm9wZXJ0
aWVzIGFuZCBzaWduYWxzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9Nzk0ODYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAtIFJlbW92ZSB0aGUgY2FuUmVsb2FkIHNpZ25hbCwgaW5zdGVhZCBhc3N1bWUgdGhh
dCBjYWxsaW5nIHJlbG9hZCBpbiB0aG9zZSBjYXNlcworICAgICAgICAgIHdvbid0IGhhdmUgYW55
IGVmZmVjdC4KKyAgICAgICAgLSBSZXBsYWNlIGxvYWRTdGFydGVkLCBsb2FkU3VjY2VlZGVkIGFu
ZCBsb2FkRmFpbGVkIGJ5IGEgc2luZ2xlIHNpZ25hbDogbG9hZGluZ0NoYW5nZWQuCisgICAgICAg
ICAgVGhlIHNpZ25hbCBjYXJyaWVzIGFuIGFyZ3VtZW50IHdpdGggYSBzdGF0dXMgYW5kIGVycm9y
IGNvZGVzIGdpdmluZyB0aGUgaW50ZW5kZWQgY29udGV4dC4KKyAgICAgICAgLSBVc2UgbG9hZGlu
Z0NoYW5nZWQgYXMgdGhlIG5vdGlmaWNhdGlvbiBzaWduYWwgZm9yIHRoZSBwcm9wZXJ0eSAibG9h
ZGluZyIgaW5zdGVhZCBvZgorICAgICAgICAgIG5hdmlnYXRpb25TdGF0ZUNoYW5nZWQuCisKKyAg
ICAgICAgQWxzbyB1cGRhdGUgYWxsIEFQSSB0ZXN0cyB0byB1c2UgdGhlIG5ldyBsb2FkaW5nIHNp
Z25hbHMgYW5kIGFkZCBzb21lIHV0aWxpdHkgZnVuY3Rpb25zCisgICAgICAgIHRvIHRyYWNrIHRo
ZSBsb2FkaW5nIHNpbmNlIHRoZSBuZXcgQVBJIGFpbXMgdG8gYmUgbW9yZSBhZGFwdGVkIHRvIGRl
Y2xhcmF0aXZlIGxvZ2ljCisgICAgICAgIGFuZCB0aGUgYXV0byB0ZXN0cyBhcmUgdXNpbmcgYW4g
aW1wZXJhdGl2ZSBsb2dpYy4KKworICAgICAgICAqIFRhcmdldC5wcmk6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQ
cml2YXRlOjpRUXVpY2tXZWJWaWV3UHJpdmF0ZSk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJp
dmF0ZTo6bG9hZERpZFN1Y2NlZWQpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OmRp
ZENoYW5nZUxvYWRpbmdTdGF0ZSk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6cHJv
Y2Vzc0RpZENyYXNoKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRSZWxhdW5j
aFByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmg6
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oOgorICAgICAg
ICAoUVF1aWNrV2ViVmlld1ByaXZhdGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXdl
YmxvYWRyZXF1ZXN0LmNwcDogQWRkZWQuCisgICAgICAgIChRV2ViTG9hZFJlcXVlc3RQcml2YXRl
KToKKyAgICAgICAgKFFXZWJMb2FkUmVxdWVzdFByaXZhdGU6OlFXZWJMb2FkUmVxdWVzdFByaXZh
dGUpOgorICAgICAgICAoUVdlYkxvYWRSZXF1ZXN0OjpRV2ViTG9hZFJlcXVlc3QpOgorICAgICAg
ICAoUVdlYkxvYWRSZXF1ZXN0Ojp+UVdlYkxvYWRSZXF1ZXN0KToKKyAgICAgICAgKFFXZWJMb2Fk
UmVxdWVzdDo6dXJsKToKKyAgICAgICAgKFFXZWJMb2FkUmVxdWVzdDo6c3RhdHVzKToKKyAgICAg
ICAgKFFXZWJMb2FkUmVxdWVzdDo6ZXJyb3JTdHJpbmcpOgorICAgICAgICAoUVdlYkxvYWRSZXF1
ZXN0OjplcnJvckRvbWFpbik6CisgICAgICAgIChRV2ViTG9hZFJlcXVlc3Q6OmVycm9yQ29kZSk6
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xd2VibG9hZHJlcXVlc3RfcC5oOiBBZGRlZC4K
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3B1YmxpY2FwaS90c3RfcHVibGljYXBp
LmNwcDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL0Rlc2t0b3BC
ZWhhdmlvci90c3RfaXRlbVNlbGVjdG9yLnFtbDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0
L3Rlc3RzL3FtbHRlc3RzL0Rlc2t0b3BCZWhhdmlvci90c3RfbGlua0hvdmVyZWQucW1sOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvRGVza3RvcEJlaGF2aW9yL3Rz
dF9sb2FkSHRtbC5xbWw6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0
cy9EZXNrdG9wQmVoYXZpb3IvdHN0X21lc3NhZ2luZy5xbWw6CisgICAgICAgICogVUlQcm9jZXNz
L0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9EZXNrdG9wQmVoYXZpb3IvdHN0X25hdmlnYXRpb25SZXF1
ZXN0ZWQucW1sOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2Vi
Vmlldy90c3RfZmF2SWNvbkxvYWQucW1sOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvdGVz
dHMvcW1sdGVzdHMvV2ViVmlldy90c3RfamF2YVNjcmlwdERpYWxvZ3MucW1sOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfbG9hZEZhaWwucW1s
OgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3Rf
bG9hZEh0bWwucW1sOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMv
V2ViVmlldy90c3RfbG9hZFByb2dyZXNzLnFtbDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0
L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X2xvYWRQcm9ncmVzc1NpZ25hbC5xbWw6CisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9XZWJWaWV3L3RzdF9sb2FkVXJs
LnFtbDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcv
dHN0X25hdmlnYXRpb25IaXN0b3J5LnFtbDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3Rl
c3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X3ByZWZlcmVuY2VzLnFtbDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X3Byb3BlcnRpZXMucW1sOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfdGl0
bGVDaGFuZ2VkLnFtbDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3Rz
L2NvbW1vbi9UZXN0V2ViVmlldy5xbWw6IEFkZGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
cXQvdGVzdHMvcXF1aWNrd2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5jcHA6CisgICAgICAgICh0
c3RfUVF1aWNrV2ViVmlldzo6bmF2aWdhdGlvblN0YXR1c0F0U3RhcnR1cCk6CisgICAgICAgIChM
b2FkU3RhcnRlZENhdGNoZXI6OkxvYWRTdGFydGVkQ2F0Y2hlcik6CisgICAgICAgIChMb2FkU3Rh
cnRlZENhdGNoZXI6Om9uTG9hZGluZ0NoYW5nZWQpOgorICAgICAgICAodHN0X1FRdWlja1dlYlZp
ZXc6OnN0b3BFbmFibGVkQWZ0ZXJMb2FkU3RhcnRlZCk6CisgICAgICAgICh0c3RfUVF1aWNrV2Vi
Vmlldzo6bG9hZEVtcHR5UGFnZVZpZXdIaWRkZW4pOgorICAgICAgICAodHN0X1FRdWlja1dlYlZp
ZXc6OmxvYWROb25leGlzdGVudEZpbGVVcmwpOgorICAgICAgICAodHN0X1FRdWlja1dlYlZpZXc6
OmJhY2tBbmRGb3J3YXJkKToKKyAgICAgICAgKHRzdF9RUXVpY2tXZWJWaWV3OjpyZWxvYWQpOgor
ICAgICAgICAodHN0X1FRdWlja1dlYlZpZXc6OnN0b3ApOgorICAgICAgICAodHN0X1FRdWlja1dl
YlZpZXc6OmxvYWRQcm9ncmVzcyk6CisgICAgICAgICh0c3RfUVF1aWNrV2ViVmlldzo6c2hvd1dl
YlZpZXcpOgorICAgICAgICAodHN0X1FRdWlja1dlYlZpZXc6Om11bHRpcGxlV2ViVmlld1dpbmRv
d3MpOgorICAgICAgICAodHN0X1FRdWlja1dlYlZpZXc6Om11bHRpcGxlV2ViVmlld3MpOgorICAg
ICAgICAodHN0X1FRdWlja1dlYlZpZXc6OnNjcm9sbFJlcXVlc3QpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9BUEkvcXQvdGVzdHMvdXRpbC5jcHA6CisgICAgICAgIChMb2FkU3B5KToKKyAgICAgICAg
KExvYWRTcHk6OkxvYWRTcHkpOgorICAgICAgICAoTG9hZFNweTo6b25Mb2FkaW5nQ2hhbmdlZCk6
CisgICAgICAgICh3YWl0Rm9yTG9hZFN1Y2NlZWRlZCk6CisgICAgICAgICh3YWl0Rm9yTG9hZEZh
aWxlZCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy91dGlsLmg6CisgICAgICAg
ICogVUlQcm9jZXNzL3F0L1F0V2ViRXJyb3IuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvUXRX
ZWJQYWdlTG9hZENsaWVudC5jcHA6CisgICAgICAgIChRdFdlYlBhZ2VMb2FkQ2xpZW50OjpkaWRT
dGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKToKKyAgICAgICAgKFF0V2ViUGFnZUxvYWRDbGll
bnQ6OmRpc3BhdGNoTG9hZEZhaWxlZCk6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1F0V2ViUGFn
ZUxvYWRDbGllbnQuaDoKKyAgICAgICAgKFF0V2ViUGFnZUxvYWRDbGllbnQpOgorCiAyMDEyLTAy
LTIwICBQYXRyaWNrIEdhbnN0ZXJlciAgPHBhcm9nYUB3ZWJraXQub3JnPgogCiAgICAgICAgIFtD
TWFrZV0gVXBkYXRlIGFuZCBzb3J0IGxpc3Qgb2Ygc291cmNlIGZpbGVzLgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9wbHVnaW4uY3BwIGIvU291cmNlL1dlYktpdC9x
dC9kZWNsYXJhdGl2ZS9wbHVnaW4uY3BwCmluZGV4IGUyZjBmYjNlYzYxMzYyZjAyNTRkNjEwNTU3
NWVlZmMxNDNmNGViODQuLjYwZWYzYmFlNzQzNDA5ZjkzOTVhZWE4OGVmMDVlNjExYTliMTEzMGUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvcGx1Z2luLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL3BsdWdpbi5jcHAKQEAgLTI3LDYgKzI3LDcg
QEAKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJxdHdlYnNlY3VyaXR5
b3JpZ2luX3AuaCIKICNpbmNsdWRlICJxd2ViaWNvbmltYWdlcHJvdmlkZXJfcC5oIgorI2luY2x1
ZGUgInF3ZWJsb2FkcmVxdWVzdF9wLmgiCiAjaW5jbHVkZSAicXdlYm5hdmlnYXRpb25yZXF1ZXN0
X3AuaCIKICNpbmNsdWRlICJxd2VicGVybWlzc2lvbnJlcXVlc3RfcC5oIgogI2luY2x1ZGUgInF3
ZWJwcmVmZXJlbmNlc19wLmgiCkBAIC02Niw2ICs2Nyw3IEBAIHB1YmxpYzoKICAgICAgICAgcW1s
UmVnaXN0ZXJVbmNyZWF0YWJsZVR5cGU8UU5ldHdvcmtSZXBseT4odXJpLCAzLCAwLCAiTmV0d29y
a1JlcGx5IiwgUU9iamVjdDo6dHIoIkNhbm5vdCBjcmVhdGUgc2VwYXJhdGUgaW5zdGFuY2Ugb2Yg
TmV0d29ya1JlcGx5IikpOwogICAgICAgICBxbWxSZWdpc3RlclVuY3JlYXRhYmxlVHlwZTxRV2Vi
UGVybWlzc2lvblJlcXVlc3Q+KHVyaSwgMywgMCwgIlBlcm1pc3Npb25SZXF1ZXN0IiwgUU9iamVj
dDo6dHIoIkNhbm5vdCBjcmVhdGUgc2VwYXJhdGUgaW5zdGFuY2Ugb2YgUGVybWlzc2lvblJlcXVl
c3QiKSk7CiAgICAgICAgIHFtbFJlZ2lzdGVyVW5jcmVhdGFibGVUeXBlPFFXZWJOYXZpZ2F0aW9u
UmVxdWVzdD4odXJpLCAzLCAwLCAiTmF2aWdhdGlvblJlcXVlc3QiLCBRT2JqZWN0Ojp0cigiQ2Fu
bm90IGNyZWF0ZSBzZXBhcmF0ZSBpbnN0YW5jZSBvZiBOYXZpZ2F0aW9uUmVxdWVzdCIpKTsKKyAg
ICAgICAgcW1sUmVnaXN0ZXJVbmNyZWF0YWJsZVR5cGU8UVdlYkxvYWRSZXF1ZXN0Pih1cmksIDMs
IDAsICJXZWJMb2FkUmVxdWVzdCIsIFFPYmplY3Q6OnRyKCJDYW5ub3QgY3JlYXRlIHNlcGFyYXRl
IGluc3RhbmNlIG9mIFdlYkxvYWRSZXF1ZXN0IikpOwogICAgICAgICBxbWxSZWdpc3RlclVuY3Jl
YXRhYmxlVHlwZTxRdFdlYlNlY3VyaXR5T3JpZ2luPih1cmksIDMsIDAsICJTZWN1cml0eU9yaWdp
biIsIFFPYmplY3Q6OnRyKCJDYW5ub3QgY3JlYXRlIHNlcGFyYXRlIGluc3RhbmNlIG9mIFNlY3Vy
aXR5T3JpZ2luIikpOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1Rhcmdl
dC5wcmkgYi9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpCmluZGV4IDViMmNmYjkyNmM2NjUxY2M3
NGQ5MDQ2MDMwOTU2MjM4M2U3ZTYwNDIuLmU3OGU2ZTAxOTQ1N2NiYjEyNDNlMGRjZmU0MGNhZmJk
NDk5YmNjNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1RhcmdldC5wcmkKKysrIGIvU291
cmNlL1dlYktpdDIvVGFyZ2V0LnByaQpAQCAtMTc0LDYgKzE3NCw3IEBAIEhFQURFUlMgKz0gXAog
ICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYmRvd25sb2FkaXRlbV9wX3AuaCBcCiAgICAgVUlQcm9j
ZXNzL0FQSS9xdC9xd2VicGVybWlzc2lvbnJlcXVlc3RfcC5oIFwKICAgICBVSVByb2Nlc3MvQVBJ
L3F0L3F0d2Vic2VjdXJpdHlvcmlnaW5fcC5oIFwKKyAgICBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJs
b2FkcmVxdWVzdF9wLmggXAogICAgIFVJUHJvY2Vzcy9BUEkvcXQvcXdlYm5hdmlnYXRpb25yZXF1
ZXN0X3AuaCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJwYWdlX3AuaCBcCiAgICAg
VUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJwYWdlX3BfcC5oIFwKQEAgLTUwMyw2ICs1MDQsNyBA
QCBTT1VSQ0VTICs9IFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJkb3dubG9hZGl0ZW0uY3Bw
IFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJwZXJtaXNzaW9ucmVxdWVzdC5jcHAgXAogICAg
IFVJUHJvY2Vzcy9BUEkvcXQvcXR3ZWJzZWN1cml0eW9yaWdpbi5jcHAgXAorICAgIFVJUHJvY2Vz
cy9BUEkvcXQvcXdlYmxvYWRyZXF1ZXN0LmNwcCBcCiAgICAgVUlQcm9jZXNzL0FQSS9xdC9xd2Vi
bmF2aWdhdGlvbnJlcXVlc3QuY3BwIFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnBh
Z2UuY3BwIFwKICAgICBVSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHAg
XApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2
aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5j
cHAKaW5kZXggNjliOGQ1YzM3Y2I2NzJkYmM4ZGQ3MDhmZGFlMTQ3MjkwMDNiM2IyMS4uODY3NDlm
YjFkY2M1NzFkMzViZGM1NWFlNmMwMDVhMGQ4NWY2NGVjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCkBAIC0zOCw2ICszOCw3IEBA
CiAjaW5jbHVkZSAicXF1aWNrd2VicGFnZV9wX3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3
X3BfcC5oIgogI2luY2x1ZGUgInF3ZWJkb3dubG9hZGl0ZW1fcF9wLmgiCisjaW5jbHVkZSAicXdl
YmxvYWRyZXF1ZXN0X3AuaCIKICNpbmNsdWRlICJxd2VibmF2aWdhdGlvbmhpc3RvcnlfcC5oIgog
I2luY2x1ZGUgInF3ZWJuYXZpZ2F0aW9uaGlzdG9yeV9wX3AuaCIKICNpbmNsdWRlICJxd2VicHJl
ZmVyZW5jZXNfcC5oIgpAQCAtNzgsNiArNzksNyBAQCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6UVF1
aWNrV2ViVmlld1ByaXZhdGUoUVF1aWNrV2ViVmlldyogdmlld3BvcnQpCiAgICAgLCB1c2VyRGlk
T3ZlcnJpZGVDb250ZW50SGVpZ2h0KGZhbHNlKQogICAgICwgbV9uYXZpZ2F0b3JRdE9iamVjdEVu
YWJsZWQoZmFsc2UpCiAgICAgLCBtX3JlbmRlclRvT2Zmc2NyZWVuQnVmZmVyKGZhbHNlKQorICAg
ICwgbV9sb2FkU3RhcnRlZFNpZ25hbFNlbnQoZmFsc2UpCiB7CiAgICAgdmlld3BvcnQtPnNldEZs
YWdzKFFRdWlja0l0ZW06Okl0ZW1DbGlwc0NoaWxkcmVuVG9TaGFwZSk7CiAgICAgUU9iamVjdDo6
Y29ubmVjdCh2aWV3cG9ydCwgU0lHTkFMKHZpc2libGVDaGFuZ2VkKCkpLCB2aWV3cG9ydCwgU0xP
VChfcV9vblZpc2libGVDaGFuZ2VkKCkpKTsKQEAgLTE0NCw4ICsxNDYsOSBAQCBRUG9pbnRGIFFR
dWlja1dlYlZpZXdQcml2YXRlOjpwYWdlSXRlbVBvcygpCiB2b2lkIFFRdWlja1dlYlZpZXdQcml2
YXRlOjpsb2FkRGlkU3VjY2VlZCgpCiB7CiAgICAgUV9RKFFRdWlja1dlYlZpZXcpOwotICAgIGVt
aXQgcS0+bmF2aWdhdGlvblN0YXRlQ2hhbmdlZCgpOwotICAgIGVtaXQgcS0+bG9hZFN1Y2NlZWRl
ZCgpOworICAgIEFTU0VSVCghcS0+bG9hZGluZygpKTsKKyAgICBRV2ViTG9hZFJlcXVlc3QgbG9h
ZFJlcXVlc3QocS0+dXJsKCksIFFRdWlja1dlYlZpZXc6OkxvYWRTdWNjZWVkZWRTdGF0dXMpOwor
ICAgIGVtaXQgcS0+bG9hZGluZ0NoYW5nZWQoJmxvYWRSZXF1ZXN0KTsKIH0KIAogdm9pZCBRUXVp
Y2tXZWJWaWV3UHJpdmF0ZTo6c2V0TmVlZHNEaXNwbGF5KCkKQEAgLTE3MSw2ICsxNzQsMTQgQEAg
dm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6X3Ffb25JY29uQ2hhbmdlZEZvclBhZ2VVUkwoY29u
c3QgUVVybCYgcGFnZVVSTCwgY29uc3QKICAgICBzZXRJY29uKGljb25VUkwpOwogfQogCit2b2lk
IFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRDaGFuZ2VMb2FkaW5nU3RhdGUoUVdlYkxvYWRSZXF1
ZXN0KiBsb2FkUmVxdWVzdCkKK3sKKyAgICBRX1EoUVF1aWNrV2ViVmlldyk7CisgICAgQVNTRVJU
KHEtPmxvYWRpbmcoKSA9PSAobG9hZFJlcXVlc3QtPnN0YXR1cygpID09IFFRdWlja1dlYlZpZXc6
OkxvYWRTdGFydGVkU3RhdHVzKSk7CisgICAgZW1pdCBxLT5sb2FkaW5nQ2hhbmdlZChsb2FkUmVx
dWVzdCk7CisgICAgbV9sb2FkU3RhcnRlZFNpZ25hbFNlbnQgPSBsb2FkUmVxdWVzdC0+c3RhdHVz
KCkgPT0gUVF1aWNrV2ViVmlldzo6TG9hZFN0YXJ0ZWRTdGF0dXM7Cit9CisKIHZvaWQgUVF1aWNr
V2ViVmlld1ByaXZhdGU6OmRpZENoYW5nZUJhY2tGb3J3YXJkTGlzdCgpCiB7CiAgICAgbmF2aWdh
dGlvbkhpc3RvcnktPmQtPnJlc2V0KCk7CkBAIC0xNzgsMTUgKzE4OSwxNyBAQCB2b2lkIFFRdWlj
a1dlYlZpZXdQcml2YXRlOjpkaWRDaGFuZ2VCYWNrRm9yd2FyZExpc3QoKQogCiB2b2lkIFFRdWlj
a1dlYlZpZXdQcml2YXRlOjpwcm9jZXNzRGlkQ3Jhc2goKQogewotICAgIGVtaXQgcV9wdHItPm5h
dmlnYXRpb25TdGF0ZUNoYW5nZWQoKTsKICAgICBwYWdlVmlldy0+ZXZlbnRIYW5kbGVyKCktPnJl
c2V0R2VzdHVyZVJlY29nbml6ZXJzKCk7Ci0gICAgV2ViQ29yZTo6S1VSTCB1cmwoV2ViQ29yZTo6
UGFyc2VkVVJMU3RyaW5nLCB3ZWJQYWdlUHJveHktPnVybEF0UHJvY2Vzc0V4aXQoKSk7Ci0gICAg
cVdhcm5pbmcoIldBUk5JTkc6IFRoZSB3ZWIgcHJvY2VzcyBleHBlcmllbmNlZCBhIGNyYXNoIG9u
ICclcycuIiwgcVByaW50YWJsZShRVXJsKHVybCkudG9TdHJpbmcoUVVybDo6UmVtb3ZlVXNlcklu
Zm8pKSk7CisgICAgUVVybCB1cmwoS1VSTChXZWJDb3JlOjpQYXJzZWRVUkxTdHJpbmcsIHdlYlBh
Z2VQcm94eS0+dXJsQXRQcm9jZXNzRXhpdCgpKSk7CisgICAgaWYgKG1fbG9hZFN0YXJ0ZWRTaWdu
YWxTZW50KSB7CisgICAgICAgIFFXZWJMb2FkUmVxdWVzdCBsb2FkUmVxdWVzdCh1cmwsIFFRdWlj
a1dlYlZpZXc6OkxvYWRGYWlsZWRTdGF0dXMsIFFMYXRpbjFTdHJpbmcoIlRoZSB3ZWIgcHJvY2Vz
cyBjcmFzaGVkLiIpLCBRUXVpY2tXZWJWaWV3OjpJbnRlcm5hbEVycm9yRG9tYWluLCAwKTsKKyAg
ICAgICAgZGlkQ2hhbmdlTG9hZGluZ1N0YXRlKCZsb2FkUmVxdWVzdCk7CisgICAgfQorICAgIHFX
YXJuaW5nKCJXQVJOSU5HOiBUaGUgd2ViIHByb2Nlc3MgZXhwZXJpZW5jZWQgYSBjcmFzaCBvbiAn
JXMnLiIsIHFQcmludGFibGUodXJsLnRvU3RyaW5nKFFVcmw6OlJlbW92ZVVzZXJJbmZvKSkpOwog
fQogCiB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRSZWxhdW5jaFByb2Nlc3MoKQogewot
ICAgIGVtaXQgcV9wdHItPm5hdmlnYXRpb25TdGF0ZUNoYW5nZWQoKTsKICAgICBxV2FybmluZygi
V0FSTklORzogVGhlIHdlYiBwcm9jZXNzIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSByZXN0YXJ0ZWQu
Iik7CiAgICAgcGFnZVZpZXctPmQtPnNldERyYXdpbmdBcmVhU2l6ZSh2aWV3U2l6ZSgpKTsKIH0K
QEAgLTExMzIsMTUgKzExNDUsNiBAQCBib29sIFFRdWlja1dlYlZpZXc6OmxvYWRpbmcoKSBjb25z
dAogICAgIHJldHVybiBtYWluRnJhbWUgJiYgIShXZWJGcmFtZVByb3h5OjpMb2FkU3RhdGVGaW5p
c2hlZCA9PSBtYWluRnJhbWUtPmxvYWRTdGF0ZSgpKTsKIH0KIAotYm9vbCBRUXVpY2tXZWJWaWV3
OjpjYW5SZWxvYWQoKSBjb25zdAotewotICAgIFFfRChjb25zdCBRUXVpY2tXZWJWaWV3KTsKLSAg
ICBSZWZQdHI8V2ViS2l0OjpXZWJGcmFtZVByb3h5PiBtYWluRnJhbWUgPSBkLT53ZWJQYWdlUHJv
eHktPm1haW5GcmFtZSgpOwotICAgIGlmIChtYWluRnJhbWUpCi0gICAgICAgIHJldHVybiAoV2Vi
RnJhbWVQcm94eTo6TG9hZFN0YXRlRmluaXNoZWQgPT0gbWFpbkZyYW1lLT5sb2FkU3RhdGUoKSk7
Ci0gICAgcmV0dXJuIGQtPndlYlBhZ2VQcm94eS0+YmFja0ZvcndhcmRMaXN0KCktPmN1cnJlbnRJ
dGVtKCk7Ci19Ci0KIFFQb2ludEYgUVF1aWNrV2ViVmlldzo6bWFwVG9XZWJDb250ZW50KGNvbnN0
IFFQb2ludEYmIHBvaW50SW5WaWV3Q29vcmRpbmF0ZXMpIGNvbnN0CiB7CiAgICAgUV9EKGNvbnN0
IFFRdWlja1dlYlZpZXcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXF1aWNrd2Vidmlld19wLmgKaW5kZXggMTMyNjhjZjk4ODZlN2ZiNTAxYmI4Yzk5ZDk3OTY2ZDk1
NzJmNjdjMy4uNDRhNzM5NTA3ZWJlMzQ1OWU5OTA0MGNkNWM0MTllOGQ3ZmEyYTcyNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCkBA
IC0zMCw2ICszMCw3IEBAIGNsYXNzIFFXZWJOYXZpZ2F0aW9uUmVxdWVzdDsKIGNsYXNzIFFEZWNs
YXJhdGl2ZUNvbXBvbmVudDsKIGNsYXNzIFFRdWlja1dlYlBhZ2U7CiBjbGFzcyBRUXVpY2tXZWJW
aWV3QXR0YWNoZWQ7CitjbGFzcyBRV2ViTG9hZFJlcXVlc3Q7CiBjbGFzcyBRUXVpY2tXZWJWaWV3
UHJpdmF0ZTsKIGNsYXNzIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw7CiBjbGFzcyBRV2ViRG93
bmxvYWRJdGVtOwpAQCAtNjksMTIgKzcwLDEyIEBAIGNsYXNzIFFXRUJLSVRfRVhQT1JUIFFRdWlj
a1dlYlZpZXcgOiBwdWJsaWMgUVF1aWNrSXRlbSB7CiAgICAgUV9QUk9QRVJUWShRU3RyaW5nIHRp
dGxlIFJFQUQgdGl0bGUgTk9USUZZIHRpdGxlQ2hhbmdlZCkKICAgICBRX1BST1BFUlRZKFFVcmwg
dXJsIFJFQUQgdXJsIE5PVElGWSB1cmxDaGFuZ2VkKQogICAgIFFfUFJPUEVSVFkoUVVybCBpY29u
IFJFQUQgaWNvbiBOT1RJRlkgaWNvbkNoYW5nZWQgRklOQUwpCisgICAgUV9QUk9QRVJUWShib29s
IGxvYWRpbmcgUkVBRCBsb2FkaW5nIE5PVElGWSBsb2FkaW5nQ2hhbmdlZCBGSU5BTCkKICAgICBR
X1BST1BFUlRZKGludCBsb2FkUHJvZ3Jlc3MgUkVBRCBsb2FkUHJvZ3Jlc3MgTk9USUZZIGxvYWRQ
cm9ncmVzc0NoYW5nZWQpCiAgICAgUV9QUk9QRVJUWShib29sIGNhbkdvQmFjayBSRUFEIGNhbkdv
QmFjayBOT1RJRlkgbmF2aWdhdGlvblN0YXRlQ2hhbmdlZCBGSU5BTCkKICAgICBRX1BST1BFUlRZ
KGJvb2wgY2FuR29Gb3J3YXJkIFJFQUQgY2FuR29Gb3J3YXJkIE5PVElGWSBuYXZpZ2F0aW9uU3Rh
dGVDaGFuZ2VkIEZJTkFMKQotICAgIFFfUFJPUEVSVFkoYm9vbCBsb2FkaW5nIFJFQUQgbG9hZGlu
ZyBOT1RJRlkgbmF2aWdhdGlvblN0YXRlQ2hhbmdlZCBGSU5BTCkKLSAgICBRX1BST1BFUlRZKGJv
b2wgY2FuUmVsb2FkIFJFQUQgY2FuUmVsb2FkIE5PVElGWSBuYXZpZ2F0aW9uU3RhdGVDaGFuZ2Vk
IEZJTkFMKQogICAgIFFfRU5VTVMoTmF2aWdhdGlvblJlcXVlc3RBY3Rpb24pCisgICAgUV9FTlVN
UyhMb2FkU3RhdHVzKQogICAgIFFfRU5VTVMoRXJyb3JEb21haW4pCiAKIHB1YmxpYzoKQEAgLTgy
LDggKzgzLDEzIEBAIHB1YmxpYzoKICAgICAgICAgQWNjZXB0UmVxdWVzdCwKICAgICAgICAgSWdu
b3JlUmVxdWVzdAogICAgIH07Ci0KKyAgICBlbnVtIExvYWRTdGF0dXMgeworICAgICAgICBMb2Fk
U3RhcnRlZFN0YXR1cywKKyAgICAgICAgTG9hZFN1Y2NlZWRlZFN0YXR1cywKKyAgICAgICAgTG9h
ZEZhaWxlZFN0YXR1cworICAgIH07CiAgICAgZW51bSBFcnJvckRvbWFpbiB7CisgICAgICAgIE5v
RXJyb3JEb21haW4sCiAgICAgICAgIEludGVybmFsRXJyb3JEb21haW4sCiAgICAgICAgIE5ldHdv
cmtFcnJvckRvbWFpbiwKICAgICAgICAgSHR0cEVycm9yRG9tYWluLApAQCAtMTAwLDcgKzEwNiw2
IEBAIHB1YmxpYzoKICAgICBib29sIGNhbkdvQmFjaygpIGNvbnN0OwogICAgIGJvb2wgY2FuR29G
b3J3YXJkKCkgY29uc3Q7CiAgICAgYm9vbCBsb2FkaW5nKCkgY29uc3Q7Ci0gICAgYm9vbCBjYW5S
ZWxvYWQoKSBjb25zdDsKIAogICAgIHZpcnR1YWwgUVZhcmlhbnQgaW5wdXRNZXRob2RRdWVyeShR
dDo6SW5wdXRNZXRob2RRdWVyeSBwcm9wZXJ0eSkgY29uc3Q7CiAKQEAgLTEzMSwxNCArMTM2LDEy
IEBAIHB1YmxpYyBRX1NMT1RTOgogCiBRX1NJR05BTFM6CiAgICAgdm9pZCB0aXRsZUNoYW5nZWQo
Y29uc3QgUVN0cmluZyYgdGl0bGUpOwotICAgIHZvaWQgbG9hZFN0YXJ0ZWQoKTsKLSAgICB2b2lk
IGxvYWRTdWNjZWVkZWQoKTsKLSAgICB2b2lkIGxvYWRGYWlsZWQoUVF1aWNrV2ViVmlldzo6RXJy
b3JEb21haW4gZXJyb3JEb21haW4sIGludCBlcnJvckNvZGUsIGNvbnN0IFFVcmwmIHVybCwgY29u
c3QgUVN0cmluZyYgZGVzY3JpcHRpb24pOwogICAgIHZvaWQgbG9hZFByb2dyZXNzQ2hhbmdlZChp
bnQgcHJvZ3Jlc3MpOwogICAgIHZvaWQgdXJsQ2hhbmdlZChjb25zdCBRVXJsJiB1cmwpOwogICAg
IHZvaWQgaWNvbkNoYW5nZWQoY29uc3QgUVVybCYgaWNvblVSTCk7CiAgICAgdm9pZCBsaW5rSG92
ZXJlZChjb25zdCBRVXJsJiB1cmwsIGNvbnN0IFFTdHJpbmcmIHRpdGxlKTsKICAgICB2b2lkIG5h
dmlnYXRpb25TdGF0ZUNoYW5nZWQoKTsKKyAgICB2b2lkIGxvYWRpbmdDaGFuZ2VkKFFXZWJMb2Fk
UmVxdWVzdCogbG9hZFJlcXVlc3QpOwogICAgIHZvaWQgbmF2aWdhdGlvblJlcXVlc3RlZChRV2Vi
TmF2aWdhdGlvblJlcXVlc3QqIHJlcXVlc3QpOwogCiBwcm90ZWN0ZWQ6CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgKaW5kZXggNTEy
N2QxYjZlYmI5YjQwYzlkNmU4NDRkOWUwZjViYjgyM2ExZjA5NS4uOGE2ZDgxM2VmZDE0ZGU0OGZi
MzdiZDNhNGZiMTY1M2I1MTMxYmZmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaApAQCAtNzcsNiArNzcsNyBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIGxvYWREaWRDb21taXQoKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQg
ZGlkRmluaXNoRmlyc3ROb25FbXB0eUxheW91dCgpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBkaWRD
aGFuZ2VWaWV3cG9ydFByb3BlcnRpZXMoY29uc3QgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHMm
IGFyZ3MpIHsgfQorICAgIHZvaWQgZGlkQ2hhbmdlTG9hZGluZ1N0YXRlKFFXZWJMb2FkUmVxdWVz
dCogbG9hZFJlcXVlc3QpOwogICAgIHZvaWQgZGlkQ2hhbmdlQmFja0ZvcndhcmRMaXN0KCk7CiAK
ICAgICB2b2lkIHNldE5lZWRzRGlzcGxheSgpOwpAQCAtMTU0LDYgKzE1NSw3IEBAIHByb3RlY3Rl
ZDoKICAgICBib29sIHVzZXJEaWRPdmVycmlkZUNvbnRlbnRIZWlnaHQ7CiAgICAgYm9vbCBtX25h
dmlnYXRvclF0T2JqZWN0RW5hYmxlZDsKICAgICBib29sIG1fcmVuZGVyVG9PZmZzY3JlZW5CdWZm
ZXI7CisgICAgYm9vbCBtX2xvYWRTdGFydGVkU2lnbmFsU2VudDsKICAgICBRVXJsIG1faWNvblVS
TDsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdl
YmxvYWRyZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYmxv
YWRyZXF1ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hODJhZWIyYTFkYzQ1ZTMxZGUwODBhNzU1MDNkZTNk
MjgyY2I5ZDU4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xd2VibG9hZHJlcXVlc3QuY3BwCkBAIC0wLDAgKzEsNzYgQEAKKy8qCisgICAgQ29weXJp
Z2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVz
KQorCisgICAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli
dXRlIGl0IGFuZC9vcgorICAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBM
aWJyYXJ5IEdlbmVyYWwgUHVibGljCisgICAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgICAgdmVyc2lvbiAyIG9mIHRoZSBMaWNl
bnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICAgVGhpcyBs
aWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWws
CisgICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQg
d2FycmFudHkgb2YKKyAgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICAgIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGlj
ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEg
Y29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAgIGFsb25n
IHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdy
aXRlIHRvCisgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmts
aW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4K
KyovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2luY2x1ZGUgInF3ZWJsb2FkcmVxdWVzdF9w
LmgiCisKK2NsYXNzIFFXZWJMb2FkUmVxdWVzdFByaXZhdGUgeworcHVibGljOgorICAgIFFXZWJM
b2FkUmVxdWVzdFByaXZhdGUoY29uc3QgUVVybCYgdXJsLCBRUXVpY2tXZWJWaWV3OjpMb2FkU3Rh
dHVzIHN0YXR1cywgY29uc3QgUVN0cmluZyYgZXJyb3JTdHJpbmcsIFFRdWlja1dlYlZpZXc6OkVy
cm9yRG9tYWluIGVycm9yRG9tYWluLCBpbnQgZXJyb3JDb2RlKQorICAgICAgICA6IHVybCh1cmwp
CisgICAgICAgICwgc3RhdHVzKHN0YXR1cykKKyAgICAgICAgLCBlcnJvclN0cmluZyhlcnJvclN0
cmluZykKKyAgICAgICAgLCBlcnJvckRvbWFpbihlcnJvckRvbWFpbikKKyAgICAgICAgLCBlcnJv
ckNvZGUoZXJyb3JDb2RlKQorICAgIHsKKyAgICB9CisKKyAgICBRVXJsIHVybDsKKyAgICBRUXVp
Y2tXZWJWaWV3OjpMb2FkU3RhdHVzIHN0YXR1czsKKyAgICBRU3RyaW5nIGVycm9yU3RyaW5nOwor
ICAgIFFRdWlja1dlYlZpZXc6OkVycm9yRG9tYWluIGVycm9yRG9tYWluOworICAgIGludCBlcnJv
ckNvZGU7Cit9OworCitRV2ViTG9hZFJlcXVlc3Q6OlFXZWJMb2FkUmVxdWVzdChjb25zdCBRVXJs
JiB1cmwsIFFRdWlja1dlYlZpZXc6OkxvYWRTdGF0dXMgc3RhdHVzLCBjb25zdCBRU3RyaW5nJiBl
cnJvclN0cmluZywgUVF1aWNrV2ViVmlldzo6RXJyb3JEb21haW4gZXJyb3JEb21haW4sIGludCBl
cnJvckNvZGUsIFFPYmplY3QqIHBhcmVudCkKKyAgICA6IFFPYmplY3QocGFyZW50KQorICAgICwg
ZChuZXcgUVdlYkxvYWRSZXF1ZXN0UHJpdmF0ZSh1cmwsIHN0YXR1cywgZXJyb3JTdHJpbmcsIGVy
cm9yRG9tYWluLCBlcnJvckNvZGUpKQoreworfQorCitRV2ViTG9hZFJlcXVlc3Q6On5RV2ViTG9h
ZFJlcXVlc3QoKQoreworICAgIGRlbGV0ZSBkOworfQorCitRVXJsIFFXZWJMb2FkUmVxdWVzdDo6
dXJsKCkgY29uc3QKK3sKKyAgICByZXR1cm4gZC0+dXJsOworfQorCitRUXVpY2tXZWJWaWV3OjpM
b2FkU3RhdHVzIFFXZWJMb2FkUmVxdWVzdDo6c3RhdHVzKCkgY29uc3QKK3sKKyAgICByZXR1cm4g
ZC0+c3RhdHVzOworfQorCitRU3RyaW5nIFFXZWJMb2FkUmVxdWVzdDo6ZXJyb3JTdHJpbmcoKSBj
b25zdAoreworICAgIHJldHVybiBkLT5lcnJvclN0cmluZzsKK30KKworUVF1aWNrV2ViVmlldzo6
RXJyb3JEb21haW4gUVdlYkxvYWRSZXF1ZXN0OjplcnJvckRvbWFpbigpIGNvbnN0Cit7CisgICAg
cmV0dXJuIGQtPmVycm9yRG9tYWluOworfQorCitpbnQgUVdlYkxvYWRSZXF1ZXN0OjplcnJvckNv
ZGUoKSBjb25zdAoreworICAgIHJldHVybiBkLT5lcnJvckNvZGU7Cit9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJsb2FkcmVxdWVzdF9wLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJsb2FkcmVxdWVzdF9wLmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNjE3Nzg2NDBiMDdlMGVjMmMzYjg4MGVlZjgzYTMxZTc3NWEzMWY5MgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYmxvYWRyZXF1ZXN0X3Au
aApAQCAtMCwwICsxLDUwIEBACisvKgorICAgIENvcHlyaWdodCAoQykgMjAxMSBOb2tpYSBDb3Jw
b3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKworICAgIFRoaXMgbGlicmFyeSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAgICBtb2Rp
ZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwor
ICAgIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247
IGVpdGhlcgorICAgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9u
KSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBp
biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBXSVRIT1VUIEFOWSBX
QVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICAgTUVSQ0hB
TlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBH
TlUKKyAgICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4K
KworICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2Vl
IHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICAgIHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3Is
CisgICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisqLworCisjaWZuZGVmIHF3ZWJsb2Fk
cmVxdWVzdF9wX2gKKyNkZWZpbmUgcXdlYmxvYWRyZXF1ZXN0X3BfaAorCisjaW5jbHVkZSAicXF1
aWNrd2Vidmlld19wLmgiCisjaW5jbHVkZSA8UXRDb3JlL1FPYmplY3Q+CisjaW5jbHVkZSA8UXRD
b3JlL1FVcmw+CisKK2NsYXNzIFFXZWJMb2FkUmVxdWVzdFByaXZhdGU7CisKK2NsYXNzIFFXRUJL
SVRfRVhQT1JUIFFXZWJMb2FkUmVxdWVzdCA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVD
VAorICAgIFFfUFJPUEVSVFkoUVVybCB1cmwgUkVBRCB1cmwpCisgICAgUV9QUk9QRVJUWShRUXVp
Y2tXZWJWaWV3OjpMb2FkU3RhdHVzIHN0YXR1cyBSRUFEIHN0YXR1cykKKyAgICBRX1BST1BFUlRZ
KFFTdHJpbmcgZXJyb3JTdHJpbmcgUkVBRCBlcnJvclN0cmluZykKKyAgICBRX1BST1BFUlRZKFFR
dWlja1dlYlZpZXc6OkVycm9yRG9tYWluIGVycm9yRG9tYWluIFJFQUQgZXJyb3JEb21haW4pCisg
ICAgUV9QUk9QRVJUWShpbnQgZXJyb3JDb2RlIFJFQUQgZXJyb3JDb2RlKQorCitwdWJsaWM6Cisg
ICAgUVdlYkxvYWRSZXF1ZXN0KGNvbnN0IFFVcmwmIHVybCwgUVF1aWNrV2ViVmlldzo6TG9hZFN0
YXR1cyBzdGF0dXMsIGNvbnN0IFFTdHJpbmcmIGVycm9yU3RyaW5nID0gUVN0cmluZygpLCBRUXVp
Y2tXZWJWaWV3OjpFcnJvckRvbWFpbiBlcnJvckRvbWFpbiA9IFFRdWlja1dlYlZpZXc6Ok5vRXJy
b3JEb21haW4sIGludCBlcnJvckNvZGUgPSAwLCBRT2JqZWN0KiBwYXJlbnQgPSAwKTsKKyAgICB+
UVdlYkxvYWRSZXF1ZXN0KCk7CisgICAgUVVybCB1cmwoKSBjb25zdDsKKyAgICBRUXVpY2tXZWJW
aWV3OjpMb2FkU3RhdHVzIHN0YXR1cygpIGNvbnN0OworICAgIFFTdHJpbmcgZXJyb3JTdHJpbmco
KSBjb25zdDsKKyAgICBRUXVpY2tXZWJWaWV3OjpFcnJvckRvbWFpbiBlcnJvckRvbWFpbigpIGNv
bnN0OworICAgIGludCBlcnJvckNvZGUoKSBjb25zdDsKKworcHJpdmF0ZToKKyAgICBRV2ViTG9h
ZFJlcXVlc3RQcml2YXRlKiBkOworfTsKKworI2VuZGlmIC8vIHF3ZWJsb2FkcmVxdWVzdF9wX2gK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcHVibGlj
YXBpL3RzdF9wdWJsaWNhcGkuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90
ZXN0cy9wdWJsaWNhcGkvdHN0X3B1YmxpY2FwaS5jcHAKaW5kZXggZjFhODFiYzE4Zjc0NjczMDgy
NTRhYWI4ZTBiZWYwMDNmZjg1MzQ1YS4uMzdkMjYwMmZlYzE5NzAwYTY4OTZhZTU4NmUwY2Y2YmNl
NzFhYWQ5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0
cy9wdWJsaWNhcGkvdHN0X3B1YmxpY2FwaS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNhcGkvdHN0X3B1YmxpY2FwaS5jcHAKQEAgLTI0LDYgKzI0
LDcgQEAKICNpbmNsdWRlIDxRTWV0YVR5cGU+CiAjaW5jbHVkZSA8UXRUZXN0L1F0VGVzdD4KICNp
bmNsdWRlIDxxcXVpY2t3ZWJ2aWV3X3AuaD4KKyNpbmNsdWRlIDxxd2VibG9hZHJlcXVlc3RfcC5o
PgogI2luY2x1ZGUgPHF3ZWJuYXZpZ2F0aW9ucmVxdWVzdF9wLmg+CiAKIGNsYXNzIHRzdF9wdWJs
aWNhcGkgOiBwdWJsaWMgUU9iamVjdCB7CkBAIC0zNCwxMSArMzUsMTYgQEAgcHJpdmF0ZSBzbG90
czoKIAogc3RhdGljIFFMaXN0PGNvbnN0IFFNZXRhT2JqZWN0Kj4gdHlwZXNUb0NoZWNrID0gUUxp
c3Q8Y29uc3QgUU1ldGFPYmplY3QqPigpCiAgICAgPDwgJlFRdWlja1dlYlZpZXc6OnN0YXRpY01l
dGFPYmplY3QKKyAgICA8PCAmUVdlYkxvYWRSZXF1ZXN0OjpzdGF0aWNNZXRhT2JqZWN0CiAgICAg
PDwgJlFXZWJOYXZpZ2F0aW9uUmVxdWVzdDo6c3RhdGljTWV0YU9iamVjdDsKIAogc3RhdGljIFFT
dHJpbmdMaXN0IGV4cGVjdGVkQVBJID0gUVN0cmluZ0xpc3QoKQogICAgIDw8ICJRUXVpY2tXZWJW
aWV3LkFjY2VwdFJlcXVlc3QgLS0+IE5hdmlnYXRpb25SZXF1ZXN0QWN0aW9uIgogICAgIDw8ICJR
UXVpY2tXZWJWaWV3Lklnbm9yZVJlcXVlc3QgLS0+IE5hdmlnYXRpb25SZXF1ZXN0QWN0aW9uIgor
ICAgIDw8ICJRUXVpY2tXZWJWaWV3LkxvYWRTdGFydGVkU3RhdHVzIC0tPiBMb2FkU3RhdHVzIgor
ICAgIDw8ICJRUXVpY2tXZWJWaWV3LkxvYWRTdWNjZWVkZWRTdGF0dXMgLS0+IExvYWRTdGF0dXMi
CisgICAgPDwgIlFRdWlja1dlYlZpZXcuTG9hZEZhaWxlZFN0YXR1cyAtLT4gTG9hZFN0YXR1cyIK
KyAgICA8PCAiUVF1aWNrV2ViVmlldy5Ob0Vycm9yRG9tYWluIC0tPiBFcnJvckRvbWFpbiIKICAg
ICA8PCAiUVF1aWNrV2ViVmlldy5JbnRlcm5hbEVycm9yRG9tYWluIC0tPiBFcnJvckRvbWFpbiIK
ICAgICA8PCAiUVF1aWNrV2ViVmlldy5OZXR3b3JrRXJyb3JEb21haW4gLS0+IEVycm9yRG9tYWlu
IgogICAgIDw8ICJRUXVpY2tXZWJWaWV3Lkh0dHBFcnJvckRvbWFpbiAtLT4gRXJyb3JEb21haW4i
CkBAIC01MCwxNCArNTYsMTEgQEAgc3RhdGljIFFTdHJpbmdMaXN0IGV4cGVjdGVkQVBJID0gUVN0
cmluZ0xpc3QoKQogICAgIDw8ICJRUXVpY2tXZWJWaWV3LmNhbkdvQmFjayAtLT4gYm9vbCIKICAg
ICA8PCAiUVF1aWNrV2ViVmlldy5jYW5Hb0ZvcndhcmQgLS0+IGJvb2wiCiAgICAgPDwgIlFRdWlj
a1dlYlZpZXcubG9hZGluZyAtLT4gYm9vbCIKLSAgICA8PCAiUVF1aWNrV2ViVmlldy5jYW5SZWxv
YWQgLS0+IGJvb2wiCiAgICAgPDwgIlFRdWlja1dlYlZpZXcudGl0bGVDaGFuZ2VkKFFTdHJpbmcp
IC0tPiB2b2lkIgotICAgIDw8ICJRUXVpY2tXZWJWaWV3LmxvYWRTdGFydGVkKCkgLS0+IHZvaWQi
Ci0gICAgPDwgIlFRdWlja1dlYlZpZXcubG9hZFN1Y2NlZWRlZCgpIC0tPiB2b2lkIgotICAgIDw8
ICJRUXVpY2tXZWJWaWV3LmxvYWRGYWlsZWQoUVF1aWNrV2ViVmlldzo6RXJyb3JEb21haW4saW50
LFFVcmwsUVN0cmluZykgLS0+IHZvaWQiCiAgICAgPDwgIlFRdWlja1dlYlZpZXcubG9hZFByb2dy
ZXNzQ2hhbmdlZChpbnQpIC0tPiB2b2lkIgogICAgIDw8ICJRUXVpY2tXZWJWaWV3LnVybENoYW5n
ZWQoUVVybCkgLS0+IHZvaWQiCiAgICAgPDwgIlFRdWlja1dlYlZpZXcuaWNvbkNoYW5nZWQoUVVy
bCkgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcubG9hZGluZ0NoYW5nZWQoUVdlYkxv
YWRSZXF1ZXN0KikgLS0+IHZvaWQiCiAgICAgPDwgIlFRdWlja1dlYlZpZXcubGlua0hvdmVyZWQo
UVVybCxRU3RyaW5nKSAtLT4gdm9pZCIKICAgICA8PCAiUVF1aWNrV2ViVmlldy5uYXZpZ2F0aW9u
U3RhdGVDaGFuZ2VkKCkgLS0+IHZvaWQiCiAgICAgPDwgIlFRdWlja1dlYlZpZXcubmF2aWdhdGlv
blJlcXVlc3RlZChRV2ViTmF2aWdhdGlvblJlcXVlc3QqKSAtLT4gdm9pZCIKQEAgLTY4LDYgKzcx
LDExIEBAIHN0YXRpYyBRU3RyaW5nTGlzdCBleHBlY3RlZEFQSSA9IFFTdHJpbmdMaXN0KCkKICAg
ICA8PCAiUVF1aWNrV2ViVmlldy5nb0ZvcndhcmQoKSAtLT4gdm9pZCIKICAgICA8PCAiUVF1aWNr
V2ViVmlldy5zdG9wKCkgLS0+IHZvaWQiCiAgICAgPDwgIlFRdWlja1dlYlZpZXcucmVsb2FkKCkg
LS0+IHZvaWQiCisgICAgPDwgIlFXZWJMb2FkUmVxdWVzdC51cmwgLS0+IFFVcmwiCisgICAgPDwg
IlFXZWJMb2FkUmVxdWVzdC5zdGF0dXMgLS0+IFFRdWlja1dlYlZpZXc6OkxvYWRTdGF0dXMiCisg
ICAgPDwgIlFXZWJMb2FkUmVxdWVzdC5lcnJvclN0cmluZyAtLT4gUVN0cmluZyIKKyAgICA8PCAi
UVdlYkxvYWRSZXF1ZXN0LmVycm9yRG9tYWluIC0tPiBRUXVpY2tXZWJWaWV3OjpFcnJvckRvbWFp
biIKKyAgICA8PCAiUVdlYkxvYWRSZXF1ZXN0LmVycm9yQ29kZSAtLT4gaW50IgogICAgIDw8ICJR
V2ViTmF2aWdhdGlvblJlcXVlc3QudXJsIC0tPiBRVXJsIgogICAgIDw8ICJRV2ViTmF2aWdhdGlv
blJlcXVlc3Qub3JpZ2luYXRpbmdVcmwgLS0+IFFVcmwiCiAgICAgPDwgIlFXZWJOYXZpZ2F0aW9u
UmVxdWVzdC5idXR0b24gLS0+IGludCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvRGVza3RvcEJlaGF2aW9yL3RzdF9pdGVtU2VsZWN0
b3IucW1sIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9E
ZXNrdG9wQmVoYXZpb3IvdHN0X2l0ZW1TZWxlY3Rvci5xbWwKaW5kZXggNDMyNDE2YTYzMjFkZjI2
ZWE5MzZmMGFiMmIwZDg0ZDRlMWY1MWJhOS4uZDY5ZGZkN2E3NmQ4NGQ4YWExMzUyYTBlODQ1Mzcw
MTk2ZTIyY2I2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90
ZXN0cy9xbWx0ZXN0cy9EZXNrdG9wQmVoYXZpb3IvdHN0X2l0ZW1TZWxlY3Rvci5xbWwKKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9EZXNrdG9wQmVo
YXZpb3IvdHN0X2l0ZW1TZWxlY3Rvci5xbWwKQEAgLTIsMTAgKzIsMTEgQEAgaW1wb3J0IFF0UXVp
Y2sgMi4wCiBpbXBvcnQgUXRUZXN0IDEuMAogaW1wb3J0IFF0V2ViS2l0IDMuMAogaW1wb3J0IFF0
V2ViS2l0LmV4cGVyaW1lbnRhbCAxLjAKK2ltcG9ydCAiLi4vY29tbW9uIgogCiAvLyBGSVhNRTog
TW92ZWQgdG8gRGVza3RvcCB0ZXN0cyBiZWNhdXNlIHdlIHdhbnQgdG8gaGF2ZSBtb3VzZUNsaWNr
KCkgdG8gb3BlbiB0aGUgPHNlbGVjdD4gdGFnLiBXZSBjYW4gbW92ZSBpdCBiYWNrCiAvLyB3aGVu
IFRlc3RDYXNlIHN0YXJ0cyBzdXBwb3J0aW5nIHRvdWNoIGV2ZW50cywgc2VlIGh0dHBzOi8vYnVn
cmVwb3J0cy5xdC5ub2tpYS5jb20vYnJvd3NlL1FUQlVHLTIzMDgzLgotV2ViVmlldyB7CitUZXN0
V2ViVmlldyB7CiAgICAgaWQ6IHdlYlZpZXcKIAogICAgIHdpZHRoOiA0MDAKQEAgLTM3LDEyICsz
OCw2IEBAIFdlYlZpZXcgewogICAgIH0KIAogICAgIFNpZ25hbFNweSB7Ci0gICAgICAgIGlkOiBs
b2FkU3B5Ci0gICAgICAgIHRhcmdldDogd2ViVmlldwotICAgICAgICBzaWduYWxOYW1lOiAibG9h
ZFN1Y2NlZWRlZCIKLSAgICB9Ci0KLSAgICBTaWduYWxTcHkgewogICAgICAgICBpZDogdGl0bGVT
cHkKICAgICAgICAgdGFyZ2V0OiB3ZWJWaWV3CiAgICAgICAgIHNpZ25hbE5hbWU6ICJ0aXRsZUNo
YW5nZWQiCkBAIC01OCw5ICs1Myw4IEBAIFdlYlZpZXcgewogICAgICAgICAgICAgd2ViVmlldy5m
aW5hbFNlbGVjdGlvbiA9IC0xCiAgICAgICAgICAgICB3ZWJWaWV3LnVzZUFjY2VwdERpcmVjdGx5
ID0gZmFsc2UKICAgICAgICAgICAgIHdlYlZpZXcuc2VsZWN0b3JMb2FkZWQgPSBmYWxzZQotICAg
ICAgICAgICAgbG9hZFNweS5jbGVhcigpCiAgICAgICAgICAgICB3ZWJWaWV3LmxvYWQoUXQucmVz
b2x2ZWRVcmwoIi4uL2NvbW1vbi9zZWxlY3QuaHRtbCIpKQotICAgICAgICAgICAgbG9hZFNweS53
YWl0KCkKKyAgICAgICAgICAgIHZlcmlmeSh3ZWJWaWV3LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkp
CiAgICAgICAgICAgICB0aXRsZVNweS5jbGVhcigpCiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9EZXNrdG9wQmVo
YXZpb3IvdHN0X2xpbmtIb3ZlcmVkLnFtbCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvdGVzdHMvcW1sdGVzdHMvRGVza3RvcEJlaGF2aW9yL3RzdF9saW5rSG92ZXJlZC5xbWwKaW5k
ZXggYjhhYjI5NDk2OGY2MTNjYmYxNDMyNzJkZDVjOWQ3NDMxMjE5NWQwOC4uYjUyNzMzZGE0ZTQ2
NjcwOTM1NjEzYTI1MDRlMzYyMzBiYmYyMjM4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9EZXNrdG9wQmVoYXZpb3IvdHN0X2xpbmtI
b3ZlcmVkLnFtbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3Ft
bHRlc3RzL0Rlc2t0b3BCZWhhdmlvci90c3RfbGlua0hvdmVyZWQucW1sCkBAIC0xLDggKzEsOSBA
QAogaW1wb3J0IFF0UXVpY2sgMi4wCiBpbXBvcnQgUXRUZXN0IDEuMAogaW1wb3J0IFF0V2ViS2l0
IDMuMAoraW1wb3J0ICIuLi9jb21tb24iCiAKLVdlYlZpZXcgeworVGVzdFdlYlZpZXcgewogICAg
IGlkOiB3ZWJWaWV3CiAgICAgd2lkdGg6IDIwMAogICAgIGhlaWdodDogNDAwCkBAIC0xNywxMiAr
MTgsNiBAQCBXZWJWaWV3IHsKICAgICAgICAgc2lnbmFsTmFtZTogImxpbmtIb3ZlcmVkIgogICAg
IH0KIAotICAgIFNpZ25hbFNweSB7Ci0gICAgICAgIGlkOiBsb2FkU3B5Ci0gICAgICAgIHRhcmdl
dDogd2ViVmlldwotICAgICAgICBzaWduYWxOYW1lOiAibG9hZFN1Y2NlZWRlZCIKLSAgICB9Ci0K
ICAgICBvbkxpbmtIb3ZlcmVkOiB7CiAgICAgICAgIHdlYlZpZXcubGFzdFVybCA9IHVybAogICAg
ICAgICB3ZWJWaWV3Lmxhc3RUaXRsZSA9IHRpdGxlCkBAIC00OSw3ICs0NCw3IEBAIFdlYlZpZXcg
ewogICAgICAgICBmdW5jdGlvbiB0ZXN0X2xpbmtIb3ZlcmVkKCkgewogICAgICAgICAgICAgY29t
cGFyZShzcHkuY291bnQsIDApCiAgICAgICAgICAgICB3ZWJWaWV3LmxvYWQoUXQucmVzb2x2ZWRV
cmwoIi4uL2NvbW1vbi90ZXN0Mi5odG1sIikpCi0gICAgICAgICAgICBsb2FkU3B5LndhaXQoKQor
ICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAg
ICAgICAgIG1vdXNlTW92ZSh3ZWJWaWV3LCAxMDAsIDEwMCkKICAgICAgICAgICAgIHNweS53YWl0
KCkKICAgICAgICAgICAgIGNvbXBhcmUoc3B5LmNvdW50LCAxKQpAQCAtNjUsNyArNjAsNyBAQCBX
ZWJWaWV3IHsKICAgICAgICAgZnVuY3Rpb24gdGVzdF9saW5rSG92ZXJlZERvZXNudEVtaXRSZXBl
YXRlZCgpIHsKICAgICAgICAgICAgIGNvbXBhcmUoc3B5LmNvdW50LCAwKQogICAgICAgICAgICAg
d2ViVmlldy5sb2FkKFF0LnJlc29sdmVkVXJsKCIuLi9jb21tb24vdGVzdDIuaHRtbCIpKQotICAg
ICAgICAgICAgbG9hZFNweS53YWl0KCkKKyAgICAgICAgICAgIHZlcmlmeSh3ZWJWaWV3LndhaXRG
b3JMb2FkU3VjY2VlZGVkKCkpCiAKICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgMTAw
OyBpICs9IDEwKQogICAgICAgICAgICAgICAgIG1vdXNlTW92ZSh3ZWJWaWV3LCAxMDAsIDEwMCAr
IGkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3Ft
bHRlc3RzL0Rlc2t0b3BCZWhhdmlvci90c3RfbG9hZEh0bWwucW1sIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9EZXNrdG9wQmVoYXZpb3IvdHN0X2xvYWRI
dG1sLnFtbAppbmRleCA5ZTE3M2Q1NmEzYTQ5YzY5ZWFkYWEzZTM1ZDkxYTgwY2ZiYzNmY2JkLi45
MjdlNTNhYmExNDM2YTI0MjdjMTA2NDdlNDhmOTA0NmMyNjJlMGVmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL0Rlc2t0b3BCZWhhdmlv
ci90c3RfbG9hZEh0bWwucW1sCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
dGVzdHMvcW1sdGVzdHMvRGVza3RvcEJlaGF2aW9yL3RzdF9sb2FkSHRtbC5xbWwKQEAgLTEsOCAr
MSw5IEBACiBpbXBvcnQgUXRRdWljayAyLjAKIGltcG9ydCBRdFRlc3QgMS4wCiBpbXBvcnQgUXRX
ZWJLaXQgMy4wCitpbXBvcnQgIi4uL2NvbW1vbiIKIAotV2ViVmlldyB7CitUZXN0V2ViVmlldyB7
CiAgICAgaWQ6IHdlYlZpZXcKICAgICB3aWR0aDogMjAwCiAgICAgaGVpZ2h0OiA0MDAKQEAgLTEx
LDEyICsxMiw2IEBAIFdlYlZpZXcgewogICAgIHByb3BlcnR5IHN0cmluZyBsYXN0VXJsCiAKICAg
ICBTaWduYWxTcHkgewotICAgICAgICBpZDogbG9hZFNweQotICAgICAgICB0YXJnZXQ6IHdlYlZp
ZXcKLSAgICAgICAgc2lnbmFsTmFtZTogImxvYWRTdWNjZWVkZWQiCi0gICAgfQotCi0gICAgU2ln
bmFsU3B5IHsKICAgICAgICAgaWQ6IGxpbmtIb3ZlcmVkU3B5CiAgICAgICAgIHRhcmdldDogd2Vi
VmlldwogICAgICAgICBzaWduYWxOYW1lOiAibGlua0hvdmVyZWQiCkBAIC00MSwxNSArMzYsMTMg
QEAgV2ViVmlldyB7CiAgICAgICAgIGZ1bmN0aW9uIGluaXQoKSB7CiAgICAgICAgICAgICB3ZWJW
aWV3Lmxhc3RVcmwgPSAiIgogICAgICAgICAgICAgbGlua0hvdmVyZWRTcHkuY2xlYXIoKQotICAg
ICAgICAgICAgbG9hZFNweS5jbGVhcigpCiAgICAgICAgIH0KIAogICAgICAgICBmdW5jdGlvbiB0
ZXN0X2Jhc2VVcmxBZnRlckxvYWRIdG1sKCkgewotICAgICAgICAgICAgbG9hZFNweS5jbGVhcigp
CiAgICAgICAgICAgICBsaW5rSG92ZXJlZFNweS5jbGVhcigpCiAgICAgICAgICAgICBjb21wYXJl
KGxpbmtIb3ZlcmVkU3B5LmNvdW50LCAwKQogICAgICAgICAgICAgd2ViVmlldy5sb2FkSHRtbCgi
PGh0bWw+PGhlYWQ+PHRpdGxlPlRlc3QgcGFnZSB3aXRoIGh1Z2UgbGluayBhcmVhPC90aXRsZT48
L2hlYWQ+PGJvZHk+PGEgdGl0bGU9XCJBIHRpdGxlXCIgaHJlZj1cInRlc3QxLmh0bWxcIj48aW1n
IHdpZHRoPTIwMCBoZWlnaHQ9MjAwPjwvYT48L2JvZHk+PC9odG1sPiIsICJodHRwOi8vd3d3LmV4
YW1wbGUuZm9vLmNvbSIpCi0gICAgICAgICAgICBsb2FkU3B5LndhaXQoKQorICAgICAgICAgICAg
dmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIGNvbXBh
cmUoImh0dHA6Ly93d3cuZXhhbXBsZS5mb28uY29tLyIsIHdlYlZpZXcudXJsKQogICAgICAgICAg
ICAgbW91c2VNb3ZlKHdlYlZpZXcsIDEwMCwgMTAwKQogICAgICAgICAgICAgbGlua0hvdmVyZWRT
cHkud2FpdCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rl
c3RzL3FtbHRlc3RzL0Rlc2t0b3BCZWhhdmlvci90c3RfbWVzc2FnaW5nLnFtbCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvRGVza3RvcEJlaGF2aW9yL3Rz
dF9tZXNzYWdpbmcucW1sCmluZGV4IGViMThhODIxNjQ0NjQ1NmQ0YTcwZTEyN2Y4ZjNlMjM1Yjgz
NDc3NTguLmJkNjE0M2U4YjE3NTk0OGQ3MzhhODgwODkxMmQ4ZWUwYzBiMDVhNzYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvRGVza3Rv
cEJlaGF2aW9yL3RzdF9tZXNzYWdpbmcucW1sCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvRGVza3RvcEJlaGF2aW9yL3RzdF9tZXNzYWdpbmcucW1s
CkBAIC0yLDkgKzIsMTAgQEAgaW1wb3J0IFF0UXVpY2sgMi4wCiBpbXBvcnQgUXRUZXN0IDEuMAog
aW1wb3J0IFF0V2ViS2l0IDMuMAogaW1wb3J0IFF0V2ViS2l0LmV4cGVyaW1lbnRhbCAxLjAKK2lt
cG9ydCAiLi4vY29tbW9uIgogCiBJdGVtIHsKLSAgICBXZWJWaWV3IHsKKyAgICBUZXN0V2ViVmll
dyB7CiAgICAgICAgIGlkOiB3ZWJWaWV3CiAgICAgICAgIHByb3BlcnR5IHZhcmlhbnQgbGFzdE1l
c3NhZ2UKICAgICAgICAgZXhwZXJpbWVudGFsLnByZWZlcmVuY2VzLm5hdmlnYXRvclF0T2JqZWN0
RW5hYmxlZDogdHJ1ZQpAQCAtMTMsNyArMTQsNyBAQCBJdGVtIHsKICAgICAgICAgfQogICAgIH0K
IAotICAgIFdlYlZpZXcgeworICAgIFRlc3RXZWJWaWV3IHsKICAgICAgICAgaWQ6IG90aGVyV2Vi
VmlldwogICAgICAgICBwcm9wZXJ0eSB2YXJpYW50IGxhc3RNZXNzYWdlCiAgICAgICAgIGV4cGVy
aW1lbnRhbC5wcmVmZXJlbmNlcy5uYXZpZ2F0b3JRdE9iamVjdEVuYWJsZWQ6IHRydWUKQEAgLTIy
LDcgKzIzLDcgQEAgSXRlbSB7CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBXZWJWaWV3IHsKKyAg
ICBUZXN0V2ViVmlldyB7CiAgICAgICAgIGlkOiBkaXNhYmxlZFdlYlZpZXcKICAgICAgICAgcHJv
cGVydHkgYm9vbCByZWNlaXZlZE1lc3NhZ2UKICAgICAgICAgZXhwZXJpbWVudGFsLnByZWZlcmVu
Y2VzLm5hdmlnYXRvclF0T2JqZWN0RW5hYmxlZDogZmFsc2UKQEAgLTMyLDUxICszMywzMSBAQCBJ
dGVtIHsKICAgICB9CiAKICAgICBTaWduYWxTcHkgewotICAgICAgICBpZDogbG9hZFNweQotICAg
ICAgICB0YXJnZXQ6IHdlYlZpZXcKLSAgICAgICAgc2lnbmFsTmFtZTogImxvYWRTdWNjZWVkZWQi
Ci0gICAgfQotCi0gICAgU2lnbmFsU3B5IHsKICAgICAgICAgaWQ6IG1lc3NhZ2VTcHkKICAgICAg
ICAgdGFyZ2V0OiB3ZWJWaWV3LmV4cGVyaW1lbnRhbAogICAgICAgICBzaWduYWxOYW1lOiAibWVz
c2FnZVJlY2VpdmVkIgogICAgIH0KIAogICAgIFNpZ25hbFNweSB7Ci0gICAgICAgIGlkOiBvdGhl
ckxvYWRTcHkKLSAgICAgICAgdGFyZ2V0OiBvdGhlcldlYlZpZXcKLSAgICAgICAgc2lnbmFsTmFt
ZTogImxvYWRTdWNjZWVkZWQiCi0gICAgfQotCi0gICAgU2lnbmFsU3B5IHsKICAgICAgICAgaWQ6
IG90aGVyTWVzc2FnZVNweQogICAgICAgICB0YXJnZXQ6IG90aGVyV2ViVmlldy5leHBlcmltZW50
YWwKICAgICAgICAgc2lnbmFsTmFtZTogIm1lc3NhZ2VSZWNlaXZlZCIKICAgICB9CiAKLSAgICBT
aWduYWxTcHkgewotICAgICAgICBpZDogZGlzYWJsZWRXZWJWaWV3TG9hZFNweQotICAgICAgICB0
YXJnZXQ6IGRpc2FibGVkV2ViVmlldwotICAgICAgICBzaWduYWxOYW1lOiAibG9hZFN1Y2NlZWRl
ZCIKLSAgICB9Ci0KICAgICBUZXN0Q2FzZSB7CiAgICAgICAgIG5hbWU6ICJEZXNrdG9wV2ViVmll
d01lc3NhZ2luZyIKICAgICAgICAgcHJvcGVydHkgdXJsIHRlc3RVcmw6IFF0LnJlc29sdmVkVXJs
KCIuLi9jb21tb24vbWVzc2FnaW5nLmh0bWwiKQogCiAgICAgICAgIGZ1bmN0aW9uIGluaXQoKSB7
Ci0gICAgICAgICAgICBsb2FkU3B5LmNsZWFyKCkKICAgICAgICAgICAgIG1lc3NhZ2VTcHkuY2xl
YXIoKQogICAgICAgICAgICAgd2ViVmlldy5sYXN0TWVzc2FnZSA9IG51bGwKLSAgICAgICAgICAg
IG90aGVyTG9hZFNweS5jbGVhcigpCiAgICAgICAgICAgICBvdGhlck1lc3NhZ2VTcHkuY2xlYXIo
KQogICAgICAgICAgICAgb3RoZXJXZWJWaWV3Lmxhc3RNZXNzYWdlID0gbnVsbAogICAgICAgICB9
CiAKICAgICAgICAgZnVuY3Rpb24gdGVzdF9iYXNpYygpIHsKICAgICAgICAgICAgIHdlYlZpZXcu
bG9hZCh0ZXN0VXJsKQotICAgICAgICAgICAgbG9hZFNweS53YWl0KCkKKyAgICAgICAgICAgIHZl
cmlmeSh3ZWJWaWV3LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCiAgICAgICAgICAgICB3ZWJWaWV3
LmV4cGVyaW1lbnRhbC5wb3N0TWVzc2FnZSgiSEVMTE8iKQogICAgICAgICAgICAgbWVzc2FnZVNw
eS53YWl0KCkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy5sYXN0TWVzc2FnZS5kYXRhLCAi
T0xMRUgiKQpAQCAtODYsOCArNjcsOCBAQCBJdGVtIHsKICAgICAgICAgZnVuY3Rpb24gdGVzdF90
d29XZWJWaWV3cygpIHsKICAgICAgICAgICAgIHdlYlZpZXcubG9hZCh0ZXN0VXJsKQogICAgICAg
ICAgICAgb3RoZXJXZWJWaWV3LmxvYWQodGVzdFVybCkKLSAgICAgICAgICAgIGxvYWRTcHkud2Fp
dCgpCi0gICAgICAgICAgICBvdGhlckxvYWRTcHkud2FpdCgpCisgICAgICAgICAgICB2ZXJpZnko
d2ViVmlldy53YWl0Rm9yTG9hZFN1Y2NlZWRlZCgpKQorICAgICAgICAgICAgdmVyaWZ5KG90aGVy
V2ViVmlldy53YWl0Rm9yTG9hZFN1Y2NlZWRlZCgpKQogICAgICAgICAgICAgd2ViVmlldy5leHBl
cmltZW50YWwucG9zdE1lc3NhZ2UoIkZJUlNUIikKICAgICAgICAgICAgIG90aGVyV2ViVmlldy5l
eHBlcmltZW50YWwucG9zdE1lc3NhZ2UoIlNFQ09ORCIpCiAgICAgICAgICAgICBtZXNzYWdlU3B5
LndhaXQoKQpAQCAtOTksNyArODAsNyBAQCBJdGVtIHsKICAgICAgICAgZnVuY3Rpb24gdGVzdF9k
aXNhYmxlZCgpIHsKICAgICAgICAgICAgIGRpc2FibGVkV2ViVmlldy5sb2FkKHRlc3RVcmwpCiAg
ICAgICAgICAgICB2ZXJpZnkoIWRpc2FibGVkV2ViVmlldy5leHBlcmltZW50YWwucHJlZmVyZW5j
ZXMubmF2aWdhdG9yUXRPYmplY3RFbmFibGVkKQotICAgICAgICAgICAgZGlzYWJsZWRXZWJWaWV3
TG9hZFNweS53YWl0KCkKKyAgICAgICAgICAgIHZlcmlmeShkaXNhYmxlZFdlYlZpZXcud2FpdEZv
ckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIGRpc2FibGVkV2ViVmlldy5leHBlcmltZW50
YWwucG9zdE1lc3NhZ2UoIkhJIikKICAgICAgICAgICAgIHdhaXQoMTAwMCkKICAgICAgICAgICAg
IHZlcmlmeSghZGlzYWJsZWRXZWJWaWV3LnJlY2VpdmVkTWVzc2FnZSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvRGVza3RvcEJlaGF2
aW9yL3RzdF9uYXZpZ2F0aW9uUmVxdWVzdGVkLnFtbCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvRGVza3RvcEJlaGF2aW9yL3RzdF9uYXZpZ2F0aW9uUmVx
dWVzdGVkLnFtbAppbmRleCAxNjlhMDI3M2ViY2MyMTZiNzIzZjYxZDlhZDBmZGIyNjc5NDg2YWEw
Li4wMThiZmE2NmQxM2E0ZGI4MjQ1NjE1MDdiZmI2ZWVlZmVlNDU4YzY0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL0Rlc2t0b3BCZWhh
dmlvci90c3RfbmF2aWdhdGlvblJlcXVlc3RlZC5xbWwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9EZXNrdG9wQmVoYXZpb3IvdHN0X25hdmlnYXRp
b25SZXF1ZXN0ZWQucW1sCkBAIC0yLDYgKzIsNyBAQCBpbXBvcnQgUXRRdWljayAyLjAKIGltcG9y
dCBRdFRlc3QgMS4wCiBpbXBvcnQgUXRXZWJLaXQgMy4wCiBpbXBvcnQgUXRXZWJLaXQuZXhwZXJp
bWVudGFsIDEuMAoraW1wb3J0ICIuLi9jb21tb24iCiAKIEl0ZW0gewogICAgIHByb3BlcnR5IGlu
dCBleHBlY3RlZExlbmd0aDogMApAQCAtMTEsNyArMTIsNyBAQCBJdGVtIHsKICAgICBwcm9wZXJ0
eSB1cmwgYmVnaW5Vcmw6IFF0LnJlc29sdmVkVXJsKCIuLi9jb21tb24vdGVzdDIuaHRtbCIpCiAg
ICAgcHJvcGVydHkgdXJsIGVuZFVybDogUXQucmVzb2x2ZWRVcmwoIi4uL2NvbW1vbi90ZXN0MS5o
dG1sIikKIAotICAgIFdlYlZpZXcgeworICAgIFRlc3RXZWJWaWV3IHsKICAgICAgICAgaWQ6IHdl
YlZpZXcKICAgICAgICAgd2lkdGg6IDIwMAogICAgICAgICBoZWlnaHQ6IDIwMApAQCAtNDUsMjMg
KzQ2LDExIEBAIEl0ZW0gewogICAgICAgICB9CiAgICAgfQogCi0gICAgU2lnbmFsU3B5IHsKLSAg
ICAgICAgaWQ6IHNweQotICAgICAgICB0YXJnZXQ6IHdlYlZpZXcKLSAgICAgICAgc2lnbmFsTmFt
ZTogImxvYWRTdWNjZWVkZWQiCi0gICAgfQotCi0gICAgV2ViVmlldyB7CisgICAgVGVzdFdlYlZp
ZXcgewogICAgICAgICBpZDogb3RoZXJXZWJWaWV3CiAgICAgfQogCiAgICAgU2lnbmFsU3B5IHsK
LSAgICAgICAgaWQ6IG90aGVyU3B5Ci0gICAgICAgIHRhcmdldDogb3RoZXJXZWJWaWV3Ci0gICAg
ICAgIHNpZ25hbE5hbWU6ICJsb2FkU3VjY2VlZGVkIgotICAgIH0KLQotICAgIFNpZ25hbFNweSB7
CiAgICAgICAgIGlkOiBkb3dubG9hZFNweQogICAgICAgICB0YXJnZXQ6IHdlYlZpZXcuZXhwZXJp
bWVudGFsCiAgICAgICAgIHNpZ25hbE5hbWU6ICJkb3dubG9hZFJlcXVlc3RlZCIKQEAgLTg2LDgg
Kzc1LDYgQEAgSXRlbSB7CiAgICAgICAgIH0KIAogICAgICAgICBmdW5jdGlvbiBpbml0KCkgewot
ICAgICAgICAgICAgc3B5LmNsZWFyKCkKLSAgICAgICAgICAgIG90aGVyU3B5LmNsZWFyKCkKICAg
ICAgICAgICAgIGRvd25sb2FkU3B5LmNsZWFyKCkKICAgICAgICAgICAgIGRvd25sb2FkRmluaXNo
ZWRTcHkuY2xlYXIoKQogICAgICAgICAgICAgc2hvdWxkRG93bmxvYWQgPSBmYWxzZQpAQCAtOTYs
MjUgKzgzLDE5IEBAIEl0ZW0gewogCiAgICAgICAgIGZ1bmN0aW9uIHRlc3RfdXNlUG9saWN5KCkg
ewogICAgICAgICAgICAgd2ViVmlldy5sb2FkKGJlZ2luVXJsKQotICAgICAgICAgICAgc3B5Lndh
aXQoKQotICAgICAgICAgICAgc3B5LmNsZWFyKCkKKyAgICAgICAgICAgIHZlcmlmeSh3ZWJWaWV3
LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCiAgICAgICAgICAgICBtb3VzZUNsaWNrKHdlYlZpZXcs
IDEwMCwgMTAwLCBRdC5MZWZ0QnV0dG9uKQotICAgICAgICAgICAgc3B5LndhaXQoKQotICAgICAg
ICAgICAgY29tcGFyZShzcHkuY291bnQsIDEpCisgICAgICAgICAgICB2ZXJpZnkod2ViVmlldy53
YWl0Rm9yTG9hZFN1Y2NlZWRlZCgpKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LnRpdGxl
LCAiVGVzdCBwYWdlIDEiKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LnVybCwgZW5kVXJs
KQogICAgICAgICB9CiAKICAgICAgICAgZnVuY3Rpb24gdGVzdF9pZ25vcmVQb2xpY3koKSB7CiAg
ICAgICAgICAgICB3ZWJWaWV3LmxvYWQoYmVnaW5VcmwpCi0gICAgICAgICAgICBzcHkud2FpdCgp
Ci0gICAgICAgICAgICBzcHkuY2xlYXIoKQotICAgICAgICAgICAgY29tcGFyZShzcHkuY291bnQs
IDApCi0gICAgICAgICAgICBjb21wYXJlKG90aGVyU3B5LmNvdW50LCAwKQorICAgICAgICAgICAg
dmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIG1vdXNl
Q2xpY2sod2ViVmlldywgMTAwLCAxMDAsIFF0Lk1pZGRsZUJ1dHRvbiwgUXQuQ29udHJvbE1vZGlm
aWVyKQotICAgICAgICAgICAgb3RoZXJTcHkud2FpdCgpCi0gICAgICAgICAgICBjb21wYXJlKHNw
eS5jb3VudCwgMCkKLSAgICAgICAgICAgIGNvbXBhcmUob3RoZXJTcHkuY291bnQsIDEpCisgICAg
ICAgICAgICB2ZXJpZnkob3RoZXJXZWJWaWV3LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCisgICAg
ICAgICAgICB2ZXJpZnkod2ViVmlldy5sb2FkU3RhdHVzID09IG51bGwpCiAgICAgICAgICAgICBj
b21wYXJlKHdlYlZpZXcudXJsLCBiZWdpblVybCkKICAgICAgICAgICAgIGNvbXBhcmUob3RoZXJX
ZWJWaWV3LnRpdGxlLCAiVGVzdCBwYWdlIDEiKQogICAgICAgICAgICAgY29tcGFyZShvdGhlcldl
YlZpZXcudXJsLCBlbmRVcmwpCkBAIC0xMjIsOSArMTAzLDcgQEAgSXRlbSB7CiAKICAgICAgICAg
ZnVuY3Rpb24gdGVzdF9kb3dubG9hZFBvbGljeSgpIHsKICAgICAgICAgICAgIHdlYlZpZXcubG9h
ZChiZWdpblVybCkKLSAgICAgICAgICAgIHNweS53YWl0KCkKLSAgICAgICAgICAgIHNweS5jbGVh
cigpCi0gICAgICAgICAgICBjb21wYXJlKHNweS5jb3VudCwgMCkKKyAgICAgICAgICAgIHZlcmlm
eSh3ZWJWaWV3LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCiAgICAgICAgICAgICBkb3dubG9hZFNw
eS5jbGVhcigpCiAgICAgICAgICAgICBkb3dubG9hZEZpbmlzaGVkU3B5LmNsZWFyKCkKICAgICAg
ICAgICAgIGV4cGVjdGVkTGVuZ3RoID0gMApAQCAtMTM5LDEwICsxMTgsOSBAQCBJdGVtIHsKIAog
ICAgICAgICBmdW5jdGlvbiB0ZXN0X29yaWdpbmF0aW5nVXJsKCkgewogICAgICAgICAgICAgd2Vi
Vmlldy5sb2FkKGJlZ2luVXJsKQotICAgICAgICAgICAgc3B5LndhaXQoKQotICAgICAgICAgICAg
c3B5LmNsZWFyKCkKKyAgICAgICAgICAgIHZlcmlmeSh3ZWJWaWV3LndhaXRGb3JMb2FkU3VjY2Vl
ZGVkKCkpCiAgICAgICAgICAgICBtb3VzZUNsaWNrKHdlYlZpZXcsIDEwMCwgMTAwLCBRdC5MZWZ0
QnV0dG9uKQotICAgICAgICAgICAgc3B5LndhaXQoKQorICAgICAgICAgICAgdmVyaWZ5KHdlYlZp
ZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy50
aXRsZSwgIlRlc3QgcGFnZSAxIikKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy51cmwsIGVu
ZFVybCkKICAgICAgICAgICAgIGNvbXBhcmUob3JpZ2luYXRpbmdVcmwsIGJlZ2luVXJsKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9X
ZWJWaWV3L3RzdF9mYXZJY29uTG9hZC5xbWwgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X2Zhdkljb25Mb2FkLnFtbAppbmRleCAxMjE4
MDkzMTYzMzc5OTFjY2MwNTlkMjJmNjlmYThkNTA4OGE5YzNlLi45MjAzYjYwYjc2NDczM2E3Nzc2
NWNmZTA1MTRjNmEwMGZmOTcxOGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X2Zhdkljb25Mb2FkLnFtbAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcv
dHN0X2Zhdkljb25Mb2FkLnFtbApAQCAtMSw4ICsxLDkgQEAKIGltcG9ydCBRdFF1aWNrIDIuMAog
aW1wb3J0IFF0VGVzdCAxLjAKIGltcG9ydCBRdFdlYktpdCAzLjAKK2ltcG9ydCAiLi4vY29tbW9u
IgogCi1XZWJWaWV3IHsKK1Rlc3RXZWJWaWV3IHsKICAgICBpZDogd2ViVmlldwogCiAgICAgU2ln
bmFsU3B5IHsKQEAgLTExLDEyICsxMiw2IEBAIFdlYlZpZXcgewogICAgICAgICBzaWduYWxOYW1l
OiAiaWNvbkNoYW5nZWQiCiAgICAgfQogCi0gICAgU2lnbmFsU3B5IHsKLSAgICAgICAgaWQ6IGxv
YWRTcHkKLSAgICAgICAgdGFyZ2V0OiB3ZWJWaWV3Ci0gICAgICAgIHNpZ25hbE5hbWU6ICJsb2Fk
U3VjY2VlZGVkIgotICAgIH0KLQogICAgIEltYWdlIHsKICAgICAgICAgaWQ6IGZhdmljb24KICAg
ICAgICAgc291cmNlOiB3ZWJWaWV3Lmljb24KQEAgLTMxLDkgKzI2LDggQEAgV2ViVmlldyB7CiAg
ICAgICAgICAgICAgICAgLy8gSWYgdGhpcyBpcyBub3QgdGhlIGZpcnN0IHRlc3QsIHRoZW4gbG9h
ZCBhIGJsYW5rIHBhZ2Ugd2l0aG91dCBmYXZpY29uLCByZXN0b3JpbmcgdGhlIGluaXRpYWwgc3Rh
dGUuCiAgICAgICAgICAgICAgICAgd2ViVmlldy5sb2FkKCdhYm91dDpibGFuaycpCiAgICAgICAg
ICAgICAgICAgc3B5LndhaXQoKQotICAgICAgICAgICAgICAgIGxvYWRTcHkud2FpdCgpCisgICAg
ICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIGxvYWRTcHkuY2xlYXIoKQogICAgICAgICAgICAgc3B5LmNs
ZWFyKCkKICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X2phdmFTY3JpcHREaWFsb2dzLnFtbCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90
c3RfamF2YVNjcmlwdERpYWxvZ3MucW1sCmluZGV4IDEzYWRiM2IyZDczYzIyODEwMmE5ZGJmZjQy
ZmRkODk4ZDVhMTBlNjIuLjc3YWM2YmZmN2U0YzE1ODYxZGMyM2Q5YWE5OTA3MjQ4ZmQzM2E2NTMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVz
dHMvV2ViVmlldy90c3RfamF2YVNjcmlwdERpYWxvZ3MucW1sCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfamF2YVNjcmlwdERp
YWxvZ3MucW1sCkBAIC0yLDggKzIsOSBAQCBpbXBvcnQgUXRRdWljayAyLjAKIGltcG9ydCBRdFRl
c3QgMS4wCiBpbXBvcnQgUXRXZWJLaXQgMy4wCiBpbXBvcnQgUXRXZWJLaXQuZXhwZXJpbWVudGFs
IDEuMAoraW1wb3J0ICIuLi9jb21tb24iCiAKLVdlYlZpZXcgeworVGVzdFdlYlZpZXcgewogICAg
IGlkOiB3ZWJWaWV3CiAKICAgICBwcm9wZXJ0eSBib29sIG1vZGVsTWVzc2FnZUVxdWFsc01lc3Nh
Z2U6IGZhbHNlCkBAIC01NCwxMiArNTUsNiBAQCBXZWJWaWV3IHsKICAgICAgICAgfQogICAgIH0K
IAotICAgIFNpZ25hbFNweSB7Ci0gICAgICAgIGlkOiBsb2FkU3B5Ci0gICAgICAgIHRhcmdldDog
d2ViVmlldwotICAgICAgICBzaWduYWxOYW1lOiAibG9hZFN1Y2NlZWRlZCIKLSAgICB9Ci0KICAg
ICBUZXN0Q2FzZSB7CiAgICAgICAgIGlkOiB0ZXN0CiAgICAgICAgIG5hbWU6ICJXZWJWaWV3SmF2
YVNjcmlwdERpYWxvZ3MiCkBAIC02OSwxMyArNjQsMTEgQEAgV2ViVmlldyB7CiAgICAgICAgICAg
ICB3ZWJWaWV3Lm1lc3NhZ2VGcm9tQWxlcnREaWFsb2cgPSAiIgogICAgICAgICAgICAgd2ViVmll
dy5jb25maXJtQ291bnQgPSAwCiAgICAgICAgICAgICB3ZWJWaWV3LnByb21wdENvdW50ID0gMAot
ICAgICAgICAgICAgbG9hZFNweS5jbGVhcigpCiAgICAgICAgIH0KIAogICAgICAgICBmdW5jdGlv
biB0ZXN0X2FsZXJ0KCkgewogICAgICAgICAgICAgd2ViVmlldy5sb2FkKFF0LnJlc29sdmVkVXJs
KCIuLi9jb21tb24vYWxlcnQuaHRtbCIpKQotICAgICAgICAgICAgbG9hZFNweS53YWl0KCkKLSAg
ICAgICAgICAgIGNvbXBhcmUobG9hZFNweS5jb3VudCwgMSkKKyAgICAgICAgICAgIHZlcmlmeSh3
ZWJWaWV3LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCiAgICAgICAgICAgICBjb21wYXJlKHdlYlZp
ZXcubWVzc2FnZUZyb21BbGVydERpYWxvZywgIkhlbGxvIFF0IikKICAgICAgICAgICAgIHZlcmlm
eSh3ZWJWaWV3Lm1vZGVsTWVzc2FnZUVxdWFsc01lc3NhZ2UpCiAgICAgICAgIH0KQEAgLTgzLDE1
ICs3NiwxMyBAQCBXZWJWaWV3IHsKICAgICAgICAgZnVuY3Rpb24gdGVzdF9hbGVydFdpdGhvdXRE
aWFsb2coKSB7CiAgICAgICAgICAgICB3ZWJWaWV3LmV4cGVyaW1lbnRhbC5hbGVydERpYWxvZyA9
IG51bGwKICAgICAgICAgICAgIHdlYlZpZXcubG9hZChRdC5yZXNvbHZlZFVybCgiLi4vY29tbW9u
L2FsZXJ0Lmh0bWwiKSkKLSAgICAgICAgICAgIGxvYWRTcHkud2FpdCgpCi0gICAgICAgICAgICBj
b21wYXJlKGxvYWRTcHkuY291bnQsIDEpCisgICAgICAgICAgICB2ZXJpZnkod2ViVmlldy53YWl0
Rm9yTG9hZFN1Y2NlZWRlZCgpKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3Lm1lc3NhZ2VG
cm9tQWxlcnREaWFsb2csICIiKQogICAgICAgICB9CiAKICAgICAgICAgZnVuY3Rpb24gdGVzdF9j
b25maXJtKCkgewogICAgICAgICAgICAgd2ViVmlldy5sb2FkKFF0LnJlc29sdmVkVXJsKCIuLi9j
b21tb24vY29uZmlybS5odG1sIikpCi0gICAgICAgICAgICBsb2FkU3B5LndhaXQoKQotICAgICAg
ICAgICAgY29tcGFyZShsb2FkU3B5LmNvdW50LCAxKQorICAgICAgICAgICAgdmVyaWZ5KHdlYlZp
ZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy5j
b25maXJtQ291bnQsIDIpCiAgICAgICAgICAgICBjb21wYXJlKHdlYlZpZXcudGl0bGUsICJBQ0NF
UFRFRCBSRUpFQ1RFRCIpCiAgICAgICAgIH0KQEAgLTk5LDE2ICs5MCwxNCBAQCBXZWJWaWV3IHsK
ICAgICAgICAgZnVuY3Rpb24gdGVzdF9jb25maXJtV2l0aG91dERpYWxvZygpIHsKICAgICAgICAg
ICAgIHdlYlZpZXcuZXhwZXJpbWVudGFsLmNvbmZpcm1EaWFsb2cgPSBudWxsCiAgICAgICAgICAg
ICB3ZWJWaWV3LmxvYWQoUXQucmVzb2x2ZWRVcmwoIi4uL2NvbW1vbi9jb25maXJtLmh0bWwiKSkK
LSAgICAgICAgICAgIGxvYWRTcHkud2FpdCgpCi0gICAgICAgICAgICBjb21wYXJlKGxvYWRTcHku
Y291bnQsIDEpCisgICAgICAgICAgICB2ZXJpZnkod2ViVmlldy53YWl0Rm9yTG9hZFN1Y2NlZWRl
ZCgpKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LmNvbmZpcm1Db3VudCwgMCkKICAgICAg
ICAgICAgIGNvbXBhcmUod2ViVmlldy50aXRsZSwgIkFDQ0VQVEVEIEFDQ0VQVEVEIikKICAgICAg
ICAgfQogCiAgICAgICAgIGZ1bmN0aW9uIHRlc3RfcHJvbXB0KCkgewogICAgICAgICAgICAgd2Vi
Vmlldy5sb2FkKFF0LnJlc29sdmVkVXJsKCIuLi9jb21tb24vcHJvbXB0Lmh0bWwiKSkKLSAgICAg
ICAgICAgIGxvYWRTcHkud2FpdCgpCi0gICAgICAgICAgICBjb21wYXJlKGxvYWRTcHkuY291bnQs
IDEpCisgICAgICAgICAgICB2ZXJpZnkod2ViVmlldy53YWl0Rm9yTG9hZFN1Y2NlZWRlZCgpKQog
ICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LnByb21wdENvdW50LCAyKQogICAgICAgICAgICAg
Y29tcGFyZSh3ZWJWaWV3LnRpdGxlLCAidFEgb2xsZUgiKQogICAgICAgICB9CkBAIC0xMTYsOCAr
MTA1LDcgQEAgV2ViVmlldyB7CiAgICAgICAgIGZ1bmN0aW9uIHRlc3RfcHJvbXB0V2l0aG91dERp
YWxvZygpIHsKICAgICAgICAgICAgIHdlYlZpZXcuZXhwZXJpbWVudGFsLnByb21wdERpYWxvZyA9
IG51bGwKICAgICAgICAgICAgIHdlYlZpZXcubG9hZChRdC5yZXNvbHZlZFVybCgiLi4vY29tbW9u
L3Byb21wdC5odG1sIikpCi0gICAgICAgICAgICBsb2FkU3B5LndhaXQoKQotICAgICAgICAgICAg
Y29tcGFyZShsb2FkU3B5LmNvdW50LCAxKQorICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2Fp
dEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy5wcm9tcHRD
b3VudCwgMCkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy50aXRsZSwgIkZBSUwiKQogICAg
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3Rz
L3FtbHRlc3RzL1dlYlZpZXcvdHN0X2xvYWRGYWlsLnFtbCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfbG9hZEZhaWwucW1sCmluZGV4
IDI2YTQyYzBiN2U4OTAzYWQwZjI0NWM5NTNmMTJjNDk0ODdhMTk2OTIuLmUyZjM5NzcyMGRmYjgw
ZGI3M2ZjZTBlZGU0MjE4ZWFkM2JmMjdkZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfbG9hZEZhaWwucW1sCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmll
dy90c3RfbG9hZEZhaWwucW1sCkBAIC0xLDM1ICsxLDMwIEBACiBpbXBvcnQgUXRRdWljayAyLjAK
IGltcG9ydCBRdFRlc3QgMS4wCiBpbXBvcnQgUXRXZWJLaXQgMy4wCitpbXBvcnQgIi4uL2NvbW1v
biIKIAotV2ViVmlldyB7CitUZXN0V2ViVmlldyB7CiAgICAgaWQ6IHdlYlZpZXcKICAgICB3aWR0
aDogNDAwCiAgICAgaGVpZ2h0OiAzMDAKIAogICAgIHByb3BlcnR5IHZhcmlhbnQgdGVzdFVybAog
Ci0gICAgU2lnbmFsU3B5IHsKLSAgICAgICAgaWQ6IHNweQotICAgICAgICB0YXJnZXQ6IHdlYlZp
ZXcKLSAgICAgICAgc2lnbmFsTmFtZTogImxvYWRGYWlsZWQiCi0gICAgfQotCiAgICAgVGVzdENh
c2UgewogICAgICAgICBpZDogdGVzdAogICAgICAgICBuYW1lOiAiV2ViVmlld0xvYWRGYWlsIgog
ICAgICAgICBmdW5jdGlvbiB0ZXN0X2ZhaWwoKSB7Ci0gICAgICAgICAgICBjb21wYXJlKHNweS5j
b3VudCwgMCkKICAgICAgICAgICAgIHRlc3RVcmwgPSBRdC5yZXNvbHZlZFVybCgiZmlsZV90aGF0
X2RvZXNfbm90X2V4aXN0Lmh0bWwiKQogICAgICAgICAgICAgd2ViVmlldy5sb2FkKHRlc3RVcmwp
Ci0gICAgICAgICAgICBzcHkud2FpdCgpCi0gICAgICAgICAgICBjb21wYXJlKHNweS5jb3VudCwg
MSkKKyAgICAgICAgICAgIHZlcmlmeSh3ZWJWaWV3LndhaXRGb3JMb2FkRmFpbGVkKCkpCiAgICAg
ICAgIH0KICAgICB9CiAKLSAgICBvbkxvYWRGYWlsZWQ6IHsKLSAgICAgICAgdGVzdC5jb21wYXJl
KHVybCwgdGVzdFVybCkKLSAgICAgICAgdGVzdC5jb21wYXJlKGVycm9yQ29kZSwgTmV0d29ya1Jl
cGx5LkNvbnRlbnROb3RGb3VuZEVycm9yKQotICAgICAgICB0ZXN0LmNvbXBhcmUoZXJyb3JEb21h
aW4sIFdlYlZpZXcuTmV0d29ya0Vycm9yRG9tYWluKQorICAgIG9uTG9hZGluZ0NoYW5nZWQ6IHsK
KyAgICAgICAgaWYgKGxvYWRSZXF1ZXN0LnN0YXR1cyA9PSBXZWJWaWV3LkxvYWRGYWlsZWRTdGF0
dXMpIHsKKyAgICAgICAgICAgIHRlc3QuY29tcGFyZShsb2FkUmVxdWVzdC51cmwsIHRlc3RVcmwp
CisgICAgICAgICAgICB0ZXN0LmNvbXBhcmUobG9hZFJlcXVlc3QuZXJyb3JDb2RlLCBOZXR3b3Jr
UmVwbHkuQ29udGVudE5vdEZvdW5kRXJyb3IpCisgICAgICAgICAgICB0ZXN0LmNvbXBhcmUobG9h
ZFJlcXVlc3QuZXJyb3JEb21haW4sIFdlYlZpZXcuTmV0d29ya0Vycm9yRG9tYWluKQorICAgICAg
ICB9CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC90ZXN0cy9xbWx0ZXN0cy9XZWJWaWV3L3RzdF9sb2FkSHRtbC5xbWwgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X2xvYWRIdG1sLnFt
bAppbmRleCBiNTdkZjY2YTZkOWRjZWZlZGZkNmFlODliNmEyZDRhNWU2OWZkN2Q2Li4yOTdjMDgy
ZTUzZjZlNzdiMzM2Y2Y3NDA0NDg3ZjAyNmExMGY0ZDk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X2xvYWRIdG1s
LnFtbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3Rz
L1dlYlZpZXcvdHN0X2xvYWRIdG1sLnFtbApAQCAtMSwyNyArMSwyMCBAQAogaW1wb3J0IFF0UXVp
Y2sgMi4wCiBpbXBvcnQgUXRUZXN0IDEuMAogaW1wb3J0IFF0V2ViS2l0IDMuMAoraW1wb3J0ICIu
Li9jb21tb24iCiAKLVdlYlZpZXcgeworVGVzdFdlYlZpZXcgewogICAgIGlkOiB3ZWJWaWV3CiAg
ICAgd2lkdGg6IDIwMAogICAgIGhlaWdodDogNDAwCiAKLSAgICBTaWduYWxTcHkgewotICAgICAg
ICBpZDogbG9hZFNweQotICAgICAgICB0YXJnZXQ6IHdlYlZpZXcKLSAgICAgICAgc2lnbmFsTmFt
ZTogImxvYWRTdWNjZWVkZWQiCi0gICAgfQotCiAgICAgVGVzdENhc2UgewogICAgICAgICBuYW1l
OiAiV2ViVmlld0xvYWRIdG1sIgogCiAgICAgICAgIGZ1bmN0aW9uIHRlc3RfbG9hZFByb2dyZXNz
QWZ0ZXJMb2FkSHRtbCgpIHsKLSAgICAgICAgICAgIGxvYWRTcHkuY2xlYXIoKQotICAgICAgICAg
ICAgY29tcGFyZShsb2FkU3B5LmNvdW50LCAwKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3
LmxvYWRQcm9ncmVzcywgMCkKICAgICAgICAgICAgIHdlYlZpZXcubG9hZEh0bWwoIjxodG1sPjxo
ZWFkPjx0aXRsZT5UZXN0IHBhZ2UgMTwvdGl0bGU+PC9oZWFkPjxib2R5PkhlbGxvLjwvYm9keT48
L2h0bWw+IikKLSAgICAgICAgICAgIGxvYWRTcHkud2FpdCgpCisgICAgICAgICAgICB2ZXJpZnko
d2ViVmlldy53YWl0Rm9yTG9hZFN1Y2NlZWRlZCgpKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJW
aWV3LmxvYWRQcm9ncmVzcywgMTAwKQogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9XZWJWaWV3L3RzdF9s
b2FkUHJvZ3Jlc3MucW1sIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9x
bWx0ZXN0cy9XZWJWaWV3L3RzdF9sb2FkUHJvZ3Jlc3MucW1sCmluZGV4IGE1MWQ2ZjY5ZjA2NWQw
ZGU3ZGQ3MDI5NDFjOGNiYjY2YzhjNmU2MTkuLmZkMTViYTQ3Yjk5NDYyNjJiMTllNDdmYjZlM2Q2
MWZmNTBkMjkyN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
dGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfbG9hZFByb2dyZXNzLnFtbAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X2xvYWRQ
cm9ncmVzcy5xbWwKQEAgLTEsMjcgKzEsMjEgQEAKIGltcG9ydCBRdFF1aWNrIDIuMAogaW1wb3J0
IFF0VGVzdCAxLjAKIGltcG9ydCBRdFdlYktpdCAzLjAKK2ltcG9ydCAiLi4vY29tbW9uIgogCi1X
ZWJWaWV3IHsKK1Rlc3RXZWJWaWV3IHsKICAgICBpZDogd2ViVmlldwogICAgIHdpZHRoOiA0MDAK
ICAgICBoZWlnaHQ6IDMwMAogCi0gICAgU2lnbmFsU3B5IHsKLSAgICAgICAgaWQ6IHNweQotICAg
ICAgICB0YXJnZXQ6IHdlYlZpZXcKLSAgICAgICAgc2lnbmFsTmFtZTogImxvYWRTdWNjZWVkZWQi
Ci0gICAgfQotCiAgICAgVGVzdENhc2UgewogICAgICAgICBuYW1lOiAiV2ViVmlld0xvYWRQcm9n
cmVzcyIKIAogICAgICAgICBmdW5jdGlvbiB0ZXN0X2xvYWRQcm9ncmVzcygpIHsKLSAgICAgICAg
ICAgIGNvbXBhcmUoc3B5LmNvdW50LCAwKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3Lmxv
YWRQcm9ncmVzcywgMCkKICAgICAgICAgICAgIHdlYlZpZXcubG9hZChRdC5yZXNvbHZlZFVybCgi
Li4vY29tbW9uL3Rlc3QxLmh0bWwiKSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy5sb2Fk
UHJvZ3Jlc3MsIDApCi0gICAgICAgICAgICBzcHkud2FpdCgpCisgICAgICAgICAgICB2ZXJpZnko
d2ViVmlldy53YWl0Rm9yTG9hZFN1Y2NlZWRlZCgpKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJW
aWV3LmxvYWRQcm9ncmVzcywgMTAwKQogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9XZWJWaWV3L3RzdF9s
b2FkUHJvZ3Jlc3NTaWduYWwucW1sIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90
ZXN0cy9xbWx0ZXN0cy9XZWJWaWV3L3RzdF9sb2FkUHJvZ3Jlc3NTaWduYWwucW1sCmluZGV4IDEw
YWM4NzlhODY0ZTUyMjQ4MzA2NDBmYjg4ZWJiZjc3MGZlZWI3MzUuLmY3YzQyZjNlNjM3NTBmNWVk
ODMyY2VhMWRiM2MzZjFlMjE2MWZkYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfbG9hZFByb2dyZXNzU2lnbmFs
LnFtbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3Rz
L1dlYlZpZXcvdHN0X2xvYWRQcm9ncmVzc1NpZ25hbC5xbWwKQEAgLTEsMTkgKzEsMTQgQEAKIGlt
cG9ydCBRdFF1aWNrIDIuMAogaW1wb3J0IFF0VGVzdCAxLjAKIGltcG9ydCBRdFdlYktpdCAzLjAK
K2ltcG9ydCAiLi4vY29tbW9uIgogCi1XZWJWaWV3IHsKK1Rlc3RXZWJWaWV3IHsKICAgICBpZDog
d2ViVmlldwogICAgIHdpZHRoOiA0MDAKICAgICBoZWlnaHQ6IDMwMAogCiAgICAgU2lnbmFsU3B5
IHsKLSAgICAgICAgaWQ6IHNweQotICAgICAgICB0YXJnZXQ6IHdlYlZpZXcKLSAgICAgICAgc2ln
bmFsTmFtZTogImxvYWRTdWNjZWVkZWQiCi0gICAgfQotCi0gICAgU2lnbmFsU3B5IHsKICAgICAg
ICAgaWQ6IHNweVByb2dyZXNzCiAgICAgICAgIHRhcmdldDogd2ViVmlldwogICAgICAgICBzaWdu
YWxOYW1lOiAibG9hZFByb2dyZXNzQ2hhbmdlZCIKQEAgLTI5LDcgKzI0LDcgQEAgV2ViVmlldyB7
CiAgICAgICAgICAgICBzcHlQcm9ncmVzcy53YWl0KCkKICAgICAgICAgICAgIGNvbXBhcmUodHJ1
ZSwgd2ViVmlldy5sb2FkUHJvZ3Jlc3MgPiAtMSAmJiB3ZWJWaWV3LmxvYWRQcm9ncmVzcyA8IDEw
MSkKICAgICAgICAgICAgIGlmICh3ZWJWaWV3LmxvYWRQcm9ncmVzcyA+IDAgJiYgd2ViVmlldy5s
b2FkUHJvZ3Jlc3MgPCAxMDApIHsKLSAgICAgICAgICAgICAgICBzcHkud2FpdCgpCisgICAgICAg
ICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAg
ICAgICAgICBzcHlQcm9ncmVzcy53YWl0KCkKICAgICAgICAgICAgICAgICBjb21wYXJlKHdlYlZp
ZXcubG9hZFByb2dyZXNzLCAxMDApCiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X2xvYWRV
cmwucW1sIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9X
ZWJWaWV3L3RzdF9sb2FkVXJsLnFtbAppbmRleCBkNzA5NzZjNGE5YzEzNzFjMzk4NDJlMDVmNDMw
NmRhZTllNjFiYWNmLi5kZTJmODBkMzIxMjg1MjFmNmQwZDNhZmUwOGE4NTFiNjQ0OWFlNzUyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3Rz
L1dlYlZpZXcvdHN0X2xvYWRVcmwucW1sCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfbG9hZFVybC5xbWwKQEAgLTEsMTEgKzEs
MTQgQEAKIGltcG9ydCBRdFF1aWNrIDIuMAogaW1wb3J0IFF0VGVzdCAxLjAKIGltcG9ydCBRdFdl
YktpdCAzLjAKK2ltcG9ydCAiLi4vY29tbW9uIgogCi1XZWJWaWV3IHsKK1Rlc3RXZWJWaWV3IHsK
ICAgICBpZDogd2ViVmlldwogICAgIHByb3BlcnR5IHZhcmlhbnQgbGFzdFVybAogICAgIHByb3Bl
cnR5IGJvb2wgd2F0Y2hQcm9ncmVzczogZmFsc2UKKyAgICBwcm9wZXJ0eSBpbnQgbnVtTG9hZFN0
YXJ0ZWQ6IDAKKyAgICBwcm9wZXJ0eSBpbnQgbnVtTG9hZFN1Y2NlZWRlZDogMAogCiAgICAgb25M
b2FkUHJvZ3Jlc3NDaGFuZ2VkOiB7CiAgICAgICAgIGlmICh3YXRjaFByb2dyZXNzICYmIHdlYlZp
ZXcubG9hZFByb2dyZXNzICE9IDEwMCkgewpAQCAtMTQsNDAgKzE3LDQ0IEBAIFdlYlZpZXcgewog
ICAgICAgICB9CiAgICAgfQogCi0gICAgU2lnbmFsU3B5IHsKLSAgICAgICAgaWQ6IHNweQotICAg
ICAgICB0YXJnZXQ6IHdlYlZpZXcKLSAgICAgICAgc2lnbmFsTmFtZTogImxvYWRTdWNjZWVkZWQi
CisgICAgb25Mb2FkaW5nQ2hhbmdlZDogeworICAgICAgICBpZiAobG9hZFJlcXVlc3Quc3RhdHVz
ID09IFdlYlZpZXcuTG9hZFN0YXJ0ZWRTdGF0dXMpCisgICAgICAgICAgICArK251bUxvYWRTdGFy
dGVkCisgICAgICAgIGlmIChsb2FkUmVxdWVzdC5zdGF0dXMgPT0gV2ViVmlldy5Mb2FkU3VjY2Vl
ZGVkU3RhdHVzKQorICAgICAgICAgICAgKytudW1Mb2FkU3VjY2VlZGVkCiAgICAgfQogCiAgICAg
VGVzdENhc2UgewogICAgICAgICBpZDogdGVzdAogICAgICAgICBuYW1lOiAiV2ViVmlld0xvYWRV
cmwiCiAgICAgICAgIGZ1bmN0aW9uIHRlc3RfbG9hZElnbm9yZUVtcHR5VXJsKCkgewotICAgICAg
ICAgICAgY29tcGFyZShzcHkuY291bnQsIDApCiAgICAgICAgICAgICB2YXIgdXJsID0gUXQucmVz
b2x2ZWRVcmwoIi4uL2NvbW1vbi90ZXN0MS5odG1sIikKIAogICAgICAgICAgICAgd2ViVmlldy5s
b2FkKHVybCkKLSAgICAgICAgICAgIHNweS53YWl0KCkKLSAgICAgICAgICAgIGNvbXBhcmUoc3B5
LmNvdW50LCAxKQorICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVk
ZWQoKSkKKyAgICAgICAgICAgIGNvbXBhcmUobnVtTG9hZFN0YXJ0ZWQsIDEpCisgICAgICAgICAg
ICBjb21wYXJlKG51bUxvYWRTdWNjZWVkZWQsIDEpCiAgICAgICAgICAgICBjb21wYXJlKHdlYlZp
ZXcudXJsLCB1cmwpCiAKICAgICAgICAgICAgIGxhc3RVcmwgPSB3ZWJWaWV3LnVybAogICAgICAg
ICAgICAgd2ViVmlldy5sb2FkKCcnKQogICAgICAgICAgICAgd2FpdCgxMDAwKQotICAgICAgICAg
ICAgY29tcGFyZShzcHkuY291bnQsIDEpCisgICAgICAgICAgICBjb21wYXJlKG51bUxvYWRTdGFy
dGVkLCAxKQorICAgICAgICAgICAgY29tcGFyZShudW1Mb2FkU3VjY2VlZGVkLCAxKQogICAgICAg
ICAgICAgY29tcGFyZSh3ZWJWaWV3LnVybCwgbGFzdFVybCkKIAogICAgICAgICAgICAgd2ViVmll
dy5sb2FkKCdhYm91dDpibGFuaycpCi0gICAgICAgICAgICBzcHkud2FpdCgpCi0gICAgICAgICAg
ICBjb21wYXJlKHNweS5jb3VudCwgMikKKyAgICAgICAgICAgIHZlcmlmeSh3ZWJWaWV3LndhaXRG
b3JMb2FkU3VjY2VlZGVkKCkpCisgICAgICAgICAgICBjb21wYXJlKG51bUxvYWRTdGFydGVkLCAy
KQorICAgICAgICAgICAgY29tcGFyZShudW1Mb2FkU3VjY2VlZGVkLCAyKQogICAgICAgICAgICAg
Y29tcGFyZSh3ZWJWaWV3LnVybCwgJ2Fib3V0OmJsYW5rJykKIAogICAgICAgICAgICAgLy8gSXQg
c2hvdWxkbid0IGludGVycnVwdCBhbnkgb25nb2luZyBsb2FkIHdoZW4gYW4gZW1wdHkgdXJsIGlz
IHVzZWQuCiAgICAgICAgICAgICB3YXRjaFByb2dyZXNzID0gdHJ1ZQogICAgICAgICAgICAgd2Vi
Vmlldy5sb2FkKHVybCkKLSAgICAgICAgICAgIHNweS53YWl0KCkKLSAgICAgICAgICAgIGNvbXBh
cmUoc3B5LmNvdW50LCAzKQorICAgICAgICAgICAgd2ViVmlldy53YWl0Rm9yTG9hZFN1Y2NlZWRl
ZCgpCisgICAgICAgICAgICBjb21wYXJlKG51bUxvYWRTdGFydGVkLCAzKQorICAgICAgICAgICAg
Y29tcGFyZShudW1Mb2FkU3VjY2VlZGVkLCAzKQogICAgICAgICAgICAgdmVyaWZ5KCF3YXRjaFBy
b2dyZXNzKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LnVybCwgdXJsKQogICAgICAgICB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRl
c3RzL1dlYlZpZXcvdHN0X25hdmlnYXRpb25IaXN0b3J5LnFtbCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfbmF2aWdhdGlvbkhpc3Rv
cnkucW1sCmluZGV4IGI4ODZlNDhmMzBkMGRkNDdmNjIxMDBkYTdiYjZhMWZkNGI4MzJhMzIuLjVm
NDQyMDc1NWI5ZTI1NTZlM2VkZDBmMGVlNTc4ZDRjMmEwODE1ODUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfbmF2
aWdhdGlvbkhpc3RvcnkucW1sCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
dGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfbmF2aWdhdGlvbkhpc3RvcnkucW1sCkBAIC0yLDE4
ICsyLDEzIEBAIGltcG9ydCBRdFF1aWNrIDIuMAogaW1wb3J0IFF0VGVzdCAxLjAKIGltcG9ydCBR
dFdlYktpdCAzLjAKIGltcG9ydCBRdFdlYktpdC5leHBlcmltZW50YWwgMS4wCitpbXBvcnQgIi4u
L2NvbW1vbiIKIAotV2ViVmlldyB7CitUZXN0V2ViVmlldyB7CiAgICAgaWQ6IHdlYlZpZXcKICAg
ICB3aWR0aDogNDAwCiAgICAgaGVpZ2h0OiAzMDAKIAotICAgIFNpZ25hbFNweSB7Ci0gICAgICAg
IGlkOiBzcHkKLSAgICAgICAgdGFyZ2V0OiB3ZWJWaWV3Ci0gICAgICAgIHNpZ25hbE5hbWU6ICJs
b2FkU3VjY2VlZGVkIgotICAgIH0KLQogICAgIExpc3RWaWV3IHsKICAgICAgICAgaWQ6IGJhY2tJ
dGVtc0xpc3QKICAgICAgICAgYW5jaG9ycy5maWxsOiBwYXJlbnQKQEAgLTQwLDY0ICszNSw1NiBA
QCBXZWJWaWV3IHsKICAgICAgICAgbmFtZTogIldlYlZpZXdOYXZpZ2F0aW9uSGlzdG9yeSIKIAog
ICAgICAgICBmdW5jdGlvbiB0ZXN0X25hdmlnYXRpb25IaXN0b3J5KCkgewotICAgICAgICAgICAg
Y29tcGFyZShzcHkuY291bnQsIDApCiAgICAgICAgICAgICBjb21wYXJlKHdlYlZpZXcubG9hZFBy
b2dyZXNzLCAwKQogICAgICAgICAgICAgd2ViVmlldy5sb2FkKFF0LnJlc29sdmVkVXJsKCIuLi9j
b21tb24vdGVzdDEuaHRtbCIpKQotICAgICAgICAgICAgc3B5LndhaXQoKQorICAgICAgICAgICAg
dmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIGNvbXBh
cmUod2ViVmlldy5jYW5Hb0JhY2ssIGZhbHNlKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3
LmNhbkdvRm9yd2FyZCwgZmFsc2UpCiAgICAgICAgICAgICBjb21wYXJlKGJhY2tJdGVtc0xpc3Qu
Y291bnQsIDApCiAgICAgICAgICAgICBjb21wYXJlKGZvcndhcmRJdGVtc0xpc3QuY291bnQsIDAp
Ci0gICAgICAgICAgICBzcHkuY2xlYXIoKQogICAgICAgICAgICAgd2ViVmlldy5sb2FkKFF0LnJl
c29sdmVkVXJsKCIuLi9jb21tb24vdGVzdDIuaHRtbCIpKQotICAgICAgICAgICAgc3B5LndhaXQo
KQorICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAg
ICAgICAgICAgIGNvbXBhcmUod2ViVmlldy51cmwsIFF0LnJlc29sdmVkVXJsKCIuLi9jb21tb24v
dGVzdDIuaHRtbCIpKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LmNhbkdvQmFjaywgdHJ1
ZSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy5jYW5Hb0ZvcndhcmQsIGZhbHNlKQogICAg
ICAgICAgICAgY29tcGFyZShiYWNrSXRlbXNMaXN0LmNvdW50LCAxKQotICAgICAgICAgICAgc3B5
LmNsZWFyKCkKICAgICAgICAgICAgIHdlYlZpZXcuZXhwZXJpbWVudGFsLmdvQmFja1RvKDApCi0g
ICAgICAgICAgICBzcHkud2FpdCgpCisgICAgICAgICAgICB2ZXJpZnkod2ViVmlldy53YWl0Rm9y
TG9hZFN1Y2NlZWRlZCgpKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LnVybCwgUXQucmVz
b2x2ZWRVcmwoIi4uL2NvbW1vbi90ZXN0MS5odG1sIikpCiAgICAgICAgICAgICBjb21wYXJlKHdl
YlZpZXcuY2FuR29CYWNrLCBmYWxzZSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy5jYW5H
b0ZvcndhcmQsIHRydWUpCiAgICAgICAgICAgICBjb21wYXJlKGJhY2tJdGVtc0xpc3QuY291bnQs
IDApCiAgICAgICAgICAgICBjb21wYXJlKGZvcndhcmRJdGVtc0xpc3QuY291bnQsIDEpCi0gICAg
ICAgICAgICBzcHkuY2xlYXIoKQogICAgICAgICAgICAgd2ViVmlldy5nb0ZvcndhcmQoKQotICAg
ICAgICAgICAgc3B5LndhaXQoKQorICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2FpdEZvckxv
YWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy51cmwsIFF0LnJlc29s
dmVkVXJsKCIuLi9jb21tb24vdGVzdDIuaHRtbCIpKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJW
aWV3LmNhbkdvQmFjaywgdHJ1ZSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy5jYW5Hb0Zv
cndhcmQsIGZhbHNlKQogICAgICAgICAgICAgY29tcGFyZShiYWNrSXRlbXNMaXN0LmNvdW50LCAx
KQogICAgICAgICAgICAgY29tcGFyZShmb3J3YXJkSXRlbXNMaXN0LmNvdW50LCAwKQotICAgICAg
ICAgICAgc3B5LmNsZWFyKCkKICAgICAgICAgICAgIHdlYlZpZXcubG9hZChRdC5yZXNvbHZlZFVy
bCgiLi4vY29tbW9uL2phdmFzY3JpcHQuaHRtbCIpKQotICAgICAgICAgICAgc3B5LndhaXQoKQor
ICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAg
ICAgICAgIGNvbXBhcmUod2ViVmlldy51cmwsIFF0LnJlc29sdmVkVXJsKCIuLi9jb21tb24vamF2
YXNjcmlwdC5odG1sIikpCiAgICAgICAgICAgICBjb21wYXJlKHdlYlZpZXcuY2FuR29CYWNrLCB0
cnVlKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LmNhbkdvRm9yd2FyZCwgZmFsc2UpCiAg
ICAgICAgICAgICBjb21wYXJlKGJhY2tJdGVtc0xpc3QuY291bnQsIDIpCiAgICAgICAgICAgICBj
b21wYXJlKGZvcndhcmRJdGVtc0xpc3QuY291bnQsIDApCi0gICAgICAgICAgICBzcHkuY2xlYXIo
KQogICAgICAgICAgICAgd2ViVmlldy5leHBlcmltZW50YWwuZ29CYWNrVG8oMSkKLSAgICAgICAg
ICAgIHNweS53YWl0KCkKKyAgICAgICAgICAgIHZlcmlmeSh3ZWJWaWV3LndhaXRGb3JMb2FkU3Vj
Y2VlZGVkKCkpCiAgICAgICAgICAgICBjb21wYXJlKHdlYlZpZXcudXJsLCBRdC5yZXNvbHZlZFVy
bCgiLi4vY29tbW9uL3Rlc3QxLmh0bWwiKSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy5j
YW5Hb0JhY2ssIGZhbHNlKQogICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LmNhbkdvRm9yd2Fy
ZCwgdHJ1ZSkKICAgICAgICAgICAgIGNvbXBhcmUoYmFja0l0ZW1zTGlzdC5jb3VudCwgMCkKICAg
ICAgICAgICAgIGNvbXBhcmUoZm9yd2FyZEl0ZW1zTGlzdC5jb3VudCwgMikKLSAgICAgICAgICAg
IHNweS5jbGVhcigpCiAgICAgICAgICAgICB3ZWJWaWV3LmV4cGVyaW1lbnRhbC5nb0ZvcndhcmRU
bygxKQotICAgICAgICAgICAgc3B5LndhaXQoKQorICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcu
d2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy51cmws
IFF0LnJlc29sdmVkVXJsKCIuLi9jb21tb24vamF2YXNjcmlwdC5odG1sIikpCiAgICAgICAgICAg
ICBjb21wYXJlKHdlYlZpZXcuY2FuR29CYWNrLCB0cnVlKQogICAgICAgICAgICAgY29tcGFyZSh3
ZWJWaWV3LmNhbkdvRm9yd2FyZCwgZmFsc2UpCiAgICAgICAgICAgICBjb21wYXJlKGJhY2tJdGVt
c0xpc3QuY291bnQsIDIpCiAgICAgICAgICAgICBjb21wYXJlKGZvcndhcmRJdGVtc0xpc3QuY291
bnQsIDApCi0gICAgICAgICAgICBzcHkuY2xlYXIoKQogICAgICAgICAgICAgd2ViVmlldy5nb0Jh
Y2soKQotICAgICAgICAgICAgc3B5LndhaXQoKQorICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcu
d2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy51cmws
IFF0LnJlc29sdmVkVXJsKCIuLi9jb21tb24vdGVzdDIuaHRtbCIpKQogICAgICAgICAgICAgY29t
cGFyZSh3ZWJWaWV3LmNhbkdvQmFjaywgdHJ1ZSkKICAgICAgICAgICAgIGNvbXBhcmUod2ViVmll
dy5jYW5Hb0ZvcndhcmQsIHRydWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X3ByZWZlcmVuY2VzLnFtbCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3Rf
cHJlZmVyZW5jZXMucW1sCmluZGV4IDkxN2I2ODllNmY3MjJkOTIxY2I5MDk0NTNiMjA3NWNmMTA1
ZWM0NTkuLjgyMmZiODM2YjQzYjViNDQxNjk3MDlkYTZmNmI4MzU0MWRhOTc5YzkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmll
dy90c3RfcHJlZmVyZW5jZXMucW1sCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfcHJlZmVyZW5jZXMucW1sCkBAIC0yLDkgKzIs
MTAgQEAgaW1wb3J0IFF0UXVpY2sgMi4wCiBpbXBvcnQgUXRUZXN0IDEuMAogaW1wb3J0IFF0V2Vi
S2l0IDMuMAogaW1wb3J0IFF0V2ViS2l0LmV4cGVyaW1lbnRhbCAxLjAKK2ltcG9ydCAiLi4vY29t
bW9uIgogCiBJdGVtIHsKLSAgICBXZWJWaWV3IHsKKyAgICBUZXN0V2ViVmlldyB7CiAgICAgICAg
IGlkOiB3ZWJWaWV3CiAgICAgICAgIHdpZHRoOiA0MDAKICAgICAgICAgaGVpZ2h0OiAzMDAKQEAg
LTEzLDE5ICsxNCwxMyBAQCBJdGVtIHsKICAgICAgICAgZXhwZXJpbWVudGFsLnByZWZlcmVuY2Vz
LmxvY2FsU3RvcmFnZUVuYWJsZWQ6IHRydWUKICAgICAgICAgZXhwZXJpbWVudGFsLnByZWZlcmVu
Y2VzLnBsdWdpbnNFbmFibGVkOiB0cnVlCiAKLSAgICAgICAgV2ViVmlldyB7CisgICAgICAgIFRl
c3RXZWJWaWV3IHsKICAgICAgICAgICAgIGlkOiB3ZWJWaWV3MgogICAgICAgICAgICAgd2lkdGg6
IDQwMAogICAgICAgICAgICAgaGVpZ2h0OiAzMDAKICAgICAgICAgfQogCiAgICAgICAgIFNpZ25h
bFNweSB7Ci0gICAgICAgICAgICBpZDogc3B5Ci0gICAgICAgICAgICB0YXJnZXQ6IHdlYlZpZXcK
LSAgICAgICAgICAgIHNpZ25hbE5hbWU6ICJsb2FkU3VjY2VlZGVkIgotICAgICAgICB9Ci0KLSAg
ICAgICAgU2lnbmFsU3B5IHsKICAgICAgICAgICAgIGlkOiB0aXRsZVNweQogICAgICAgICAgICAg
dGFyZ2V0OiB3ZWJWaWV3CiAgICAgICAgICAgICBzaWduYWxOYW1lOiAidGl0bGVDaGFuZ2VkIgpA
QCAtODUsMTIgKzgwLDYgQEAgSXRlbSB7CiAgICAgICAgICAgICBzaWduYWxOYW1lOiAiZGVmYXVs
dEZpeGVkRm9udFNpemVDaGFuZ2VkIgogICAgICAgICB9CiAKLSAgICAgICAgU2lnbmFsU3B5IHsK
LSAgICAgICAgICAgIGlkOiBvdGhlclNweQotICAgICAgICAgICAgdGFyZ2V0OiB3ZWJWaWV3Mgot
ICAgICAgICAgICAgc2lnbmFsTmFtZTogImxvYWRTdWNjZWVkZWQiCi0gICAgICAgIH0KLQogICAg
ICAgICBUZXN0Q2FzZSB7CiAgICAgICAgICAgICBuYW1lOiAiV2ViVmlld1ByZWZlcmVuY2VzIgog
CkBAIC0xMzIsOSArMTIxLDggQEAgSXRlbSB7CiAgICAgICAgICAgICAgICAgICAgIHdlYlZpZXcu
ZXhwZXJpbWVudGFsLnByZWZlcmVuY2VzLmRlZmF1bHRGaXhlZEZvbnRTaXplID0gZGVmYXVsdEZp
eGVkRm9udFNpemUKIAogICAgICAgICAgICAgICAgICAgICBpZiAod2ViVmlldy51cmwgIT0gJycg
JiYgd2ViVmlldy51cmwgIT0gJ2Fib3V0OmJsYW5rJykgewotICAgICAgICAgICAgICAgICAgICAg
ICAgc3B5LmNsZWFyKCkKICAgICAgICAgICAgICAgICAgICAgICAgIHdlYlZpZXcubG9hZCgnYWJv
dXQ6YmxhbmsnKQotICAgICAgICAgICAgICAgICAgICAgICAgc3B5LndhaXQoKQorICAgICAgICAg
ICAgICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAg
ICAgICAgICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAgICAgICAgIHN0YW5kYXJkRm9udEZh
bWlseVNweS5jbGVhcigpCkBAIC0xNTEsNyArMTM5LDYgQEAgSXRlbSB7CiAgICAgICAgICAgICAg
ICAgd2ViVmlldy5leHBlcmltZW50YWwucHJlZmVyZW5jZXMuamF2YXNjcmlwdEVuYWJsZWQgPSB0
cnVlCiAgICAgICAgICAgICAgICAgd2ViVmlldy5leHBlcmltZW50YWwucHJlZmVyZW5jZXMubG9j
YWxTdG9yYWdlRW5hYmxlZCA9IHRydWUKICAgICAgICAgICAgICAgICB3ZWJWaWV3LmV4cGVyaW1l
bnRhbC5wcmVmZXJlbmNlcy5wbHVnaW5zRW5hYmxlZCA9IHRydWUKLSAgICAgICAgICAgICAgICBz
cHkuY2xlYXIoKQogICAgICAgICAgICAgICAgIHRpdGxlU3B5LmNsZWFyKCkKICAgICAgICAgICAg
IH0KIApAQCAtMTU5LDcgKzE0Niw3IEBAIEl0ZW0gewogICAgICAgICAgICAgICAgIHdlYlZpZXcu
ZXhwZXJpbWVudGFsLnByZWZlcmVuY2VzLmphdmFzY3JpcHRFbmFibGVkID0gdHJ1ZQogICAgICAg
ICAgICAgICAgIHZhciB0ZXN0VXJsID0gUXQucmVzb2x2ZWRVcmwoIi4uL2NvbW1vbi9qYXZhc2Ny
aXB0Lmh0bWwiKQogICAgICAgICAgICAgICAgIHdlYlZpZXcubG9hZCh0ZXN0VXJsKQotICAgICAg
ICAgICAgICAgIHNweS53YWl0KCkKKyAgICAgICAgICAgICAgICB2ZXJpZnkod2ViVmlldy53YWl0
Rm9yTG9hZFN1Y2NlZWRlZCgpKQogICAgICAgICAgICAgICAgIGNvbXBhcmUod2ViVmlldy50aXRs
ZSwgIk5ldyBUaXRsZSIpCiAgICAgICAgICAgICB9CiAKQEAgLTE2Nyw3ICsxNTQsNyBAQCBJdGVt
IHsKICAgICAgICAgICAgICAgICB3ZWJWaWV3LmV4cGVyaW1lbnRhbC5wcmVmZXJlbmNlcy5qYXZh
c2NyaXB0RW5hYmxlZCA9IGZhbHNlCiAgICAgICAgICAgICAgICAgdmFyIHRlc3RVcmwgPSBRdC5y
ZXNvbHZlZFVybCgiLi4vY29tbW9uL2phdmFzY3JpcHQuaHRtbCIpCiAgICAgICAgICAgICAgICAg
d2ViVmlldy5sb2FkKHRlc3RVcmwpCi0gICAgICAgICAgICAgICAgc3B5LndhaXQoKQorICAgICAg
ICAgICAgICAgIHZlcmlmeSh3ZWJWaWV3LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCiAgICAgICAg
ICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LnRpdGxlLCAiT3JpZ2luYWwgVGl0bGUiKQogICAgICAg
ICAgICAgfQogCkBAIC0xNzUsNyArMTYyLDcgQEAgSXRlbSB7CiAgICAgICAgICAgICAgICAgd2Vi
Vmlldy5leHBlcmltZW50YWwucHJlZmVyZW5jZXMubG9jYWxTdG9yYWdlRW5hYmxlZCA9IGZhbHNl
CiAgICAgICAgICAgICAgICAgdmFyIHRlc3RVcmwgPSBRdC5yZXNvbHZlZFVybCgiLi4vY29tbW9u
L2xvY2FsU3RvcmFnZS5odG1sIikKICAgICAgICAgICAgICAgICB3ZWJWaWV3LmxvYWQodGVzdFVy
bCkKLSAgICAgICAgICAgICAgICBzcHkud2FpdCgpCisgICAgICAgICAgICAgICAgdmVyaWZ5KHdl
YlZpZXcud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgICAgICBjb21wYXJlKHdl
YlZpZXcudGl0bGUsICJPcmlnaW5hbCBUaXRsZSIpCiAgICAgICAgICAgICB9CiAKQEAgLTE4Mywx
MCArMTcwLDkgQEAgSXRlbSB7CiAgICAgICAgICAgICAgICAgd2ViVmlldy5leHBlcmltZW50YWwu
cHJlZmVyZW5jZXMubG9jYWxTdG9yYWdlRW5hYmxlZCA9IHRydWUKICAgICAgICAgICAgICAgICB2
YXIgdGVzdFVybCA9IFF0LnJlc29sdmVkVXJsKCIuLi9jb21tb24vbG9jYWxTdG9yYWdlLmh0bWwi
KQogICAgICAgICAgICAgICAgIHdlYlZpZXcubG9hZCh0ZXN0VXJsKQotICAgICAgICAgICAgICAg
IHNweS53YWl0KCkKLSAgICAgICAgICAgICAgICBzcHkuY2xlYXIoKQorICAgICAgICAgICAgICAg
IHZlcmlmeSh3ZWJWaWV3LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCiAgICAgICAgICAgICAgICAg
d2ViVmlldy5sb2FkKHRlc3RVcmwpCi0gICAgICAgICAgICAgICAgc3B5LndhaXQoKQorICAgICAg
ICAgICAgICAgIHZlcmlmeSh3ZWJWaWV3LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCiAgICAgICAg
ICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LnRpdGxlLCAiTmV3IFRpdGxlIikKICAgICAgICAgICAg
IH0KIApAQCAtMTk1LDE4ICsxODEsMTYgQEAgSXRlbSB7CiAgICAgICAgICAgICAgICAgd2ViVmll
dzIuZXhwZXJpbWVudGFsLnByZWZlcmVuY2VzLmphdmFzY3JpcHRFbmFibGVkID0gdHJ1ZQogICAg
ICAgICAgICAgICAgIHZhciB0ZXN0VXJsID0gUXQucmVzb2x2ZWRVcmwoIi4uL2NvbW1vbi9qYXZh
c2NyaXB0Lmh0bWwiKQogICAgICAgICAgICAgICAgIHdlYlZpZXcubG9hZCh0ZXN0VXJsKQotICAg
ICAgICAgICAgICAgIHNweS53YWl0KCkKKyAgICAgICAgICAgICAgICB2ZXJpZnkod2ViVmlldy53
YWl0Rm9yTG9hZFN1Y2NlZWRlZCgpKQogICAgICAgICAgICAgICAgIHdlYlZpZXcyLmxvYWQodGVz
dFVybCkKLSAgICAgICAgICAgICAgICBvdGhlclNweS53YWl0KCkKKyAgICAgICAgICAgICAgICB2
ZXJpZnkod2ViVmlldzIud2FpdEZvckxvYWRTdWNjZWVkZWQoKSkKICAgICAgICAgICAgICAgICBj
b21wYXJlKHdlYlZpZXcudGl0bGUsICJOZXcgVGl0bGUiKQogICAgICAgICAgICAgICAgIGNvbXBh
cmUod2ViVmlldzIudGl0bGUsICJOZXcgVGl0bGUiKQotICAgICAgICAgICAgICAgIHNweS5jbGVh
cigpCi0gICAgICAgICAgICAgICAgb3RoZXJTcHkuY2xlYXIoKQogICAgICAgICAgICAgICAgIHdl
YlZpZXcuZXhwZXJpbWVudGFsLnByZWZlcmVuY2VzLmphdmFzY3JpcHRFbmFibGVkID0gZmFsc2UK
ICAgICAgICAgICAgICAgICB3ZWJWaWV3LmxvYWQodGVzdFVybCkKLSAgICAgICAgICAgICAgICBz
cHkud2FpdCgpCisgICAgICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcud2FpdEZvckxvYWRTdWNj
ZWVkZWQoKSkKICAgICAgICAgICAgICAgICB3ZWJWaWV3Mi5sb2FkKHRlc3RVcmwpCi0gICAgICAg
ICAgICAgICAgb3RoZXJTcHkud2FpdCgpCisgICAgICAgICAgICAgICAgdmVyaWZ5KHdlYlZpZXcy
LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCiAgICAgICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3
LnRpdGxlLCAiT3JpZ2luYWwgVGl0bGUiKQogICAgICAgICAgICAgICAgIGNvbXBhcmUod2ViVmll
dzIudGl0bGUsICJOZXcgVGl0bGUiKQogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9XZWJWaWV3L3RzdF9wcm9w
ZXJ0aWVzLnFtbCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVz
dHMvV2ViVmlldy90c3RfcHJvcGVydGllcy5xbWwKaW5kZXggNDc2MWNkMzIyMTgxNzg1MjliMjFi
YTJmNDIxZGFiZDRjZDZjMTBhYS4uM2RlOWNkNDViZWEwY2E5NGE3ODdiZjgzYTM1NTc1ZGFjZWEz
M2ZlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9x
bWx0ZXN0cy9XZWJWaWV3L3RzdF9wcm9wZXJ0aWVzLnFtbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X3Byb3BlcnRpZXMucW1s
CkBAIC0xLDMzICsxLDI2IEBACiBpbXBvcnQgUXRRdWljayAyLjAKIGltcG9ydCBRdFRlc3QgMS4w
CiBpbXBvcnQgUXRXZWJLaXQgMy4wCitpbXBvcnQgIi4uL2NvbW1vbiIKIAotV2ViVmlldyB7CitU
ZXN0V2ViVmlldyB7CiAgICAgaWQ6IHdlYlZpZXcKICAgICB3aWR0aDogNDAwCiAgICAgaGVpZ2h0
OiAzMDAKIAotICAgIFNpZ25hbFNweSB7Ci0gICAgICAgIGlkOiBzcHkKLSAgICAgICAgdGFyZ2V0
OiB3ZWJWaWV3Ci0gICAgICAgIHNpZ25hbE5hbWU6ICJsb2FkU3VjY2VlZGVkIgotICAgIH0KLQog
ICAgIFRlc3RDYXNlIHsKICAgICAgICAgbmFtZTogIldlYlZpZXdQcm9wZXJ0aWVzIgogCiAgICAg
ICAgIGZ1bmN0aW9uIHRlc3RfdGl0bGUoKSB7Ci0gICAgICAgICAgICBjb21wYXJlKHNweS5jb3Vu
dCwgMCkKICAgICAgICAgICAgIHdlYlZpZXcubG9hZChRdC5yZXNvbHZlZFVybCgiLi4vY29tbW9u
L3Rlc3QxLmh0bWwiKSkKLSAgICAgICAgICAgIHNweS53YWl0KCkKKyAgICAgICAgICAgIHZlcmlm
eSh3ZWJWaWV3LndhaXRGb3JMb2FkU3VjY2VlZGVkKCkpCiAgICAgICAgICAgICBjb21wYXJlKHdl
YlZpZXcudGl0bGUsICJUZXN0IHBhZ2UgMSIpCiAgICAgICAgIH0KIAogICAgICAgICBmdW5jdGlv
biB0ZXN0X3VybCgpIHsKLSAgICAgICAgICAgIGNvbXBhcmUoc3B5LmNvdW50LCAxKQogICAgICAg
ICAgICAgdmFyIHRlc3RVcmwgPSBRdC5yZXNvbHZlZFVybCgiLi4vY29tbW9uL3Rlc3QxLmh0bWwi
KQogICAgICAgICAgICAgd2ViVmlldy5sb2FkKHRlc3RVcmwpCi0gICAgICAgICAgICBzcHkud2Fp
dCgpCisgICAgICAgICAgICB2ZXJpZnkod2ViVmlldy53YWl0Rm9yTG9hZFN1Y2NlZWRlZCgpKQog
ICAgICAgICAgICAgY29tcGFyZSh3ZWJWaWV3LnVybCwgdGVzdFVybCkKICAgICAgICAgfQogICAg
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1s
dGVzdHMvV2ViVmlldy90c3RfdGl0bGVDaGFuZ2VkLnFtbCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvdGVzdHMvcW1sdGVzdHMvV2ViVmlldy90c3RfdGl0bGVDaGFuZ2VkLnFtbApp
bmRleCBmMzZlYTg1NzkzMjI5MDhkZWFkN2Q2ZTE4ZTUxYjVkMGUxYzkwZWIwLi5mM2Y1MDY5ZWUx
MDhlMmQ3NzcwYjEwOTZjNDFmMTRjNjhjN2I5ZTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FtbHRlc3RzL1dlYlZpZXcvdHN0X3RpdGxlQ2hhbmdl
ZC5xbWwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0
cy9XZWJWaWV3L3RzdF90aXRsZUNoYW5nZWQucW1sCkBAIC0xLDE5ICsxLDE0IEBACiBpbXBvcnQg
UXRRdWljayAyLjAKIGltcG9ydCBRdFRlc3QgMS4wCiBpbXBvcnQgUXRXZWJLaXQgMy4wCitpbXBv
cnQgIi4uL2NvbW1vbiIKIAotV2ViVmlldyB7CitUZXN0V2ViVmlldyB7CiAgICAgaWQ6IHdlYlZp
ZXcKICAgICB3aWR0aDogNDAwCiAgICAgaGVpZ2h0OiAzMDAKIAogICAgIFNpZ25hbFNweSB7Ci0g
ICAgICAgIGlkOiBzcHkKLSAgICAgICAgdGFyZ2V0OiB3ZWJWaWV3Ci0gICAgICAgIHNpZ25hbE5h
bWU6ICJsb2FkU3VjY2VlZGVkIgotICAgIH0KLQotICAgIFNpZ25hbFNweSB7CiAgICAgICAgIGlk
OiBzcHlUaXRsZQogICAgICAgICB0YXJnZXQ6IHdlYlZpZXcKICAgICAgICAgc2lnbmFsTmFtZTog
InRpdGxlQ2hhbmdlZCIKQEAgLTI2LDYgKzIxLDcgQEAgV2ViVmlldyB7CiAgICAgICAgICAgICBj
b21wYXJlKHNweVRpdGxlLmNvdW50LCAwKQogICAgICAgICAgICAgdmFyIHRlc3RVcmwgPSBRdC5y
ZXNvbHZlZFVybCgiLi4vY29tbW9uL3Rlc3QzLmh0bWwiKQogICAgICAgICAgICAgd2ViVmlldy5s
b2FkKHRlc3RVcmwpCisgICAgICAgICAgICB2ZXJpZnkod2ViVmlldy53YWl0Rm9yTG9hZFN1Y2Nl
ZWRlZCgpKQogICAgICAgICAgICAgc3B5VGl0bGUud2FpdCgpCiAgICAgICAgICAgICBjb21wYXJl
KHdlYlZpZXcudGl0bGUsICJUZXN0IHBhZ2UgMyIpCiAgICAgICAgICAgICBzcHlUaXRsZS53YWl0
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcW1s
dGVzdHMvY29tbW9uL1Rlc3RXZWJWaWV3LnFtbCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvdGVzdHMvcW1sdGVzdHMvY29tbW9uL1Rlc3RXZWJWaWV3LnFtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
YTBiYWFlNGY3OGU3ZWZhNDE5ODhmYTg1MjgxMTY0ODFiYTI2NTRjCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xbWx0ZXN0cy9jb21tb24v
VGVzdFdlYlZpZXcucW1sCkBAIC0wLDAgKzEsMzYgQEAKK2ltcG9ydCBRdFF1aWNrIDIuMAoraW1w
b3J0IFF0VGVzdCAxLjAKK2ltcG9ydCBRdFdlYktpdCAzLjAKK2ltcG9ydCBRdFdlYktpdC5leHBl
cmltZW50YWwgMS4wCisKK1dlYlZpZXcgeworICAgIHByb3BlcnR5IHZhciBsb2FkU3RhdHVzOiBu
dWxsCisKKyAgICBmdW5jdGlvbiB3YWl0Rm9yTG9hZFN1Y2NlZWRlZCgpIHsKKyAgICAgICAgdmFy
IHRpbWVvdXQgPSA1MDAwCisgICAgICAgIHZhciBpID0gMAorICAgICAgICB3aGlsZSAoaSA8IHRp
bWVvdXQgJiYgbG9hZFN0YXR1cyAhPSBXZWJWaWV3LkxvYWRTdWNjZWVkZWRTdGF0dXMpIHsKKyAg
ICAgICAgICAgIHRlc3RSZXN1bHQud2FpdCg1MCkKKyAgICAgICAgICAgIGkgKz0gNTAKKyAgICAg
ICAgfQorICAgICAgICB2YXIgc3VjY2VzcyA9IGxvYWRTdGF0dXMgPT0gV2ViVmlldy5Mb2FkU3Vj
Y2VlZGVkU3RhdHVzCisgICAgICAgIGxvYWRTdGF0dXMgPSBudWxsCisgICAgICAgIHJldHVybiBz
dWNjZXNzCisgICAgfQorICAgIGZ1bmN0aW9uIHdhaXRGb3JMb2FkRmFpbGVkKCkgeworICAgICAg
ICB2YXIgdGltZW91dCA9IDUwMDAKKyAgICAgICAgdmFyIGkgPSAwCisgICAgICAgIHdoaWxlIChp
IDwgdGltZW91dCAmJiBsb2FkU3RhdHVzICE9IFdlYlZpZXcuTG9hZEZhaWxlZFN0YXR1cykgewor
ICAgICAgICAgICAgdGVzdFJlc3VsdC53YWl0KDUwKQorICAgICAgICAgICAgaSArPSA1MAorICAg
ICAgICB9CisgICAgICAgIHZhciBmYWlsdXJlID0gbG9hZFN0YXR1cyA9PSBXZWJWaWV3LkxvYWRG
YWlsZWRTdGF0dXMKKyAgICAgICAgbG9hZFN0YXR1cyA9IG51bGwKKyAgICAgICAgcmV0dXJuIGZh
aWx1cmUKKyAgICB9CisKKyAgICBUZXN0UmVzdWx0IHsgaWQ6IHRlc3RSZXN1bHQgfQorCisgICAg
b25Mb2FkaW5nQ2hhbmdlZDogbG9hZFN0YXR1cyA9IGxvYWRSZXF1ZXN0LnN0YXR1cworfQorCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FxdWlja3dl
YnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCA1NzJl
OWI4N2IyZDgwYjNlMjJiOTU1NDRiNmQ5OTgwM2UyNTc4M2E1Li5kNmUwMWMwODYxZWY1ZTY3MTc0
OTZjZGY3MTAzYzdjMTFmODRiYmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcXF1aWNrd2Vidmlldy90c3Rf
cXF1aWNrd2Vidmlldy5jcHAKQEAgLTI1LDYgKzI1LDcgQEAKICNpbmNsdWRlIDxRdFRlc3QvUXRU
ZXN0PgogI2luY2x1ZGUgPHFxdWlja3dlYnBhZ2VfcC5oPgogI2luY2x1ZGUgPHFxdWlja3dlYnZp
ZXdfcC5oPgorI2luY2x1ZGUgPHF3ZWJsb2FkcmVxdWVzdF9wLmg+CiAKIGNsYXNzIHRzdF9RUXVp
Y2tXZWJWaWV3IDogcHVibGljIFFPYmplY3QgewogICAgIFFfT0JKRUNUCkBAIC0xMjAsOCArMTIx
LDYgQEAgdm9pZCB0c3RfUVF1aWNrV2ViVmlldzo6bmF2aWdhdGlvblN0YXR1c0F0U3RhcnR1cCgp
CiAgICAgUUNPTVBBUkUod2ViVmlldygpLT5jYW5Hb0ZvcndhcmQoKSwgZmFsc2UpOwogCiAgICAg
UUNPTVBBUkUod2ViVmlldygpLT5sb2FkaW5nKCksIGZhbHNlKTsKLQotICAgIFFDT01QQVJFKHdl
YlZpZXcoKS0+Y2FuUmVsb2FkKCksIGZhbHNlKTsKIH0KIAogY2xhc3MgTG9hZFN0YXJ0ZWRDYXRj
aGVyIDogcHVibGljIFFPYmplY3QgewpAQCAtMTMwLDE1ICsxMjksMTcgQEAgcHVibGljOgogICAg
IExvYWRTdGFydGVkQ2F0Y2hlcihRUXVpY2tXZWJWaWV3KiB3ZWJWaWV3KQogICAgICAgICA6IG1f
d2ViVmlldyh3ZWJWaWV3KQogICAgIHsKLSAgICAgICAgY29ubmVjdChtX3dlYlZpZXcsIFNJR05B
TChsb2FkU3RhcnRlZCgpKSwgdGhpcywgU0xPVChvbkxvYWRTdGFydGVkKCkpKTsKKyAgICAgICAg
Y29ubmVjdChtX3dlYlZpZXcsIFNJR05BTChsb2FkaW5nQ2hhbmdlZChRV2ViTG9hZFJlcXVlc3Qq
KSksIHRoaXMsIFNMT1Qob25Mb2FkaW5nQ2hhbmdlZChRV2ViTG9hZFJlcXVlc3QqKSkpOwogICAg
IH0KIAogcHVibGljIHNsb3RzOgotICAgIHZvaWQgb25Mb2FkU3RhcnRlZCgpCisgICAgdm9pZCBv
bkxvYWRpbmdDaGFuZ2VkKFFXZWJMb2FkUmVxdWVzdCogbG9hZFJlcXVlc3QpCiAgICAgewotICAg
ICAgICBRTWV0YU9iamVjdDo6aW52b2tlTWV0aG9kKHRoaXMsICJmaW5pc2hlZCIsIFF0OjpRdWV1
ZWRDb25uZWN0aW9uKTsKKyAgICAgICAgaWYgKGxvYWRSZXF1ZXN0LT5zdGF0dXMoKSA9PSBRUXVp
Y2tXZWJWaWV3OjpMb2FkU3RhcnRlZFN0YXR1cykgeworICAgICAgICAgICAgUU1ldGFPYmplY3Q6
Omludm9rZU1ldGhvZCh0aGlzLCAiZmluaXNoZWQiLCBRdDo6UXVldWVkQ29ubmVjdGlvbik7CiAK
LSAgICAgICAgUUNPTVBBUkUobV93ZWJWaWV3LT5sb2FkaW5nKCksIHRydWUpOworICAgICAgICAg
ICAgUUNPTVBBUkUobV93ZWJWaWV3LT5sb2FkaW5nKCksIHRydWUpOworICAgICAgICB9CiAgICAg
fQogCiBzaWduYWxzOgpAQCAtMTU4LDcgKzE1OSw3IEBAIHZvaWQgdHN0X1FRdWlja1dlYlZpZXc6
OnN0b3BFbmFibGVkQWZ0ZXJMb2FkU3RhcnRlZCgpCiAKICAgICBRQ09NUEFSRSh3ZWJWaWV3KCkt
PmxvYWRpbmcoKSwgdHJ1ZSk7CiAKLSAgICB3YWl0Rm9yU2lnbmFsKHdlYlZpZXcoKSwgU0lHTkFM
KGxvYWRTdWNjZWVkZWQoKSkpOworICAgIFFWRVJJRlkod2FpdEZvckxvYWRTdWNjZWVkZWQod2Vi
VmlldygpKSk7CiB9CiAKIHZvaWQgdHN0X1FRdWlja1dlYlZpZXc6OmJhc2VVcmwoKQpAQCAtMTgx
LDQzICsxODIsNDMgQEAgdm9pZCB0c3RfUVF1aWNrV2ViVmlldzo6bG9hZEVtcHR5UGFnZVZpZXdW
aXNpYmxlKCkKIAogdm9pZCB0c3RfUVF1aWNrV2ViVmlldzo6bG9hZEVtcHR5UGFnZVZpZXdIaWRk
ZW4oKQogewotICAgIFFTaWduYWxTcHkgbG9hZFN0YXJ0ZWRTcHkod2ViVmlldygpLCBTSUdOQUwo
bG9hZFN0YXJ0ZWQoKSkpOworICAgIFFTaWduYWxTcHkgbG9hZFNweSh3ZWJWaWV3KCksIFNJR05B
TChsb2FkaW5nQ2hhbmdlZChRV2ViTG9hZFJlcXVlc3QqKSkpOwogCiAgICAgd2ViVmlldygpLT5s
b2FkKFFVcmw6OmZyb21Mb2NhbEZpbGUoUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIv
aHRtbC9iYXNpY19wYWdlLmh0bWwiKSkpOwotICAgIFFWRVJJRlkod2FpdEZvclNpZ25hbCh3ZWJW
aWV3KCksIFNJR05BTChsb2FkU3VjY2VlZGVkKCkpKSk7CisgICAgUVZFUklGWSh3YWl0Rm9yTG9h
ZFN1Y2NlZWRlZCh3ZWJWaWV3KCkpKTsKIAotICAgIFFDT01QQVJFKGxvYWRTdGFydGVkU3B5LnNp
emUoKSwgMSk7CisgICAgUUNPTVBBUkUobG9hZFNweS5zaXplKCksIDIpOwogfQogCiB2b2lkIHRz
dF9RUXVpY2tXZWJWaWV3Ojpsb2FkTm9uZXhpc3RlbnRGaWxlVXJsKCkKIHsKLSAgICBRU2lnbmFs
U3B5IGxvYWRGYWlsZWRTcHkod2ViVmlldygpLCBTSUdOQUwobG9hZFN0YXJ0ZWQoKSkpOworICAg
IFFTaWduYWxTcHkgbG9hZFNweSh3ZWJWaWV3KCksIFNJR05BTChsb2FkaW5nQ2hhbmdlZChRV2Vi
TG9hZFJlcXVlc3QqKSkpOwogCiAgICAgd2ViVmlldygpLT5sb2FkKFFVcmw6OmZyb21Mb2NhbEZp
bGUoUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIvaHRtbC9maWxlX3RoYXRfZG9lc19u
b3RfZXhpc3QuaHRtbCIpKSk7Ci0gICAgUVZFUklGWSh3YWl0Rm9yU2lnbmFsKHdlYlZpZXcoKSwg
U0lHTkFMKGxvYWRGYWlsZWQoUVF1aWNrV2ViVmlldzo6RXJyb3JEb21haW4sIGludCwgUVVybCwg
UVN0cmluZykpKSk7CisgICAgUVZFUklGWSh3YWl0Rm9yTG9hZEZhaWxlZCh3ZWJWaWV3KCkpKTsK
IAotICAgIFFDT01QQVJFKGxvYWRGYWlsZWRTcHkuc2l6ZSgpLCAxKTsKKyAgICBRQ09NUEFSRShs
b2FkU3B5LnNpemUoKSwgMik7CiB9CiAKIHZvaWQgdHN0X1FRdWlja1dlYlZpZXc6OmJhY2tBbmRG
b3J3YXJkKCkKIHsKICAgICB3ZWJWaWV3KCktPmxvYWQoUVVybDo6ZnJvbUxvY2FsRmlsZShRTGF0
aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UuaHRtbCIpKSk7Ci0g
ICAgUVZFUklGWSh3YWl0Rm9yU2lnbmFsKHdlYlZpZXcoKSwgU0lHTkFMKGxvYWRTdWNjZWVkZWQo
KSkpKTsKKyAgICBRVkVSSUZZKHdhaXRGb3JMb2FkU3VjY2VlZGVkKHdlYlZpZXcoKSkpOwogCiAg
ICAgUUNPTVBBUkUod2ViVmlldygpLT51cmwoKS5wYXRoKCksIFFMYXRpbjFTdHJpbmcoVEVTVFNf
U09VUkNFX0RJUiAiL2h0bWwvYmFzaWNfcGFnZS5odG1sIikpOwogCiAgICAgd2ViVmlldygpLT5s
b2FkKFFVcmw6OmZyb21Mb2NhbEZpbGUoUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIv
aHRtbC9iYXNpY19wYWdlMi5odG1sIikpKTsKLSAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwod2Vi
VmlldygpLCBTSUdOQUwobG9hZFN1Y2NlZWRlZCgpKSkpOworICAgIFFWRVJJRlkod2FpdEZvckxv
YWRTdWNjZWVkZWQod2ViVmlldygpKSk7CiAKICAgICBRQ09NUEFSRSh3ZWJWaWV3KCktPnVybCgp
LnBhdGgoKSwgUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIvaHRtbC9iYXNpY19wYWdl
Mi5odG1sIikpOwogCiAgICAgd2ViVmlldygpLT5nb0JhY2soKTsKLSAgICBRVkVSSUZZKHdhaXRG
b3JTaWduYWwod2ViVmlldygpLCBTSUdOQUwobG9hZFN1Y2NlZWRlZCgpKSkpOworICAgIFFWRVJJ
Rlkod2FpdEZvckxvYWRTdWNjZWVkZWQod2ViVmlldygpKSk7CiAKICAgICBRQ09NUEFSRSh3ZWJW
aWV3KCktPnVybCgpLnBhdGgoKSwgUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIvaHRt
bC9iYXNpY19wYWdlLmh0bWwiKSk7CiAKICAgICB3ZWJWaWV3KCktPmdvRm9yd2FyZCgpOwotICAg
IFFWRVJJRlkod2FpdEZvclNpZ25hbCh3ZWJWaWV3KCksIFNJR05BTChsb2FkU3VjY2VlZGVkKCkp
KSk7CisgICAgUVZFUklGWSh3YWl0Rm9yTG9hZFN1Y2NlZWRlZCh3ZWJWaWV3KCkpKTsKIAogICAg
IFFDT01QQVJFKHdlYlZpZXcoKS0+dXJsKCkucGF0aCgpLCBRTGF0aW4xU3RyaW5nKFRFU1RTX1NP
VVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UyLmh0bWwiKSk7CiB9CkBAIC0yMjUsMTIgKzIyNiwx
MiBAQCB2b2lkIHRzdF9RUXVpY2tXZWJWaWV3OjpiYWNrQW5kRm9yd2FyZCgpCiB2b2lkIHRzdF9R
UXVpY2tXZWJWaWV3OjpyZWxvYWQoKQogewogICAgIHdlYlZpZXcoKS0+bG9hZChRVXJsOjpmcm9t
TG9jYWxGaWxlKFFMYXRpbjFTdHJpbmcoVEVTVFNfU09VUkNFX0RJUiAiL2h0bWwvYmFzaWNfcGFn
ZS5odG1sIikpKTsKLSAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwod2ViVmlldygpLCBTSUdOQUwo
bG9hZFN1Y2NlZWRlZCgpKSkpOworICAgIFFWRVJJRlkod2FpdEZvckxvYWRTdWNjZWVkZWQod2Vi
VmlldygpKSk7CiAKICAgICBRQ09NUEFSRSh3ZWJWaWV3KCktPnVybCgpLnBhdGgoKSwgUUxhdGlu
MVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIvaHRtbC9iYXNpY19wYWdlLmh0bWwiKSk7CiAKICAg
ICB3ZWJWaWV3KCktPnJlbG9hZCgpOwotICAgIFFWRVJJRlkod2FpdEZvclNpZ25hbCh3ZWJWaWV3
KCksIFNJR05BTChsb2FkU3VjY2VlZGVkKCkpKSk7CisgICAgUVZFUklGWSh3YWl0Rm9yTG9hZFN1
Y2NlZWRlZCh3ZWJWaWV3KCkpKTsKIAogICAgIFFDT01QQVJFKHdlYlZpZXcoKS0+dXJsKCkucGF0
aCgpLCBRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UuaHRt
bCIpKTsKIH0KQEAgLTIzOCw3ICsyMzksNyBAQCB2b2lkIHRzdF9RUXVpY2tXZWJWaWV3OjpyZWxv
YWQoKQogdm9pZCB0c3RfUVF1aWNrV2ViVmlldzo6c3RvcCgpCiB7CiAgICAgd2ViVmlldygpLT5s
b2FkKFFVcmw6OmZyb21Mb2NhbEZpbGUoUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIv
aHRtbC9iYXNpY19wYWdlLmh0bWwiKSkpOwotICAgIFFWRVJJRlkod2FpdEZvclNpZ25hbCh3ZWJW
aWV3KCksIFNJR05BTChsb2FkU3VjY2VlZGVkKCkpKSk7CisgICAgUVZFUklGWSh3YWl0Rm9yTG9h
ZFN1Y2NlZWRlZCh3ZWJWaWV3KCkpKTsKIAogICAgIFFDT01QQVJFKHdlYlZpZXcoKS0+dXJsKCku
cGF0aCgpLCBRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2Uu
aHRtbCIpKTsKIApAQCAtMjUyLDcgKzI1Myw3IEBAIHZvaWQgdHN0X1FRdWlja1dlYlZpZXc6Omxv
YWRQcm9ncmVzcygpCiAKICAgICB3ZWJWaWV3KCktPmxvYWQoUVVybDo6ZnJvbUxvY2FsRmlsZShR
TGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UuaHRtbCIpKSk7
CiAgICAgUVNpZ25hbFNweSBsb2FkUHJvZ3Jlc3NDaGFuZ2VkU3B5KHdlYlZpZXcoKSwgU0lHTkFM
KGxvYWRQcm9ncmVzc0NoYW5nZWQoaW50KSkpOwotICAgIFFWRVJJRlkod2FpdEZvclNpZ25hbCh3
ZWJWaWV3KCksIFNJR05BTChsb2FkU3VjY2VlZGVkKCkpKSk7CisgICAgUVZFUklGWSh3YWl0Rm9y
TG9hZFN1Y2NlZWRlZCh3ZWJWaWV3KCkpKTsKIAogICAgIFFWRVJJRlkobG9hZFByb2dyZXNzQ2hh
bmdlZFNweS5jb3VudCgpID49IDEpOwogCkBAIC0yNzIsNyArMjczLDcgQEAgdm9pZCB0c3RfUVF1
aWNrV2ViVmlldzo6c2hvd1dlYlZpZXcoKQogICAgIHdlYlZpZXcoKS0+c2V0U2l6ZShRU2l6ZUYo
MzAwLCA0MDApKTsKIAogICAgIHdlYlZpZXcoKS0+bG9hZChRVXJsOjpmcm9tTG9jYWxGaWxlKFFM
YXRpbjFTdHJpbmcoVEVTVFNfU09VUkNFX0RJUiAiL2h0bWwvZGlyZWN0LWltYWdlLWNvbXBvc2l0
aW5nLmh0bWwiKSkpOwotICAgIFFWRVJJRlkod2FpdEZvclNpZ25hbCh3ZWJWaWV3KCksIFNJR05B
TChsb2FkU3VjY2VlZGVkKCkpKSk7CisgICAgUVZFUklGWSh3YWl0Rm9yTG9hZFN1Y2NlZWRlZCh3
ZWJWaWV3KCkpKTsKIAogICAgIG1fd2luZG93LT5zaG93KCk7CiAgICAgLy8gVGhpcyBzaG91bGQg
bm90IGNyYXNoLgpAQCAtMzA4LDEzICszMDksMTMgQEAgdm9pZCB0c3RfUVF1aWNrV2ViVmlldzo6
bXVsdGlwbGVXZWJWaWV3V2luZG93cygpCiAKICAgICB3ZWJWaWV3MS0+c2V0U2l6ZShRU2l6ZUYo
MzAwLCA0MDApKTsKICAgICB3ZWJWaWV3MS0+bG9hZChRVXJsOjpmcm9tTG9jYWxGaWxlKFFMYXRp
bjFTdHJpbmcoVEVTVFNfU09VUkNFX0RJUiAiL2h0bWwvc2Nyb2xsLmh0bWwiKSkpOwotICAgIFFW
RVJJRlkod2FpdEZvclNpZ25hbCh3ZWJWaWV3MSwgU0lHTkFMKGxvYWRTdWNjZWVkZWQoKSkpKTsK
KyAgICBRVkVSSUZZKHdhaXRGb3JMb2FkU3VjY2VlZGVkKHdlYlZpZXcxKSk7CiAgICAgd2luZG93
MS0+c2hvdygpOwogICAgIHdlYlZpZXcxLT5zZXRWaXNpYmxlKHRydWUpOwogCiAgICAgd2ViVmll
dzItPnNldFNpemUoUVNpemVGKDMwMCwgNDAwKSk7CiAgICAgd2ViVmlldzItPmxvYWQoUVVybDo6
ZnJvbUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2lj
X3BhZ2UuaHRtbCIpKSk7Ci0gICAgUVZFUklGWSh3YWl0Rm9yU2lnbmFsKHdlYlZpZXcyLCBTSUdO
QUwobG9hZFN1Y2NlZWRlZCgpKSkpOworICAgIFFWRVJJRlkod2FpdEZvckxvYWRTdWNjZWVkZWQo
d2ViVmlldzIpKTsKICAgICB3aW5kb3cyLT5zaG93KCk7CiAgICAgd2ViVmlldzItPnNldFZpc2li
bGUodHJ1ZSk7CiAgICAgUVRlc3Q6OnFXYWl0KDIwMCk7CkBAIC0zMzIsMTIgKzMzMywxMiBAQCB2
b2lkIHRzdF9RUXVpY2tXZWJWaWV3OjptdWx0aXBsZVdlYlZpZXdzKCkKIAogICAgIHdlYlZpZXcx
LT5zZXRTaXplKFFTaXplRigzMDAsIDQwMCkpOwogICAgIHdlYlZpZXcxLT5sb2FkKFFVcmw6OmZy
b21Mb2NhbEZpbGUoUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIvaHRtbC9zY3JvbGwu
aHRtbCIpKSk7Ci0gICAgUVZFUklGWSh3YWl0Rm9yU2lnbmFsKHdlYlZpZXcxLmRhdGEoKSwgU0lH
TkFMKGxvYWRTdWNjZWVkZWQoKSkpKTsKKyAgICBRVkVSSUZZKHdhaXRGb3JMb2FkU3VjY2VlZGVk
KHdlYlZpZXcxLmRhdGEoKSkpOwogICAgIHdlYlZpZXcxLT5zZXRWaXNpYmxlKHRydWUpOwogCiAg
ICAgd2ViVmlldzItPnNldFNpemUoUVNpemVGKDMwMCwgNDAwKSk7CiAgICAgd2ViVmlldzItPmxv
YWQoUVVybDo6ZnJvbUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9o
dG1sL2Jhc2ljX3BhZ2UuaHRtbCIpKSk7Ci0gICAgUVZFUklGWSh3YWl0Rm9yU2lnbmFsKHdlYlZp
ZXcyLmRhdGEoKSwgU0lHTkFMKGxvYWRTdWNjZWVkZWQoKSkpKTsKKyAgICBRVkVSSUZZKHdhaXRG
b3JMb2FkU3VjY2VlZGVkKHdlYlZpZXcyLmRhdGEoKSkpOwogICAgIHdlYlZpZXcyLT5zZXRWaXNp
YmxlKHRydWUpOwogICAgIFFUZXN0OjpxV2FpdCgyMDApOwogfQpAQCAtMzQ3LDcgKzM0OCw3IEBA
IHZvaWQgdHN0X1FRdWlja1dlYlZpZXc6OnNjcm9sbFJlcXVlc3QoKQogICAgIHdlYlZpZXcoKS0+
c2V0U2l6ZShRU2l6ZUYoMzAwLCA0MDApKTsKIAogICAgIHdlYlZpZXcoKS0+bG9hZChRVXJsOjpm
cm9tTG9jYWxGaWxlKFFMYXRpbjFTdHJpbmcoVEVTVFNfU09VUkNFX0RJUiAiL2h0bWwvc2Nyb2xs
Lmh0bWwiKSkpOwotICAgIFFWRVJJRlkod2FpdEZvclNpZ25hbCh3ZWJWaWV3KCksIFNJR05BTChs
b2FkU3VjY2VlZGVkKCkpKSk7CisgICAgUVZFUklGWSh3YWl0Rm9yTG9hZFN1Y2NlZWRlZCh3ZWJW
aWV3KCkpKTsKIAogICAgIC8vIENPTVBBUkUgd2l0aCB0aGUgcG9zaXRpb24gcmVxdWVzdGVkIGlu
IHRoZSBodG1sCiAgICAgLy8gVXNlIHFSb3VuZCBhcyB0aGF0IGlzIGFsc28gdXNlZCB3aGVuIGNh
bGN1bGF0aW5nIHRoZSBwb3NpdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC90ZXN0cy91dGlsLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvdGVzdHMvdXRpbC5jcHAKaW5kZXggZTIzMDIyMWU2YTdlYzgwMjE4NGNkYzJlYjQwYTIwYTRk
NzMzYjhlZS4uMjUxZmRlNTY3NGRhZDk5OWU5OThiZDkwZDNmMWJjODI2NTI0YzliYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy91dGlsLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3V0aWwuY3BwCkBAIC0xOCw2
ICsxOCw4IEBACiAqLwogCiAjaW5jbHVkZSAidXRpbC5oIgorI2luY2x1ZGUgInFxdWlja3dlYnZp
ZXdfcC5oIgorI2luY2x1ZGUgInF3ZWJsb2FkcmVxdWVzdF9wLmgiCiAjaW5jbHVkZSA8c3RkaW8u
aD4KIAogdm9pZCBhZGRRdFdlYlByb2Nlc3NUb1BhdGgoKQpAQCAtNTAsNiArNTIsNTggQEAgYm9v
bCB3YWl0Rm9yU2lnbmFsKFFPYmplY3QqIG9iaiwgY29uc3QgY2hhciogc2lnbmFsLCBpbnQgdGlt
ZW91dCkKICAgICByZXR1cm4gdGltZW91dFNweS5pc0VtcHR5KCk7CiB9CiAKK2NsYXNzIExvYWRT
cHkgOiBwdWJsaWMgUUV2ZW50TG9vcCB7CisgICAgUV9PQkpFQ1QKK3B1YmxpYzoKKyAgICBMb2Fk
U3B5KFFRdWlja1dlYlZpZXcqIHdlYlZpZXcpCisgICAgeworICAgICAgICBjb25uZWN0KHdlYlZp
ZXcsIFNJR05BTChsb2FkaW5nQ2hhbmdlZChRV2ViTG9hZFJlcXVlc3QqKSksIFNMT1Qob25Mb2Fk
aW5nQ2hhbmdlZChRV2ViTG9hZFJlcXVlc3QqKSkpOworICAgIH0KK3NpZ25hbHM6CisgICAgdm9p
ZCBsb2FkU3VjY2VlZGVkKCk7CisgICAgdm9pZCBsb2FkRmFpbGVkKCk7Citwcml2YXRlIHNsb3Rz
OgorICAgIHZvaWQgb25Mb2FkaW5nQ2hhbmdlZChRV2ViTG9hZFJlcXVlc3QqIGxvYWRSZXF1ZXN0
KQorICAgIHsKKyAgICAgICAgaWYgKGxvYWRSZXF1ZXN0LT5zdGF0dXMoKSA9PSBRUXVpY2tXZWJW
aWV3OjpMb2FkU3VjY2VlZGVkU3RhdHVzKQorICAgICAgICAgICAgZW1pdCBsb2FkU3VjY2VlZGVk
KCk7CisgICAgICAgIGVsc2UgaWYgKGxvYWRSZXF1ZXN0LT5zdGF0dXMoKSA9PSBRUXVpY2tXZWJW
aWV3OjpMb2FkRmFpbGVkU3RhdHVzKQorICAgICAgICAgICAgZW1pdCBsb2FkRmFpbGVkKCk7Cisg
ICAgfQorfTsKKworYm9vbCB3YWl0Rm9yTG9hZFN1Y2NlZWRlZChRUXVpY2tXZWJWaWV3KiB3ZWJW
aWV3LCBpbnQgdGltZW91dCkKK3sKKyAgICBRRXZlbnRMb29wIGxvb3A7CisgICAgTG9hZFNweSBs
b2FkU3B5KHdlYlZpZXcpOworICAgIFFPYmplY3Q6OmNvbm5lY3QoJmxvYWRTcHksIFNJR05BTChs
b2FkU3VjY2VlZGVkKCkpLCAmbG9vcCwgU0xPVChxdWl0KCkpKTsKKyAgICBRVGltZXIgdGltZXI7
CisgICAgUVNpZ25hbFNweSB0aW1lb3V0U3B5KCZ0aW1lciwgU0lHTkFMKHRpbWVvdXQoKSkpOwor
ICAgIGlmICh0aW1lb3V0ID4gMCkgeworICAgICAgICBRT2JqZWN0Ojpjb25uZWN0KCZ0aW1lciwg
U0lHTkFMKHRpbWVvdXQoKSksICZsb29wLCBTTE9UKHF1aXQoKSkpOworICAgICAgICB0aW1lci5z
ZXRTaW5nbGVTaG90KHRydWUpOworICAgICAgICB0aW1lci5zdGFydCh0aW1lb3V0KTsKKyAgICB9
CisgICAgbG9vcC5leGVjKCk7CisgICAgcmV0dXJuIHRpbWVvdXRTcHkuaXNFbXB0eSgpOworfQor
Citib29sIHdhaXRGb3JMb2FkRmFpbGVkKFFRdWlja1dlYlZpZXcqIHdlYlZpZXcsIGludCB0aW1l
b3V0KQoreworICAgIFFFdmVudExvb3AgbG9vcDsKKyAgICBMb2FkU3B5IGxvYWRTcHkod2ViVmll
dyk7CisgICAgUU9iamVjdDo6Y29ubmVjdCgmbG9hZFNweSwgU0lHTkFMKGxvYWRGYWlsZWQoKSks
ICZsb29wLCBTTE9UKHF1aXQoKSkpOworICAgIFFUaW1lciB0aW1lcjsKKyAgICBRU2lnbmFsU3B5
IHRpbWVvdXRTcHkoJnRpbWVyLCBTSUdOQUwodGltZW91dCgpKSk7CisgICAgaWYgKHRpbWVvdXQg
PiAwKSB7CisgICAgICAgIFFPYmplY3Q6OmNvbm5lY3QoJnRpbWVyLCBTSUdOQUwodGltZW91dCgp
KSwgJmxvb3AsIFNMT1QocXVpdCgpKSk7CisgICAgICAgIHRpbWVyLnNldFNpbmdsZVNob3QodHJ1
ZSk7CisgICAgICAgIHRpbWVyLnN0YXJ0KHRpbWVvdXQpOworICAgIH0KKyAgICBsb29wLmV4ZWMo
KTsKKyAgICByZXR1cm4gdGltZW91dFNweS5pc0VtcHR5KCk7Cit9CisKIHN0YXRpYyB2b2lkIG1l
c3NhZ2VIYW5kbGVyKFF0TXNnVHlwZSB0eXBlLCBjb25zdCBjaGFyKiBtZXNzYWdlKQogewogICAg
IGlmICh0eXBlID09IFF0Q3JpdGljYWxNc2cpIHsKQEAgLTY1LDMgKzExOSw1IEBAIHZvaWQgc3Vw
cHJlc3NEZWJ1Z091dHB1dCgpCiAgICAgaWYgKHFnZXRlbnYoIlFUX1dFQktJVF9TVVBQUkVTU19X
RUJfUFJPQ0VTU19PVVRQVVQiKS5pc0VtcHR5KCkpIFwKICAgICAgICAgcXB1dGVudigiUVRfV0VC
S0lUX1NVUFBSRVNTX1dFQl9QUk9DRVNTX09VVFBVVCIsICIxIik7CiB9CisKKyNpbmNsdWRlICJ1
dGlsLm1vYyIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVz
dHMvdXRpbC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy91dGlsLmgK
aW5kZXggMDA3OTY0ZmU1MDA1ZWNmZDA4ODdhYTVjZTFjN2Y4ZDBkYjgzMzUyMy4uZmZlNTA2M2E4
NWI5NGUyMWYxZWI2YTEwNjAzOGRhN2ZiNzRkYjVhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy91dGlsLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC90ZXN0cy91dGlsLmgKQEAgLTIyLDEyICsyMiwxNiBAQAogI2luY2x1ZGUg
PFFTaWduYWxTcHk+CiAjaW5jbHVkZSA8UVRpbWVyPgogCitjbGFzcyBRUXVpY2tXZWJWaWV3Owor
CiAjaWYgIWRlZmluZWQoVEVTVFNfU09VUkNFX0RJUikKICNkZWZpbmUgVEVTVFNfU09VUkNFX0RJ
UiAiIgogI2VuZGlmCiAKIHZvaWQgYWRkUXRXZWJQcm9jZXNzVG9QYXRoKCk7CiBib29sIHdhaXRG
b3JTaWduYWwoUU9iamVjdCosIGNvbnN0IGNoYXIqIHNpZ25hbCwgaW50IHRpbWVvdXQgPSAxMDAw
MCk7Citib29sIHdhaXRGb3JMb2FkU3VjY2VlZGVkKFFRdWlja1dlYlZpZXcqIHdlYlZpZXcsIGlu
dCB0aW1lb3V0ID0gMTAwMDApOworYm9vbCB3YWl0Rm9yTG9hZEZhaWxlZChRUXVpY2tXZWJWaWV3
KiB3ZWJWaWV3LCBpbnQgdGltZW91dCA9IDEwMDAwKTsKIHZvaWQgc3VwcHJlc3NEZWJ1Z091dHB1
dCgpOwogCiAjZGVmaW5lIFFUV0VCS0lUX0FQSV9URVNUX01BSU4oVGVzdE9iamVjdCkgXApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViRXJyb3IuaCBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYkVycm9yLmgKaW5kZXggM2JkN2JkNTA4Yjc3YzI3
ODg3MmM5OTBkYTIwZWNhM2VmNTY4YzIxOS4uM2ZlOWViOTA2ZGM0NmE1MDM0NzEzMWFlMWUyZDdj
ZGE5ZDE0ZDc2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2Vi
RXJyb3IuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJFcnJvci5oCkBA
IC0zNCw2ICszNCw3IEBAIFFUX0VORF9OQU1FU1BBQ0UKIGNsYXNzIFF0V2ViRXJyb3IgewogcHVi
bGljOgogICAgIGVudW0gVHlwZSB7CisgICAgICAgIE5vRXJyb3IsCiAgICAgICAgIEludGVybmFs
RXJyb3IsCiAgICAgICAgIE5ldHdvcmtFcnJvciwKICAgICAgICAgSHR0cEVycm9yLApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZUxvYWRDbGllbnQuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZUxvYWRDbGllbnQuY3BwCmlu
ZGV4IDI2MDFmNDgwMjI5ZDFjNTgzM2JhYTFjYzA4YjE3ZDgwYjQwNWY3ZDYuLjg1ZDdlMDQwYWNk
YjEzNmNkMmM0ZjVmNzI3OThmOTUyZWE5MWM5MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VMb2FkQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlTG9hZENsaWVudC5jcHAKQEAgLTI0LDYgKzI0LDcgQEAK
ICNpbmNsdWRlICJXS1N0cmluZ1F0LmgiCiAjaW5jbHVkZSAicXF1aWNrd2Vidmlld19wLmgiCiAj
aW5jbHVkZSAicXF1aWNrd2Vidmlld19wX3AuaCIKKyNpbmNsdWRlICJxd2VibG9hZHJlcXVlc3Rf
cC5oIgogI2luY2x1ZGUgPFdLRnJhbWUuaD4KIAogUXRXZWJQYWdlTG9hZENsaWVudDo6UXRXZWJQ
YWdlTG9hZENsaWVudChXS1BhZ2VSZWYgcGFnZVJlZiwgUVF1aWNrV2ViVmlldyogd2ViVmlldykK
QEAgLTQ5LDEwICs1MCwxMCBAQCBRdFdlYlBhZ2VMb2FkQ2xpZW50OjpRdFdlYlBhZ2VMb2FkQ2xp
ZW50KFdLUGFnZVJlZiBwYWdlUmVmLCBRUXVpY2tXZWJWaWV3KiB3ZWJWaQogICAgIFdLUGFnZVNl
dFBhZ2VMb2FkZXJDbGllbnQocGFnZVJlZiwgJmxvYWRDbGllbnQpOwogfQogCi12b2lkIFF0V2Vi
UGFnZUxvYWRDbGllbnQ6OmRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUoKQordm9pZCBR
dFdlYlBhZ2VMb2FkQ2xpZW50OjpkaWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKGNvbnN0
IFFVcmwmIHVybCkKIHsKLSAgICBlbWl0IG1fd2ViVmlldy0+bmF2aWdhdGlvblN0YXRlQ2hhbmdl
ZCgpOwotICAgIGVtaXQgbV93ZWJWaWV3LT5sb2FkU3RhcnRlZCgpOworICAgIFFXZWJMb2FkUmVx
dWVzdCBsb2FkUmVxdWVzdCh1cmwsIFFRdWlja1dlYlZpZXc6OkxvYWRTdGFydGVkU3RhdHVzKTsK
KyAgICBtX3dlYlZpZXctPmRfZnVuYygpLT5kaWRDaGFuZ2VMb2FkaW5nU3RhdGUoJmxvYWRSZXF1
ZXN0KTsKIH0KIAogdm9pZCBRdFdlYlBhZ2VMb2FkQ2xpZW50OjpkaWRDb21taXRMb2FkRm9yRnJh
bWUoY29uc3QgUVVybCYgdXJsKQpAQCAtOTAsMTQgKzkxLDE2IEBAIHZvaWQgUXRXZWJQYWdlTG9h
ZENsaWVudDo6ZGlzcGF0Y2hMb2FkU3VjY2VlZGVkKCkKIAogdm9pZCBRdFdlYlBhZ2VMb2FkQ2xp
ZW50OjpkaXNwYXRjaExvYWRGYWlsZWQoV0tFcnJvclJlZiBlcnJvcikKIHsKLSAgICBlbWl0IG1f
d2ViVmlldy0+bmF2aWdhdGlvblN0YXRlQ2hhbmdlZCgpOwotCiAgICAgaW50IGVycm9yQ29kZSA9
IFdLRXJyb3JHZXRFcnJvckNvZGUoZXJyb3IpOwotICAgIGlmICh0b0ltcGwoZXJyb3IpLT5wbGF0
Zm9ybUVycm9yKCkuaXNDYW5jZWxsYXRpb24oKSB8fCBlcnJvckNvZGUgPT0ga1dLRXJyb3JDb2Rl
RnJhbWVMb2FkSW50ZXJydXB0ZWRCeVBvbGljeUNoYW5nZSB8fCBlcnJvckNvZGUgPT0ga1dLRXJy
b3JDb2RlUGx1Z0luV2lsbEhhbmRsZUxvYWQpCisgICAgaWYgKHRvSW1wbChlcnJvciktPnBsYXRm
b3JtRXJyb3IoKS5pc0NhbmNlbGxhdGlvbigpIHx8IGVycm9yQ29kZSA9PSBrV0tFcnJvckNvZGVG
cmFtZUxvYWRJbnRlcnJ1cHRlZEJ5UG9saWN5Q2hhbmdlIHx8IGVycm9yQ29kZSA9PSBrV0tFcnJv
ckNvZGVQbHVnSW5XaWxsSGFuZGxlTG9hZCkgeworICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCBM
b2FkU3RhcnRlZFN0YXR1cyBoYXMgYSBjb3VudGVycGFydCB3aGVuIGUuZy4gcmVxdWVzdGluZyBh
IGRvd25sb2FkLgorICAgICAgICBkaXNwYXRjaExvYWRTdWNjZWVkZWQoKTsKICAgICAgICAgcmV0
dXJuOworICAgIH0KIAogICAgIFF0V2ViRXJyb3IgcXRFcnJvcihlcnJvcik7Ci0gICAgZW1pdCBt
X3dlYlZpZXctPmxvYWRGYWlsZWQoc3RhdGljX2Nhc3Q8UVF1aWNrV2ViVmlldzo6RXJyb3JEb21h
aW4+KHF0RXJyb3IudHlwZSgpKSwgcXRFcnJvci5lcnJvckNvZGUoKSwgcXRFcnJvci51cmwoKSwg
cXRFcnJvci5kZXNjcmlwdGlvbigpKTsKKyAgICBRV2ViTG9hZFJlcXVlc3QgbG9hZFJlcXVlc3Qo
cXRFcnJvci51cmwoKSwgUVF1aWNrV2ViVmlldzo6TG9hZEZhaWxlZFN0YXR1cywgcXRFcnJvci5k
ZXNjcmlwdGlvbigpLCBzdGF0aWNfY2FzdDxRUXVpY2tXZWJWaWV3OjpFcnJvckRvbWFpbj4ocXRF
cnJvci50eXBlKCkpLCBxdEVycm9yLmVycm9yQ29kZSgpKTsKKyAgICBlbWl0IG1fd2ViVmlldy0+
bG9hZGluZ0NoYW5nZWQoJmxvYWRSZXF1ZXN0KTsKIH0KIAogdm9pZCBRdFdlYlBhZ2VMb2FkQ2xp
ZW50OjpzZXRMb2FkUHJvZ3Jlc3MoaW50IGxvYWRQcm9ncmVzcykKQEAgLTExNiw3ICsxMTksMTAg
QEAgdm9pZCBRdFdlYlBhZ2VMb2FkQ2xpZW50OjpkaWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZy
YW1lKFdLUGFnZVJlZiwgV0tGcmFtZVJlZgogewogICAgIGlmICghV0tGcmFtZUlzTWFpbkZyYW1l
KGZyYW1lKSkKICAgICAgICAgcmV0dXJuOwotICAgIHRvUXRXZWJQYWdlTG9hZENsaWVudChjbGll
bnRJbmZvKS0+ZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmFtZSgpOworICAgIFdlYkZyYW1l
UHJveHkqIHdrZnJhbWUgPSB0b0ltcGwoZnJhbWUpOworICAgIFFTdHJpbmcgdXJsU3RyKHdrZnJh
bWUtPnByb3Zpc2lvbmFsVVJMKCkpOworICAgIFFVcmwgcVVybCA9IHVybFN0cjsKKyAgICB0b1F0
V2ViUGFnZUxvYWRDbGllbnQoY2xpZW50SW5mbyktPmRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9y
RnJhbWUocVVybCk7CiB9CiAKIHZvaWQgUXRXZWJQYWdlTG9hZENsaWVudDo6ZGlkRmFpbFByb3Zp
c2lvbmFsTG9hZFdpdGhFcnJvckZvckZyYW1lKFdLUGFnZVJlZiwgV0tGcmFtZVJlZiBmcmFtZSwg
V0tFcnJvclJlZiBlcnJvciwgV0tUeXBlUmVmLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZUxvYWRDbGllbnQu
aCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VMb2FkQ2xpZW50LmgKaW5k
ZXggZmJkYjkyZTdiZTY5ZGE1YTNkN2Q4ZjNjYmU2NjI3ODUzYWQ3YjI0Yy4uZTVmZWU4ZTZkZGM0
ZDAzNzg3ZWYwYWNjMTU3YTNjM2FiOGE2OGI4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL3F0L1F0V2ViUGFnZUxvYWRDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvcXQvUXRXZWJQYWdlTG9hZENsaWVudC5oCkBAIC0zNSwxMCArMzUsMTAgQEAgcHVi
bGljOgogICAgIGludCBsb2FkUHJvZ3Jlc3MoKSBjb25zdCB7IHJldHVybiBtX2xvYWRQcm9ncmVz
czsgfQogCiBwcml2YXRlOgotICAgIHZvaWQgZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmFt
ZSgpOwogICAgIHZvaWQgZGlkQ29tbWl0TG9hZEZvckZyYW1lKGNvbnN0IFFVcmwmKTsKICAgICB2
b2lkIGRpZFNhbWVEb2N1bWVudE5hdmlnYXRpb25Gb3JGcmFtZShjb25zdCBRVXJsJik7CiAgICAg
dm9pZCBkaWRSZWNlaXZlVGl0bGVGb3JGcmFtZShjb25zdCBRU3RyaW5nJik7CisgICAgdm9pZCBk
aWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKGNvbnN0IFFVcmwmKTsKICAgICB2b2lkIGRp
ZEZpcnN0VmlzdWFsbHlOb25FbXB0eUxheW91dEZvckZyYW1lKCk7CiAgICAgdm9pZCBkaWRDaGFu
Z2VCYWNrRm9yd2FyZExpc3QoKTsKIAo=
</data>
<flag name="review"
          id="131195"
          type_id="1"
          status="+"
          setter="hausmann"
    />
          </attachment>
      

    </bug>

</bugzilla>