<?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>193118</bug_id>
          
          <creation_ts>2019-01-03 11:59:24 -0800</creation_ts>
          <short_desc>Deprecate WKContextCreate</short_desc>
          <delta_ts>2019-01-04 15:53:33 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>beidson</cc>
    
    <cc>thorton</cc>
    
    <cc>tsavell</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1491483</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-01-03 11:59:24 -0800</bug_when>
    <thetext>Deprecate WKContextCreate</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1491488</commentid>
    <comment_count>1</comment_count>
      <attachid>358268</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-01-03 12:17:23 -0800</bug_when>
    <thetext>Created attachment 358268
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1491824</commentid>
    <comment_count>2</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-01-04 13:12:28 -0800</bug_when>
    <thetext>http://trac.webkit.org/r239631</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1491827</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-01-04 13:13:29 -0800</bug_when>
    <thetext>&lt;rdar://problem/47055473&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1491919</commentid>
    <comment_count>4</comment_count>
    <who name="Truitt Savell">tsavell</who>
    <bug_when>2019-01-04 15:08:06 -0800</bug_when>
    <thetext>The changes in https://trac.webkit.org/changeset/239631/webkit

appear to have caused an API failure on MacOS:

Failed

    TestWebKitAPI.WebKit.OnDeviceChangeCrash
        
        /Volumes/Data/slave/highsierra-release/build/Tools/TestWebKitAPI/Tests/WebKit/UserMedia.cpp:145
        Expected equality of these values:
          WKPageGetProcessIdentifier(webView.page())
            Which is: 56678
          WKPageGetProcessIdentifier(webView2.page())
            Which is: 56680

Run:
https://build.webkit.org/builders/Apple%20High%20Sierra%20Release%20WK2%20%28Tests%29/builds/8677</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1491946</commentid>
    <comment_count>5</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-01-04 15:53:33 -0800</bug_when>
    <thetext>http://trac.webkit.org/r239643</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358268</attachid>
            <date>2019-01-03 12:17:23 -0800</date>
            <delta_ts>2019-01-04 13:08:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-193118-20190103121722.patch</filename>
            <type>text/plain</type>
            <size>51859</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzk1OTYpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE5LTAxLTAzICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVwcmVjYXRlIFdL
Q29udGV4dENyZWF0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTkzMTE4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgSXQgaGFzIG9ubHkgb25lIHVzZSB0aGF0IGlzIGJlaW5nIHJlbW92ZWQgaW4gcmRhcjov
L3Byb2JsZW0vNDcwMzA3OTIKKyAgICAgICAgVGhpcyBpcyBhIHN0ZXAgdG93YXJkcyByZW1vdmlu
ZyBQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OmNyZWF0ZVdpdGhMZWdhY3lPcHRpb25zLgorICAg
ICAgICBBbHNvIG1ha2UgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24gYWNjZXB0IGEg
bnVsbCBjb25maWd1cmF0aW9uIHRvIG1ha2UgaXQgZWFzaWVyIHRvIHVzZS4KKworICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwOgorICAgICAgICAoV0tDb250ZXh0Q3JlYXRl
V2l0aENvbmZpZ3VyYXRpb24pOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQu
aDoKKwogMjAxOS0wMS0wMyAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSZW1vdmUgbG9naWMgaGFuZGxpbmcgRE5UIGhlYWRlciBkdXJpbmcgcmVkaXJlY3Rz
CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAJKHJl
dmlzaW9uIDIzOTU4NSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgxLDcgKzgxLDEwIEBAIFdLQ29udGV4dFJlZiBXS0Nv
bnRleHRDcmVhdGVXaXRoSW5qZWN0ZWQKIAogV0tDb250ZXh0UmVmIFdLQ29udGV4dENyZWF0ZVdp
dGhDb25maWd1cmF0aW9uKFdLQ29udGV4dENvbmZpZ3VyYXRpb25SZWYgY29uZmlndXJhdGlvbikK
IHsKLSAgICByZXR1cm4gV2ViS2l0Ojp0b0FQSSgmV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6Y3Jl
YXRlKCpXZWJLaXQ6OnRvSW1wbChjb25maWd1cmF0aW9uKSkubGVha1JlZigpKTsKKyAgICBSZWZQ
dHI8QVBJOjpQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24+IGFwaUNvbmZpZ3VyYXRpb24gPSBXZWJL
aXQ6OnRvSW1wbChjb25maWd1cmF0aW9uKTsKKyAgICBpZiAoIWFwaUNvbmZpZ3VyYXRpb24pCisg
ICAgICAgIGFwaUNvbmZpZ3VyYXRpb24gPSBBUEk6OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6
Y3JlYXRlKCk7CisgICAgcmV0dXJuIFdlYktpdDo6dG9BUEkoJldlYktpdDo6V2ViUHJvY2Vzc1Bv
b2w6OmNyZWF0ZSgqYXBpQ29uZmlndXJhdGlvbikubGVha1JlZigpKTsKIH0KIAogdm9pZCBXS0Nv
bnRleHRTZXRDbGllbnQoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYsIGNvbnN0IFdLQ29udGV4dENs
aWVudEJhc2UqIHdrQ2xpZW50KQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Mv
V0tDb250ZXh0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Mv
V0tDb250ZXh0LmgJKHJldmlzaW9uIDIzOTU4NSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9DL1dLQ29udGV4dC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw2ICszMSw3IEBACiAjaW5j
bHVkZSA8V2ViS2l0L1dLQ29udGV4dERvd25sb2FkQ2xpZW50Lmg+CiAjaW5jbHVkZSA8V2ViS2l0
L1dLQ29udGV4dEhpc3RvcnlDbGllbnQuaD4KICNpbmNsdWRlIDxXZWJLaXQvV0tDb250ZXh0SW5q
ZWN0ZWRCdW5kbGVDbGllbnQuaD4KKyNpbmNsdWRlIDxXZWJLaXQvV0tEZXByZWNhdGVkLmg+CiAK
ICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIiB7CkBAIC0xMDUsNyArMTA2LDcgQEAgdHlw
ZWRlZiB1aW50MzJfdCBXS1N0YXRpc3RpY3NPcHRpb25zOwogCiBXS19FWFBPUlQgV0tUeXBlSUQg
V0tDb250ZXh0R2V0VHlwZUlEKCk7CiAKLVdLX0VYUE9SVCBXS0NvbnRleHRSZWYgV0tDb250ZXh0
Q3JlYXRlKCk7CitXS19FWFBPUlQgV0tDb250ZXh0UmVmIFdLQ29udGV4dENyZWF0ZSgpIFdLX0Nf
QVBJX0RFUFJFQ0FURURfV0lUSF9SRVBMQUNFTUVOVChXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmln
dXJhdGlvbik7CiBXS19FWFBPUlQgV0tDb250ZXh0UmVmIFdLQ29udGV4dENyZWF0ZVdpdGhJbmpl
Y3RlZEJ1bmRsZVBhdGgoV0tTdHJpbmdSZWYgcGF0aCk7CiBXS19FWFBPUlQgV0tDb250ZXh0UmVm
IFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKFdLQ29udGV4dENvbmZpZ3VyYXRpb25S
ZWYgY29uZmlndXJhdGlvbik7CiAKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzOTU5NikKKysrIFRvb2xzL0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDExNyBAQAorMjAxOS0wMS0wMyAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIERlcHJlY2F0ZSBXS0Nv
bnRleHRDcmVhdGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5MzExOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogTWluaUJyb3dzZXIvd2luL1dlYktpdEJyb3dzZXJXaW5kb3cuY3BwOgorICAgICAgICAo
V2ViS2l0QnJvd3NlcldpbmRvdzo6V2ViS2l0QnJvd3NlcldpbmRvdyk6CisgICAgICAgICogVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWJvdXRCbGFua0xvYWQuY3BwOgorICAgICAgICAoVGVz
dFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQv
Q2xvc2VGcm9tV2l0aGluQ3JlYXRlUGFnZS5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpU
RVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9DbG9zZVRoZW5UZXJt
aW5hdGUuY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQ29va2llTWFuYWdlci5jcHA6CisgICAgICAgIChUZXN0
V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9E
b3dubG9hZERlY2lkZURlc3RpbmF0aW9uQ3Jhc2guY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQ
STo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRW51bWVyYXRl
TWVkaWFEZXZpY2VzLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAg
ICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0VwaGVtZXJhbFNlc3Npb25QdXNoU3RhdGVO
b0hpc3RvcnlDYWxsYmFjay5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAg
ICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9FdmFsdWF0ZUphdmFTY3JpcHQuY3Bw
OgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQvRXZlbnRNb2RpZmllcnMuY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQ
STo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRmFpbGVkTG9h
ZC5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdC9GaW5kLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRF
U1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0ZpbmRNYXRjaGVzLm1t
OgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQvRm9yY2VSZXBhaW50LmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6
OlRFU1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0ZyYW1lSGFuZGxl
LmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICAqIFRlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0L0ZyYW1lTUlNRVR5cGVIVE1MLmNwcDoKKyAgICAgICAgKFRlc3RX
ZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0Zy
YW1lTUlNRVR5cGVQTkcuY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAg
ICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvR2VvbG9jYXRpb24uY3BwOgorICAgICAg
ICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQvTGF5b3V0TWlsZXN0b25lc1dpdGhBbGxDb250ZW50SW5GcmFtZS5jcHA6CisgICAgICAg
IChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdC9Mb2FkQWx0ZXJuYXRlSFRNTFN0cmluZ1dpdGhOb25EaXJlY3RvcnlVUkwuY3BwOgorICAg
ICAgICAoVGVzdFdlYktpdEFQSTo6bG9hZEFsdGVybmF0ZUhUTUxTdHJpbmcpOgorICAgICAgICAq
IFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0xvYWRQYWdlT25DcmFzaC5jcHA6CisgICAgICAg
IChUZXN0V2ViS2l0QVBJOjpXZWJLaXQyQ3Jhc2hMb2FkZXI6OldlYktpdDJDcmFzaExvYWRlcik6
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvTWVudVR5cGVzRm9yTW91c2VF
dmVudHMuY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6YnVpbGRBbmRQZXJmb3JtVGVzdCk6
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvTW9kYWxBbGVydHNTUEkuY3Bw
OgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQvTmF2aWdhdGlvbkNsaWVudERlZmF1bHRDcnlwdG8uY3BwOgorICAgICAg
ICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQvUGFnZUdyb3VwLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1BhZ2VMb2FkQmFzaWMuY3BwOgorICAg
ICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXQvUGFnZUxvYWREaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZS5jcHA6
CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdC9QZW5kaW5nQVBJUmVxdWVzdFVSTC5jcHA6CisgICAgICAgIChUZXN0V2Vi
S2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9QcmV2
ZW50RW1wdHlVc2VyQWdlbnQuY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6Cisg
ICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUHJpdmF0ZUJyb3dzaW5nUHVzaFN0
YXRlTm9IaXN0b3J5Q2FsbGJhY2suY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUHJvY2Vzc0RpZFRlcm1pbmF0
ZS5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdC9SZWxvYWRQYWdlQWZ0ZXJDcmFzaC5jcHA6CisgICAgICAgIChU
ZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dC9SZXNpemVSZXZlcnNlUGFnaW5hdGVkV2ViVmlldy5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0
QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9SZXNpemVX
aW5kb3dBZnRlckNyYXNoLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1Jlc3RvcmVTZXNzaW9uU3RhdGUuY3Bw
OgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQvUmVzdG9yZVNlc3Npb25TdGF0ZUNvbnRhaW5pbmdGb3JtRGF0YS5jcHA6
CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdC9TY3JvbGxQaW5uaW5nQmVoYXZpb3JzLmNwcDoKKyAgICAgICAgKFRlc3RX
ZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1No
b3VsZEtlZXBDdXJyZW50QmFja0ZvcndhcmRMaXN0SXRlbUluTGlzdC5jcHA6CisgICAgICAgIChU
ZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dC9UZXJtaW5hdGVUd2ljZS5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAg
ICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9Vc2VyTWVkaWEuY3BwOgorICAgICAg
ICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQvV0tQYWdlQ29uZmlndXJhdGlvbi5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpU
RVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9XS1BhZ2VDb3B5U2Vz
c2lvblN0YXRlV2l0aEZpbHRlcmluZy5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNU
KToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9XS1BhZ2VHZXRTY2FsZUZh
Y3Rvck5vdFplcm8uY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAg
ICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvV0tQYWdlSXNQbGF5aW5nQXVkaW8uY3BwOgor
ICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQvV0tUaHVtYm5haWxWaWV3Lm1tOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6
VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvV2ViQ29yZVN0YXRp
c3RpY3NXaXRoTm9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1Qp
OgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L21hYy9HZXRQSURBZnRlckFi
b3J0ZWRQcm9jZXNzTGF1bmNoLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L21hYy9SZXN0b3JlU3RhdGVBZnRl
clRlcm1pbmF0aW9uLm1tOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAg
ICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db21tYW5kQmFja0ZvcndhcmQubW06
CisgICAgICAgIChXZWJLaXQyX0NvbW1hbmRCYWNrRm9yd2FyZFRlc3RXS1ZpZXc6OlNldFVwKToK
KyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0Z1bGxzY3JlZW5EZWxl
Z2F0ZS5tbToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICAqIFRlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUGljdHVyZUluUGljdHVyZURlbGVnYXRlLm1tOgor
ICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRDb2NvYS9TY2hlbWVSZWdpc3RyeS5tbToKKyAgICAgICAgKFRlc3RXZWJLaXRB
UEk6OlRFU1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvbWFjL1dlYktpdEFnbm9zdGljVGVz
dC5tbToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OldlYktpdEFnbm9zdGljVGVzdDo6cnVuV2Vi
S2l0MlRlc3QpOgorCiAyMDE5LTAxLTAzICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9A
aWdhbGlhLmNvbT4KIAogICAgICAgICBVc2VyTWVkaWEgdGVzdCBzaG91bGQgdXNlIFdLUGFnZU5h
dmlnYXRpb25DbGllbnQKSW5kZXg6IFRvb2xzL01pbmlCcm93c2VyL3dpbi9XZWJLaXRCcm93c2Vy
V2luZG93LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9NaW5pQnJvd3Nlci93aW4vV2ViS2l0QnJv
d3NlcldpbmRvdy5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL01pbmlCcm93c2VyL3dp
bi9XZWJLaXRCcm93c2VyV2luZG93LmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTgsNyArOTgsNyBA
QCBXZWJLaXRCcm93c2VyV2luZG93OjpXZWJLaXRCcm93c2VyV2luZG93CiAgICAgV0tQcmVmZXJl
bmNlc1NldERldmVsb3BlckV4dHJhc0VuYWJsZWQocHJlZnMsIHRydWUpOwogICAgIFdLUGFnZUNv
bmZpZ3VyYXRpb25TZXRQcmVmZXJlbmNlcyhjb25mLmdldCgpLCBwcmVmcyk7CiAKLSAgICBtX2Nv
bnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBtX2NvbnRleHQgPSBhZG9w
dFdLKFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBXS1Bh
Z2VDb25maWd1cmF0aW9uU2V0Q29udGV4dChjb25mLmdldCgpLCBtX2NvbnRleHQuZ2V0KCkpOwog
CiAgICAgbV92aWV3ID0gYWRvcHRXSyhXS1ZpZXdDcmVhdGUocmVjdCwgY29uZi5nZXQoKSwgbWFp
blduZCkpOwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWJvdXRCbGFu
a0xvYWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
L0Fib3V0QmxhbmtMb2FkLmNwcAkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXQvQWJvdXRCbGFua0xvYWQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00
Myw3ICs0Myw3IEBAIHN0YXRpYyB2b2lkIGRpZEZpbmlzaE5hdmlnYXRpb24oV0tQYWdlUmUKIAog
VEVTVChXZWJLaXQsIEFib3V0QmxhbmtMb2FkKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4
dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0YWlu
UHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlV2l0aENv
bmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRl
eHQuZ2V0KCkpOwogCiAgICAgV0tQYWdlTmF2aWdhdGlvbkNsaWVudFYwIGxvYWRlckNsaWVudDsK
SW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0Nsb3NlRnJvbVdpdGhpbkNy
ZWF0ZVBhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0L0Nsb3NlRnJvbVdpdGhpbkNyZWF0ZVBhZ2UuY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9DbG9zZUZyb21XaXRoaW5DcmVhdGVQYWdl
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjMsNyArNjMsNyBAQCBzdGF0aWMgV0tQYWdlUmVmIGNy
ZWF0ZU5ld1BhZ2UoV0tQYWdlUmVmCiAKIFRFU1QoV2ViS2l0LCBDbG9zZUZyb21XaXRoaW5DcmVh
dGVQYWdlKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdL
LCBXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250
ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsK
IAogICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogCkluZGV4OiBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9DbG9zZVRoZW5UZXJtaW5hdGUuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0Nsb3NlVGhlblRl
cm1pbmF0ZS5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0L0Nsb3NlVGhlblRlcm1pbmF0ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDcg
KzQ0LDcgQEAgc3RhdGljIHZvaWQgZGlkRmluaXNoTmF2aWdhdGlvbihXS1BhZ2VSZQogCiBURVNU
KFdlYktpdCwgQ2xvc2VUaGVuVGVybWluYXRlKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4
dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0YWlu
UHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlV2l0aENv
bmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRl
eHQuZ2V0KCkpOwogCiAgICAgV0tQYWdlTmF2aWdhdGlvbkNsaWVudFYwIGxvYWRlckNsaWVudDsK
SW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0Nvb2tpZU1hbmFnZXIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0Nvb2tpZU1h
bmFnZXIuY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdC9Db29raWVNYW5hZ2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzIsNyArNzIsNyBA
QCBzdGF0aWMgdm9pZCBkaWRGaW5pc2hOYXZpZ2F0aW9uKFdLUGFnZVJlCiAKIFRFU1QoV2ViS2l0
LCBDb29raWVNYW5hZ2VyKQogewotICAgIHdrQ29udGV4dC5hZG9wdChXS0NvbnRleHRDcmVhdGUo
KSk7CisgICAgd2tDb250ZXh0LmFkb3B0KFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9u
KG51bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyh3a0NvbnRleHQuZ2V0KCkp
OwogCiAgICAgV0tQYWdlTmF2aWdhdGlvbkNsaWVudFYwIGxvYWRlckNsaWVudDsKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0Rvd25sb2FkRGVjaWRlRGVzdGluYXRpb25D
cmFzaC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQv
RG93bmxvYWREZWNpZGVEZXN0aW5hdGlvbkNyYXNoLmNwcAkocmV2aXNpb24gMjM5NTg1KQorKysg
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRG93bmxvYWREZWNpZGVEZXN0aW5hdGlv
bkNyYXNoLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzEsNyArNzEsNyBAQCBzdGF0aWMgdm9pZCBz
ZXRQYWdlUG9saWN5Q2xpZW50KFdLUGFnZVJlCiAKIFRFU1QoV2ViS2l0LCBEb3dubG9hZERlY2lk
ZURlc3RpbmF0aW9uQ3Jhc2gpCiB7Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250
ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250
ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlv
bihudWxscHRyKSk7CiAgICAgc2V0Q29udGV4dERvd25sb2FkQ2xpZW50KGNvbnRleHQuZ2V0KCkp
OwogCiAgICAgUGxhdGZvcm1XZWJWaWV3IHdlYlZpZXcoY29udGV4dC5nZXQoKSk7CkluZGV4OiBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9FbnVtZXJhdGVNZWRpYURldmljZXMuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0VudW1lcmF0
ZU1lZGlhRGV2aWNlcy5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0L0VudW1lcmF0ZU1lZGlhRGV2aWNlcy5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTQ5LDcgKzQ5LDcgQEAgdm9pZCBjaGVja1VzZXJNZWRpYVBlcm1pc3Npb25DYWxsYmFjayhX
SwogCiBURVNUKFdlYktpdCwgRW51bWVyYXRlRGV2aWNlcykKIHsKLSAgICBhdXRvIGNvbnRleHQg
PSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBhdXRvIGNvbnRleHQgPSBhZG9wdFdL
KFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKIAogICAgIFdLUmV0
YWluUHRyPFdLUGFnZUdyb3VwUmVmPiBwYWdlR3JvdXAoQWRvcHRXSywgV0tQYWdlR3JvdXBDcmVh
dGVXaXRoSWRlbnRpZmllcihVdGlsOjp0b1dLKCJFbnVtZXJhdGVEZXZpY2VzIikuZ2V0KCkpKTsK
ICAgICBXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzID0gV0tQYWdlR3JvdXBHZXRQcmVmZXJl
bmNlcyhwYWdlR3JvdXAuZ2V0KCkpOwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQvRXBoZW1lcmFsU2Vzc2lvblB1c2hTdGF0ZU5vSGlzdG9yeUNhbGxiYWNrLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9FcGhlbWVyYWxTZXNz
aW9uUHVzaFN0YXRlTm9IaXN0b3J5Q2FsbGJhY2suY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9FcGhlbWVyYWxTZXNzaW9uUHVzaFN0YXRl
Tm9IaXN0b3J5Q2FsbGJhY2suY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01Myw3ICs1Myw3IEBAIFRF
U1QoV2ViS2l0LCBFcGhlbWVyYWxTZXNzaW9uUHVzaFN0YXRlTm8KIHsKICAgICBhdXRvIGNvbmZp
Z3VyYXRpb24gPSBhZG9wdFdLKFdLUGFnZUNvbmZpZ3VyYXRpb25DcmVhdGUoKSk7CiAKLSAgICBh
dXRvIGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBhdXRvIGNvbnRl
eHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsK
ICAgICBXS1BhZ2VDb25maWd1cmF0aW9uU2V0Q29udGV4dChjb25maWd1cmF0aW9uLmdldCgpLCBj
b250ZXh0LmdldCgpKTsKIAogICAgIGF1dG8gd2Vic2l0ZURhdGFTdG9yZSA9IGFkb3B0V0soV0tX
ZWJzaXRlRGF0YVN0b3JlQ3JlYXRlTm9uUGVyc2lzdGVudERhdGFTdG9yZSgpKTsKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0V2YWx1YXRlSmF2YVNjcmlwdC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRXZhbHVhdGVKYXZh
U2NyaXB0LmNwcAkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXQvRXZhbHVhdGVKYXZhU2NyaXB0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTEsNyAr
NTEsNyBAQCBzdGF0aWMgdm9pZCBkaWRSdW5KYXZhU2NyaXB0KFdLU2VyaWFsaXplCiAKIFRFU1Qo
V2ViS2l0LCBFdmFsdWF0ZUphdmFTY3JpcHRUaGF0VGhyb3dzQW5FeGNlcHRpb24pCiB7Ci0gICAg
V0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0
ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tD
b250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFBsYXRmb3JtV2Vi
VmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogCiAgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdS
ZWY+IGphdmFTY3JpcHRTdHJpbmcoQWRvcHRXSywgV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJp
bmcoInRocm93ICdIZWxsbyciKSk7CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdC9FdmVudE1vZGlmaWVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQvRXZlbnRNb2RpZmllcnMuY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9FdmVudE1vZGlmaWVycy5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTY0LDcgKzY0LDcgQEAgc3RhdGljIHZvaWQgc2V0Q2xpZW50cyhXS1BhZ2VS
ZWYgcGFnZSkKIAogVEVTVChXZWJLaXQsIEV2ZW50TW9kaWZpZXJzKQogewotICAgIFdLUmV0YWlu
UHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlKCkpOwor
ICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0
Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIAogICAgIFBsYXRmb3JtV2Vi
VmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogICAgIHNldENsaWVudHMod2ViVmlldy5wYWdl
KCkpOwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRmFpbGVkTG9hZC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRmFpbGVk
TG9hZC5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0L0ZhaWxlZExvYWQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MSw3ICs1MSw3IEBAIHN0
YXRpYyB2b2lkIGRpZEZhaWxQcm92aXNpb25hbE5hdmlnYXRpb24KIAogVEVTVChXZWJLaXQsIEZh
aWxlZExvYWQpCiB7Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0
V0ssIFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNv
bnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikp
OwogICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogCiAgICAgV0tQ
YWdlTmF2aWdhdGlvbkNsaWVudFYwIGxvYWRlckNsaWVudDsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0L0ZpbmQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0L0ZpbmQuY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9GaW5kLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTEs
NyArNTEsNyBAQCBzdGF0aWMgdm9pZCBkaWRDb3VudFN0cmluZ01hdGNoZXMoV0tQYWdlCiAKIFRF
U1QoV2ViS2l0LCBGaW5kKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4
dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0
UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51
bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhjb250ZXh0LmdldCgpKTsKICAg
ICAKICAgICBXS1BhZ2VOYXZpZ2F0aW9uQ2xpZW50VjAgbG9hZGVyQ2xpZW50OwpJbmRleDogVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRmluZE1hdGNoZXMubW0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRmluZE1hdGNoZXMubW0JKHJldmlz
aW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0ZpbmRNYXRj
aGVzLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMTgsNyArMTE4LDcgQEAgc3RhdGljIHZvaWQgZGlk
R2V0SW1hZ2VGb3JNYXRjaFJlc3VsdChXSwogCiBURVNUKFdlYktpdCwgRmluZE1hdGNoZXMpCiB7
Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4
dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRX
SywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFBsYXRm
b3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogICAgIAogICAgIFdLUGFnZU5hdmln
YXRpb25DbGllbnRWMCBsb2FkZXJDbGllbnQ7CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdC9Gb3JjZVJlcGFpbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0L0ZvcmNlUmVwYWludC5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysr
IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0ZvcmNlUmVwYWludC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTUxLDcgKzUxLDcgQEAgc3RhdGljIHZvaWQgZGlkRmluaXNoTmF2aWdhdGlv
bihXS1BhZ2VSZQogCiBURVNUKFdlYktpdCwgRm9yY2VSZXBhaW50KQogewotICAgIFdLUmV0YWlu
UHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7Cisg
ICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENy
ZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2Vi
Vmlldyhjb250ZXh0LmdldCgpKTsKIAogICAgIFdLUGFnZU5hdmlnYXRpb25DbGllbnRWMCBsb2Fk
ZXJDbGllbnQ7CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9GcmFtZUhh
bmRsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQv
RnJhbWVIYW5kbGUuY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdC9GcmFtZUhhbmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ1LDcgKzQ1
LDcgQEAgc3RhdGljIHZvaWQgZGlkRmluaXNoTmF2aWdhdGlvbihXS1BhZ2VSZQogCiBURVNUKFdl
YktpdCwgRnJhbWVIYW5kbGUpCiB7Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250
ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRl
eHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24o
bnVsbHB0cikpOwogICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwog
CiAgICAgV0tQYWdlTmF2aWdhdGlvbkNsaWVudFYwIGxvYWRlckNsaWVudDsKSW5kZXg6IFRvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0ZyYW1lTUlNRVR5cGVIVE1MLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9GcmFtZU1JTUVUeXBlSFRN
TC5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0L0ZyYW1lTUlNRVR5cGVIVE1MLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTgsNyArNTgsNyBA
QCBzdGF0aWMgdm9pZCBkaWRGaW5pc2hOYXZpZ2F0aW9uKFdLUGFnZVJlCiAKIFRFU1QoV2ViS2l0
LCBGcmFtZU1JTUVUeXBlSFRNTCkKIHsKLSAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNv
bnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29u
dGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlv
bihudWxscHRyKSk7CiAgICAgUGxhdGZvcm1XZWJWaWV3IHdlYlZpZXcoY29udGV4dC5nZXQoKSk7
CiAKICAgICBXS1BhZ2VOYXZpZ2F0aW9uQ2xpZW50VjAgbG9hZGVyQ2xpZW50OwpJbmRleDogVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRnJhbWVNSU1FVHlwZVBORy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvRnJhbWVNSU1FVHlwZVBO
Ry5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0L0ZyYW1lTUlNRVR5cGVQTkcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw3ICs1Nyw3IEBA
IHN0YXRpYyB2b2lkIGRpZEZpbmlzaE5hdmlnYXRpb24oV0tQYWdlUmUKIAogVEVTVChXZWJLaXQs
IEZyYW1lTUlNRVR5cGVQTkcpCiB7Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250
ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRl
eHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24o
bnVsbHB0cikpOwogICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwog
CiAgICAgV0tQYWdlTmF2aWdhdGlvbkNsaWVudFYwIGxvYWRlckNsaWVudDsKSW5kZXg6IFRvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0dlb2xvY2F0aW9uLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9HZW9sb2NhdGlvbi5jcHAJKHJldmlz
aW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0dlb2xvY2F0
aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTYxLDcgKzE2MSw3IEBAIHN0cnVjdCBHZW9sb2Nh
dGlvbkJhc2ljU3RhdGVUcmFja2VyIDogR2UKIAogVEVTVChXZWJLaXQsIEdlb2xvY2F0aW9uQmFz
aWMpCiB7Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdL
Q29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQo
QWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogCiAg
ICAgR2VvbG9jYXRpb25CYXNpY1N0YXRlVHJhY2tlciBzdGF0ZVRyYWNrZXI7CiAgICAgc2V0dXBH
ZW9sb2NhdGlvblByb3ZpZGVyKGNvbnRleHQuZ2V0KCksICZzdGF0ZVRyYWNrZXIpOwpAQCAtMjAz
LDcgKzIwMyw3IEBAIHN0cnVjdCBHZW9sb2NhdGlvbkJhc2ljV2l0aEhpZ2hBY2N1cmFjeVMKIAog
VEVTVChXZWJLaXQsIEdlb2xvY2F0aW9uQmFzaWNXaXRoSGlnaEFjY3VyYWN5KQogewotICAgIFdL
UmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUo
KSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29u
dGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKIAogICAgIEdlb2xvY2F0aW9u
QmFzaWNXaXRoSGlnaEFjY3VyYWN5U3RhdGVUcmFja2VyIHN0YXRlVHJhY2tlcjsKICAgICBzZXR1
cEdlb2xvY2F0aW9uUHJvdmlkZXIoY29udGV4dC5nZXQoKSwgJnN0YXRlVHJhY2tlcik7CkBAIC0y
NTYsNyArMjU2LDcgQEAgc3RydWN0IEdlb2xvY2F0aW9uVHJhbnNpdGlvblRvSGlnaEFjY3VyYQog
CiBURVNUKFdlYktpdCwgR2VvbG9jYXRpb25UcmFuc2l0aW9uVG9IaWdoQWNjdXJhY3kpCiB7Ci0g
ICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENy
ZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywg
V0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogCiAgICAgR2VvbG9j
YXRpb25UcmFuc2l0aW9uVG9IaWdoQWNjdXJhY3lTdGF0ZVRyYWNrZXIgc3RhdGVUcmFja2VyOwog
ICAgIHNldHVwR2VvbG9jYXRpb25Qcm92aWRlcihjb250ZXh0LmdldCgpLCAmc3RhdGVUcmFja2Vy
KTsKQEAgLTMyMiw3ICszMjIsNyBAQCBzdGF0aWMgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoV0tQ
YWdlUmVmCiAKIFRFU1QoV2ViS2l0LCBHZW9sb2NhdGlvblRyYW5zaXRpb25Ub0xvd0FjY3VyYWN5
KQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0Nv
bnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFk
b3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKIAogICAg
IEdlb2xvY2F0aW9uVHJhbnNpdGlvblRvTG93QWNjdXJhY3lTdGF0ZVRyYWNrZXIgc3RhdGVUcmFj
a2VyOwogICAgIHNldHVwR2VvbG9jYXRpb25Qcm92aWRlcihjb250ZXh0LmdldCgpLCAmc3RhdGVU
cmFja2VyKTsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0xheW91dE1p
bGVzdG9uZXNXaXRoQWxsQ29udGVudEluRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0xheW91dE1pbGVzdG9uZXNXaXRoQWxsQ29udGVudElu
RnJhbWUuY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdC9MYXlvdXRNaWxlc3RvbmVzV2l0aEFsbENvbnRlbnRJbkZyYW1lLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNTMsNyArNTMsNyBAQCBzdGF0aWMgdm9pZCBkaWRGaW5pc2hOYXZpZ2F0aW9u
KFdLUGFnZVJlCiAKIFRFU1QoV2ViS2l0LCBMYXlvdXRNaWxlc3RvbmVzV2l0aEFsbENvbnRlbnRJ
bkZyYW1lKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdL
LCBXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250
ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsK
ICAgICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhjb250ZXh0LmdldCgpKTsKIAogICAgIFdLUGFn
ZU5hdmlnYXRpb25DbGllbnRWMyBsb2FkZXJDbGllbnQ7CkBAIC03NCw3ICs3NCw3IEBAIFRFU1Qo
V2ViS2l0LCBMYXlvdXRNaWxlc3RvbmVzV2l0aEFsbENvbnQKIAogVEVTVChXZWJLaXQsIEZpcnN0
VmlzdWFsbHlOb25FbXB0eUxheW91dEFmdGVyUGFnZUNhY2hlUmVzdG9yZSkKIHsKLSAgICBXS1Jl
dGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlKCkp
OworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRl
eHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAKICAgICBXS0NvbnRleHRTZXRD
YWNoZU1vZGVsKGNvbnRleHQuZ2V0KCksIGtXS0NhY2hlTW9kZWxQcmltYXJ5V2ViQnJvd3Nlcik7
IC8vIEVuYWJsZXMgdGhlIFBhZ2UgQ2FjaGUuCiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0L0xvYWRBbHRlcm5hdGVIVE1MU3RyaW5nV2l0aE5vbkRpcmVjdG9yeVVSTC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvTG9hZEFs
dGVybmF0ZUhUTUxTdHJpbmdXaXRoTm9uRGlyZWN0b3J5VVJMLmNwcAkocmV2aXNpb24gMjM5NTg1
KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvTG9hZEFsdGVybmF0ZUhUTUxT
dHJpbmdXaXRoTm9uRGlyZWN0b3J5VVJMLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDcsNyArNDcs
NyBAQCBzdGF0aWMgdm9pZCBkaWRGaW5pc2hOYXZpZ2F0aW9uKFdLUGFnZVJlCiAKIHN0YXRpYyB2
b2lkIGxvYWRBbHRlcm5hdGVIVE1MU3RyaW5nKFdLVVJMUmVmIGJhc2VVUkwsIFdLVVJMUmVmIHVu
cmVhY2hhYmxlVVJMKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChB
ZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVm
PiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxw
dHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhjb250ZXh0LmdldCgpKTsKIAogICAg
IFdLUGFnZU5hdmlnYXRpb25DbGllbnRWMCBsb2FkZXJDbGllbnQ7CkluZGV4OiBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9Mb2FkUGFnZU9uQ3Jhc2guY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0xvYWRQYWdlT25DcmFzaC5jcHAJKHJl
dmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0xvYWRQ
YWdlT25DcmFzaC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5LDcgKzM5LDcgQEAgc3RhdGljIHZv
aWQgZGlkRmluaXNoTG9hZChXS1BhZ2VSZWYsIFdLTgogY2xhc3MgV2ViS2l0MkNyYXNoTG9hZGVy
IHsKIHB1YmxpYzoKICAgICBXZWJLaXQyQ3Jhc2hMb2FkZXIoKQotICAgICAgICA6IGNvbnRleHQo
QWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlKCkpCisgICAgICAgIDogY29udGV4dChBZG9wdFdLLCBX
S0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSkKICAgICAgICAgLCB3ZWJW
aWV3KGNvbnRleHQuZ2V0KCkpCiAgICAgICAgICwgdXJsKGFkb3B0V0soV0tVUkxDcmVhdGVXaXRo
VVRGOENTdHJpbmcoImFib3V0OmJsYW5rIikpKQogICAgICAgICAsIGZpcnN0U3VjY2Vzc2Z1bExv
YWQoZmFsc2UpCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9NZW51VHlw
ZXNGb3JNb3VzZUV2ZW50cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQvTWVudVR5cGVzRm9yTW91c2VFdmVudHMuY3BwCShyZXZpc2lvbiAyMzk1ODUp
CisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9NZW51VHlwZXNGb3JNb3VzZUV2
ZW50cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUzLDcgKzUzLDcgQEAgc3RhdGljIHZvaWQgc2V0
UGFnZUxvYWRlckNsaWVudChXS1BhZ2VSZQogCiBzdGF0aWMgdm9pZCBidWlsZEFuZFBlcmZvcm1U
ZXN0KFdLRXZlbnRNb3VzZUJ1dHRvbiBidXR0b24sIFdLRXZlbnRNb2RpZmllcnMgbW9kaWZpZXJz
LCBjb25zdCBjaGFyKiBleHBlY3RlZEJ1dHRvbiwgY29uc3QgY2hhciogZXhwZWN0ZWRNZW51VHlw
ZSkKIHsKLSAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tD
b250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChB
ZG9wdFdLLCBXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAgICAg
UGxhdGZvcm1XZWJWaWV3IHdlYlZpZXcoY29udGV4dC5nZXQoKSk7CiAgICAgc2V0UGFnZUxvYWRl
ckNsaWVudCh3ZWJWaWV3LnBhZ2UoKSk7CiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0L01vZGFsQWxlcnRzU1BJLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdC9Nb2RhbEFsZXJ0c1NQSS5jcHAJKHJldmlzaW9uIDIzOTU4NSkK
KysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L01vZGFsQWxlcnRzU1BJLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTIyLDcgKzEyMiw3IEBAIHN0YXRpYyBXS1BhZ2VSZWYgY3JlYXRl
TmV3UGFnZShXS1BhZ2VSZWYKIAogVEVTVChXZWJLaXQsIE1vZGFsQWxlcnRzU1BJKQogewotICAg
IFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3Jl
YXRlKCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0so
V0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFBsYXRmb3Jt
V2ViVmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogCiAgICAgV0tQYWdlVUlDbGllbnRWNSB1
aUNsaWVudDsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L05hdmlnYXRp
b25DbGllbnREZWZhdWx0Q3J5cHRvLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdC9OYXZpZ2F0aW9uQ2xpZW50RGVmYXVsdENyeXB0by5jcHAJKHJldmlz
aW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L05hdmlnYXRp
b25DbGllbnREZWZhdWx0Q3J5cHRvLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTYsNyArNTYsNyBA
QCBzdGF0aWMgdm9pZCBkZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uUmVzCiAKIFRFU1QoV2ViS2l0
LCBOYXZpZ2F0aW9uQ2xpZW50RGVmYXVsdENyeXB0bykKIHsKLSAgICBhdXRvIGNvbnRleHQgPSBh
ZG9wdFdLKFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBhdXRvIGNvbnRleHQgPSBhZG9wdFdLKFdL
Q29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdl
YlZpZXcgd2ViVmlldyhjb250ZXh0LmdldCgpKTsKIAogICAgIC8vIFRoZSBuYXZpZ2F0aW9uQ2xp
ZW50IHF1aXRlIGV4cGxpY2l0bHkgZG9lcyAqbm90KiBoYXZlIGEgY29weVdlYkNyeXB0b01hc3Rl
cktleSBjYWxsYmFjaywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1Bh
Z2VHcm91cC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXQvUGFnZUdyb3VwLmNwcAkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQvUGFnZUdyb3VwLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDAsNyArNDAs
NyBAQCBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSSB7CiBURVNUKFBhZ2VHcm91cCwgRGVmYXVsdFVz
ZXJDb250ZW50Q29udHJvbGxlcikKIHsKICAgICBhdXRvIHBhZ2VDb25maWd1cmF0aW9uID0gYWRv
cHRXSyhXS1BhZ2VDb25maWd1cmF0aW9uQ3JlYXRlKCkpOwotICAgIGF1dG8gY29udGV4dCA9IGFk
b3B0V0soV0tDb250ZXh0Q3JlYXRlKCkpOworICAgIGF1dG8gY29udGV4dCA9IGFkb3B0V0soV0tD
b250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFdLUGFnZUNvbmZp
Z3VyYXRpb25TZXRDb250ZXh0KHBhZ2VDb25maWd1cmF0aW9uLmdldCgpLCBjb250ZXh0LmdldCgp
KTsKICAgICBhdXRvIHBhZ2VHcm91cCA9IGFkb3B0V0soV0tQYWdlR3JvdXBDcmVhdGVXaXRoSWRl
bnRpZmllcihVdGlsOjp0b1dLKCJUZXN0UGFnZUdyb3VwIikuZ2V0KCkpKTsKICAgICBXS1BhZ2VD
b25maWd1cmF0aW9uU2V0UGFnZUdyb3VwKHBhZ2VDb25maWd1cmF0aW9uLmdldCgpLCBwYWdlR3Jv
dXAuZ2V0KCkpOwpAQCAtNTgsNyArNTgsNyBAQCBURVNUKFBhZ2VHcm91cCwgRGVmYXVsdFVzZXJD
b250ZW50Q29udHJvCiBURVNUKFBhZ2VHcm91cCwgQ3VzdG9tVXNlckNvbnRlbnRDb250cm9sbGVy
KQogewogICAgIGF1dG8gcGFnZUNvbmZpZ3VyYXRpb24gPSBhZG9wdFdLKFdLUGFnZUNvbmZpZ3Vy
YXRpb25DcmVhdGUoKSk7Ci0gICAgYXV0byBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVh
dGUoKSk7CisgICAgYXV0byBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVhdGVXaXRoQ29u
ZmlndXJhdGlvbihudWxscHRyKSk7CiAgICAgV0tQYWdlQ29uZmlndXJhdGlvblNldENvbnRleHQo
cGFnZUNvbmZpZ3VyYXRpb24uZ2V0KCksIGNvbnRleHQuZ2V0KCkpOwogICAgIGF1dG8gcGFnZUdy
b3VwID0gYWRvcHRXSyhXS1BhZ2VHcm91cENyZWF0ZVdpdGhJZGVudGlmaWVyKFV0aWw6OnRvV0so
IlRlc3RQYWdlR3JvdXAiKS5nZXQoKSkpOwogICAgIFdLUGFnZUNvbmZpZ3VyYXRpb25TZXRQYWdl
R3JvdXAocGFnZUNvbmZpZ3VyYXRpb24uZ2V0KCksIHBhZ2VHcm91cC5nZXQoKSk7CkluZGV4OiBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9QYWdlTG9hZEJhc2ljLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9QYWdlTG9hZEJhc2ljLmNw
cAkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQv
UGFnZUxvYWRCYXNpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwOCw3ICsxMDgsNyBAQCBURVNU
KFdlYktpdCwgUGFnZUxvYWRCYXNpYykKIHsKICAgICBTdGF0ZSBzdGF0ZTsKIAotICAgIFdLUmV0
YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7
CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4
dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcg
d2ViVmlldyhjb250ZXh0LmdldCgpKTsKIAogICAgIFdLUGFnZU5hdmlnYXRpb25DbGllbnRWMCBs
b2FkZXJDbGllbnQ7CkBAIC0xNDAsNyArMTQwLDcgQEAgVEVTVChXZWJLaXQsIFBhZ2VMb2FkQmFz
aWMpCiAKIFRFU1QoV2ViS2l0LCBQYWdlUmVsb2FkKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29u
dGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRh
aW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhD
b25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhjb250
ZXh0LmdldCgpKTsKIAogICAgIC8vIFJlbG9hZCB0ZXN0IGJlZm9yZSB1cmwgbG9hZGluZy4KQEAg
LTE2MCw3ICsxNjAsNyBAQCBURVNUKFdlYktpdCwgUGFnZVJlbG9hZCkKIAogVEVTVChXZWJLaXQs
IFBhZ2VMb2FkVHdpY2VBbmRSZWxvYWQpCiB7Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVm
PiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxX
S0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3Vy
YXRpb24obnVsbHB0cikpOwogICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0
KCkpOwogCiAgICAgdGVzdDFEb25lID0gZmFsc2U7CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdC9QYWdlTG9hZERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZUZvckZyYW1l
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9QYWdl
TG9hZERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZUZvckZyYW1lLmNwcAkocmV2aXNpb24gMjM5
NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUGFnZUxvYWREaWRDaGFu
Z2VMb2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU2LDcg
KzU2LDcgQEAgc3RhdGljIHZvaWQgZGlkU2FtZURvY3VtZW50TmF2aWdhdGlvbihXSwogCiBURVNU
KFdlYktpdCwgUGFnZUxvYWREaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2UpCiB7Ci0gICAgV0tS
ZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZSgp
KTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250
ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFBsYXRmb3JtV2ViVmll
dyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogCiAgICAgV0tQYWdlTmF2aWdhdGlvbkNsaWVudFYw
IGxvYWRlckNsaWVudDsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1Bl
bmRpbmdBUElSZXF1ZXN0VVJMLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdC9QZW5kaW5nQVBJUmVxdWVzdFVSTC5jcHAJKHJldmlzaW9uIDIzOTU4NSkK
KysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1BlbmRpbmdBUElSZXF1ZXN0VVJM
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzgsNyArMzgsNyBAQCBzdGF0aWMgYm9vbCBkb25lOwog
CiBURVNUKFdlYktpdCwgUGVuZGluZ0FQSVJlcXVlc3RVUkwpCiB7Ci0gICAgV0tSZXRhaW5QdHI8
V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBX
S1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRl
V2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3
KGNvbnRleHQuZ2V0KCkpOwogCiAgICAgV0tQYWdlTmF2aWdhdGlvbkNsaWVudFYwIGxvYWRlckNs
aWVudDsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1ByZXZlbnRFbXB0
eVVzZXJBZ2VudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQvUHJldmVudEVtcHR5VXNlckFnZW50LmNwcAkocmV2aXNpb24gMjM5NTg1KQorKysgVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUHJldmVudEVtcHR5VXNlckFnZW50LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNjAsNyArNjAsNyBAQCBzdGF0aWMgdm9pZCBkaWRSdW5KYXZhU2Ny
aXB0KFdLU2VyaWFsaXplCiAKIFRFU1QoV2ViS2l0LCBQcmV2ZW50RW1wdHlVc2VyQWdlbnQpCiB7
Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4
dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRX
SywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFBsYXRm
b3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogCiAgICAgV0tQYWdlU2V0Q3VzdG9t
VXNlckFnZW50KHdlYlZpZXcucGFnZSgpLCBXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygi
IikpOwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUHJpdmF0ZUJyb3dz
aW5nUHVzaFN0YXRlTm9IaXN0b3J5Q2FsbGJhY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1ByaXZhdGVCcm93c2luZ1B1c2hTdGF0ZU5vSGlzdG9y
eUNhbGxiYWNrLmNwcAkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQvUHJpdmF0ZUJyb3dzaW5nUHVzaFN0YXRlTm9IaXN0b3J5Q2FsbGJhY2suY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC01MSw3ICs1MSw3IEBAIHN0YXRpYyB2b2lkIGRpZE5hdmlnYXRl
V2l0aE5hdmlnYXRpb25EYXQKIAogVEVTVChXZWJLaXQsIFByaXZhdGVCcm93c2luZ1B1c2hTdGF0
ZU5vSGlzdG9yeUNhbGxiYWNrKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29u
dGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250
ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9u
KG51bGxwdHIpKTsKIAogICAgIFdLQ29udGV4dEhpc3RvcnlDbGllbnRWMCBoaXN0b3J5Q2xpZW50
OwogICAgIG1lbXNldCgmaGlzdG9yeUNsaWVudCwgMCwgc2l6ZW9mKGhpc3RvcnlDbGllbnQpKTsK
SW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1Byb2Nlc3NEaWRUZXJtaW5h
dGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1By
b2Nlc3NEaWRUZXJtaW5hdGUuY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdC9Qcm9jZXNzRGlkVGVybWluYXRlLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNzgsNyArNzgsNyBAQCBzdGF0aWMgdm9pZCB3ZWJQcm9jZXNzQ3Jhc2hlZChXS1BhZ2VS
ZWYgCiAKIFRFU1QoV2ViS2l0LCBQcm9jZXNzRGlkVGVybWluYXRlUmVxdWVzdGVkQnlDbGllbnQp
CiB7Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29u
dGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRv
cHRXSywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFBs
YXRmb3JtV2ViVmlldyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogCiAgICAgV0tQYWdlTmF2aWdh
dGlvbkNsaWVudFYxIG5hdmlnYXRpb25DbGllbnQ7CkBAIC0xMDIsNyArMTAyLDcgQEAgVEVTVChX
ZWJLaXQsIFByb2Nlc3NEaWRUZXJtaW5hdGVSZXF1ZXN0ZQogCiBURVNUKFdlYktpdCwgUHJvY2Vz
c0RpZFRlcm1pbmF0ZVdpdGhSZWFzb25DcmFzaCkKIHsKLSAgICBXS1JldGFpblB0cjxXS0NvbnRl
eHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0YWlu
UHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGVXaXRoQ29u
ZmlndXJhdGlvbihudWxscHRyKSk7CiAgICAgUGxhdGZvcm1XZWJWaWV3IHdlYlZpZXcoY29udGV4
dC5nZXQoKSk7CiAKICAgICBXS1BhZ2VOYXZpZ2F0aW9uQ2xpZW50VjEgbmF2aWdhdGlvbkNsaWVu
dDsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1JlbG9hZFBhZ2VBZnRl
ckNyYXNoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dC9SZWxvYWRQYWdlQWZ0ZXJDcmFzaC5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1JlbG9hZFBhZ2VBZnRlckNyYXNoLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNjUsNyArNjUsNyBAQCBzdGF0aWMgdm9pZCBkaWRDcmFzaChXS1BhZ2VSZWYg
cGFnZSwgY29uCiAKIFRFU1QoV2ViS2l0LCBSZWxvYWRQYWdlQWZ0ZXJDcmFzaCkKIHsKLSAgICBX
S1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRl
KCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0Nv
bnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAgICAgUGxhdGZvcm1XZWJW
aWV3IHdlYlZpZXcoY29udGV4dC5nZXQoKSk7CiAKICAgICBXS1BhZ2VOYXZpZ2F0aW9uQ2xpZW50
VjAgbG9hZGVyQ2xpZW50OwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQv
UmVzaXplUmV2ZXJzZVBhZ2luYXRlZFdlYlZpZXcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1Jlc2l6ZVJldmVyc2VQYWdpbmF0ZWRXZWJWaWV3LmNw
cAkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQv
UmVzaXplUmV2ZXJzZVBhZ2luYXRlZFdlYlZpZXcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02MSw3
ICs2MSw3IEBAIHN0YXRpYyB2b2lkIGRpZExheW91dChXS1BhZ2VSZWYgcGFnZSwgV0sKIAogVEVT
VChXZWJLaXQsIFJlc2l6ZVJldmVyc2VQYWdpbmF0ZWRXZWJWaWV3KQogewotICAgIFdLUmV0YWlu
UHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7Cisg
ICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENy
ZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2Vi
Vmlldyhjb250ZXh0LmdldCgpKTsKIAogICAgIFdLUGFnZU5hdmlnYXRpb25DbGllbnRWMyBsb2Fk
ZXJDbGllbnQ7CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9SZXNpemVX
aW5kb3dBZnRlckNyYXNoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdC9SZXNpemVXaW5kb3dBZnRlckNyYXNoLmNwcAkocmV2aXNpb24gMjM5NTg1KQor
KysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUmVzaXplV2luZG93QWZ0ZXJDcmFz
aC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc1LDcgKzc1LDcgQEAgc3RhdGljIHZvaWQgZGlkQ3Jh
c2goV0tQYWdlUmVmIHBhZ2UsIGNvbgogCiBURVNUKFdlYktpdCwgUmVzaXplV2luZG93QWZ0ZXJD
cmFzaCkKIHsKLSAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywg
V0tDb250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4
dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAg
ICAgVGVzdFN0YXRlc0RhdGEgc3RhdGVzKGNvbnRleHQuZ2V0KCkpOwogCiAgICAgV0tQYWdlTmF2
aWdhdGlvbkNsaWVudFYwIGxvYWRlckNsaWVudDsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0L1Jlc3RvcmVTZXNzaW9uU3RhdGUuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1Jlc3RvcmVTZXNzaW9uU3RhdGUuY3BwCShyZXZp
c2lvbiAyMzk1ODUpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9SZXN0b3Jl
U2Vzc2lvblN0YXRlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODUsNyArODUsNyBAQCBzdGF0aWMg
V0tSZXRhaW5QdHI8V0tEYXRhUmVmPiBjcmVhdGVTZXNzCiAKIFRFU1QoV2ViS2l0LCBSZXN0b3Jl
U2Vzc2lvblN0YXRlQ29udGFpbmluZ1Njcm9sbFJlc3RvcmF0aW9uRGVmYXVsdCkKIHsKLSAgICBX
S1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRl
KCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0Nv
bnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAKICAgICBQbGF0Zm9ybVdl
YlZpZXcgd2ViVmlldyhjb250ZXh0LmdldCgpKTsKICAgICBzZXRQYWdlTG9hZGVyQ2xpZW50KHdl
YlZpZXcucGFnZSgpKTsKQEAgLTEwMyw3ICsxMDMsNyBAQCBURVNUKFdlYktpdCwgUmVzdG9yZVNl
c3Npb25TdGF0ZUNvbnRhaW5pCiAKIFRFU1QoV2ViS2l0LCBSZXN0b3JlU2Vzc2lvblN0YXRlQ29u
dGFpbmluZ1Njcm9sbFJlc3RvcmF0aW9uRGVmYXVsdFdpdGhBc3luY1BvbGljeURlbGVnYXRlcykK
IHsKLSAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250
ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9w
dFdLLCBXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAKICAgICBQ
bGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhjb250ZXh0LmdldCgpKTsKICAgICBzZXRQYWdlTG9hZGVy
Q2xpZW50KHdlYlZpZXcucGFnZSgpKTsKQEAgLTEyOCw3ICsxMjgsNyBAQCBURVNUKFdlYktpdCwg
UmVzdG9yZVNlc3Npb25TdGF0ZUNvbnRhaW5pCiAKIFRFU1QoV2ViS2l0LCBSZXN0b3JlU2Vzc2lv
blN0YXRlQWZ0ZXJDbG9zZSkKIHsKLSAgICBhdXRvIGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4
dENyZWF0ZSgpKTsKKyAgICBhdXRvIGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZVdp
dGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhj
b250ZXh0LmdldCgpKTsKICAgICBzZXRQYWdlTG9hZGVyQ2xpZW50KHdlYlZpZXcucGFnZSgpKTsK
ICAgICBhdXRvIGRhdGEgPSBjcmVhdGVTZXNzaW9uU3RhdGVEYXRhKGNvbnRleHQuZ2V0KCkpOwpJ
bmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUmVzdG9yZVNlc3Npb25TdGF0
ZUNvbnRhaW5pbmdGb3JtRGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQvUmVzdG9yZVNlc3Npb25TdGF0ZUNvbnRhaW5pbmdGb3JtRGF0YS5jcHAJ
KHJldmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1Jl
c3RvcmVTZXNzaW9uU3RhdGVDb250YWluaW5nRm9ybURhdGEuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC03Miw3ICs3Miw3IEBAIHN0YXRpYyBXS1JldGFpblB0cjxXS0RhdGFSZWY+IGNyZWF0ZVNlc3MK
IAogVEVTVChXZWJLaXQsIFJlc3RvcmVTZXNzaW9uU3RhdGVDb250YWluaW5nRm9ybURhdGEpCiB7
Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4
dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRX
SywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogCiAgICAgLy8g
RklYTUU6IE9uY2UgPHJkYXI6Ly9wcm9ibGVtLzg3MDg0MzU+IGlzIGZpeGVkLCB3ZSBjYW4gbW92
ZSB0aGUgY3JlYXRpb24gb2YgdGhpcwogICAgIC8vIFBsYXRmb3JtV2ViVmlldyBhZnRlciB0aGUg
Y2FsbCB0byBjcmVhdGVTZXNzaW9uU3RhZXRDb250YWluaW5nRm9ybURhdGEuIFVudGlsIHRoZW4s
IGl0IG11c3QKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1Njcm9sbFBp
bm5pbmdCZWhhdmlvcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0L1Njcm9sbFBpbm5pbmdCZWhhdmlvcnMuY3BwCShyZXZpc2lvbiAyMzk1ODUpCisr
KyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9TY3JvbGxQaW5uaW5nQmVoYXZpb3Jz
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzEsNyArNzEsNyBAQCBzdGF0aWMgdm9pZCBkaWRGaW5p
c2hOYXZpZ2F0aW9uKFdLUGFnZVJlCiAKIFRFU1QoV2ViS2l0LCBTY3JvbGxQaW5uaW5nQmVoYXZp
b3JzKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBX
S0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0
KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKIAog
ICAgIC8vIFR1cm4gb2ZmIHRocmVhZGVkIHNjcm9sbGluZzsgc3luY2hyb25vdXNseSB3YWl0aW5n
IGZvciB0aGUgbWFpbiB0aHJlYWQgc2Nyb2xsIHBvc2l0aW9uIHRvCiAgICAgLy8gdXBkYXRlIHVz
aW5nIFdLUGFnZUZvcmNlUmVwYWludCB3b3VsZCBiZSBiZXR0ZXIsIGJ1dCBmb3Igc29tZSByZWFz
b24gZG9lc24ndCBibG9jayB1bnRpbApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQvU2hvdWxkS2VlcEN1cnJlbnRCYWNrRm9yd2FyZExpc3RJdGVtSW5MaXN0LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9TaG91bGRLZWVwQ3Vy
cmVudEJhY2tGb3J3YXJkTGlzdEl0ZW1Jbkxpc3QuY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9TaG91bGRLZWVwQ3VycmVudEJhY2tGb3J3
YXJkTGlzdEl0ZW1Jbkxpc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjMsNyArMTIzLDcgQEAg
c3RhdGljIHZvaWQgc2V0UGFnZUxvYWRlckNsaWVudChXS1BhZ2VSZQogCiBURVNUKFdlYktpdCwg
U2hvdWxkS2VlcEN1cnJlbnRCYWNrRm9yd2FyZExpc3RJdGVtSW5MaXN0KQogewotICAgIFdLUmV0
YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7
CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4
dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKIAogICAgIFBsYXRmb3JtV2ViVmll
dyB3ZWJWaWV3KGNvbnRleHQuZ2V0KCkpOwogICAgIHNldFBhZ2VMb2FkZXJDbGllbnQod2ViVmll
dy5wYWdlKCkpOwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvVGVybWlu
YXRlVHdpY2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0L1Rlcm1pbmF0ZVR3aWNlLmNwcAkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXQvVGVybWluYXRlVHdpY2UuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC00MSw3ICs0MSw3IEBAIHN0YXRpYyB2b2lkIGRpZEZpbmlzaE5hdmlnYXRpb24oV0tQYWdlUmUK
IAogVEVTVChXZWJLaXQsIFRlcm1pbmF0ZVR3aWNlKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29u
dGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRh
aW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhD
b25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhjb250
ZXh0LmdldCgpKTsKIAogICAgIFdLUGFnZU5hdmlnYXRpb25DbGllbnRWMCBsb2FkZXJDbGllbnQ7
CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9Vc2VyTWVkaWEuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1VzZXJNZWRpYS5j
cHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
L1VzZXJNZWRpYS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY5LDcgKzY5LDcgQEAgc3RhdGljIHZv
aWQgY2hlY2tVc2VyTWVkaWFQZXJtaXNzaW9uQ2FsbAogCiBURVNUKFdlYktpdCwgVXNlck1lZGlh
QmFzaWMpCiB7Ci0gICAgYXV0byBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVhdGUoKSk7
CisgICAgYXV0byBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJh
dGlvbihudWxscHRyKSk7CiAKICAgICBXS1JldGFpblB0cjxXS1BhZ2VHcm91cFJlZj4gcGFnZUdy
b3VwKEFkb3B0V0ssIFdLUGFnZUdyb3VwQ3JlYXRlV2l0aElkZW50aWZpZXIoVXRpbDo6dG9XSygi
R2V0VXNlck1lZGlhIikuZ2V0KCkpKTsKICAgICBXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2Vz
ID0gV0tQYWdlR3JvdXBHZXRQcmVmZXJlbmNlcyhwYWdlR3JvdXAuZ2V0KCkpOwpAQCAtMTA1LDcg
KzEwNSw3IEBAIHN0YXRpYyB2b2lkIGRpZENyYXNoQ2FsbGJhY2soV0tQYWdlUmVmLCAKIAogVEVT
VChXZWJLaXQsIE9uRGV2aWNlQ2hhbmdlQ3Jhc2gpCiB7Ci0gICAgYXV0byBjb250ZXh0ID0gYWRv
cHRXSyhXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgYXV0byBjb250ZXh0ID0gYWRvcHRXSyhXS0Nv
bnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAKICAgICBXS1JldGFpblB0
cjxXS1BhZ2VHcm91cFJlZj4gcGFnZUdyb3VwKEFkb3B0V0ssIFdLUGFnZUdyb3VwQ3JlYXRlV2l0
aElkZW50aWZpZXIoVXRpbDo6dG9XSygiR2V0VXNlck1lZGlhIikuZ2V0KCkpKTsKICAgICBXS1By
ZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzID0gV0tQYWdlR3JvdXBHZXRQcmVmZXJlbmNlcyhwYWdl
R3JvdXAuZ2V0KCkpOwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvV0tQ
YWdlQ29uZmlndXJhdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQvV0tQYWdlQ29uZmlndXJhdGlvbi5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysr
IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1dLUGFnZUNvbmZpZ3VyYXRpb24uY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC02Nyw3ICs2Nyw3IEBAIHN0YXRpYyB2b2lkIHNldFBhZ2VMb2Fk
ZXJDbGllbnQoV0tQYWdlUmUKIFRFU1QoV2ViS2l0LCBXS1BhZ2VDb25maWd1cmF0aW9uQmFzaWMp
CiB7CiAgICAgV0tSZXRhaW5QdHI8V0tQYWdlQ29uZmlndXJhdGlvblJlZj4gY29uZmlndXJhdGlv
biA9IGFkb3B0V0soV0tQYWdlQ29uZmlndXJhdGlvbkNyZWF0ZSgpKTsKLSAgICBXS1JldGFpblB0
cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZSgpKTsKKyAg
ICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENy
ZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBXS1BhZ2VDb25maWd1cmF0aW9u
U2V0Q29udGV4dChjb25maWd1cmF0aW9uLmdldCgpLCBjb250ZXh0LmdldCgpKTsKICAgICAKICAg
ICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhjb25maWd1cmF0aW9uLmdldCgpKTsKQEAgLTg2LDcg
Kzg2LDcgQEAgVEVTVChXZWJLaXQsIFdLUGFnZUNvbmZpZ3VyYXRpb25CYXNpYykKIFRFU1QoV2Vi
S2l0LCBXS1BhZ2VDb25maWd1cmF0aW9uQmFzaWNXaXRoRGF0YVN0b3JlKQogewogICAgIFdLUmV0
YWluUHRyPFdLUGFnZUNvbmZpZ3VyYXRpb25SZWY+IGNvbmZpZ3VyYXRpb24gPSBhZG9wdFdLKFdL
UGFnZUNvbmZpZ3VyYXRpb25DcmVhdGUoKSk7Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVm
PiBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8
V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmln
dXJhdGlvbihudWxscHRyKSk7CiAgICAgV0tQYWdlQ29uZmlndXJhdGlvblNldENvbnRleHQoY29u
ZmlndXJhdGlvbi5nZXQoKSwgY29udGV4dC5nZXQoKSk7CiAgICAgV0tSZXRhaW5QdHI8V0tXZWJz
aXRlRGF0YVN0b3JlUmVmPiB3ZWJzaXRlRGF0YVN0b3JlID0gV0tXZWJzaXRlRGF0YVN0b3JlR2V0
RGVmYXVsdERhdGFTdG9yZSgpOwogICAgIFdLUGFnZUNvbmZpZ3VyYXRpb25TZXRXZWJzaXRlRGF0
YVN0b3JlKGNvbmZpZ3VyYXRpb24uZ2V0KCksIHdlYnNpdGVEYXRhU3RvcmUuZ2V0KCkpOwpAQCAt
MTA4LDcgKzEwOCw3IEBAIFRFU1QoV2ViS2l0LCBXS1BhZ2VDb25maWd1cmF0aW9uQmFzaWNXaXQK
IFRFU1QoV2ViS2l0LCBXS1BhZ2VDb25maWd1cmF0aW9uQmFzaWNXaXRoTm9uUGVyc2lzdGVudERh
dGFTdG9yZSkKIHsKICAgICBXS1JldGFpblB0cjxXS1BhZ2VDb25maWd1cmF0aW9uUmVmPiBjb25m
aWd1cmF0aW9uID0gYWRvcHRXSyhXS1BhZ2VDb25maWd1cmF0aW9uQ3JlYXRlKCkpOwotICAgIFdL
UmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRl
KCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tD
b250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogICAgIFdLUGFnZUNvbmZp
Z3VyYXRpb25TZXRDb250ZXh0KGNvbmZpZ3VyYXRpb24uZ2V0KCksIGNvbnRleHQuZ2V0KCkpOwog
ICAgIFdLUmV0YWluUHRyPFdLV2Vic2l0ZURhdGFTdG9yZVJlZj4gd2Vic2l0ZURhdGFTdG9yZSA9
IGFkb3B0V0soV0tXZWJzaXRlRGF0YVN0b3JlQ3JlYXRlTm9uUGVyc2lzdGVudERhdGFTdG9yZSgp
KTsKICAgICBXS1BhZ2VDb25maWd1cmF0aW9uU2V0V2Vic2l0ZURhdGFTdG9yZShjb25maWd1cmF0
aW9uLmdldCgpLCB3ZWJzaXRlRGF0YVN0b3JlLmdldCgpKTsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0L1dLUGFnZUNvcHlTZXNzaW9uU3RhdGVXaXRoRmlsdGVyaW5nLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9XS1BhZ2VD
b3B5U2Vzc2lvblN0YXRlV2l0aEZpbHRlcmluZy5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1dLUGFnZUNvcHlTZXNzaW9uU3RhdGVXaXRo
RmlsdGVyaW5nLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA1LDcgKzEwNSw3IEBAIHN0YXRpYyB2
b2lkIGNyZWF0ZVNlc3Npb25TdGF0ZXMoV0tDb250ZXgKIAogVEVTVChXZWJLaXQsIFdLUGFnZUNv
cHlTZXNzaW9uU3RhdGVXaXRoRmlsdGVyaW5nKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4
dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7CisgICAgV0tSZXRhaW5Q
dHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZVdpdGhDb25m
aWd1cmF0aW9uKG51bGxwdHIpKTsKIAogICAgIGNyZWF0ZVNlc3Npb25TdGF0ZXMoY29udGV4dC5n
ZXQoKSk7CiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1dLUGFnZUdl
dFNjYWxlRmFjdG9yTm90WmVyby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQvV0tQYWdlR2V0U2NhbGVGYWN0b3JOb3RaZXJvLmNwcAkocmV2aXNpb24g
MjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvV0tQYWdlR2V0U2Nh
bGVGYWN0b3JOb3RaZXJvLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNyArNjUsNyBAQCBzdGF0
aWMgV0tSZXRhaW5QdHI8V0tTZXNzaW9uU3RhdGVSZWY+IGNyCiAKIFRFU1QoV2ViS2l0LCBXS1Bh
Z2VHZXRTY2FsZUZhY3Rvck5vdFplcm8pCiB7Ci0gICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVm
PiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxX
S0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3Vy
YXRpb24obnVsbHB0cikpOwogCiAgICAgUGxhdGZvcm1XZWJWaWV3IHdlYlZpZXcoY29udGV4dC5n
ZXQoKSk7CiAgICAgc2V0UGFnZUxvYWRlckNsaWVudCh3ZWJWaWV3LnBhZ2UoKSk7CkluZGV4OiBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9XS1BhZ2VJc1BsYXlpbmdBdWRpby5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvV0tQYWdlSXNQ
bGF5aW5nQXVkaW8uY3BwCShyZXZpc2lvbiAyMzk1ODUpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdC9XS1BhZ2VJc1BsYXlpbmdBdWRpby5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTk2LDcgKzk2LDcgQEAgc3RhdGljIHZvaWQgc2V0VXBDbGllbnRzKFdLUGFnZVJlZiBwYWdlKQog
CiBURVNUKFdlYktpdCwgV0tQYWdlSXNQbGF5aW5nQXVkaW8pCiB7Ci0gICAgV0tSZXRhaW5QdHI8
V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVhdGUoKSk7CisgICAg
V0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVh
dGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2Vi
Vmlldyhjb250ZXh0LmdldCgpKTsKICAgICBzZXRVcENsaWVudHMod2ViVmlldy5wYWdlKCkpOwpA
QCAtMTE1LDcgKzExNSw3IEBAIFRFU1QoV2ViS2l0LCBXS1BhZ2VJc1BsYXlpbmdBdWRpbykKIAog
VEVTVChXZWJLaXQsIE1TRUlzUGxheWluZ0F1ZGlvKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29u
dGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0
YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlV2l0
aENvbmZpZ3VyYXRpb24obnVsbHB0cikpOwogCiAgICAgV0tSZXRhaW5QdHI8V0tQYWdlR3JvdXBS
ZWY+IHBhZ2VHcm91cChBZG9wdFdLLCBXS1BhZ2VHcm91cENyZWF0ZVdpdGhJZGVudGlmaWVyKFV0
aWw6OnRvV0soIk1TRUlzUGxheWluZ0F1ZGlvUGFnZUdyb3VwIikuZ2V0KCkpKTsKICAgICBXS1By
ZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzID0gV0tQYWdlR3JvdXBHZXRQcmVmZXJlbmNlcyhwYWdl
R3JvdXAuZ2V0KCkpOwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvV0tU
aHVtYm5haWxWaWV3Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0L1dLVGh1bWJuYWlsVmlldy5tbQkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvV0tUaHVtYm5haWxWaWV3Lm1tCSh3b3JraW5nIGNvcHkp
CkBAIC05Niw3ICs5Niw3IEBAIHN0YXRpYyB2b2lkIHNldFBhZ2VMb2FkZXJDbGllbnQoV0tQYWdl
UmUKIAogVEVTVChXZWJLaXQsIFdLVGh1bWJuYWlsVmlld0tlZXBTbmFwc2hvdFdoZW5SZW1vdmVk
RnJvbVN1cGVydmlldykKIHsKLSAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQg
PSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRS
ZWY+IGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51
bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhjb250ZXh0LmdldCgpKTsKICAg
ICBXS1ZpZXcgKndrVmlldyA9IHdlYlZpZXcucGxhdGZvcm1WaWV3KCk7CiAgICAgc2V0UGFnZUxv
YWRlckNsaWVudCh3ZWJWaWV3LnBhZ2UoKSk7CkBAIC0xNDIsNyArMTQyLDcgQEAgVEVTVChXZWJL
aXQsIFdLVGh1bWJuYWlsVmlld0tlZXBTbmFwc2hvdAogCiBURVNUKFdlYktpdCwgV0tUaHVtYm5h
aWxWaWV3TWF4aW11bVNuYXBzaG90U2l6ZSkKIHsKLSAgICBXS1JldGFpblB0cjxXS0NvbnRleHRS
ZWY+IGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0
cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZVdpdGhDb25m
aWd1cmF0aW9uKG51bGxwdHIpKTsKICAgICBQbGF0Zm9ybVdlYlZpZXcgd2ViVmlldyhjb250ZXh0
LmdldCgpKTsKICAgICBXS1ZpZXcgKndrVmlldyA9IHdlYlZpZXcucGxhdGZvcm1WaWV3KCk7CiAg
ICAgc2V0UGFnZUxvYWRlckNsaWVudCh3ZWJWaWV3LnBhZ2UoKSk7CkluZGV4OiBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9XZWJDb3JlU3RhdGlzdGljc1dpdGhOb1dlYlByb2Nlc3Mu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1dlYkNv
cmVTdGF0aXN0aWNzV2l0aE5vV2ViUHJvY2Vzcy5jcHAJKHJldmlzaW9uIDIzOTU4NSkKKysrIFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L1dlYkNvcmVTdGF0aXN0aWNzV2l0aE5vV2Vi
UHJvY2Vzcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzLDcgKzQzLDcgQEAgc3RhdGljIHZvaWQg
d2tDb250ZXh0R2V0U3RhdGlzdGljc0NhbGxiYQogCiBURVNUKFdlYktpdCwgV2ViQ29yZVN0YXRp
c3RpY3NXaXRoTm9XZWJQcm9jZXNzKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4g
Y29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0YWluUHRyPFdL
Q29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3Vy
YXRpb24obnVsbHB0cikpOwogICAgIAogICAgIFdLQ29udGV4dEdldFN0YXRpc3RpY3MoY29udGV4
dC5nZXQoKSwgMCwgd2tDb250ZXh0R2V0U3RhdGlzdGljc0NhbGxiYWNrKTsKICAgICAKSW5kZXg6
IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L21hYy9HZXRQSURBZnRlckFib3J0ZWRQ
cm9jZXNzTGF1bmNoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdC9tYWMvR2V0UElEQWZ0ZXJBYm9ydGVkUHJvY2Vzc0xhdW5jaC5jcHAJKHJldmlzaW9u
IDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L21hYy9HZXRQSURB
ZnRlckFib3J0ZWRQcm9jZXNzTGF1bmNoLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDIsNyArNDIs
NyBAQCBzdGF0aWMgdm9pZCBkaWRGaW5pc2hOYXZpZ2F0aW9uKFdLUGFnZVJlCiAKIFRFU1QoV2Vi
S2l0LCBHZXRQSURBZnRlckFib3J0ZWRQcm9jZXNzTGF1bmNoKQogewotICAgIFdLUmV0YWluUHRy
PFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBXS0NvbnRleHRDcmVhdGUoKSk7CisgICAg
V0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0KEFkb3B0V0ssIFdLQ29udGV4dENyZWF0
ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKIAogICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJW
aWV3KGNvbnRleHQuZ2V0KCkpOwogCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdC9tYWMvUmVzdG9yZVN0YXRlQWZ0ZXJUZXJtaW5hdGlvbi5tbQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9tYWMvUmVzdG9yZVN0YXRlQWZ0ZXJUZXJt
aW5hdGlvbi5tbQkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXQvbWFjL1Jlc3RvcmVTdGF0ZUFmdGVyVGVybWluYXRpb24ubW0JKHdvcmtpbmcgY29w
eSkKQEAgLTcxLDcgKzcxLDcgQEAgc3RhdGljIHZvaWQgZGlkQ3Jhc2goV0tQYWdlUmVmIHBhZ2Us
IGNvbgogCiBURVNUKFdlYktpdCwgUmVzdG9yZVN0YXRlQWZ0ZXJUZXJtaW5hdGlvbikKIHsKLSAg
ICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQoQWRvcHRXSywgV0tDb250ZXh0Q3Jl
YXRlKCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dChBZG9wdFdLLCBX
S0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAgICAgUGxhdGZvcm1X
ZWJWaWV3IHdlYlZpZXcoY29udGV4dC5nZXQoKSk7CiAKICAgICAvLyBBZGQgdmlldyB0byBhIFdp
bmRvdyBhbmQgbWFrZSBpdCB2aXNpYmxlLgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9Db21tYW5kQmFja0ZvcndhcmQubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db21tYW5kQmFja0ZvcndhcmQubW0JKHJl
dmlzaW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
Q29tbWFuZEJhY2tGb3J3YXJkLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMTYsNyArMTE2LDcgQEAg
cHVibGljOgogICAgIHsKICAgICAgICAgV2ViS2l0Ml9Db21tYW5kQmFja0ZvcndhcmRUZXN0OjpT
ZXRVcCgpOwogCi0gICAgICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFk
b3B0V0soV0tDb250ZXh0Q3JlYXRlKCkpOworICAgICAgICBXS1JldGFpblB0cjxXS0NvbnRleHRS
ZWY+IGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51
bGxwdHIpKTsKICAgICAgICAgV0tSZXRhaW5QdHI8V0tQYWdlQ29uZmlndXJhdGlvblJlZj4gY29u
ZmlndXJhdGlvbiA9IGFkb3B0V0soV0tQYWdlQ29uZmlndXJhdGlvbkNyZWF0ZSgpKTsgICAgICAg
IAogICAgICAgICBXS1BhZ2VDb25maWd1cmF0aW9uU2V0Q29udGV4dChjb25maWd1cmF0aW9uLmdl
dCgpLCBjb250ZXh0LmdldCgpKTsKIApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9GdWxsc2NyZWVuRGVsZWdhdGUubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9GdWxsc2NyZWVuRGVsZWdhdGUubW0JKHJldmlz
aW9uIDIzOTU4NSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvRnVs
bHNjcmVlbkRlbGVnYXRlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMTcsNyArMTE3LDcgQEAgVEVT
VChGdWxsc2NyZWVuLCBEZWxlZ2F0ZSkKIAogVEVTVChGdWxsc2NyZWVuLCBXS1ZpZXdEZWxlZ2F0
ZSkKIHsKLSAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdLKFdL
Q29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQg
PSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZVdpdGhDb25maWd1cmF0aW9uKG51bGxwdHIpKTsKICAg
ICBXS1JldGFpblB0cjxXS1BhZ2VHcm91cFJlZj4gcGFnZUdyb3VwKEFkb3B0V0ssIFdLUGFnZUdy
b3VwQ3JlYXRlV2l0aElkZW50aWZpZXIoVXRpbDo6dG9XSygiRnVsbHNjcmVlbkRlbGVnYXRlIiku
Z2V0KCkpKTsKICAgICBXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzID0gV0tQYWdlR3JvdXBH
ZXRQcmVmZXJlbmNlcyhwYWdlR3JvdXAuZ2V0KCkpOwogICAgIFdLUHJlZmVyZW5jZXNTZXRGdWxs
U2NyZWVuRW5hYmxlZChwcmVmZXJlbmNlcywgdHJ1ZSk7CkluZGV4OiBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL1BpY3R1cmVJblBpY3R1cmVEZWxlZ2F0ZS5tbQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1BpY3R1cmVJblBp
Y3R1cmVEZWxlZ2F0ZS5tbQkocmV2aXNpb24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9QaWN0dXJlSW5QaWN0dXJlRGVsZWdhdGUubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTIwMCw3ICsyMDAsNyBAQCBURVNUKFBpY3R1cmVJblBpY3R1cmUsIEF1ZGlvQ2Fu
bm90VG9nZ2xlCiAKIFRFU1QoUGljdHVyZUluUGljdHVyZSwgV0tQYWdlVUlDbGllbnQpCiB7Ci0g
ICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRD
cmVhdGUoKSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRX
SyhXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAgICAgV0tSZXRh
aW5QdHI8V0tQYWdlR3JvdXBSZWY+IHBhZ2VHcm91cChBZG9wdFdLLCBXS1BhZ2VHcm91cENyZWF0
ZVdpdGhJZGVudGlmaWVyKFV0aWw6OnRvV0soIlBpY3R1cmVJblBpY3R1cmUiKS5nZXQoKSkpOwog
ICAgIFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMgPSBXS1BhZ2VHcm91cEdldFByZWZlcmVu
Y2VzKHBhZ2VHcm91cC5nZXQoKSk7CiAgICAgV0tQcmVmZXJlbmNlc1NldEZ1bGxTY3JlZW5FbmFi
bGVkKHByZWZlcmVuY2VzLCB0cnVlKTsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Q29jb2EvU2NoZW1lUmVnaXN0cnkubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9TY2hlbWVSZWdpc3RyeS5tbQkocmV2aXNpb24gMjM5
NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9TY2hlbWVSZWdp
c3RyeS5tbQkod29ya2luZyBjb3B5KQpAQCAtMTY3LDcgKzE2Nyw3IEBAIFRFU1QoV2ViS2l0LCBX
S0NvbnRleHRSZWdpc3RlclVSTFNjaGVtZUEKICAgICAgICAgW05TVVJMUHJvdG9jb2wgcmVnaXN0
ZXJDbGFzczpbRWNob1VSTFByb3RvY29sIGNsYXNzXV07CiAgICAgICAgIFtXS0Jyb3dzaW5nQ29u
dGV4dENvbnRyb2xsZXIgcmVnaXN0ZXJTY2hlbWVGb3JDdXN0b21Qcm90b2NvbDplY2hvU2NoZW1l
XTsKIAotICAgICAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdL
KFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICAgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBj
b250ZXh0ID0gYWRvcHRXSyhXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRy
KSk7CiAgICAgICAgIFdLQ29udGV4dFJlZ2lzdGVyVVJMU2NoZW1lQXNDYW5EaXNwbGF5T25seUlm
Q2FuUmVxdWVzdChjb250ZXh0LmdldCgpLCBVdGlsOjp0b1dLKGVjaG9TY2hlbWUuVVRGOFN0cmlu
ZykuZ2V0KCkpOwogCiAgICAgICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3IHsgY29udGV4dC5n
ZXQoKSB9OwpAQCAtMTkwLDcgKzE5MCw3IEBAIFRFU1QoV2ViS2l0LCBXS0NvbnRleHRSZWdpc3Rl
clVSTFNjaGVtZUEKICAgICAgICAgW05TVVJMUHJvdG9jb2wgcmVnaXN0ZXJDbGFzczpbRWNob1VS
TFByb3RvY29sIGNsYXNzXV07CiAgICAgICAgIFtXS0Jyb3dzaW5nQ29udGV4dENvbnRyb2xsZXIg
cmVnaXN0ZXJTY2hlbWVGb3JDdXN0b21Qcm90b2NvbDplY2hvU2NoZW1lXTsKIAotICAgICAgICBX
S1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0
ZSgpKTsKKyAgICAgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRX
SyhXS0NvbnRleHRDcmVhdGVXaXRoQ29uZmlndXJhdGlvbihudWxscHRyKSk7CiAgICAgICAgIFdL
Q29udGV4dFJlZ2lzdGVyVVJMU2NoZW1lQXNDYW5EaXNwbGF5T25seUlmQ2FuUmVxdWVzdChjb250
ZXh0LmdldCgpLCBVdGlsOjp0b1dLKGVjaG9TY2hlbWUuVVRGOFN0cmluZykuZ2V0KCkpOwogCiAg
ICAgICAgIFBsYXRmb3JtV2ViVmlldyB3ZWJWaWV3IHsgY29udGV4dC5nZXQoKSB9OwpJbmRleDog
VG9vbHMvVGVzdFdlYktpdEFQSS9tYWMvV2ViS2l0QWdub3N0aWNUZXN0Lm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvbWFjL1dlYktpdEFnbm9zdGljVGVzdC5tbQkocmV2aXNp
b24gMjM5NTg1KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9tYWMvV2ViS2l0QWdub3N0aWNUZXN0
Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMDQsNyArMTA0LDcgQEAgdm9pZCBXZWJLaXRBZ25vc3Rp
Y1Rlc3Q6OnJ1bldlYktpdDFUZXN0KAogCiB2b2lkIFdlYktpdEFnbm9zdGljVGVzdDo6cnVuV2Vi
S2l0MlRlc3QoKQogewotICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFk
b3B0V0soV0tDb250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4g
Y29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlV2l0aENvbmZpZ3VyYXRpb24obnVsbHB0
cikpOwogICAgIFdLUmV0YWluUHRyPFdLUGFnZUdyb3VwUmVmPiBwYWdlR3JvdXAgPSBhZG9wdFdL
KFdLUGFnZUdyb3VwQ3JlYXRlV2l0aElkZW50aWZpZXIoVXRpbDo6dG9XSygiV2ViS2l0QWdub3N0
aWNUZXN0IikuZ2V0KCkpKTsKICAgICBSZXRhaW5QdHI8V0tWaWV3PiB2aWV3ID0gYWRvcHROUyhb
W1dLVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTp2aWV3RnJhbWUgY29udGV4dFJlZjpjb250ZXh0
LmdldCgpIHBhZ2VHcm91cFJlZjpwYWdlR3JvdXAuZ2V0KCldKTsKICAgICBzZXRQYWdlTG9hZGVy
Q2xpZW50KFt2aWV3LmdldCgpIHBhZ2VSZWZdLCAmZGlkRmluaXNoTG9hZCk7Cg==
</data>
<flag name="review"
          id="375109"
          type_id="1"
          status="+"
          setter="beidson"
    />
          </attachment>
      

    </bug>

</bugzilla>