<?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>87278</bug_id>
          
          <creation_ts>2012-05-23 10:19:42 -0700</creation_ts>
          <short_desc>Move setPrivateBrowsingEnabled from layoutTestController to window.internals()</short_desc>
          <delta_ts>2012-05-23 13:46:19 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>85034</dup_id>
          
          <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>87284</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Marcelo Lira">marcelo.lira</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>gustavo</cc>
    
    <cc>menard</cc>
    
    <cc>rakuco</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>631762</commentid>
    <comment_count>0</comment_count>
    <who name="Marcelo Lira">marcelo.lira</who>
    <bug_when>2012-05-23 10:19:42 -0700</bug_when>
    <thetext>Implement setPrivateBrowsingEnabled in window.internals and remove duplicated code from WebKitTestRunner and DumpRenderTree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>631862</commentid>
    <comment_count>1</comment_count>
      <attachid>143606</attachid>
    <who name="Marcelo Lira">marcelo.lira</who>
    <bug_when>2012-05-23 11:47:47 -0700</bug_when>
    <thetext>Created attachment 143606
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>631893</commentid>
    <comment_count>2</comment_count>
      <attachid>143606</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2012-05-23 12:17:28 -0700</bug_when>
    <thetext>Comment on attachment 143606
Patch

Attachment 143606 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/12772280</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>631900</commentid>
    <comment_count>3</comment_count>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2012-05-23 12:25:35 -0700</bug_when>
    <thetext>Same as https://bugs.webkit.org/show_bug.cgi?id=87149#c5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>631901</commentid>
    <comment_count>4</comment_count>
      <attachid>143606</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-23 12:26:37 -0700</bug_when>
    <thetext>Comment on attachment 143606
Patch

Attachment 143606 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/12774291</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>631946</commentid>
    <comment_count>5</comment_count>
      <attachid>143629</attachid>
    <who name="Marcelo Lira">marcelo.lira</who>
    <bug_when>2012-05-23 13:07:58 -0700</bug_when>
    <thetext>Created attachment 143629
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>631991</commentid>
    <comment_count>6</comment_count>
      <attachid>143629</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-23 13:40:33 -0700</bug_when>
    <thetext>Comment on attachment 143629
Patch

Attachment 143629 did not pass win-ews (win):
Output: http://queues.webkit.org/results/12769313</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>632000</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-05-23 13:45:40 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 85034 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>632002</commentid>
    <comment_count>8</comment_count>
      <attachid>143629</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-05-23 13:46:19 -0700</bug_when>
    <thetext>Comment on attachment 143629
Patch

Clearing review flag, since this has been decided wontfix in original.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143606</attachid>
            <date>2012-05-23 11:47:47 -0700</date>
            <delta_ts>2012-05-23 13:07:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87278-20120523154745.patch</filename>
            <type>text/plain</type>
            <size>41980</size>
            <attacher name="Marcelo Lira">marcelo.lira</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4MTg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjM5NGM5OTYwYmQ1MzNl
ZDY4ZmUwODJhZGJiNjNhZDVmMTY5MjRjZC4uYTViYmZlODQxMTZiOGVhNDkyYzllMjU3Nzg2MWU0
NmM0NDIxNjdjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTA1LTIzICBNYXJj
ZWxvIExpcmEgIDxtYXJjZWxvLmxpcmFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBNb3ZlIHNl
dFByaXZhdGVCcm93c2luZ0VuYWJsZWQgZnJvbSBsYXlvdXRUZXN0Q29udHJvbGxlciB0byB3aW5k
b3cuaW50ZXJuYWxzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTg3Mjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoKSB0byB3aW5kb3cuaW50ZXJuYWxz
LnNldHRpbmdzLiBObyBuZXcgdGVzdHMsIGJ1dCB0aGlzCisgICAgICAgIGNoYW5nZSB3aWxsIGFs
bG93IG1vcmUgdGVzdHMgdG8gcnVuIGluIFdlYktpdFRlc3RSdW5uZXIgYW5kIERSVCBmb3IgcG9y
dHMgdGhhdCB3ZXJlbid0CisgICAgICAgIGltcGxlbWVudGluZyB0aGlzIGZ1bmN0aW9uIGJlZm9y
ZS4KKworICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpJbnRlcm5hbFNldHRpbmdzOjpJbnRlcm5hbFNldHRpbmdzKToKKyAgICAgICAgKFdl
YkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnJlc3RvcmVUbyk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnRlcm5hbFNldHRpbmdzOjpzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKToKKyAgICAgICAgKFdl
YkNvcmUpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oOgorICAgICAgICAo
SW50ZXJuYWxTZXR0aW5ncyk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlk
bDoKKwogMjAxMi0wNS0yMyAgQWxleGVpIEZpbGlwcG92ICA8YWxleGVpZkBjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogZmlsdGVyIG91dCBkZWJ1Z2dpbmcgc3R1ZmYgZnJv
bSB0aGUgaGVhcCBjbGFzcyB2aWV3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggMTY0NWM0MDE3NDRiNWFl
ODliNDhkYjdhNjE3ZjQ2NzYwYjU0MjhiYi4uNTAzYThlZjYzOWRlYmRjMDIxN2U2MWMyNThiZjNk
NWM0MzlkYWM0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTA1LTIz
ICBNYXJjZWxvIExpcmEgIDxtYXJjZWxvLmxpcmFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBN
b3ZlIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQgZnJvbSBsYXlvdXRUZXN0Q29udHJvbGxlciB0
byB3aW5kb3cuaW50ZXJuYWxzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTg3Mjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUmVtb3ZlIE1hYyBwcml2YXRlIEFQSSB0byBnZXQvc2V0IHRoZSBwcml2YXRl
IGJyb3dzaW5nIGVuYWJsZWQgc2V0dGluZywKKyAgICAgICAgc2luY2UgaXQgd2FzIG9ubHkgdGhl
cmUgZm9yIHRoZSBEUlQuCisKKyAgICAgICAgKiBXZWJLaXQub3JkZXI6CisgICAgICAgICogV2Vi
Vmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYlBy
ZWZlcmVuY2VzLm1tOgorICAgICAgICAoK1tXZWJQcmVmZXJlbmNlcyBpbml0aWFsaXplXSk6Cisg
ICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9wcmVmZXJl
bmNlc0NoYW5nZWQ6XSk6CisKIDIwMTItMDUtMjIgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRv
bkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGEgcXVpcmsgZm9yIGFwcGxpY2F0aW9ucyB0aGF0
IGRlcGVuZCBvbiB0aGUgcmVsYXRpdmUgb3JkZXJpbmcgb2YgcHJvZ3Jlc3NDb21wbGV0ZWQvZGlk
RmluaXNoTG9hZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCmluZGV4IDQ3MWZlZjNkZTUwYzhiZTc0OTU2MmQ4ZjJk
MWU5NjNhOTk1ZDBhMWEuLjdkMDgxMjhjYzU4MmY5NDdiZDc2ZWRmNmQyZTA4MGIyMGNjZDM4Y2Mg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMi0wNS0yMyAgTWFyY2VsbyBM
aXJhICA8bWFyY2Vsby5saXJhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAgICAgTW92ZSBzZXRQcml2
YXRlQnJvd3NpbmdFbmFibGVkIGZyb20gbGF5b3V0VGVzdENvbnRyb2xsZXIgdG8gd2luZG93Lmlu
dGVybmFscygpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NzI3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFJlbW92ZSBXaW4gcHJpdmF0ZSBBUEkgdG8gZ2V0L3NldCBwcml2YXRlIGJyb3dzaW5nIGVuYWJs
ZWQgc2V0dGluZy4gRm9sbG93IHRoZSBwcmV2aW91cworICAgICAgICByZW1vdmFscyB0aGF0IGtl
ZXAgdGhlIHZpcnR1YWwgZnVuY3Rpb25zIHRoZXJlIGJ1dCBmYWlsaW5nLgorCisgICAgICAgICog
SW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXMuaWRsOgorICAgICAgICAqIFdlYlByZWZlcmVuY2VL
ZXlzUHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdl
YlByZWZlcmVuY2VzOjp1bnVzZWQ3KToKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjp1bnVzZWQ4
KToKKyAgICAgICAgKiBXZWJQcmVmZXJlbmNlcy5oOgorICAgICAgICAoV2ViUHJlZmVyZW5jZXMp
OgorICAgICAgICAqIFdlYlZpZXcuY3BwOgorICAgICAgICAoV2ViVmlldzo6bm90aWZ5UHJlZmVy
ZW5jZXNDaGFuZ2VkKToKKwogMjAxMi0wNS0yMSAgQ2FpbyBNYXJjZWxvIGRlIE9saXZlaXJhIEZp
bGhvICA8Y2Fpby5vbGl2ZWlyYUBvcGVuYm9zc2Eub3JnPgogCiAgICAgICAgIE1vdmUgc2V0RWRp
dGluZ0JlaGF2aW9yKCkgZnJvbSBsYXlvdXRUZXN0Q29udHJvbGxlciB0byB3aW5kb3cuaW50ZXJu
YWxzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3Mu
Y3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAppbmRleCBl
ZmIzMjg1ODU1ODg3ZjJmMDYzYTdjMWMwMTIwYTRhYzA1MTc2OWUzLi5hN2NkMDdlMjc5ZGE5NWJk
NWRlYTM4MWZkNDY3ZTk1MzI1Y2UzMmUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxTZXR0aW5ncy5jcHAKQEAgLTk5LDYgKzk5LDcgQEAgSW50ZXJuYWxTZXR0aW5nczo6SW50
ZXJuYWxTZXR0aW5ncyhGcmFtZSogZnJhbWUpCiAgICAgLCBtX29yaWdpbmFsU2hhZG93RE9NRW5h
YmxlZChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFkb3dET01FbmFibGVkKCkpCiAjZW5kaWYK
ICAgICAsIG1fb3JpZ2luYWxFZGl0aW5nQmVoYXZpb3Ioc2V0dGluZ3MoKS0+ZWRpdGluZ0JlaGF2
aW9yVHlwZSgpKQorICAgICwgbV9vcmlnaW5hbFByaXZhdGVCcm93c2luZ0VuYWJsZWQoc2V0dGlu
Z3MoKS0+cHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCgpKQogewogfQogCkBAIC0xMTEsNiArMTEyLDcg
QEAgdm9pZCBJbnRlcm5hbFNldHRpbmdzOjpyZXN0b3JlVG8oU2V0dGluZ3MqIHNldHRpbmdzKQog
ICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFNoYWRvd0RPTUVuYWJsZWQobV9vcmlnaW5h
bFNoYWRvd0RPTUVuYWJsZWQpOwogI2VuZGlmCiAgICAgc2V0dGluZ3MtPnNldEVkaXRpbmdCZWhh
dmlvclR5cGUobV9vcmlnaW5hbEVkaXRpbmdCZWhhdmlvcik7CisgICAgc2V0dGluZ3MtPnNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQobV9vcmlnaW5hbFByaXZhdGVCcm93c2luZ0VuYWJsZWQpOwog
fQogCiBTZXR0aW5ncyogSW50ZXJuYWxTZXR0aW5nczo6c2V0dGluZ3MoKSBjb25zdApAQCAtMzQ0
LDQgKzM0NiwxMCBAQCB2b2lkIEludGVybmFsU2V0dGluZ3M6OnNldEVkaXRpbmdCZWhhdmlvcihj
b25zdCBTdHJpbmcmIGVkaXRpbmdCZWhhdmlvciwgRXhjZXB0aQogICAgICAgICBlYyA9IFNZTlRB
WF9FUlI7CiB9CiAKK3ZvaWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0UHJpdmF0ZUJyb3dzaW5nRW5h
YmxlZChib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIEludGVybmFsU2V0
dGluZ3NHdWFyZEZvclNldHRpbmdzKCk7CisgICAgc2V0dGluZ3MoKS0+c2V0UHJpdmF0ZUJyb3dz
aW5nRW5hYmxlZChlbmFibGVkKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFsU2V0dGluZ3MuaAppbmRleCA4ZGZkYTc2ZWRjOGQ4NTg3NjZjMzc4MjM3ODRiNTAwNzY2Nzgy
MmM2Li5lZWZiNjk4ZjllNzk0ZWRkMWI1MDg4MjhmOTZhZjgyMzAwMzljMWE4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaApAQCAtNzYsNiArNzYsNyBAQCBwdWJs
aWM6CiAgICAgdm9pZCBzZXRDU1NFeGNsdXNpb25zRW5hYmxlZChib29sIGVuYWJsZWQsIEV4Y2Vw
dGlvbkNvZGUmKTsKICAgICB2b2lkIHNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJl
KGJvb2wsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNldEVkaXRpbmdCZWhhdmlvcihjb25z
dCBTdHJpbmcmLCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBzZXRQcml2YXRlQnJvd3NpbmdF
bmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOwogCiAgICAgdm9pZCByZXN0b3Jl
VG8oU2V0dGluZ3MqKTsKIApAQCAtOTMsNiArOTQsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9v
cmlnaW5hbFNoYWRvd0RPTUVuYWJsZWQ7CiAjZW5kaWYKICAgICBFZGl0aW5nQmVoYXZpb3JUeXBl
IG1fb3JpZ2luYWxFZGl0aW5nQmVoYXZpb3I7CisgICAgYm9vbCBtX29yaWdpbmFsUHJpdmF0ZUJy
b3dzaW5nRW5hYmxlZDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCmluZGV4IDY4ODk5NzFmMzE2ZmExYTdk
Nzg3ZmU2NDNkOWI5MDdiMmI5NGU2MTUuLmRiZjkxNjFkNGJiMWExZjM5MmNlYTM3NzAxNzIwNjJi
YTIzMmNiNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0
aW5ncy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlk
bApAQCAtNTQsNiArNTQsNyBAQCBtb2R1bGUgd2luZG93IHsKICAgICAgICAgdm9pZCBzZXRDU1NF
eGNsdXNpb25zRW5hYmxlZChpbiBib29sZWFuIGVuYWJsZWQpIHJhaXNlcyhET01FeGNlcHRpb24p
OwogICAgICAgICB2b2lkIHNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKGluIGJv
b2xlYW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0RWRp
dGluZ0JlaGF2aW9yKGluIERPTVN0cmluZyBiZWhhdmlvcikgcmFpc2VzKERPTUV4Y2VwdGlvbik7
CisgICAgICAgIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChpbiBib29sZWFuIGVuYWJs
ZWQpIHJhaXNlcyhET01FeGNlcHRpb24pOwogICAgIH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYktpdC5vcmRlciBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYktpdC5vcmRl
cgppbmRleCAyN2U5NDFlZTdjNjc5MTQzMTIwOGU4MGQyZWVhYTA2NjBlNTE0ZTZjLi40MGJlZjYz
MDUwYmFjY2NkMmU0M2ZhOGE1NzI3N2E3ODRhOGIxZmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJLaXQub3JkZXIKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViS2l0Lm9yZGVy
CkBAIC03Miw3ICs3Miw2IEBAIF9fWkwxNGZvbnRGcm9tTlNGb250UDZOU0ZvbnQKICtbV2ViSGlz
dG9yeShXZWJQcml2YXRlKSBfc2V0VmlzaXRlZExpbmtUcmFja2luZ0VuYWJsZWQ6XQogK1tXZWJI
aXN0b3J5KFdlYlByaXZhdGUpIF9yZW1vdmVBbGxWaXNpdGVkTGlua3NdCiAtW1dlYlByZWZlcmVu
Y2VzKFdlYlByaXZhdGUpIHNldFJlc3BlY3RTdGFuZGFyZFN0eWxlS2V5RXF1aXZhbGVudHM6XQot
LVtXZWJQcmVmZXJlbmNlcyBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkOl0KIC1bV2ViUHJlZmVy
ZW5jZXMoV2ViUHJpdmF0ZSkgc2V0RE9NUGFzdGVBbGxvd2VkOl0KIC1bV2ViUHJlZmVyZW5jZXMg
c2V0Q2FjaGVNb2RlbDpdCiAtW1dlYlByZWZlcmVuY2VzIF9zZXRJbnRlZ2VyVmFsdWU6Zm9yS2V5
Ol0KQEAgLTM3NCw3ICszNzMsNiBAQCBfX1pOM1dURjEyQXRvbWljU3RyaW5nQzJFUDhOU1N0cmlu
ZwogLVtXZWJQcmVmZXJlbmNlcyhXZWJQcml2YXRlKSBkYXRhYmFzZXNFbmFibGVkXQogLVtXZWJQ
cmVmZXJlbmNlcyhXZWJQcml2YXRlKSBsb2NhbFN0b3JhZ2VFbmFibGVkXQogLVtXZWJQcmVmZXJl
bmNlcyhXZWJQcml2YXRlKSBleHBlcmltZW50YWxOb3RpZmljYXRpb25zRW5hYmxlZF0KLS1bV2Vi
UHJlZmVyZW5jZXMgcHJpdmF0ZUJyb3dzaW5nRW5hYmxlZF0KIC1bV2ViUHJlZmVyZW5jZXMgc2Fu
c1NlcmlmRm9udEZhbWlseV0KIC1bV2ViUHJlZmVyZW5jZXMgc2VyaWZGb250RmFtaWx5XQogLVtX
ZWJQcmVmZXJlbmNlcyBzdGFuZGFyZEZvbnRGYW1pbHldCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktp
dC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAppbmRleCAxMmI1NGU3YzA1
ODkwZGFkOGNhODZlNDUyZTEzZTUxYTM4YjQxODU0Li5kNGY3NzhhMGM5MzBmZjYyZTJjN2MxYTEw
ZTFmYjdjNGE5NWRkYWM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgKQEAgLTY0LDcgKzY0LDYgQEAKICNkZWZpbmUgV2Vi
S2l0TG9hZFNpdGVJY29uc0tleSBAIldlYktpdExvYWRTaXRlSWNvbnNLZXkiCiAjZGVmaW5lIFdl
YktpdEJhY2tGb3J3YXJkQ2FjaGVFeHBpcmF0aW9uSW50ZXJ2YWxLZXkgQCJXZWJLaXRCYWNrRm9y
d2FyZENhY2hlRXhwaXJhdGlvbkludGVydmFsS2V5IgogI2RlZmluZSBXZWJLaXRUYWJUb0xpbmtz
UHJlZmVyZW5jZUtleSBAIldlYktpdFRhYlRvTGlua3NQcmVmZXJlbmNlS2V5IgotI2RlZmluZSBX
ZWJLaXRQcml2YXRlQnJvd3NpbmdFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdFByaXZhdGVC
cm93c2luZ0VuYWJsZWQiCiAjZGVmaW5lIFdlYlNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCBAIldl
YlNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCIKICNkZWZpbmUgV2ViQ29udGludW91c1NwZWxsQ2hl
Y2tpbmdFbmFibGVkIEAiV2ViQ29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkIgogI2RlZmlu
ZSBXZWJHcmFtbWFyQ2hlY2tpbmdFbmFibGVkIEAiV2ViR3JhbW1hckNoZWNraW5nRW5hYmxlZCIK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0g
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCmluZGV4IDY3OTYy
MzdhNWM2ZmQ1ZTk4MDI5M2NjNGQ3ZGNmMzQwNWI1MTFiNDYuLjRlODFiZThiOTg1OGQwYTMxOWRh
NzNlOGUzNmUwYTQ0ZDU0OGUwNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViUHJlZmVyZW5jZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQ
cmVmZXJlbmNlcy5tbQpAQCAtMzM4LDcgKzMzOCw2IEBAIHN0YXRpYyBXZWJDYWNoZU1vZGVsIGNh
Y2hlTW9kZWxGb3JNYWluQnVuZGxlKHZvaWQpCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRo
Qm9vbDpOT10sICAgV2ViS2l0TG9hZFNpdGVJY29uc0tleSwKICAgICAgICAgQCIxODAwIiwgICAg
ICAgICAgICAgICAgICAgICAgICBXZWJLaXRCYWNrRm9yd2FyZENhY2hlRXhwaXJhdGlvbkludGVy
dmFsS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdlYktpdFRh
YlRvTGlua3NQcmVmZXJlbmNlS2V5LAotICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6
Tk9dLCAgIFdlYktpdFByaXZhdGVCcm93c2luZ0VuYWJsZWRQcmVmZXJlbmNlS2V5LAogICAgICAg
ICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdlYktpdFJlc3BlY3RTdGFuZGFyZFN0
eWxlS2V5RXF1aXZhbGVudHNQcmVmZXJlbmNlS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVy
V2l0aEJvb2w6Tk9dLCAgIFdlYktpdFNob3dzVVJMc0luVG9vbFRpcHNQcmVmZXJlbmNlS2V5LAog
ICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdlYktpdFNob3dzVG9vbFRp
cE92ZXJUcnVuY2F0ZWRUZXh0UHJlZmVyZW5jZUtleSwKQEAgLTc4MywxNiArNzgyLDYgQEAgc3Rh
dGljIFdlYkNhY2hlTW9kZWwgY2FjaGVNb2RlbEZvck1haW5CdW5kbGUodm9pZCkKICAgICByZXR1
cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktleTpXZWJLaXRUYWJUb0xpbmtzUHJlZmVyZW5jZUtleV07
CiB9CiAKLS0gKHZvaWQpc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZDooQk9PTClmbGFnCi17Ci0g
ICAgW3NlbGYgX3NldEJvb2xWYWx1ZTpmbGFnIGZvcktleTpXZWJLaXRQcml2YXRlQnJvd3NpbmdF
bmFibGVkUHJlZmVyZW5jZUtleV07Ci19Ci0KLS0gKEJPT0wpcHJpdmF0ZUJyb3dzaW5nRW5hYmxl
ZAotewotICAgIHJldHVybiBbc2VsZiBfYm9vbFZhbHVlRm9yS2V5OldlYktpdFByaXZhdGVCcm93
c2luZ0VuYWJsZWRQcmVmZXJlbmNlS2V5XTsKLX0KLQogLSAodm9pZClzZXRVc2VzUGFnZUNhY2hl
OihCT09MKXVzZXNQYWdlQ2FjaGUKIHsKICAgICBbc2VsZiBfc2V0Qm9vbFZhbHVlOnVzZXNQYWdl
Q2FjaGUgZm9yS2V5OldlYktpdFVzZXNQYWdlQ2FjaGVQcmVmZXJlbmNlS2V5XTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCBjOTM4MjNhMzk0MGNhODY2ZmRhYzY2ZTlkMDU4
MWFkZmU2NzBmZTQzLi42ZjYwOTUyY2M0NDNkYjhjNGU1MThiZjZmMjdlNTEzM2E3OGYxZjg3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291
cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCkBAIC0xNDQyLDcgKzE0NDIsNiBAQCBz
dGF0aWMgYm9vbCBuZWVkc1NlbGZSZXRhaW5XaGlsZUxvYWRpbmdRdWlyaygpCiAjZW5kaWYKICAg
ICBzZXR0aW5ncy0+c2V0TG9jYWxTdG9yYWdlRW5hYmxlZChbcHJlZmVyZW5jZXMgbG9jYWxTdG9y
YWdlRW5hYmxlZF0pOwogICAgIHNldHRpbmdzLT5zZXRFeHBlcmltZW50YWxOb3RpZmljYXRpb25z
RW5hYmxlZChbcHJlZmVyZW5jZXMgZXhwZXJpbWVudGFsTm90aWZpY2F0aW9uc0VuYWJsZWRdKTsK
LSAgICBzZXR0aW5ncy0+c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChbcHJlZmVyZW5jZXMgcHJp
dmF0ZUJyb3dzaW5nRW5hYmxlZF0pOwogICAgIHNldHRpbmdzLT5zZXRTYW5zU2VyaWZGb250RmFt
aWx5KFtwcmVmZXJlbmNlcyBzYW5zU2VyaWZGb250RmFtaWx5XSk7CiAgICAgc2V0dGluZ3MtPnNl
dFNlcmlmRm9udEZhbWlseShbcHJlZmVyZW5jZXMgc2VyaWZGb250RmFtaWx5XSk7CiAgICAgc2V0
dGluZ3MtPnNldFN0YW5kYXJkRm9udEZhbWlseShbcHJlZmVyZW5jZXMgc3RhbmRhcmRGb250RmFt
aWx5XSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJQcmVm
ZXJlbmNlcy5pZGwgYi9Tb3VyY2UvV2ViS2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJQcmVmZXJlbmNl
cy5pZGwKaW5kZXggYTE1MTFiYjdlZWNkZWZjM2FlZjlkMmM4YjZlYTRhOGZiNGE1YTVhOC4uNjEz
MjBlZDZjZTMwNmVmMGZmNmU2NjAzYzQxNmYwZDIxMDQxNDE3YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC93aW4vSW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXMuaWRsCisrKyBiL1NvdXJjZS9X
ZWJLaXQvd2luL0ludGVyZmFjZXMvSVdlYlByZWZlcmVuY2VzLmlkbApAQCAtMTM4LDggKzEzOCw4
IEBAIGludGVyZmFjZSBJV2ViUHJlZmVyZW5jZXMgOiBJVW5rbm93bgogICAgIEhSRVNVTFQgc2V0
U2hvdWxkUHJpbnRCYWNrZ3JvdW5kcyhbaW5dIEJPT0wgZW5hYmxlZCk7CiAgICAgSFJFU1VMVCBz
aG91bGRQcmludEJhY2tncm91bmRzKFtvdXQsIHJldHZhbF0gQk9PTCogZW5hYmxlZCk7CiAKLSAg
ICBIUkVTVUxUIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoW2luXSBCT09MIGVuYWJsZWQpOwot
ICAgIEhSRVNVTFQgcHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChbb3V0LCByZXR2YWxdIEJPT0wqIGVu
YWJsZWQpOworICAgIEhSRVNVTFQgdW51c2VkMSgpOworICAgIEhSRVNVTFQgdW51c2VkMigpOwog
CiAgICAgSFJFU1VMVCBzZXRUYWJzVG9MaW5rcyhbaW5dIEJPT0wgZW5hYmxlZCk7CiAgICAgSFJF
U1VMVCB0YWJzVG9MaW5rcyhbb3V0LCByZXR2YWxdIEJPT0wqIGVuYWJsZWQpOwpAQCAtMTQ3LDgg
KzE0Nyw4IEBAIGludGVyZmFjZSBJV2ViUHJlZmVyZW5jZXMgOiBJVW5rbm93bgogICAgIEhSRVNV
TFQgdGV4dEFyZWFzQXJlUmVzaXphYmxlKFtvdXQsIHJldHZhbF0gQk9PTCogZW5hYmxlZCk7CiAg
ICAgSFJFU1VMVCBzZXRUZXh0QXJlYXNBcmVSZXNpemFibGUoW2luXSBCT09MIGVuYWJsZWQpOwog
Ci0gICAgSFJFU1VMVCB1bnVzZWQxKCk7Ci0gICAgSFJFU1VMVCB1bnVzZWQyKCk7CisgICAgSFJF
U1VMVCB1bnVzZWQzKCk7CisgICAgSFJFU1VMVCB1bnVzZWQ0KCk7CiAKICAgICBIUkVTVUxUIGlj
b25EYXRhYmFzZUxvY2F0aW9uKFtvdXQsIHJldHZhbF0gQlNUUiogbG9jYXRpb24pOwogICAgIEhS
RVNVTFQgc2V0SWNvbkRhdGFiYXNlTG9jYXRpb24oW2luXSBCU1RSIGxvY2F0aW9uKTsKQEAgLTE4
MSw4ICsxODEsOCBAQCBpbnRlcmZhY2UgSVdlYlByZWZlcmVuY2VzIDogSVVua25vd24KICAgICBI
UkVTVUxUIGNhY2hlTW9kZWwoW291dCwgcmV0dmFsXSBXZWJDYWNoZU1vZGVsKiBjYWNoZU1vZGVs
KTsKICAgICBIUkVTVUxUIHNldENhY2hlTW9kZWwoW2luXSBXZWJDYWNoZU1vZGVsIGNhY2hlTW9k
ZWwpOwogCi0gICAgSFJFU1VMVCB1bnVzZWQzKCk7Ci0gICAgSFJFU1VMVCB1bnVzZWQ0KCk7Cisg
ICAgSFJFU1VMVCB1bnVzZWQ1KCk7CisgICAgSFJFU1VMVCB1bnVzZWQ2KCk7CiAKICAgICBIUkVT
VUxUIHNldFpvb21zVGV4dE9ubHkoQk9PTCB6b29tc1RleHRPbmx5KTsKICAgICBIUkVTVUxUIHpv
b21zVGV4dE9ubHkoQk9PTCAqem9vbXNUZXh0T25seSk7CkBAIC0xOTAsOCArMTkwLDggQEAgaW50
ZXJmYWNlIElXZWJQcmVmZXJlbmNlcyA6IElVbmtub3duCiAgICAgSFJFU1VMVCBzZXRBY2NlbGVy
YXRlZENvbXBvc2l0aW5nRW5hYmxlZChCT09MIGFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVk
KTsKICAgICBIUkVTVUxUIGFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkKEJPT0wgKmFjY2Vs
ZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkKTsKIAotICAgIEhSRVNVTFQgdW51c2VkNSgpOwotICAg
IEhSRVNVTFQgdW51c2VkNigpOworICAgIEhSRVNVTFQgdW51c2VkNygpOworICAgIEhSRVNVTFQg
dW51c2VkOCgpOwogCiAgICAgSFJFU1VMVCBzZXRBVkZvdW5kYXRpb25FbmFibGVkKEJPT0wgYXZG
b3VuZGF0aW9uRW5hYmxlZCk7CiAgICAgSFJFU1VMVCBhdkZvdW5kYXRpb25FbmFibGVkKEJPT0wg
KmF2Rm91bmRhdGlvbkVuYWJsZWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2Vi
UHJlZmVyZW5jZUtleXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNl
S2V5c1ByaXZhdGUuaAppbmRleCA5NWU5ZjlmNWY5MjYzNjNmNTE1YjIxYjMzMzRlOWE3ZDE2YTQ1
MjI1Li5iOWU1NzBlM2RkYjMyYTljYzk4ZGUxNzg4ZDhmNDc3OTdmZTAzNzA0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaApAQCAtNjIsNyArNjIsNiBA
QAogI2RlZmluZSBXZWJLaXRMb2FkU2l0ZUljb25zS2V5ICJXZWJLaXRMb2FkU2l0ZUljb25zS2V5
IgogI2RlZmluZSBXZWJLaXRCYWNrRm9yd2FyZENhY2hlRXhwaXJhdGlvbkludGVydmFsS2V5ICJX
ZWJLaXRCYWNrRm9yd2FyZENhY2hlRXhwaXJhdGlvbkludGVydmFsS2V5IgogI2RlZmluZSBXZWJL
aXRUYWJUb0xpbmtzUHJlZmVyZW5jZUtleSAiV2ViS2l0VGFiVG9MaW5rc1ByZWZlcmVuY2VLZXki
Ci0jZGVmaW5lIFdlYktpdFByaXZhdGVCcm93c2luZ0VuYWJsZWRQcmVmZXJlbmNlS2V5ICJXZWJL
aXRQcml2YXRlQnJvd3NpbmdFbmFibGVkIgogI2RlZmluZSBXZWJLaXRJY29uRGF0YWJhc2VMb2Nh
dGlvbktleSAiV2ViS2l0SWNvbkRhdGFiYXNlTG9jYXRpb24iCiAjZGVmaW5lIFdlYktpdEljb25E
YXRhYmFzZUVuYWJsZWRQcmVmZXJlbmNlS2V5ICJXZWJLaXRJY29uRGF0YWJhc2VFbmFibGVkIgog
I2RlZmluZSBXZWJLaXRVc2VzUGFnZUNhY2hlUHJlZmVyZW5jZUtleSAiV2ViS2l0VXNlc1BhZ2VD
YWNoZVByZWZlcmVuY2VLZXkiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVm
ZXJlbmNlcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5jcHAKaW5kZXgg
Mzk0NmI1ZTcyMDc1YWVlZmU1NTFkMjM2ZDRiOGIxNzczZmZlNmEzNy4uY2Y3OTJkZDJhNjE0ZTNj
MzExMjg5OWQ3MjQwYzEwN2Y1OTk4Yzg5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4v
V2ViUHJlZmVyZW5jZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2Vz
LmNwcApAQCAtMTAzNCwxOCArMTAzNCwxNiBAQCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdl
YlByZWZlcmVuY2VzOjpzaG91bGRQcmludEJhY2tncm91bmRzKAogICAgIHJldHVybiBTX09LOwog
fQogCi1IUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYlByZWZlcmVuY2VzOjpzZXRQcml2YXRl
QnJvd3NpbmdFbmFibGVkKCAKLSAgICAvKiBbaW5dICovIEJPT0wgZW5hYmxlZCkKK0hSRVNVTFQg
V2ViUHJlZmVyZW5jZXM6OnVudXNlZDcoKQogewotICAgIHNldEJvb2xWYWx1ZShDRlNUUihXZWJL
aXRQcml2YXRlQnJvd3NpbmdFbmFibGVkUHJlZmVyZW5jZUtleSksIGVuYWJsZWQpOwotICAgIHJl
dHVybiBTX09LOworICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBFX0ZBSUw7
CiB9CiAKLUhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViUHJlZmVyZW5jZXM6OnByaXZhdGVC
cm93c2luZ0VuYWJsZWQoIAotICAgIC8qIFtyZXR2YWxdW291dF0gKi8gQk9PTCogZW5hYmxlZCkK
K0hSRVNVTFQgV2ViUHJlZmVyZW5jZXM6OnVudXNlZDgoKQogewotICAgICplbmFibGVkID0gYm9v
bFZhbHVlRm9yS2V5KENGU1RSKFdlYktpdFByaXZhdGVCcm93c2luZ0VuYWJsZWRQcmVmZXJlbmNl
S2V5KSk7Ci0gICAgcmV0dXJuIFNfT0s7CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAg
cmV0dXJuIEVfRkFJTDsKIH0KIAogSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJQcmVmZXJl
bmNlczo6c2V0VGFic1RvTGlua3MoIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2Vi
UHJlZmVyZW5jZXMuaCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmgKaW5kZXgg
YmZjNGQzMTU5ZWI0MDRhOGFjZDY3ZDAyODZiYTQ3MmIyMzA0Y2E0MS4uYTcwMGE2N2ExYzY5N2Vi
ZGM5NTdjYjc5MDJiMWEyNTQyNWY5MWQ4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4v
V2ViUHJlZmVyZW5jZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5o
CkBAIC0xOTMsMTEgKzE5Myw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVU
SE9EQ0FMTFRZUEUgc2hvdWxkUHJpbnRCYWNrZ3JvdW5kcyggCiAgICAgICAgIC8qIFtyZXR2YWxd
W291dF0gKi8gQk9PTCogZW5hYmxlZCk7CiAgICAgCi0gICAgdmlydHVhbCBIUkVTVUxUIFNURE1F
VEhPRENBTExUWVBFIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoIAotICAgICAgICAvKiBbaW5d
ICovIEJPT0wgZW5hYmxlZCk7Ci0gICAgCi0gICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENB
TExUWVBFIHByaXZhdGVCcm93c2luZ0VuYWJsZWQoIAotICAgICAgICAvKiBbcmV0dmFsXVtvdXRd
ICovIEJPT0wqIGVuYWJsZWQpOworICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQ
RSB1bnVzZWQ3KCk7CisgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIHVudXNl
ZDgoKTsKICAgICAKICAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgc2V0VGFi
c1RvTGlua3MoIAogICAgICAgICAvKiBbaW5dICovIEJPT0wgZW5hYmxlZCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZp
ZXcuY3BwCmluZGV4IGZhZWJjNzUzM2FmNmQyYmUxYzQyNWM5MGQ1YmY3ZTE0ZWMyNDRmOGUuLjMw
OTg0NTA3OWRmODM4NmFiNDI0ZjZhNDVhNDJjYmFmYjdhOGMxMWUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcu
Y3BwCkBAIC00NjY3LDExICs0NjY3LDYgQEAgSFJFU1VMVCBXZWJWaWV3Ojpub3RpZnlQcmVmZXJl
bmNlc0NoYW5nZWQoSVdlYk5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uKQogICAgICAgICByZXR1
cm4gaHI7CiAgICAgc2V0dGluZ3MtPnNldFBsdWdpbnNFbmFibGVkKCEhZW5hYmxlZCk7CiAKLSAg
ICBociA9IHByZWZlcmVuY2VzLT5wcml2YXRlQnJvd3NpbmdFbmFibGVkKCZlbmFibGVkKTsKLSAg
ICBpZiAoRkFJTEVEKGhyKSkKLSAgICAgICAgcmV0dXJuIGhyOwotICAgIHNldHRpbmdzLT5zZXRQ
cml2YXRlQnJvd3NpbmdFbmFibGVkKCEhZW5hYmxlZCk7Ci0KICAgICBociA9IHByZWZlcmVuY2Vz
LT5zYW5zU2VyaWZGb250RmFtaWx5KCZzdHIpOwogICAgIGlmIChGQUlMRUQoaHIpKQogICAgICAg
ICByZXR1cm4gaHI7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VM
b2cKaW5kZXggMDhhZDFiMmViYTg1ZGY0M2I2ZTIzYmI2YWNlN2IzYmI5Yjc4MTc0OS4uMDlkMzc2
NzZiOTdlYjg1YmRmNWMyODJkMGM3MDk5OWEwMGQ1YjUyMiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDEyLTA1LTIz
ICBNYXJjZWxvIExpcmEgIDxtYXJjZWxvLmxpcmFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBN
b3ZlIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQgZnJvbSBsYXlvdXRUZXN0Q29udHJvbGxlciB0
byB3aW5kb3cuaW50ZXJuYWxzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTg3Mjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUmVtb3ZlIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBzZXRQcml2YXRlQnJvd3Np
bmdFbmFibGVkKCkgZm9yIGVhY2ggcGxhdGZvcm0uIE5vdGUgdGhhdAorICAgICAgICBEdXJpbmcg
dGhlIEludGVybmFsc09iamVjdCByZXNldCB0aGUgYmVoYXZpb3IgaXMgY2hhbmdlZCBiYWNrIHRv
IHRoZSBwbGF0Zm9ybQorICAgICAgICBkZWZhdWx0LCB3aGljaCB3YXMgZmFsc2UgZm9yIGV2ZXJ5
b25lIGZvbGxvd2luZyBTZXR0aW5ncycgZGVmYXVsdCB2YWx1ZS4KKworICAgICAgICAqIER1bXBS
ZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKExheW91dFRlc3RD
b250cm9sbGVyOjpzdGF0aWNGdW5jdGlvbnMpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL0xh
eW91dFRlc3RDb250cm9sbGVyLmg6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcik6Cisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvYmxhY2tiZXJyeS9MYXlvdXRUZXN0Q29udHJvbGxlckJs
YWNrQmVycnkuY3BwOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRl
c3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpMYXlvdXRU
ZXN0Q29udHJvbGxlcik6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0
VGVzdENvbnRyb2xsZXIuaDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyKToKKyAgICAg
ICAgKiBEdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwOgorICAg
ICAgICAqIER1bXBSZW5kZXJUcmVlL2d0ay9MYXlvdXRUZXN0Q29udHJvbGxlckd0ay5jcHA6Cisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tOgorICAgICAgICAo
cmVzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlcyk6CisgICAgICAgICogRHVtcFJlbmRlclRy
ZWUvbWFjL0xheW91dFRlc3RDb250cm9sbGVyTWFjLm1tOgorICAgICAgICAqIER1bXBSZW5kZXJU
cmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwOgorICAgICAgICAqIER1bXBSZW5kZXJU
cmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaDoKKyAgICAgICAgKExheW91dFRlc3RDb250
cm9sbGVyKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS93aW4vRHVtcFJlbmRlclRyZWUuY3Bw
OgorICAgICAgICAocmVzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlcyk6CisgICAgICAgICog
RHVtcFJlbmRlclRyZWUvd2luL0xheW91dFRlc3RDb250cm9sbGVyV2luLmNwcDoKKyAgICAgICAg
KiBEdW1wUmVuZGVyVHJlZS93eC9MYXlvdXRUZXN0Q29udHJvbGxlcld4LmNwcDoKKwogMjAxMi0w
NS0yMyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAg
ICAgVW5yZXZpZXdlZC4gTW92ZSBteXNlbGYgdG8gcmV2aWV3ZXJzLgpkaWZmIC0tZ2l0IGEvVG9v
bHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwIGIvVG9vbHMvRHVtcFJl
bmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCmluZGV4IDZlNGFmMjI1MmU1OTEwOTM4
YTUxYTZiNjEzMmMyMjNhZWFiZTBmNzAuLmU1N2NjNjA5YmMyN2I0NGQwYTI3NzQ1OTlmOWM5OTJh
OWIzYTdmOTIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250
cm9sbGVyLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxl
ci5jcHAKQEAgLTE0MjYsMTggKzE0MjYsNiBAQCBzdGF0aWMgSlNWYWx1ZVJlZiBzZXRQZXJzaXN0
ZW50VXNlclN0eWxlU2hlZXRMb2NhdGlvbkNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZQogICAg
IHJldHVybiBKU1ZhbHVlTWFrZVVuZGVmaW5lZChjb250ZXh0KTsKIH0KIAotc3RhdGljIEpTVmFs
dWVSZWYgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZENhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250
ZXh0LCBKU09iamVjdFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90
IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYq
IGV4Y2VwdGlvbikKLXsKLSAgICAvLyBIYXMgbWFjICYgd2luZG93cyBpbXBsZW1lbnRhdGlvbgot
ICAgIGlmIChhcmd1bWVudENvdW50IDwgMSkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWVNYWtlVW5k
ZWZpbmVkKGNvbnRleHQpOwotCi0gICAgTGF5b3V0VGVzdENvbnRyb2xsZXIqIGNvbnRyb2xsZXIg
PSBzdGF0aWNfY2FzdDxMYXlvdXRUZXN0Q29udHJvbGxlcio+KEpTT2JqZWN0R2V0UHJpdmF0ZSh0
aGlzT2JqZWN0KSk7Ci0gICAgY29udHJvbGxlci0+c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChK
U1ZhbHVlVG9Cb29sZWFuKGNvbnRleHQsIGFyZ3VtZW50c1swXSkpOwotCi0gICAgcmV0dXJuIEpT
VmFsdWVNYWtlVW5kZWZpbmVkKGNvbnRleHQpOwotfQotCiBzdGF0aWMgSlNWYWx1ZVJlZiBzZXRK
YXZhU2NyaXB0Q2FuQWNjZXNzQ2xpcGJvYXJkQ2FsbGJhY2soSlNDb250ZXh0UmVmIGNvbnRleHQs
IEpTT2JqZWN0UmVmIGZ1bmN0aW9uLCBKU09iamVjdFJlZiB0aGlzT2JqZWN0LCBzaXplX3QgYXJn
dW1lbnRDb3VudCwgY29uc3QgSlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwgSlNWYWx1ZVJlZiogZXhj
ZXB0aW9uKQogewogICAgIC8vIEhhcyBtYWMgJiB3aW5kb3dzIGltcGxlbWVudGF0aW9uCkBAIC0y
Mzc4LDcgKzIzNjYsNiBAQCBKU1N0YXRpY0Z1bmN0aW9uKiBMYXlvdXRUZXN0Q29udHJvbGxlcjo6
c3RhdGljRnVuY3Rpb25zKCkKICAgICAgICAgeyAic2V0UG9wdXBCbG9ja2luZ0VuYWJsZWQiLCBz
ZXRQb3B1cEJsb2NraW5nRW5hYmxlZENhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRP
bmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldFBs
dWdpbnNFbmFibGVkIiwgc2V0UGx1Z2luc0VuYWJsZWRDYWxsYmFjaywga0pTUHJvcGVydHlBdHRy
aWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAg
ICB7ICJzZXRQcmludGluZyIsIHNldFByaW50aW5nQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmli
dXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKLSAgICAgICAg
eyAic2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCIsIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWRD
YWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmli
dXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VF
bmFibGVkIiwgc2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZENhbGxiYWNrLCBrSlNQ
cm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRl
IH0sCiAgICAgICAgIHsgInNldFNlcmlhbGl6ZUhUVFBMb2FkcyIsIHNldFNlcmlhbGl6ZUhUVFBM
b2Fkc0NhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlB
dHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZCIsIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZENhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0
dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCmRpZmYg
LS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuaAppbmRleCBjMDc2MDY3MjM4
NjM4MjU3NTk0YWUwMTgxMjc5MDE1ZjE3NjIwYTcxLi45MTZkZTE5N2IzM2M4NmNmNDRmZmQxZDZl
YTAyMGU5OGU1NDU4OGUxIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRU
ZXN0Q29udHJvbGxlci5oCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250
cm9sbGVyLmgKQEAgLTExMSw3ICsxMTEsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRQZXJzaXN0
ZW50VXNlclN0eWxlU2hlZXRMb2NhdGlvbihKU1N0cmluZ1JlZiBwYXRoKTsKICAgICB2b2lkIHNl
dFBsdWdpbnNFbmFibGVkKGJvb2wgZmxhZyk7CiAgICAgdm9pZCBzZXRQb3B1cEJsb2NraW5nRW5h
YmxlZChib29sIGZsYWcpOwotICAgIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29s
IGZsYWcpOwogICAgIHZvaWQgc2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZChib29s
IGZsYWcpOwogICAgIHZvaWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wgZmxhZyk7
CiAgICAgdm9pZCBzZXRUYWJLZXlDeWNsZXNUaHJvdWdoRWxlbWVudHMoYm9vbCBjeWNsZXMpOwpk
aWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvYmxhY2tiZXJyeS9MYXlvdXRUZXN0Q29u
dHJvbGxlckJsYWNrQmVycnkuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvYmxhY2tiZXJyeS9M
YXlvdXRUZXN0Q29udHJvbGxlckJsYWNrQmVycnkuY3BwCmluZGV4IDg0YjUxMGRlMjk2ZWU3MzEy
MDNjOWM5MGY5MmEyYWViNGI5OTY1NTMuLmE2YzYwYzQwYjY3YTMyZDA4NDk2NmI3MzU2ZmRkODQw
Y2U4Zjc3ZWQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2JsYWNrYmVycnkvTGF5
b3V0VGVzdENvbnRyb2xsZXJCbGFja0JlcnJ5LmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9ibGFja2JlcnJ5L0xheW91dFRlc3RDb250cm9sbGVyQmxhY2tCZXJyeS5jcHAKQEAgLTI1Nywx
MiArMjU3LDYgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0UG9wdXBCbG9ja2luZ0Vu
YWJsZWQoYm9vbCBmbGFnKQogICAgIEJsYWNrQmVycnk6OldlYktpdDo6RHVtcFJlbmRlclRyZWU6
OmN1cnJlbnRJbnN0YW5jZSgpLT5wYWdlKCktPnNldHRpbmdzKCktPnNldEphdmFTY3JpcHRPcGVu
V2luZG93c0F1dG9tYXRpY2FsbHkoIWZsYWcpOwogfQogCi12b2lkIExheW91dFRlc3RDb250cm9s
bGVyOjpzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKGJvb2wgZmxhZykKLXsKLSAgICBVTlVTRURf
UEFSQU0oZmxhZyk7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLX0KLQogdm9pZCBMYXlvdXRUZXN0
Q29udHJvbGxlcjo6c2V0WFNTQXVkaXRvckVuYWJsZWQoYm9vbCBmbGFnKQogewogICAgIEJsYWNr
QmVycnk6OldlYktpdDo6RHVtcFJlbmRlclRyZWU6OmN1cnJlbnRJbnN0YW5jZSgpLT5wYWdlKCkt
PnNldHRpbmdzKCktPnNldFhTU0F1ZGl0b3JFbmFibGVkKGZsYWcpOwpkaWZmIC0tZ2l0IGEvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCmluZGV4
IDM4YzJhZDY1MjIwMmRkMTdkMGVlZTkzYWVhZGZmZThjMmJiYWU5ZDguLjM1MjMzZDViZTQ5NjAw
NzZiMzFhNTNhY2ZmZTBiNThkZTYyMmJlMDIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmNwcAorKysgYi9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHAKQEAgLTI1NCw3ICsyNTQs
NiBAQCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6TGF5b3V0VGVzdENvbnRyb2xsZXIoVGVzdFNoZWxs
KiBzaGVsbCkKICAgICBiaW5kTWV0aG9kKCJzZXRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEi
LCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSk7
CiAgICAgYmluZE1ldGhvZCgic2V0Q2FsbENsb3NlT25XZWJWaWV3cyIsICZMYXlvdXRUZXN0Q29u
dHJvbGxlcjo6c2V0Q2FsbENsb3NlT25XZWJWaWV3cyk7CiAgICAgYmluZE1ldGhvZCgic2V0TWFp
bkZyYW1lSXNGaXJzdFJlc3BvbmRlciIsICZMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0TWFpbkZy
YW1lSXNGaXJzdFJlc3BvbmRlcik7Ci0gICAgYmluZE1ldGhvZCgic2V0UHJpdmF0ZUJyb3dzaW5n
RW5hYmxlZCIsICZMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxl
ZCk7CiAgICAgYmluZE1ldGhvZCgic2V0VXNlRGFzaGJvYXJkQ29tcGF0aWJpbGl0eU1vZGUiLCAm
TGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFVzZURhc2hib2FyZENvbXBhdGliaWxpdHlNb2RlKTsK
ICAgICBiaW5kTWV0aG9kKCJzdG9yZVdlYlNjcmlwdE9iamVjdCIsICZMYXlvdXRUZXN0Q29udHJv
bGxlcjo6c3RvcmVXZWJTY3JpcHRPYmplY3QpOwogICAgIGJpbmRNZXRob2QoImRlbGV0ZUFsbExv
Y2FsU3RvcmFnZSIsICZMYXlvdXRUZXN0Q29udHJvbGxlcjo6ZGVsZXRlQWxsTG9jYWxTdG9yYWdl
KTsKQEAgLTEyOTIsMTEgKzEyOTEsNiBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRD
YWxsQ2xvc2VPbldlYlZpZXdzKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbgogICAgIHJl
c3VsdC0+c2V0TnVsbCgpOwogfQogCi12b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRQcml2
YXRlQnJvd3NpbmdFbmFibGVkKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBW
YXJpYW50KiByZXN1bHQpCi17Ci0gICAgcmVzdWx0LT5zZXROdWxsKCk7Ci19Ci0KIHZvaWQgTGF5
b3V0VGVzdENvbnRyb2xsZXI6OnNldEphdmFTY3JpcHRDYW5BY2Nlc3NDbGlwYm9hcmQoY29uc3Qg
Q3BwQXJndW1lbnRMaXN0JiBhcmd1bWVudHMsIENwcFZhcmlhbnQqIHJlc3VsdCkKIHsKICAgICBp
ZiAoYXJndW1lbnRzLnNpemUoKSA+IDAgJiYgYXJndW1lbnRzWzBdLmlzQm9vbCgpKSB7CmRpZmYg
LS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxl
ci5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIu
aAppbmRleCAwNzAzZWYwMTBkNjU1ZWU3NzgxMTg1Y2MyY2QxZDI3NTA2Yzk1Y2Q0Li5kYzFhOTBm
ZDgzMzAyYjNjY2RlMTE1ZmFkMGYyMDM1ZjY2ZjZkMzIxIDEwMDY0NAotLS0gYS9Ub29scy9EdW1w
UmVuZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5oCisrKyBiL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmgKQEAgLTI3OSw3ICsy
NzksNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGREaXNhbGxvd2VkVVJMKGNvbnN0IENwcEFyZ3Vt
ZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKICAgICB2b2lkIGNhbGxTaG91bGRDbG9zZU9uV2ViVmll
dyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CiAgICAgdm9pZCBzZXRDYWxs
Q2xvc2VPbldlYlZpZXdzKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKLSAg
ICB2b2lkIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoY29uc3QgQ3BwQXJndW1lbnRMaXN0Jiwg
Q3BwVmFyaWFudCopOwogCiAgICAgdm9pZCBzZXRKYXZhU2NyaXB0Q2FuQWNjZXNzQ2xpcGJvYXJk
KGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKICAgICB2b2lkIHNldFhTU0F1
ZGl0b3JFbmFibGVkKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKZGlmZiAt
LWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxlckVmbC5j
cHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3Bw
CmluZGV4IDJmMTExZWQzOTJlMzRlODQwYjg0ZjRjNDllYzNkNmVmZDQ5Njk4ZjQuLjNiYWI5NGMw
M2ExNTljYTdhMjg5MTE3N2FhZjJhNTRjZDFlZThlZjggMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHAKKysrIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcApAQCAtMzIyLDExICsz
MjIsNiBAQCBpbnQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OndpbmRvd0NvdW50KCkKICAgICByZXR1
cm4gYnJvd3Nlci0+ZXh0cmFWaWV3cygpLnNpemUoKSArIDE7IC8vICsgMSBmb3IgdGhlIG1haW4g
dmlldy4KIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0UHJpdmF0ZUJyb3dzaW5n
RW5hYmxlZChib29sIGZsYWcpCi17Ci0gICAgZXdrX3ZpZXdfc2V0dGluZ19wcml2YXRlX2Jyb3dz
aW5nX3NldChicm93c2VyLT5tYWluVmlldygpLCBmbGFnKTsKLX0KLQogdm9pZCBMYXlvdXRUZXN0
Q29udHJvbGxlcjo6c2V0SmF2YVNjcmlwdENhbkFjY2Vzc0NsaXBib2FyZChib29sIGZsYWcpCiB7
CiAgICAgZXdrX3ZpZXdfc2V0dGluZ19zY3JpcHRzX2Nhbl9hY2Nlc3NfY2xpcGJvYXJkX3NldChi
cm93c2VyLT5tYWluVmlldygpLCBmbGFnKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2d0ay9MYXlvdXRUZXN0Q29udHJvbGxlckd0ay5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9ndGsvTGF5b3V0VGVzdENvbnRyb2xsZXJHdGsuY3BwCmluZGV4IDk1MWQyYmVmN2VkOThmNzBl
ZDk5MDczN2U4MTI4MzljMzE3ZDYyYWUuLmFlNTRkMzhkMjAyZjcxOWNjNjM3YzNjNWVhOTg4MDc0
YmIwMTFlZWIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9MYXlvdXRUZXN0
Q29udHJvbGxlckd0ay5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0xheW91dFRl
c3RDb250cm9sbGVyR3RrLmNwcApAQCAtMzg1LDE1ICszODUsNiBAQCBpbnQgTGF5b3V0VGVzdENv
bnRyb2xsZXI6OndpbmRvd0NvdW50KCkKICAgICByZXR1cm4gZ19zbGlzdF9sZW5ndGgod2ViVmll
d0xpc3QpICsgMTsKIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0UHJpdmF0ZUJy
b3dzaW5nRW5hYmxlZChib29sIGZsYWcpCi17Ci0gICAgV2ViS2l0V2ViVmlldyogdmlldyA9IHdl
YmtpdF93ZWJfZnJhbWVfZ2V0X3dlYl92aWV3KG1haW5GcmFtZSk7Ci0gICAgQVNTRVJUKHZpZXcp
OwotCi0gICAgV2ViS2l0V2ViU2V0dGluZ3MqIHNldHRpbmdzID0gd2Via2l0X3dlYl92aWV3X2dl
dF9zZXR0aW5ncyh2aWV3KTsKLSAgICBnX29iamVjdF9zZXQoR19PQkpFQ1Qoc2V0dGluZ3MpLCAi
ZW5hYmxlLXByaXZhdGUtYnJvd3NpbmciLCBmbGFnLCBOVUxMKTsKLX0KLQogdm9pZCBMYXlvdXRU
ZXN0Q29udHJvbGxlcjo6c2V0SmF2YVNjcmlwdENhbkFjY2Vzc0NsaXBib2FyZChib29sIGZsYWcp
CiB7CiAgICAgV2ViS2l0V2ViVmlldyogdmlldyA9IHdlYmtpdF93ZWJfZnJhbWVfZ2V0X3dlYl92
aWV3KG1haW5GcmFtZSk7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVt
cFJlbmRlclRyZWUubW0gYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUu
bW0KaW5kZXggYzFmNDRhNDczNDhjN2IwMGUzODllYzA1YjFiNmE2NDlhY2QzZGZiNS4uMDU0NDUy
NGJkNWRhZGIzNmQ0OWJiZGQzNmYwMDg3NTRiZGM3NDYzMiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQpAQCAtNjMzLDcgKzYzMyw2IEBAIHN0YXRpYyB2b2lk
IHJlc2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1ZXMoKQogICAgIFtwcmVmZXJlbmNlcyBzZXRQ
bHVnSW5zRW5hYmxlZDpZRVNdOwogICAgIFtwcmVmZXJlbmNlcyBzZXRUZXh0QXJlYXNBcmVSZXNp
emFibGU6WUVTXTsKIAotICAgIFtwcmVmZXJlbmNlcyBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVk
Ok5PXTsKICAgICBbcHJlZmVyZW5jZXMgc2V0QXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQ6WUVT
XTsKICAgICBbcHJlZmVyZW5jZXMgc2V0SmF2YVNjcmlwdENhbk9wZW5XaW5kb3dzQXV0b21hdGlj
YWxseTpZRVNdOwogICAgIFtwcmVmZXJlbmNlcyBzZXRKYXZhU2NyaXB0Q2FuQWNjZXNzQ2xpcGJv
YXJkOllFU107CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvTGF5b3V0VGVz
dENvbnRyb2xsZXJNYWMubW0gYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvTGF5b3V0VGVzdENv
bnRyb2xsZXJNYWMubW0KaW5kZXggNjc3MzgyNTM3NzlkYjhhMTQ3YjJhZDJhZjZmNDY1NDYwODQ3
N2E0MS4uNjFmMzdhOGY4Yjg2MGM2MTgyNzAyYjRkNzZkM2Y4OGRiZTNjYTFmMyAxMDA2NDQKLS0t
IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0xheW91dFRlc3RDb250cm9sbGVyTWFjLm1tCisr
KyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9MYXlvdXRUZXN0Q29udHJvbGxlck1hYy5tbQpA
QCAtNTc1LDExICs1NzUsNiBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRNYWluRnJh
bWVJc0ZpcnN0UmVzcG9uZGVyKGJvb2wgZmxhZykKICAgICBbW1ttYWluRnJhbWUgd2ViVmlld10g
d2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6Zmlyc3RSZXNwb25kZXJdOwogfQogCi12b2lkIExh
eW91dFRlc3RDb250cm9sbGVyOjpzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKGJvb2wgcHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCkKLXsKLSAgICBbW1ttYWluRnJhbWUgd2ViVmlld10gcHJlZmVyZW5j
ZXNdIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQ6cHJpdmF0ZUJyb3dzaW5nRW5hYmxlZF07Ci19
Ci0KIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFhTU0F1ZGl0b3JFbmFibGVkKGJvb2wg
ZW5hYmxlZCkKIHsKICAgICBbW1ttYWluRnJhbWUgd2ViVmlld10gcHJlZmVyZW5jZXNdIHNldFhT
U0F1ZGl0b3JFbmFibGVkOmVuYWJsZWRdOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9x
dC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAppbmRleCBjMTY4M2YxMGUxODI3ZDU2YmUxYzQ1
ZjM0NGUyNDAxMjMwM2YzN2IwLi5lMTgzN2JiYjdkMGMzY2E1MDY1MjczODZlMjNlMDY2OGU4ZWFj
YjEwIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJv
bGxlclF0LmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJv
bGxlclF0LmNwcApAQCAtNDkzLDExICs0OTMsNiBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVy
OjpzZXRGaXhlZENvbnRlbnRzU2l6ZShpbnQgd2lkdGgsIGludCBoZWlnaHQpCiAgICAgbV90b3BM
b2FkaW5nRnJhbWUtPnBhZ2UoKS0+c2V0UHJlZmVycmVkQ29udGVudHNTaXplKFFTaXplKHdpZHRo
LCBoZWlnaHQpKTsKIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0UHJpdmF0ZUJy
b3dzaW5nRW5hYmxlZChib29sIGVuYWJsZSkKLXsKLSAgICBtX2RydC0+d2ViUGFnZSgpLT5zZXR0
aW5ncygpLT5zZXRBdHRyaWJ1dGUoUVdlYlNldHRpbmdzOjpQcml2YXRlQnJvd3NpbmdFbmFibGVk
LCBlbmFibGUpOwotfQotCiB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTcGF0aWFsTmF2
aWdhdGlvbkVuYWJsZWQoYm9vbCBlbmFibGUpCiB7CiAgICAgbV9kcnQtPndlYlBhZ2UoKS0+c2V0
dGluZ3MoKS0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6U3BhdGlhbE5hdmlnYXRpb25FbmFi
bGVkLCBlbmFibGUpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0
VGVzdENvbnRyb2xsZXJRdC5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENv
bnRyb2xsZXJRdC5oCmluZGV4IDU1MTE2NzY3MmM4NDY1OGVjYTU0NzA3MjUxMDQ0NmFjMWFhOGNh
MjkuLjM0NWJmMmE4NjY2MDdlYzVmODYxMzY0Y2I3M2M5ZDdiMGI2ZjhhYTIgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaAorKysgYi9U
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgKQEAgLTE2Miw3
ICsxNjIsNiBAQCBwdWJsaWMgc2xvdHM6CiAgICAgdm9pZCBzZXRKYXZhU2NyaXB0UHJvZmlsaW5n
RW5hYmxlZChib29sIGVuYWJsZSk7CiAgICAgdm9pZCBzZXRWYWx1ZUZvclVzZXIoY29uc3QgUVdl
YkVsZW1lbnQmLCBjb25zdCBRU3RyaW5nJiB2YWx1ZSk7CiAgICAgdm9pZCBzZXRGaXhlZENvbnRl
bnRzU2l6ZShpbnQgd2lkdGgsIGludCBoZWlnaHQpOwotICAgIHZvaWQgc2V0UHJpdmF0ZUJyb3dz
aW5nRW5hYmxlZChib29sIGVuYWJsZSk7CiAgICAgdm9pZCBzZXRTcGF0aWFsTmF2aWdhdGlvbkVu
YWJsZWQoYm9vbCBlbmFibGVkKTsKICAgICB2b2lkIHNldFBsdWdpbnNFbmFibGVkKGJvb2wgZmxh
Zyk7CiAgICAgdm9pZCBzZXRQb3B1cEJsb2NraW5nRW5hYmxlZChib29sIGVuYWJsZSk7CmRpZmYg
LS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS93aW4vRHVtcFJlbmRlclRyZWUuY3BwIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvd2luL0R1bXBSZW5kZXJUcmVlLmNwcAppbmRleCA0ZWQ4ZTBkYzY3
NTY4Y2RmNzMwMjE1M2EzOTQzMGE5YzFkY2IxNjk3Li5lNDliYzk4MjE5MjY3MGUxNDNhNjY0YWY2
YjgxNTlmZjhkYThkZWY3IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS93aW4vRHVt
cFJlbmRlclRyZWUuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9EdW1wUmVuZGVy
VHJlZS5jcHAKQEAgLTgzNSw3ICs4MzUsNiBAQCBzdGF0aWMgdm9pZCByZXNldERlZmF1bHRzVG9D
b25zaXN0ZW50VmFsdWVzKElXZWJQcmVmZXJlbmNlcyogcHJlZmVyZW5jZXMpCiAgICAgcHJlZmVy
ZW5jZXMtPnNldEVkaXRhYmxlTGlua0JlaGF2aW9yKFdlYktpdEVkaXRhYmxlTGlua09ubHlMaXZl
V2l0aFNoaWZ0S2V5KTsKICAgICBwcmVmZXJlbmNlcy0+c2V0Rm9udFNtb290aGluZyhGb250U21v
b3RoaW5nVHlwZVN0YW5kYXJkKTsKICAgICBwcmVmZXJlbmNlcy0+c2V0VXNlc1BhZ2VDYWNoZShG
QUxTRSk7Ci0gICAgcHJlZmVyZW5jZXMtPnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoRkFMU0Up
OwogICAgIHByZWZlcmVuY2VzLT5zZXRKYXZhU2NyaXB0Q2FuT3BlbldpbmRvd3NBdXRvbWF0aWNh
bGx5KFRSVUUpOwogICAgIHByZWZlcmVuY2VzLT5zZXRKYXZhU2NyaXB0RW5hYmxlZChUUlVFKTsK
ICAgICBwcmVmZXJlbmNlcy0+c2V0VGFic1RvTGlua3MoRkFMU0UpOwpkaWZmIC0tZ2l0IGEvVG9v
bHMvRHVtcFJlbmRlclRyZWUvd2luL0xheW91dFRlc3RDb250cm9sbGVyV2luLmNwcCBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL3dpbi9MYXlvdXRUZXN0Q29udHJvbGxlcldpbi5jcHAKaW5kZXggN2U1
ZWU3MzIyZGFlZTYzOGNiOWE0MDliOGJkYWJjZGVlNjExZmE0OS4uMTk5MGJkMWU1ZTllOTY4NGM0
ZGI0MjA2M2IwOGI0NzQwY2M1NjMwZSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUv
d2luL0xheW91dFRlc3RDb250cm9sbGVyV2luLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJl
ZS93aW4vTGF5b3V0VGVzdENvbnRyb2xsZXJXaW4uY3BwCkBAIC00NzQsMTkgKzQ3NCw2IEBAIHZv
aWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldE1haW5GcmFtZUlzRmlyc3RSZXNwb25kZXIoYm9v
bCBmbGFnKQogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQhCiB9CiAKLXZvaWQgTGF5b3V0VGVzdENv
bnRyb2xsZXI6OnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoYm9vbCBwcml2YXRlQnJvd3NpbmdF
bmFibGVkKQotewotICAgIENPTVB0cjxJV2ViVmlldz4gd2ViVmlldzsKLSAgICBpZiAoRkFJTEVE
KGZyYW1lLT53ZWJWaWV3KCZ3ZWJWaWV3KSkpCi0gICAgICAgIHJldHVybjsKLQotICAgIENPTVB0
cjxJV2ViUHJlZmVyZW5jZXM+IHByZWZlcmVuY2VzOwotICAgIGlmIChGQUlMRUQod2ViVmlldy0+
cHJlZmVyZW5jZXMoJnByZWZlcmVuY2VzKSkpCi0gICAgICAgIHJldHVybjsKLQotICAgIHByZWZl
cmVuY2VzLT5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHByaXZhdGVCcm93c2luZ0VuYWJsZWQp
OwotfQotCiB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRYU1NBdWRpdG9yRW5hYmxlZChi
b29sIGVuYWJsZWQpCiB7CiAgICAgQ09NUHRyPElXZWJWaWV3PiB3ZWJWaWV3OwpkaWZmIC0tZ2l0
IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvd3gvTGF5b3V0VGVzdENvbnRyb2xsZXJXeC5jcHAgYi9U
b29scy9EdW1wUmVuZGVyVHJlZS93eC9MYXlvdXRUZXN0Q29udHJvbGxlcld4LmNwcAppbmRleCBi
NGIxODA2Y2NkYzc3ZjViNzllN2E2NGQzMjg0Y2ExNzYxOWNkM2YxLi4yOTdiZTAxMTM5YTM0MGU3
ZTZlZTNjNTgyODZjNTI1NTUzYjU0MWQyIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS93eC9MYXlvdXRUZXN0Q29udHJvbGxlcld4LmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJl
ZS93eC9MYXlvdXRUZXN0Q29udHJvbGxlcld4LmNwcApAQCAtMTcyLDExICsxNzIsNiBAQCBpbnQg
TGF5b3V0VGVzdENvbnRyb2xsZXI6OndpbmRvd0NvdW50KCkKICAgICByZXR1cm4gMTsKIH0KIAot
dm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29s
IHByaXZhdGVCcm93c2luZ0VuYWJsZWQpCi17Ci0gICAgLy8gRklYTUU6IGltcGxlbWVudAotfQot
CiB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRKYXZhU2NyaXB0Q2FuQWNjZXNzQ2xpcGJv
YXJkKGJvb2wgZW5hYmxlZCkKIHsKICAgICAvLyBGSVhNRTogaW1wbGVtZW50CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYzNh
NmEyNGVkNWU2YTZiMTM4MTY4ZmNmOWViMTIxMTgyOGE4MmZlZC4uMjBiMTQ1MjkxZmE4ZGE0OTcw
ZTZmZGMwZWExMmEyOThlNmRiODg1NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA1LTIz
ICBNYXJjZWxvIExpcmEgIDxtYXJjZWxvLmxpcmFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBN
b3ZlIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQgZnJvbSBsYXlvdXRUZXN0Q29udHJvbGxlciB0
byB3aW5kb3cuaW50ZXJuYWxzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTg3Mjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvcmVzb3VyY2VzL2ZpcnN0
LXBhcnR5LWNvb2tpZS1hbGxvdy54c2w6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9j
b29raWVzL3Jlc291cmNlcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmcueHNsOgorICAgICAg
ICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tp
bmctbWFpbi1mcmFtZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29va2ll
cy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmctdXNlci1hY3Rpb24uaHRtbDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5n
Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1mcmFtZS1hY2Nlc3Mt
cHJpdmF0ZS1icm93c2luZy5odG1sOgorICAgICAgICAqIHBsdWdpbnMvcHJpdmF0ZS1icm93c2lu
Zy1tb2RlLTIuaHRtbDoKKyAgICAgICAgKiBwbHVnaW5zL3ByaXZhdGUtYnJvd3NpbmctbW9kZS5o
dG1sOgorICAgICAgICAqIHN0b3JhZ2UvZG9tc3RvcmFnZS9sb2NhbHN0b3JhZ2UvcHJpdmF0ZS1i
cm93c2luZy1hZmZlY3RzLXN0b3JhZ2UuaHRtbDoKKyAgICAgICAgKiBzdG9yYWdlL2RvbXN0b3Jh
Z2Uvc2Vzc2lvbnN0b3JhZ2UvcHJpdmF0ZS1icm93c2luZy1hZmZlY3RzLXN0b3JhZ2UuaHRtbDoK
KyAgICAgICAgKiBzdG9yYWdlL3dlYnNxbC9wcml2YXRlLWJyb3dzaW5nLW5vcmVhZC1ub3dyaXRl
Lmh0bWw6CisKIDIwMTItMDUtMjMgIEVtaWwgQSBFa2x1bmQgIDxlYWVAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFVuc2tpcCBzdWItcGl4ZWwgdGVzdHMgb24gY2hyb21pdW0gbm93IHRoYXQgdGhl
eSBmbGFnIGhhcyBiZWVuIHR1cm5lZCBvbiAoaW4gciAxMTc4MTUpLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb29raWVzL3Jlc291cmNlcy9maXJzdC1wYXJ0
eS1jb29raWUtYWxsb3cueHNsIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb29r
aWVzL3Jlc291cmNlcy9maXJzdC1wYXJ0eS1jb29raWUtYWxsb3cueHNsCmluZGV4IDM2MTg5NGE4
M2QyNDczNWE1MzQwOWVmMzQ4ZDNmNzI4ZWEwNDI5ZDMuLmI3MThkOGU0ZjM4OTJjMDQ3MjkwMjZl
YzVjMzEzOGY3ZGQ1ZjY2NzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvY29va2llcy9yZXNvdXJjZXMvZmlyc3QtcGFydHktY29va2llLWFsbG93LnhzbAorKysg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvcmVzb3VyY2VzL2ZpcnN0
LXBhcnR5LWNvb2tpZS1hbGxvdy54c2wKQEAgLTExLDggKzExLDggQEAgaWYgKHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlcikgewogCiAgICAgLy8gU3RhcnQgd2l0aCBhIGNsZWFuIHN0YXRlLCBh
cyBvdGhlcndpc2UgYW4gZXhwaXJlZCBjb29raWUgZm9yIHRoaXMgZG9tYWluIGNvdWxkIGFmZmVj
dCBiZWhhdmlvciB3aXRoIENGTmV0d29yay4KICAgICAvLyBDYW4gYmUgcmVtb3ZlZCBvbmNlIHJk
YXI6Ly9wcm9ibGVtLzEwMDgwMTMwIGlzIGZpeGVkLgotICAgIGlmIChsYXlvdXRUZXN0Q29udHJv
bGxlci5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKQotICAgICAgICBsYXlvdXRUZXN0Q29udHJv
bGxlci5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHRydWUpOworICAgIGlmICh3aW5kb3cuaW50
ZXJuYWxzKQorICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0UHJpdmF0ZUJyb3dzaW5nRW5h
YmxlZCh0cnVlKTsKIAogICAgIGxheW91dFRlc3RDb250cm9sbGVyLnNldEFsd2F5c0FjY2VwdENv
b2tpZXMoZmFsc2UpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jb29raWVzL3Jlc291cmNlcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmcueHNsIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb29raWVzL3Jlc291cmNlcy90aGlyZC1w
YXJ0eS1jb29raWUtYmxvY2tpbmcueHNsCmluZGV4IGEwYWIwNWI5ZmU2MmM1YWFkMjkzNzU3MDc5
OWQ2MzFlZDEzM2YwYTIuLjI4MmJlNDRkMmE2N2I5NGZiMzRkMzRkMTE3ZmVlODVjOWM2MjAyMmUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy9yZXNv
dXJjZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLnhzbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvcmVzb3VyY2VzL3RoaXJkLXBhcnR5LWNvb2tpZS1i
bG9ja2luZy54c2wKQEAgLTExLDggKzExLDkgQEAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJv
bGxlcikgewogCiAgICAgLy8gU3RhcnQgd2l0aCBhIGNsZWFuIHN0YXRlLCBhcyBvdGhlcndpc2Ug
YW4gZXhwaXJlZCBjb29raWUgZm9yIHRoaXMgZG9tYWluIGNvdWxkIGFmZmVjdCBiZWhhdmlvciB3
aXRoIENGTmV0d29yay4KICAgICAvLyBDYW4gYmUgcmVtb3ZlZCBvbmNlIHJkYXI6Ly9wcm9ibGVt
LzEwMDgwMTMwIGlzIGZpeGVkLgotICAgIGlmIChsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRQcml2
YXRlQnJvd3NpbmdFbmFibGVkKQotICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRQcml2
YXRlQnJvd3NpbmdFbmFibGVkKHRydWUpOworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAg
ICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsK
KwogCiAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0QWx3YXlzQWNjZXB0Q29va2llcyhmYWxz
ZSk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tp
ZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLW1haW4tZnJhbWUuaHRtbCBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tp
bmctbWFpbi1mcmFtZS5odG1sCmluZGV4IGIxOTM3OWU2OWMzN2I1ZGEyMmNjODRlNzc4Nzg1YmE1
MWQzNTJhODMuLmI0M2FlODhmOWU5NDQ1ODJlYmVlOGZiMjYxYjgwZDQzYTM3MDY1MzMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy90aGlyZC1wYXJ0
eS1jb29raWUtYmxvY2tpbmctbWFpbi1mcmFtZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY29va2llcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmctbWFpbi1m
cmFtZS5odG1sCkBAIC05LDggKzksOCBAQCBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVy
KSB7CiAKICAgICAvLyBTdGFydCB3aXRoIGEgY2xlYW4gc3RhdGUsIGFzIG90aGVyd2lzZSBhbiBl
eHBpcmVkIGNvb2tpZSBmb3IgdGhpcyBkb21haW4gY291bGQgYWZmZWN0IGJlaGF2aW9yIHdpdGgg
Q0ZOZXR3b3JrLgogICAgIC8vIENhbiBiZSByZW1vdmVkIG9uY2UgPHJkYXI6Ly9wcm9ibGVtLzEw
MDgwMTMwPiBpcyBmaXhlZC4KLSAgICBpZiAobGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0UHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCkKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0UHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKKyAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAg
ICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CiAK
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRBbHdheXNBY2NlcHRDb29raWVzKGZhbHNlKTsK
IH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy90
aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmctdXNlci1hY3Rpb24uaHRtbCBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmct
dXNlci1hY3Rpb24uaHRtbAppbmRleCA1MTQyYjU3MmY5NGMyZjdjYjdmN2MyZjA5NzNkYjhkYjM5
NzFkNDBkLi42OGIzYjk1YjVkNzc0ZTU4MjZkMTI4MTRmNzZhN2ExYWJiOGUwN2FiIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvdGhpcmQtcGFydHkt
Y29va2llLWJsb2NraW5nLXVzZXItYWN0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jb29raWVzL3RoaXJkLXBhcnR5LWNvb2tpZS1ibG9ja2luZy11c2VyLWFj
dGlvbi5odG1sCkBAIC05LDggKzksOCBAQCBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVy
KSB7CiAKICAgICAvLyBTdGFydCB3aXRoIGEgY2xlYW4gc3RhdGUsIGFzIG90aGVyd2lzZSBhbiBl
eHBpcmVkIGNvb2tpZSBmb3IgdGhpcyBkb21haW4gY291bGQgYWZmZWN0IGJlaGF2aW9yIHdpdGgg
Q0ZOZXR3b3JrLgogICAgIC8vIENhbiBiZSByZW1vdmVkIG9uY2UgPHJkYXI6Ly9wcm9ibGVtLzEw
MDgwMTMwPiBpcyBmaXhlZC4KLSAgICBpZiAobGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0UHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCkKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0UHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKKyAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAg
ICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CiAK
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRBbHdheXNBY2NlcHRDb29raWVzKGZhbHNlKTsK
IH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy90
aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmcuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29va2llcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmcuaHRtbAppbmRleCBm
ZjQ4OTBmYzIwMjNhZDhhYmNjZGQ1NmRlMGYyYjM5OTUxNTZiZDYyLi5hMThhOGI2MzMwZDVhMTZm
ZTg3NjQxYjMzZDM5MWMxOTVjZTJmZWZkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2Nvb2tpZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb29raWVzL3RoaXJkLXBhcnR5LWNv
b2tpZS1ibG9ja2luZy5odG1sCkBAIC05LDggKzksOCBAQCBpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKSB7CiAKICAgICAvLyBTdGFydCB3aXRoIGEgY2xlYW4gc3RhdGUsIGFzIG90aGVy
d2lzZSBhbiBleHBpcmVkIGNvb2tpZSBmb3IgdGhpcyBkb21haW4gY291bGQgYWZmZWN0IGJlaGF2
aW9yIHdpdGggQ0ZOZXR3b3JrLgogICAgIC8vIENhbiBiZSByZW1vdmVkIG9uY2UgPHJkYXI6Ly9w
cm9ibGVtLzEwMDgwMTMwPiBpcyBmaXhlZC4KLSAgICBpZiAobGF5b3V0VGVzdENvbnRyb2xsZXIu
c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCkKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKKyAgICBpZiAod2luZG93LmludGVybmFs
cykKKyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQo
dHJ1ZSk7CiAKICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRBbHdheXNBY2NlcHRDb29raWVz
KGZhbHNlKTsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y3Jvc3MtZnJhbWUtYWNjZXNzLXByaXZhdGUtYnJvd3NpbmcuaHRtbCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLXByaXZhdGUtYnJvd3NpbmcuaHRt
bAppbmRleCBmYzA3NzQ5N2Q2NDVlZTViNWE1YjdkODE4ZTQxZWQzMGZkN2Q4MGQyLi4wNjg5Njhh
NWNjNzcxNGM0OTQ1MzMyNmE3ZjcxNzY2ZjBhYzhhMjQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1wcml2YXRlLWJyb3dzaW5n
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1mcmFtZS1h
Y2Nlc3MtcHJpdmF0ZS1icm93c2luZy5odG1sCkBAIC0yNSw3ICsyNSw3IEBACiAKICAgICAgICAg
ZnVuY3Rpb24gcnVuVGVzdCgpIHsKICAgICAgICAgICAgIHZhciBzdWJGcmFtZSA9IHdpbmRvdy5m
cmFtZXNbMF07Ci0gICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRQcml2YXRlQnJv
d3NpbmdFbmFibGVkKHRydWUpOworICAgICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CiAKICAgICAgICAgICAgIHRyeSB7CiAgICAgICAg
ICAgICAgICAgbG9nKCJBdHRlbXB0aW5nIHRvIHZpb2xhdGUgdGhlIHNhbWUtb3JpZ2luIHBvbGlj
eSB3aXRoIHByaXZhdGUgYnJvd3NpbmcgZW5hYmxlZC4gIElmIHRoaXMgc3VjY2VlZHMgdGhlIGNv
bnNvbGUgc2hvdWxkIG5vdCBsb2cgdGhlIHZpb2xhdGlvbi4iKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsdWdpbnMvcHJpdmF0ZS1icm93c2luZy1tb2RlLTIuaHRtbCBiL0xheW91dFRlc3Rz
L3BsdWdpbnMvcHJpdmF0ZS1icm93c2luZy1tb2RlLTIuaHRtbAppbmRleCAzMzIyMThiZTgxZmFi
NmE2MWYwMGVhNjE2NTU0YzViODgwMGY0M2Y3Li5kNWFmZDE4Nzg5ZTYwZWMyNTBiODFjYmE5Mjdk
N2E1NTU0ZDUyNjMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbHVnaW5zL3ByaXZhdGUtYnJv
d3NpbmctbW9kZS0yLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9wcml2YXRlLWJyb3dz
aW5nLW1vZGUtMi5odG1sCkBAIC0yMCw3ICsyMCw3IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKQogICAg
IHNob3VsZEJlKCJwbHVnaW4xLnByaXZhdGVCcm93c2luZ0VuYWJsZWQiLCAiZmFsc2UiKTsKIAog
ICAgIC8vIE5vdyBlbmFibGUgcHJpdmF0ZSBicm93c2luZwotICAgIGxheW91dFRlc3RDb250cm9s
bGVyLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CisgICAgaW50ZXJuYWxzLnNldHRp
bmdzLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CiAKICAgICBzaG91bGRCZSgicGx1
Z2luMS5wcml2YXRlQnJvd3NpbmdFbmFibGVkIiwgInRydWUiKTsKICAgICAKQEAgLTMwLDcgKzMw
LDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChw
bHVnaW4yKTsKICAgICAKICAgICBzaG91bGRCZSgicGx1Z2luMi5wcml2YXRlQnJvd3NpbmdFbmFi
bGVkIiwgInRydWUiKTsKLSAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRQcml2YXRlQnJvd3Np
bmdFbmFibGVkKGZhbHNlKTsKKyAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0UHJpdmF0ZUJyb3dz
aW5nRW5hYmxlZChmYWxzZSk7CiAgICAgc2hvdWxkQmUoInBsdWdpbjEucHJpdmF0ZUJyb3dzaW5n
RW5hYmxlZCIsICJmYWxzZSIpOwogICAgIHNob3VsZEJlKCJwbHVnaW4yLnByaXZhdGVCcm93c2lu
Z0VuYWJsZWQiLCAiZmFsc2UiKTsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsdWdpbnMv
cHJpdmF0ZS1icm93c2luZy1tb2RlLmh0bWwgYi9MYXlvdXRUZXN0cy9wbHVnaW5zL3ByaXZhdGUt
YnJvd3NpbmctbW9kZS5odG1sCmluZGV4IDMwZGIwZmU2ZDc1ODkyNzcxNGIxMDZjNDVhMDY3NTgw
NzYxMDlmNDQuLmU3NDUzNTc0MjEyOWM2YTE0ZDE2MmU0M2M5YWNjMzE3NThkM2YyNDcgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsdWdpbnMvcHJpdmF0ZS1icm93c2luZy1tb2RlLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9wcml2YXRlLWJyb3dzaW5nLW1vZGUuaHRtbApAQCAtMjEs
NyArMjEsNyBAQCBmdW5jdGlvbiBydW5UZXN0KCkKICAgICBzaG91bGRCZSgicGx1Z2luMS5jYWNo
ZWRQcml2YXRlQnJvd3NpbmdFbmFibGVkIiwgImZhbHNlIik7CiAKICAgICAvLyBOb3cgZW5hYmxl
IHByaXZhdGUgYnJvd3NpbmcKLSAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRQcml2YXRlQnJv
d3NpbmdFbmFibGVkKHRydWUpOworICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRQcml2YXRlQnJv
d3NpbmdFbmFibGVkKHRydWUpOwogCiAgICAgc2hvdWxkQmUoInBsdWdpbjEucHJpdmF0ZUJyb3dz
aW5nRW5hYmxlZCIsICJ0cnVlIik7CiAgICAgc2hvdWxkQmUoInBsdWdpbjEuY2FjaGVkUHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCIsICJ0cnVlIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9y
YWdlL2RvbXN0b3JhZ2UvbG9jYWxzdG9yYWdlL3ByaXZhdGUtYnJvd3NpbmctYWZmZWN0cy1zdG9y
YWdlLmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2RvbXN0b3JhZ2UvbG9jYWxzdG9yYWdlL3By
aXZhdGUtYnJvd3NpbmctYWZmZWN0cy1zdG9yYWdlLmh0bWwKaW5kZXggYjJlNDcyMDk0YzlkNzgw
YmJhMWJjYWNjNDgyOWY5NTJlMTU2ZTljNC4uMDg5ZTZiYzVmM2U3YmI4NDkxODFiOTUzZTUzNzcw
ZmU3MjM3MGI3NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9kb21zdG9yYWdlL2xv
Y2Fsc3RvcmFnZS9wcml2YXRlLWJyb3dzaW5nLWFmZmVjdHMtc3RvcmFnZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvZG9tc3RvcmFnZS9sb2NhbHN0b3JhZ2UvcHJpdmF0ZS1icm93c2lu
Zy1hZmZlY3RzLXN0b3JhZ2UuaHRtbApAQCAtMjMsNyArMjMsNyBAQCBmdW5jdGlvbiBydW5UZXN0
KCkKICAgICBsb2NhbFN0b3JhZ2UuY2xlYXIoKTsKICAgICAKICAgICBsb2NhbFN0b3JhZ2Uuc2V0
SXRlbSgidGVzdEl0ZW0iLCAiSW5pdGlhbFZhbHVlIik7ICAgIAotICAgIGxheW91dFRlc3RDb250
cm9sbGVyLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CisgICAgaW50ZXJuYWxzLnNl
dHRpbmdzLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CiAgICAgbG9nKCJJbml0aWFs
IHZhbHVlIG9mIHRlc3RJdGVtIGlzOiAiICsgbG9jYWxTdG9yYWdlLmdldEl0ZW0oInRlc3RJdGVt
IikpOwogCiAgICAgdHJ5IHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvZG9tc3Rv
cmFnZS9zZXNzaW9uc3RvcmFnZS9wcml2YXRlLWJyb3dzaW5nLWFmZmVjdHMtc3RvcmFnZS5odG1s
IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9kb21zdG9yYWdlL3Nlc3Npb25zdG9yYWdlL3ByaXZhdGUt
YnJvd3NpbmctYWZmZWN0cy1zdG9yYWdlLmh0bWwKaW5kZXggOGRkN2E2YTNjNDg3YmUwMjQ2YjYz
YTllZGRmNjQ1NDUyNGRmZTQ2MC4uOTliYWU3ZWIwNTI5MzgzZWNkODU4ZDA2NTkwYTcyZGUzZmIx
OWI3YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9kb21zdG9yYWdlL3Nlc3Npb25z
dG9yYWdlL3ByaXZhdGUtYnJvd3NpbmctYWZmZWN0cy1zdG9yYWdlLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvc3RvcmFnZS9kb21zdG9yYWdlL3Nlc3Npb25zdG9yYWdlL3ByaXZhdGUtYnJvd3Npbmct
YWZmZWN0cy1zdG9yYWdlLmh0bWwKQEAgLTIzLDcgKzIzLDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgp
CiAgICAgfQogICAgIAogICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oInRlc3RJdGVtIiwgIklu
aXRpYWxWYWx1ZSIpOyAgICAKLSAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRQcml2YXRlQnJv
d3NpbmdFbmFibGVkKHRydWUpOworICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRQcml2YXRlQnJv
d3NpbmdFbmFibGVkKHRydWUpOwogICAgIGxvZygiSW5pdGlhbCB2YWx1ZSBvZiB0ZXN0SXRlbSBp
czogIiArIHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oInRlc3RJdGVtIikpOwogCiAgICAgdHJ5IHsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2Uvd2Vic3FsL3ByaXZhdGUtYnJvd3Npbmct
bm9yZWFkLW5vd3JpdGUuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2Uvd2Vic3FsL3ByaXZhdGUt
YnJvd3Npbmctbm9yZWFkLW5vd3JpdGUuaHRtbAppbmRleCBiOWI1ODgyYjRkZTFjNTYyMDY0YzVl
ODQ3NzAxMDY5NzlhMDFmYzE1Li42ZjNlMWM2ODFhMDYxNmY2YjExNjUxMzk0NTJmMzQ5MzM0Nzhi
YmQ2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL3dlYnNxbC9wcml2YXRlLWJyb3dz
aW5nLW5vcmVhZC1ub3dyaXRlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS93ZWJzcWwv
cHJpdmF0ZS1icm93c2luZy1ub3JlYWQtbm93cml0ZS5odG1sCkBAIC02Nyw4ICs2Nyw4IEBAIGZ1
bmN0aW9uIHJ1blByaXZhdGVCcm93c2luZ1Rlc3RzKCkKIHsKICAgICBjb21wbGV0ZWQgPSAwOwog
Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIuc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKKyAgICBpZiAod2lu
ZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldFByaXZhdGVCcm93
c2luZ0VuYWJsZWQodHJ1ZSk7CiAgICAgCiAgICAgZm9yIChpIGluIHByaXZhdGVCcm93c2luZ1N0
YXRlbWVudHMpCiAgICAgICAgIHRoZVRyYW5zYWN0aW9uLmV4ZWN1dGVTcWwocHJpdmF0ZUJyb3dz
aW5nU3RhdGVtZW50c1tpXSwgW10sIHByaXZhdGVCcm93c2luZ1N1Y2Nlc3NGdW5jdGlvbiwgcHJp
dmF0ZUJyb3dzaW5nRXJyb3JGdW5jdGlvbik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143629</attachid>
            <date>2012-05-23 13:07:58 -0700</date>
            <delta_ts>2012-05-23 13:46:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87278-20120523170757.patch</filename>
            <type>text/plain</type>
            <size>44225</size>
            <attacher name="Marcelo Lira">marcelo.lira</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4MTg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjM5NGM5OTYwYmQ1MzNl
ZDY4ZmUwODJhZGJiNjNhZDVmMTY5MjRjZC4uYTViYmZlODQxMTZiOGVhNDkyYzllMjU3Nzg2MWU0
NmM0NDIxNjdjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTA1LTIzICBNYXJj
ZWxvIExpcmEgIDxtYXJjZWxvLmxpcmFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBNb3ZlIHNl
dFByaXZhdGVCcm93c2luZ0VuYWJsZWQgZnJvbSBsYXlvdXRUZXN0Q29udHJvbGxlciB0byB3aW5k
b3cuaW50ZXJuYWxzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTg3Mjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoKSB0byB3aW5kb3cuaW50ZXJuYWxz
LnNldHRpbmdzLiBObyBuZXcgdGVzdHMsIGJ1dCB0aGlzCisgICAgICAgIGNoYW5nZSB3aWxsIGFs
bG93IG1vcmUgdGVzdHMgdG8gcnVuIGluIFdlYktpdFRlc3RSdW5uZXIgYW5kIERSVCBmb3IgcG9y
dHMgdGhhdCB3ZXJlbid0CisgICAgICAgIGltcGxlbWVudGluZyB0aGlzIGZ1bmN0aW9uIGJlZm9y
ZS4KKworICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpJbnRlcm5hbFNldHRpbmdzOjpJbnRlcm5hbFNldHRpbmdzKToKKyAgICAgICAgKFdl
YkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnJlc3RvcmVUbyk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnRlcm5hbFNldHRpbmdzOjpzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKToKKyAgICAgICAgKFdl
YkNvcmUpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oOgorICAgICAgICAo
SW50ZXJuYWxTZXR0aW5ncyk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlk
bDoKKwogMjAxMi0wNS0yMyAgQWxleGVpIEZpbGlwcG92ICA8YWxleGVpZkBjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogZmlsdGVyIG91dCBkZWJ1Z2dpbmcgc3R1ZmYgZnJv
bSB0aGUgaGVhcCBjbGFzcyB2aWV3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggMTY0NWM0MDE3NDRiNWFl
ODliNDhkYjdhNjE3ZjQ2NzYwYjU0MjhiYi4uMDMyNjlmYmU3NWUyNWNhNTk0ODI4NGRhYTE3ZWEw
Zjk0OWYxMzc4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTA1LTIz
ICBNYXJjZWxvIExpcmEgIDxtYXJjZWxvLmxpcmFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBN
b3ZlIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQgZnJvbSBsYXlvdXRUZXN0Q29udHJvbGxlciB0
byB3aW5kb3cuaW50ZXJuYWxzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTg3Mjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUmVtb3ZlIE1hYyBwcml2YXRlIEFQSSB0byBnZXQvc2V0IHRoZSBwcml2YXRl
IGJyb3dzaW5nIGVuYWJsZWQgc2V0dGluZywKKyAgICAgICAgc2luY2UgaXQgd2FzIG9ubHkgdGhl
cmUgZm9yIHRoZSBEUlQuCisKKyAgICAgICAgKiBXZWJLaXQub3JkZXI6CisgICAgICAgICogV2Vi
Vmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYlBy
ZWZlcmVuY2VzLmg6CisgICAgICAgICogV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbToKKyAgICAg
ICAgKCtbV2ViUHJlZmVyZW5jZXMgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2Vi
Vmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJlZmVyZW5jZXNDaGFuZ2VkOl0pOgorCiAy
MDEyLTA1LTIyICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAg
ICAgIEFkZCBhIHF1aXJrIGZvciBhcHBsaWNhdGlvbnMgdGhhdCBkZXBlbmQgb24gdGhlIHJlbGF0
aXZlIG9yZGVyaW5nIG9mIHByb2dyZXNzQ29tcGxldGVkL2RpZEZpbmlzaExvYWQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5n
ZUxvZwppbmRleCA0NzFmZWYzZGU1MGM4YmU3NDk1NjJkOGYyZDFlOTYzYTk5NWQwYTFhLi43ZDA4
MTI4Y2M1ODJmOTQ3YmQ3NmVkZjZkMmUwODBiMjBjY2QzOGNjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMTItMDUtMjMgIE1hcmNlbG8gTGlyYSAgPG1hcmNlbG8ubGlyYUBv
cGVuYm9zc2Eub3JnPgorCisgICAgICAgIE1vdmUgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCBm
cm9tIGxheW91dFRlc3RDb250cm9sbGVyIHRvIHdpbmRvdy5pbnRlcm5hbHMoKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODcyNzgKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgV2luIHByaXZhdGUg
QVBJIHRvIGdldC9zZXQgcHJpdmF0ZSBicm93c2luZyBlbmFibGVkIHNldHRpbmcuIEZvbGxvdyB0
aGUgcHJldmlvdXMKKyAgICAgICAgcmVtb3ZhbHMgdGhhdCBrZWVwIHRoZSB2aXJ0dWFsIGZ1bmN0
aW9ucyB0aGVyZSBidXQgZmFpbGluZy4KKworICAgICAgICAqIEludGVyZmFjZXMvSVdlYlByZWZl
cmVuY2VzLmlkbDoKKyAgICAgICAgKiBXZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAg
ICAgKiBXZWJQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6dW51c2Vk
Nyk6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6dW51c2VkOCk6CisgICAgICAgICogV2ViUHJl
ZmVyZW5jZXMuaDoKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzKToKKyAgICAgICAgKiBXZWJWaWV3
LmNwcDoKKyAgICAgICAgKFdlYlZpZXc6Om5vdGlmeVByZWZlcmVuY2VzQ2hhbmdlZCk6CisKIDIw
MTItMDUtMjEgIENhaW8gTWFyY2VsbyBkZSBPbGl2ZWlyYSBGaWxobyAgPGNhaW8ub2xpdmVpcmFA
b3BlbmJvc3NhLm9yZz4KIAogICAgICAgICBNb3ZlIHNldEVkaXRpbmdCZWhhdmlvcigpIGZyb20g
bGF5b3V0VGVzdENvbnRyb2xsZXIgdG8gd2luZG93LmludGVybmFscwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKaW5kZXggZWZiMzI4NTg1NTg4N2YyZjA2M2E3
YzFjMDEyMGE0YWMwNTE3NjllMy4uYTdjZDA3ZTI3OWRhOTViZDVkZWEzODFmZDQ2N2U5NTMyNWNl
MzJlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCkBA
IC05OSw2ICs5OSw3IEBAIEludGVybmFsU2V0dGluZ3M6OkludGVybmFsU2V0dGluZ3MoRnJhbWUq
IGZyYW1lKQogICAgICwgbV9vcmlnaW5hbFNoYWRvd0RPTUVuYWJsZWQoUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6c2hhZG93RE9NRW5hYmxlZCgpKQogI2VuZGlmCiAgICAgLCBtX29yaWdpbmFsRWRp
dGluZ0JlaGF2aW9yKHNldHRpbmdzKCktPmVkaXRpbmdCZWhhdmlvclR5cGUoKSkKKyAgICAsIG1f
b3JpZ2luYWxQcml2YXRlQnJvd3NpbmdFbmFibGVkKHNldHRpbmdzKCktPnByaXZhdGVCcm93c2lu
Z0VuYWJsZWQoKSkKIHsKIH0KIApAQCAtMTExLDYgKzExMiw3IEBAIHZvaWQgSW50ZXJuYWxTZXR0
aW5nczo6cmVzdG9yZVRvKFNldHRpbmdzKiBzZXR0aW5ncykKICAgICBSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpzZXRTaGFkb3dET01FbmFibGVkKG1fb3JpZ2luYWxTaGFkb3dET01FbmFibGVkKTsK
ICNlbmRpZgogICAgIHNldHRpbmdzLT5zZXRFZGl0aW5nQmVoYXZpb3JUeXBlKG1fb3JpZ2luYWxF
ZGl0aW5nQmVoYXZpb3IpOworICAgIHNldHRpbmdzLT5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVk
KG1fb3JpZ2luYWxQcml2YXRlQnJvd3NpbmdFbmFibGVkKTsKIH0KIAogU2V0dGluZ3MqIEludGVy
bmFsU2V0dGluZ3M6OnNldHRpbmdzKCkgY29uc3QKQEAgLTM0NCw0ICszNDYsMTAgQEAgdm9pZCBJ
bnRlcm5hbFNldHRpbmdzOjpzZXRFZGl0aW5nQmVoYXZpb3IoY29uc3QgU3RyaW5nJiBlZGl0aW5n
QmVoYXZpb3IsIEV4Y2VwdGkKICAgICAgICAgZWMgPSBTWU5UQVhfRVJSOwogfQogCit2b2lkIElu
dGVybmFsU2V0dGluZ3M6OnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoYm9vbCBlbmFibGVkLCBF
eGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBJbnRlcm5hbFNldHRpbmdzR3VhcmRGb3JTZXR0aW5n
cygpOworICAgIHNldHRpbmdzKCktPnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoZW5hYmxlZCk7
Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0
aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgKaW5kZXgg
OGRmZGE3NmVkYzhkODU4NzY2YzM3ODIzNzg0YjUwMDc2Njc4MjJjNi4uZWVmYjY5OGY5ZTc5NGVk
ZDFiNTA4ODI4Zjk2YWY4MjMwMDM5YzFhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbFNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbFNldHRpbmdzLmgKQEAgLTc2LDYgKzc2LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q1NT
RXhjbHVzaW9uc0VuYWJsZWQoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9p
ZCBzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShib29sLCBFeGNlcHRpb25Db2Rl
Jik7CiAgICAgdm9pZCBzZXRFZGl0aW5nQmVoYXZpb3IoY29uc3QgU3RyaW5nJiwgRXhjZXB0aW9u
Q29kZSYpOworICAgIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGVuYWJsZWQs
IEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIHZvaWQgcmVzdG9yZVRvKFNldHRpbmdzKik7CiAKQEAg
LTkzLDYgKzk0LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1fb3JpZ2luYWxTaGFkb3dET01FbmFi
bGVkOwogI2VuZGlmCiAgICAgRWRpdGluZ0JlaGF2aW9yVHlwZSBtX29yaWdpbmFsRWRpdGluZ0Jl
aGF2aW9yOworICAgIGJvb2wgbV9vcmlnaW5hbFByaXZhdGVCcm93c2luZ0VuYWJsZWQ7CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bFNldHRpbmdzLmlkbAppbmRleCA2ODg5OTcxZjMxNmZhMWE3ZDc4N2ZlNjQzZDliOTA3YjJiOTRl
NjE1Li5kYmY5MTYxZDRiYjFhMWYzOTJjZWEzNzcwMTcyMDYyYmEyMzJjYjc2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKQEAgLTU0LDYgKzU0LDcgQEAg
bW9kdWxlIHdpbmRvdyB7CiAgICAgICAgIHZvaWQgc2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoaW4g
Ym9vbGVhbiBlbmFibGVkKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRN
ZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShpbiBib29sZWFuIGVuYWJsZWQpIHJhaXNl
cyhET01FeGNlcHRpb24pOwogICAgICAgICB2b2lkIHNldEVkaXRpbmdCZWhhdmlvcihpbiBET01T
dHJpbmcgYmVoYXZpb3IpIHJhaXNlcyhET01FeGNlcHRpb24pOworICAgICAgICB2b2lkIHNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQoaW4gYm9vbGVhbiBlbmFibGVkKSByYWlzZXMoRE9NRXhjZXB0
aW9uKTsKICAgICB9OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJLaXQu
b3JkZXIgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJLaXQub3JkZXIKaW5kZXggMjdlOTQxZWU3YzY3
OTE0MzEyMDhlODBkMmVlYWEwNjYwZTUxNGU2Yy4uNDBiZWY2MzA1MGJhY2NjZDJlNDNmYThhNTcy
NzdhNzg0YThiMWZiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViS2l0Lm9yZGVy
CisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYktpdC5vcmRlcgpAQCAtNzIsNyArNzIsNiBAQCBf
X1pMMTRmb250RnJvbU5TRm9udFA2TlNGb250CiArW1dlYkhpc3RvcnkoV2ViUHJpdmF0ZSkgX3Nl
dFZpc2l0ZWRMaW5rVHJhY2tpbmdFbmFibGVkOl0KICtbV2ViSGlzdG9yeShXZWJQcml2YXRlKSBf
cmVtb3ZlQWxsVmlzaXRlZExpbmtzXQogLVtXZWJQcmVmZXJlbmNlcyhXZWJQcml2YXRlKSBzZXRS
ZXNwZWN0U3RhbmRhcmRTdHlsZUtleUVxdWl2YWxlbnRzOl0KLS1bV2ViUHJlZmVyZW5jZXMgc2V0
UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZDpdCiAtW1dlYlByZWZlcmVuY2VzKFdlYlByaXZhdGUpIHNl
dERPTVBhc3RlQWxsb3dlZDpdCiAtW1dlYlByZWZlcmVuY2VzIHNldENhY2hlTW9kZWw6XQogLVtX
ZWJQcmVmZXJlbmNlcyBfc2V0SW50ZWdlclZhbHVlOmZvcktleTpdCkBAIC0zNzQsNyArMzczLDYg
QEAgX19aTjNXVEYxMkF0b21pY1N0cmluZ0MyRVA4TlNTdHJpbmcKIC1bV2ViUHJlZmVyZW5jZXMo
V2ViUHJpdmF0ZSkgZGF0YWJhc2VzRW5hYmxlZF0KIC1bV2ViUHJlZmVyZW5jZXMoV2ViUHJpdmF0
ZSkgbG9jYWxTdG9yYWdlRW5hYmxlZF0KIC1bV2ViUHJlZmVyZW5jZXMoV2ViUHJpdmF0ZSkgZXhw
ZXJpbWVudGFsTm90aWZpY2F0aW9uc0VuYWJsZWRdCi0tW1dlYlByZWZlcmVuY2VzIHByaXZhdGVC
cm93c2luZ0VuYWJsZWRdCiAtW1dlYlByZWZlcmVuY2VzIHNhbnNTZXJpZkZvbnRGYW1pbHldCiAt
W1dlYlByZWZlcmVuY2VzIHNlcmlmRm9udEZhbWlseV0KIC1bV2ViUHJlZmVyZW5jZXMgc3RhbmRh
cmRGb250RmFtaWx5XQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQ
cmVmZXJlbmNlS2V5c1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJl
ZmVyZW5jZUtleXNQcml2YXRlLmgKaW5kZXggMTJiNTRlN2MwNTg5MGRhZDhjYTg2ZTQ1MmUxM2U1
MWEzOGI0MTg1NC4uZDRmNzc4YTBjOTMwZmY2MmUyYzdjMWExMGUxZmI3YzRhOTVkZGFjOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZh
dGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJp
dmF0ZS5oCkBAIC02NCw3ICs2NCw2IEBACiAjZGVmaW5lIFdlYktpdExvYWRTaXRlSWNvbnNLZXkg
QCJXZWJLaXRMb2FkU2l0ZUljb25zS2V5IgogI2RlZmluZSBXZWJLaXRCYWNrRm9yd2FyZENhY2hl
RXhwaXJhdGlvbkludGVydmFsS2V5IEAiV2ViS2l0QmFja0ZvcndhcmRDYWNoZUV4cGlyYXRpb25J
bnRlcnZhbEtleSIKICNkZWZpbmUgV2ViS2l0VGFiVG9MaW5rc1ByZWZlcmVuY2VLZXkgQCJXZWJL
aXRUYWJUb0xpbmtzUHJlZmVyZW5jZUtleSIKLSNkZWZpbmUgV2ViS2l0UHJpdmF0ZUJyb3dzaW5n
RW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRQcml2YXRlQnJvd3NpbmdFbmFibGVkIgogI2Rl
ZmluZSBXZWJTbWFydEluc2VydERlbGV0ZUVuYWJsZWQgQCJXZWJTbWFydEluc2VydERlbGV0ZUVu
YWJsZWQiCiAjZGVmaW5lIFdlYkNvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCBAIldlYkNv
bnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCIKICNkZWZpbmUgV2ViR3JhbW1hckNoZWNraW5n
RW5hYmxlZCBAIldlYkdyYW1tYXJDaGVja2luZ0VuYWJsZWQiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlByZWZlcmVuY2VzLmgKaW5kZXggNmUwMTcwOWYwODc3YzMzNTIyNWE1YmFlNjA3
N2E1NTEzOWRhYzBkZi4uNTE5ZDU3ZjM3OTliOTk1M2NhZjgwZTU4ZWIxZmM2NDMzZjQ3NzkzOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMuaApAQCAtMzQ3LDE5
ICszNDcsNiBAQCBleHRlcm4gTlNTdHJpbmcgKldlYlByZWZlcmVuY2VzQ2hhbmdlZE5vdGlmaWNh
dGlvbjsKIC0gKEJPT0wpc2hvdWxkUHJpbnRCYWNrZ3JvdW5kczsKIAogLyohCi0gICAgQG1ldGhv
ZCBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkOgotICAgIEBwYXJhbSBmbGFnIAotICAgIEBhYnN0
cmFjdCBJZiBwcml2YXRlIGJyb3dzaW5nIGlzIGVuYWJsZWQsIFdlYktpdCB3aWxsIG5vdCBzdG9y
ZSBpbmZvcm1hdGlvbgotICAgIGFib3V0IHNpdGVzIHRoZSB1c2VyIHZpc2l0cy4KLSAqLwotLSAo
dm9pZClzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkOihCT09MKWZsYWc7Ci0KLS8qIQotICAgIEBt
ZXRob2QgcHJpdmF0ZUJyb3dzaW5nRW5hYmxlZAotICovCi0tIChCT09MKXByaXZhdGVCcm93c2lu
Z0VuYWJsZWQ7Ci0KLS8qIQogICAgIEBtZXRob2Qgc2V0VGFic1RvTGlua3M6CiAgICAgQHBhcmFt
IGZsYWcgCiAgICAgQGFic3RyYWN0IElmIHRhYnNUb0xpbmtzIGlzIFlFUywgdGhlIHRhYiBrZXkg
d2lsbCBmb2N1cyBsaW5rcyBhbmQgZm9ybSBjb250cm9scy4gCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQppbmRleCA2Nzk2MjM3YTVjNmZkNWU5ODAyOTNjYzRk
N2RjZjM0MDViNTExYjQ2Li40ZTgxYmU4Yjk4NThkMGEzMTlkYTczZThlMzZlMGE0NGQ1NDhlMDc5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KQEAgLTMz
OCw3ICszMzgsNiBAQCBzdGF0aWMgV2ViQ2FjaGVNb2RlbCBjYWNoZU1vZGVsRm9yTWFpbkJ1bmRs
ZSh2b2lkKQogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdlYktpdExv
YWRTaXRlSWNvbnNLZXksCiAgICAgICAgIEAiMTgwMCIsICAgICAgICAgICAgICAgICAgICAgICAg
V2ViS2l0QmFja0ZvcndhcmRDYWNoZUV4cGlyYXRpb25JbnRlcnZhbEtleSwKICAgICAgICAgW05T
TnVtYmVyIG51bWJlcldpdGhCb29sOk5PXSwgICBXZWJLaXRUYWJUb0xpbmtzUHJlZmVyZW5jZUtl
eSwKLSAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOk5PXSwgICBXZWJLaXRQcml2YXRl
QnJvd3NpbmdFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldp
dGhCb29sOk5PXSwgICBXZWJLaXRSZXNwZWN0U3RhbmRhcmRTdHlsZUtleUVxdWl2YWxlbnRzUHJl
ZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOk5PXSwgICBXZWJL
aXRTaG93c1VSTHNJblRvb2xUaXBzUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51
bWJlcldpdGhCb29sOk5PXSwgICBXZWJLaXRTaG93c1Rvb2xUaXBPdmVyVHJ1bmNhdGVkVGV4dFBy
ZWZlcmVuY2VLZXksCkBAIC03ODMsMTYgKzc4Miw2IEBAIHN0YXRpYyBXZWJDYWNoZU1vZGVsIGNh
Y2hlTW9kZWxGb3JNYWluQnVuZGxlKHZvaWQpCiAgICAgcmV0dXJuIFtzZWxmIF9ib29sVmFsdWVG
b3JLZXk6V2ViS2l0VGFiVG9MaW5rc1ByZWZlcmVuY2VLZXldOwogfQogCi0tICh2b2lkKXNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQ6KEJPT0wpZmxhZwotewotICAgIFtzZWxmIF9zZXRCb29sVmFs
dWU6ZmxhZyBmb3JLZXk6V2ViS2l0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZFByZWZlcmVuY2VLZXld
OwotfQotCi0tIChCT09MKXByaXZhdGVCcm93c2luZ0VuYWJsZWQKLXsKLSAgICByZXR1cm4gW3Nl
bGYgX2Jvb2xWYWx1ZUZvcktleTpXZWJLaXRQcml2YXRlQnJvd3NpbmdFbmFibGVkUHJlZmVyZW5j
ZUtleV07Ci19Ci0KIC0gKHZvaWQpc2V0VXNlc1BhZ2VDYWNoZTooQk9PTCl1c2VzUGFnZUNhY2hl
CiB7CiAgICAgW3NlbGYgX3NldEJvb2xWYWx1ZTp1c2VzUGFnZUNhY2hlIGZvcktleTpXZWJLaXRV
c2VzUGFnZUNhY2hlUHJlZmVyZW5jZUtleV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcu
bW0KaW5kZXggYzkzODIzYTM5NDBjYTg2NmZkYWM2NmU5ZDA1ODFhZGZlNjcwZmU0My4uNmY2MDk1
MmNjNDQzZGI4YzRlNTE4YmY2ZjI3ZTUxMzNhNzhmMWY4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViVmlldy5tbQpAQCAtMTQ0Miw3ICsxNDQyLDYgQEAgc3RhdGljIGJvb2wgbmVlZHNTZWxm
UmV0YWluV2hpbGVMb2FkaW5nUXVpcmsoKQogI2VuZGlmCiAgICAgc2V0dGluZ3MtPnNldExvY2Fs
U3RvcmFnZUVuYWJsZWQoW3ByZWZlcmVuY2VzIGxvY2FsU3RvcmFnZUVuYWJsZWRdKTsKICAgICBz
ZXR0aW5ncy0+c2V0RXhwZXJpbWVudGFsTm90aWZpY2F0aW9uc0VuYWJsZWQoW3ByZWZlcmVuY2Vz
IGV4cGVyaW1lbnRhbE5vdGlmaWNhdGlvbnNFbmFibGVkXSk7Ci0gICAgc2V0dGluZ3MtPnNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQoW3ByZWZlcmVuY2VzIHByaXZhdGVCcm93c2luZ0VuYWJsZWRd
KTsKICAgICBzZXR0aW5ncy0+c2V0U2Fuc1NlcmlmRm9udEZhbWlseShbcHJlZmVyZW5jZXMgc2Fu
c1NlcmlmRm9udEZhbWlseV0pOwogICAgIHNldHRpbmdzLT5zZXRTZXJpZkZvbnRGYW1pbHkoW3By
ZWZlcmVuY2VzIHNlcmlmRm9udEZhbWlseV0pOwogICAgIHNldHRpbmdzLT5zZXRTdGFuZGFyZEZv
bnRGYW1pbHkoW3ByZWZlcmVuY2VzIHN0YW5kYXJkRm9udEZhbWlseV0pOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC93aW4vSW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXMuaWRsIGIvU291cmNl
L1dlYktpdC93aW4vSW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXMuaWRsCmluZGV4IGExNTExYmI3
ZWVjZGVmYzNhZWY5ZDJjOGI2ZWE0YThmYjRhNWE1YTguLjYxMzIwZWQ2Y2UzMDZlZjBmZjZlNjYw
M2M0MTZmMGQyMTA0MTQxN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL0ludGVyZmFj
ZXMvSVdlYlByZWZlcmVuY2VzLmlkbAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9JbnRlcmZhY2Vz
L0lXZWJQcmVmZXJlbmNlcy5pZGwKQEAgLTEzOCw4ICsxMzgsOCBAQCBpbnRlcmZhY2UgSVdlYlBy
ZWZlcmVuY2VzIDogSVVua25vd24KICAgICBIUkVTVUxUIHNldFNob3VsZFByaW50QmFja2dyb3Vu
ZHMoW2luXSBCT09MIGVuYWJsZWQpOwogICAgIEhSRVNVTFQgc2hvdWxkUHJpbnRCYWNrZ3JvdW5k
cyhbb3V0LCByZXR2YWxdIEJPT0wqIGVuYWJsZWQpOwogCi0gICAgSFJFU1VMVCBzZXRQcml2YXRl
QnJvd3NpbmdFbmFibGVkKFtpbl0gQk9PTCBlbmFibGVkKTsKLSAgICBIUkVTVUxUIHByaXZhdGVC
cm93c2luZ0VuYWJsZWQoW291dCwgcmV0dmFsXSBCT09MKiBlbmFibGVkKTsKKyAgICBIUkVTVUxU
IHVudXNlZDEoKTsKKyAgICBIUkVTVUxUIHVudXNlZDIoKTsKIAogICAgIEhSRVNVTFQgc2V0VGFi
c1RvTGlua3MoW2luXSBCT09MIGVuYWJsZWQpOwogICAgIEhSRVNVTFQgdGFic1RvTGlua3MoW291
dCwgcmV0dmFsXSBCT09MKiBlbmFibGVkKTsKQEAgLTE0Nyw4ICsxNDcsOCBAQCBpbnRlcmZhY2Ug
SVdlYlByZWZlcmVuY2VzIDogSVVua25vd24KICAgICBIUkVTVUxUIHRleHRBcmVhc0FyZVJlc2l6
YWJsZShbb3V0LCByZXR2YWxdIEJPT0wqIGVuYWJsZWQpOwogICAgIEhSRVNVTFQgc2V0VGV4dEFy
ZWFzQXJlUmVzaXphYmxlKFtpbl0gQk9PTCBlbmFibGVkKTsKIAotICAgIEhSRVNVTFQgdW51c2Vk
MSgpOwotICAgIEhSRVNVTFQgdW51c2VkMigpOworICAgIEhSRVNVTFQgdW51c2VkMygpOworICAg
IEhSRVNVTFQgdW51c2VkNCgpOwogCiAgICAgSFJFU1VMVCBpY29uRGF0YWJhc2VMb2NhdGlvbihb
b3V0LCByZXR2YWxdIEJTVFIqIGxvY2F0aW9uKTsKICAgICBIUkVTVUxUIHNldEljb25EYXRhYmFz
ZUxvY2F0aW9uKFtpbl0gQlNUUiBsb2NhdGlvbik7CkBAIC0xODEsOCArMTgxLDggQEAgaW50ZXJm
YWNlIElXZWJQcmVmZXJlbmNlcyA6IElVbmtub3duCiAgICAgSFJFU1VMVCBjYWNoZU1vZGVsKFtv
dXQsIHJldHZhbF0gV2ViQ2FjaGVNb2RlbCogY2FjaGVNb2RlbCk7CiAgICAgSFJFU1VMVCBzZXRD
YWNoZU1vZGVsKFtpbl0gV2ViQ2FjaGVNb2RlbCBjYWNoZU1vZGVsKTsKIAotICAgIEhSRVNVTFQg
dW51c2VkMygpOwotICAgIEhSRVNVTFQgdW51c2VkNCgpOworICAgIEhSRVNVTFQgdW51c2VkNSgp
OworICAgIEhSRVNVTFQgdW51c2VkNigpOwogCiAgICAgSFJFU1VMVCBzZXRab29tc1RleHRPbmx5
KEJPT0wgem9vbXNUZXh0T25seSk7CiAgICAgSFJFU1VMVCB6b29tc1RleHRPbmx5KEJPT0wgKnpv
b21zVGV4dE9ubHkpOwpAQCAtMTkwLDggKzE5MCw4IEBAIGludGVyZmFjZSBJV2ViUHJlZmVyZW5j
ZXMgOiBJVW5rbm93bgogICAgIEhSRVNVTFQgc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJs
ZWQoQk9PTCBhY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCk7CiAgICAgSFJFU1VMVCBhY2Nl
bGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZChCT09MICphY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5h
YmxlZCk7CiAKLSAgICBIUkVTVUxUIHVudXNlZDUoKTsKLSAgICBIUkVTVUxUIHVudXNlZDYoKTsK
KyAgICBIUkVTVUxUIHVudXNlZDcoKTsKKyAgICBIUkVTVUxUIHVudXNlZDgoKTsKIAogICAgIEhS
RVNVTFQgc2V0QVZGb3VuZGF0aW9uRW5hYmxlZChCT09MIGF2Rm91bmRhdGlvbkVuYWJsZWQpOwog
ICAgIEhSRVNVTFQgYXZGb3VuZGF0aW9uRW5hYmxlZChCT09MICphdkZvdW5kYXRpb25FbmFibGVk
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0
ZS5oIGIvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgKaW5kZXgg
OTVlOWY5ZjVmOTI2MzYzZjUxNWIyMWIzMzM0ZTlhN2QxNmE0NTIyNS4uYjllNTcwZTNkZGIzMmE5
Y2M5OGRlMTc4OGQ4ZjQ3Nzk3ZmUwMzcwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4v
V2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViUHJl
ZmVyZW5jZUtleXNQcml2YXRlLmgKQEAgLTYyLDcgKzYyLDYgQEAKICNkZWZpbmUgV2ViS2l0TG9h
ZFNpdGVJY29uc0tleSAiV2ViS2l0TG9hZFNpdGVJY29uc0tleSIKICNkZWZpbmUgV2ViS2l0QmFj
a0ZvcndhcmRDYWNoZUV4cGlyYXRpb25JbnRlcnZhbEtleSAiV2ViS2l0QmFja0ZvcndhcmRDYWNo
ZUV4cGlyYXRpb25JbnRlcnZhbEtleSIKICNkZWZpbmUgV2ViS2l0VGFiVG9MaW5rc1ByZWZlcmVu
Y2VLZXkgIldlYktpdFRhYlRvTGlua3NQcmVmZXJlbmNlS2V5IgotI2RlZmluZSBXZWJLaXRQcml2
YXRlQnJvd3NpbmdFbmFibGVkUHJlZmVyZW5jZUtleSAiV2ViS2l0UHJpdmF0ZUJyb3dzaW5nRW5h
YmxlZCIKICNkZWZpbmUgV2ViS2l0SWNvbkRhdGFiYXNlTG9jYXRpb25LZXkgIldlYktpdEljb25E
YXRhYmFzZUxvY2F0aW9uIgogI2RlZmluZSBXZWJLaXRJY29uRGF0YWJhc2VFbmFibGVkUHJlZmVy
ZW5jZUtleSAiV2ViS2l0SWNvbkRhdGFiYXNlRW5hYmxlZCIKICNkZWZpbmUgV2ViS2l0VXNlc1Bh
Z2VDYWNoZVByZWZlcmVuY2VLZXkgIldlYktpdFVzZXNQYWdlQ2FjaGVQcmVmZXJlbmNlS2V5Igpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuY3BwIGIvU291cmNl
L1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuY3BwCmluZGV4IDM5NDZiNWU3MjA3NWFlZWZlNTUx
ZDIzNmQ0YjhiMTc3M2ZmZTZhMzcuLmNmNzkyZGQyYTYxNGUzYzMxMTI4OTlkNzI0MGMxMDdmNTk5
OGM4OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5jcHAKQEAgLTEwMzQsMTggKzEw
MzQsMTYgQEAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJQcmVmZXJlbmNlczo6c2hvdWxk
UHJpbnRCYWNrZ3JvdW5kcygKICAgICByZXR1cm4gU19PSzsKIH0KIAotSFJFU1VMVCBTVERNRVRI
T0RDQUxMVFlQRSBXZWJQcmVmZXJlbmNlczo6c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCggCi0g
ICAgLyogW2luXSAqLyBCT09MIGVuYWJsZWQpCitIUkVTVUxUIFdlYlByZWZlcmVuY2VzOjp1bnVz
ZWQ3KCkKIHsKLSAgICBzZXRCb29sVmFsdWUoQ0ZTVFIoV2ViS2l0UHJpdmF0ZUJyb3dzaW5nRW5h
YmxlZFByZWZlcmVuY2VLZXkpLCBlbmFibGVkKTsKLSAgICByZXR1cm4gU19PSzsKKyAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gRV9GQUlMOwogfQogCi1IUkVTVUxUIFNURE1F
VEhPRENBTExUWVBFIFdlYlByZWZlcmVuY2VzOjpwcml2YXRlQnJvd3NpbmdFbmFibGVkKCAKLSAg
ICAvKiBbcmV0dmFsXVtvdXRdICovIEJPT0wqIGVuYWJsZWQpCitIUkVTVUxUIFdlYlByZWZlcmVu
Y2VzOjp1bnVzZWQ4KCkKIHsKLSAgICAqZW5hYmxlZCA9IGJvb2xWYWx1ZUZvcktleShDRlNUUihX
ZWJLaXRQcml2YXRlQnJvd3NpbmdFbmFibGVkUHJlZmVyZW5jZUtleSkpOwotICAgIHJldHVybiBT
X09LOworICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBFX0ZBSUw7CiB9CiAK
IEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViUHJlZmVyZW5jZXM6OnNldFRhYnNUb0xpbmtz
KCAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmggYi9Tb3Vy
Y2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5oCmluZGV4IGJmYzRkMzE1OWViNDA0YThhY2Q2
N2QwMjg2YmE0NzJiMjMwNGNhNDEuLmE3MDBhNjdhMWM2OTdlYmRjOTU3Y2I3OTAyYjFhMjU0MjVm
OTFkOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmgKKysr
IGIvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuaApAQCAtMTkzLDExICsxOTMsOCBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIHNob3VsZFBy
aW50QmFja2dyb3VuZHMoIAogICAgICAgICAvKiBbcmV0dmFsXVtvdXRdICovIEJPT0wqIGVuYWJs
ZWQpOwogICAgIAotICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBzZXRQcml2
YXRlQnJvd3NpbmdFbmFibGVkKCAKLSAgICAgICAgLyogW2luXSAqLyBCT09MIGVuYWJsZWQpOwot
ICAgIAotICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBwcml2YXRlQnJvd3Np
bmdFbmFibGVkKCAKLSAgICAgICAgLyogW3JldHZhbF1bb3V0XSAqLyBCT09MKiBlbmFibGVkKTsK
KyAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgdW51c2VkNygpOworICAgIHZp
cnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSB1bnVzZWQ4KCk7CiAgICAgCiAgICAgdmly
dHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIHNldFRhYnNUb0xpbmtzKCAKICAgICAgICAg
LyogW2luXSAqLyBCT09MIGVuYWJsZWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4v
V2ViVmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAppbmRleCBmYWViYzc1
MzNhZjZkMmJlMWM0MjVjOTBkNWJmN2UxNGVjMjQ0ZjhlLi4zMDk4NDUwNzlkZjgzODZhYjQyNGY2
YTQ1YTQyY2JhZmI3YThjMTFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcApAQCAtNDY2NywxMSArNDY2
Nyw2IEBAIEhSRVNVTFQgV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKElXZWJOb3Rp
ZmljYXRpb24qIG5vdGlmaWNhdGlvbikKICAgICAgICAgcmV0dXJuIGhyOwogICAgIHNldHRpbmdz
LT5zZXRQbHVnaW5zRW5hYmxlZCghIWVuYWJsZWQpOwogCi0gICAgaHIgPSBwcmVmZXJlbmNlcy0+
cHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCgmZW5hYmxlZCk7Ci0gICAgaWYgKEZBSUxFRChocikpCi0g
ICAgICAgIHJldHVybiBocjsKLSAgICBzZXR0aW5ncy0+c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxl
ZCghIWVuYWJsZWQpOwotCiAgICAgaHIgPSBwcmVmZXJlbmNlcy0+c2Fuc1NlcmlmRm9udEZhbWls
eSgmc3RyKTsKICAgICBpZiAoRkFJTEVEKGhyKSkKICAgICAgICAgcmV0dXJuIGhyOwpkaWZmIC0t
Z2l0IGEvU291cmNlL2F1dG90b29scy9zeW1ib2xzLmZpbHRlciBiL1NvdXJjZS9hdXRvdG9vbHMv
c3ltYm9scy5maWx0ZXIKaW5kZXggOTZjMGY3ZjQxOTMzZDk0NzZhMWM4OTk3YTFjMWViODQ0NTk5
NGUyOC4uMWVlYWRhYWQ1MzYwMTg5Y2MzMjgxZWUwN2IyMDQ1N2U2YWMzYTcxMiAxMDA2NDQKLS0t
IGEvU291cmNlL2F1dG90b29scy9zeW1ib2xzLmZpbHRlcgorKysgYi9Tb3VyY2UvYXV0b3Rvb2xz
L3N5bWJvbHMuZmlsdGVyCkBAIC0xMjYsNiArMTI2LDcgQEAgX1pON1dlYkNvcmU4U2V0dGluZ3My
MnNldFNhbnNTZXJpZkZvbnRGYW1pbHlFUktOM1dURjEyQXRvbWljU3RyaW5nRTExVVNjcmlwdENv
ZGUKIF9aTjdXZWJDb3JlOFNldHRpbmdzMjNzZXRQaWN0b2dyYXBoRm9udEZhbWlseUVSS04zV1RG
MTJBdG9taWNTdHJpbmdFMTFVU2NyaXB0Q29kZTsKIF9aTjdXZWJDb3JlOFNldHRpbmdzMjRzZXRN
b2NrU2Nyb2xsYmFyc0VuYWJsZWRFYjsKIF9aTjdXZWJDb3JlOFNldHRpbmdzMzdzZXRGaXhlZEVs
ZW1lbnRzTGF5b3V0UmVsYXRpdmVUb0ZyYW1lRWI7CitfWk43V2ViQ29yZThTZXR0aW5nczI1c2V0
UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZEViOwogX1pON1dlYkNvcmU5RnJhbWVWaWV3MTdwYWludENv
bnRyb2xUaW50c0V2OwogX1pON1dlYkNvcmU5RnJhbWVWaWV3MTlzY3JvbGxFbGVtZW50VG9SZWN0
RVBOU183RWxlbWVudEVSS05TXzdJbnRSZWN0RTsKIF9aTjdXZWJDb3JlMjRGcmFtZURlc3RydWN0
aW9uT2JzZXJ2ZXJEMkV2OwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hh
bmdlTG9nCmluZGV4IDA4YWQxYjJlYmE4NWRmNDNiNmUyM2JiNmFjZTdiM2JiOWI3ODE3NDkuLjA5
ZDM3Njc2Yjk3ZWI4NWJkZjVjMjgyZDBjNzA5OTlhMDBkNWI1MjIgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAorMjAxMi0w
NS0yMyAgTWFyY2VsbyBMaXJhICA8bWFyY2Vsby5saXJhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAg
ICAgTW92ZSBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkIGZyb20gbGF5b3V0VGVzdENvbnRyb2xs
ZXIgdG8gd2luZG93LmludGVybmFscygpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NzI3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFJlbW92ZSB0aGUgaW1wbGVtZW50YXRpb24gb2Ygc2V0UHJpdmF0ZUJy
b3dzaW5nRW5hYmxlZCgpIGZvciBlYWNoIHBsYXRmb3JtLiBOb3RlIHRoYXQKKyAgICAgICAgRHVy
aW5nIHRoZSBJbnRlcm5hbHNPYmplY3QgcmVzZXQgdGhlIGJlaGF2aW9yIGlzIGNoYW5nZWQgYmFj
ayB0byB0aGUgcGxhdGZvcm0KKyAgICAgICAgZGVmYXVsdCwgd2hpY2ggd2FzIGZhbHNlIGZvciBl
dmVyeW9uZSBmb2xsb3dpbmcgU2V0dGluZ3MnIGRlZmF1bHQgdmFsdWUuCisKKyAgICAgICAgKiBE
dW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChMYXlvdXRU
ZXN0Q29udHJvbGxlcjo6c3RhdGljRnVuY3Rpb25zKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJl
ZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXIp
OgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2JsYWNrYmVycnkvTGF5b3V0VGVzdENvbnRyb2xs
ZXJCbGFja0JlcnJ5LmNwcDoKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9MYXlv
dXRUZXN0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6TGF5
b3V0VGVzdENvbnRyb2xsZXIpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xh
eW91dFRlc3RDb250cm9sbGVyLmg6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcik6Cisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcDoK
KyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9ndGsvTGF5b3V0VGVzdENvbnRyb2xsZXJHdGsuY3Bw
OgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbToKKyAgICAg
ICAgKHJlc2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1ZXMpOgorICAgICAgICAqIER1bXBSZW5k
ZXJUcmVlL21hYy9MYXlvdXRUZXN0Q29udHJvbGxlck1hYy5tbToKKyAgICAgICAgKiBEdW1wUmVu
ZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcDoKKyAgICAgICAgKiBEdW1wUmVu
ZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0Lmg6CisgICAgICAgIChMYXlvdXRUZXN0
Q29udHJvbGxlcik6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvd2luL0R1bXBSZW5kZXJUcmVl
LmNwcDoKKyAgICAgICAgKHJlc2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1ZXMpOgorICAgICAg
ICAqIER1bXBSZW5kZXJUcmVlL3dpbi9MYXlvdXRUZXN0Q29udHJvbGxlcldpbi5jcHA6CisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvd3gvTGF5b3V0VGVzdENvbnRyb2xsZXJXeC5jcHA6CisKIDIw
MTItMDUtMjMgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQuIE1vdmUgbXlzZWxmIHRvIHJldmlld2Vycy4KZGlmZiAtLWdpdCBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmNwcAppbmRleCA2ZTRhZjIyNTJlNTkx
MDkzOGE1MWE2YjYxMzJjMjIzYWVhYmUwZjcwLi5lNTdjYzYwOWJjMjdiNDRkMGEyNzc0NTk5Zjlj
OTkyYTliM2E3ZjkyIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0
Q29udHJvbGxlci5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRy
b2xsZXIuY3BwCkBAIC0xNDI2LDE4ICsxNDI2LDYgQEAgc3RhdGljIEpTVmFsdWVSZWYgc2V0UGVy
c2lzdGVudFVzZXJTdHlsZVNoZWV0TG9jYXRpb25DYWxsYmFjayhKU0NvbnRleHRSZWYgY29udGUK
ICAgICByZXR1cm4gSlNWYWx1ZU1ha2VVbmRlZmluZWQoY29udGV4dCk7CiB9CiAKLXN0YXRpYyBK
U1ZhbHVlUmVmIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWRDYWxsYmFjayhKU0NvbnRleHRSZWYg
Y29udGV4dCwgSlNPYmplY3RSZWYgZnVuY3Rpb24sIEpTT2JqZWN0UmVmIHRoaXNPYmplY3QsIHNp
emVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1ZhbHVl
UmVmKiBleGNlcHRpb24pCi17Ci0gICAgLy8gSGFzIG1hYyAmIHdpbmRvd3MgaW1wbGVtZW50YXRp
b24KLSAgICBpZiAoYXJndW1lbnRDb3VudCA8IDEpCi0gICAgICAgIHJldHVybiBKU1ZhbHVlTWFr
ZVVuZGVmaW5lZChjb250ZXh0KTsKLQotICAgIExheW91dFRlc3RDb250cm9sbGVyKiBjb250cm9s
bGVyID0gc3RhdGljX2Nhc3Q8TGF5b3V0VGVzdENvbnRyb2xsZXIqPihKU09iamVjdEdldFByaXZh
dGUodGhpc09iamVjdCkpOwotICAgIGNvbnRyb2xsZXItPnNldFByaXZhdGVCcm93c2luZ0VuYWJs
ZWQoSlNWYWx1ZVRvQm9vbGVhbihjb250ZXh0LCBhcmd1bWVudHNbMF0pKTsKLQotICAgIHJldHVy
biBKU1ZhbHVlTWFrZVVuZGVmaW5lZChjb250ZXh0KTsKLX0KLQogc3RhdGljIEpTVmFsdWVSZWYg
c2V0SmF2YVNjcmlwdENhbkFjY2Vzc0NsaXBib2FyZENhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250
ZXh0LCBKU09iamVjdFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90
IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYq
IGV4Y2VwdGlvbikKIHsKICAgICAvLyBIYXMgbWFjICYgd2luZG93cyBpbXBsZW1lbnRhdGlvbgpA
QCAtMjM3OCw3ICsyMzY2LDYgQEAgSlNTdGF0aWNGdW5jdGlvbiogTGF5b3V0VGVzdENvbnRyb2xs
ZXI6OnN0YXRpY0Z1bmN0aW9ucygpCiAgICAgICAgIHsgInNldFBvcHVwQmxvY2tpbmdFbmFibGVk
Iiwgc2V0UG9wdXBCbG9ja2luZ0VuYWJsZWRDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVS
ZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJz
ZXRQbHVnaW5zRW5hYmxlZCIsIHNldFBsdWdpbnNFbmFibGVkQ2FsbGJhY2ssIGtKU1Byb3BlcnR5
QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAg
ICAgICAgeyAic2V0UHJpbnRpbmciLCBzZXRQcmludGluZ0NhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0
dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCi0gICAg
ICAgIHsgInNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQiLCBzZXRQcml2YXRlQnJvd3NpbmdFbmFi
bGVkQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0
dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAic2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNw
YWNlRW5hYmxlZCIsIHNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWRDYWxsYmFjaywg
a0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERl
bGV0ZSB9LAogICAgICAgICB7ICJzZXRTZXJpYWxpemVIVFRQTG9hZHMiLCBzZXRTZXJpYWxpemVI
VFRQTG9hZHNDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3Bl
cnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJzZXRTbWFydEluc2VydERlbGV0
ZUVuYWJsZWQiLCBzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWRDYWxsYmFjaywga0pTUHJvcGVy
dHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LApk
aWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuaCBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmgKaW5kZXggYzA3NjA2
NzIzODYzODI1NzU5NGFlMDE4MTI3OTAxNWYxNzYyMGE3MS4uOTE2ZGUxOTdiMzNjODZjZjQ0ZmZk
MWQ2ZWEwMjBlOThlNTQ1ODhlMSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5
b3V0VGVzdENvbnRyb2xsZXIuaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0
Q29udHJvbGxlci5oCkBAIC0xMTEsNyArMTExLDYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0UGVy
c2lzdGVudFVzZXJTdHlsZVNoZWV0TG9jYXRpb24oSlNTdHJpbmdSZWYgcGF0aCk7CiAgICAgdm9p
ZCBzZXRQbHVnaW5zRW5hYmxlZChib29sIGZsYWcpOwogICAgIHZvaWQgc2V0UG9wdXBCbG9ja2lu
Z0VuYWJsZWQoYm9vbCBmbGFnKTsKLSAgICB2b2lkIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQo
Ym9vbCBmbGFnKTsKICAgICB2b2lkIHNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQo
Ym9vbCBmbGFnKTsKICAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sIGZs
YWcpOwogICAgIHZvaWQgc2V0VGFiS2V5Q3ljbGVzVGhyb3VnaEVsZW1lbnRzKGJvb2wgY3ljbGVz
KTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2JsYWNrYmVycnkvTGF5b3V0VGVz
dENvbnRyb2xsZXJCbGFja0JlcnJ5LmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2JsYWNrYmVy
cnkvTGF5b3V0VGVzdENvbnRyb2xsZXJCbGFja0JlcnJ5LmNwcAppbmRleCA4NGI1MTBkZTI5NmVl
NzMxMjAzYzljOTBmOTJhMmFlYjRiOTk2NTUzLi5hNmM2MGM0MGI2N2EzMmQwODQ5NjZiNzM1NmZk
ZDg0MGNlOGY3N2VkIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9ibGFja2JlcnJ5
L0xheW91dFRlc3RDb250cm9sbGVyQmxhY2tCZXJyeS5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvYmxhY2tiZXJyeS9MYXlvdXRUZXN0Q29udHJvbGxlckJsYWNrQmVycnkuY3BwCkBAIC0y
NTcsMTIgKzI1Nyw2IEBAIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFBvcHVwQmxvY2tp
bmdFbmFibGVkKGJvb2wgZmxhZykKICAgICBCbGFja0JlcnJ5OjpXZWJLaXQ6OkR1bXBSZW5kZXJU
cmVlOjpjdXJyZW50SW5zdGFuY2UoKS0+cGFnZSgpLT5zZXR0aW5ncygpLT5zZXRKYXZhU2NyaXB0
T3BlbldpbmRvd3NBdXRvbWF0aWNhbGx5KCFmbGFnKTsKIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29u
dHJvbGxlcjo6c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGZsYWcpCi17Ci0gICAgVU5V
U0VEX1BBUkFNKGZsYWcpOwotICAgIG5vdEltcGxlbWVudGVkKCk7Ci19Ci0KIHZvaWQgTGF5b3V0
VGVzdENvbnRyb2xsZXI6OnNldFhTU0F1ZGl0b3JFbmFibGVkKGJvb2wgZmxhZykKIHsKICAgICBC
bGFja0JlcnJ5OjpXZWJLaXQ6OkR1bXBSZW5kZXJUcmVlOjpjdXJyZW50SW5zdGFuY2UoKS0+cGFn
ZSgpLT5zZXR0aW5ncygpLT5zZXRYU1NBdWRpdG9yRW5hYmxlZChmbGFnKTsKZGlmZiAtLWdpdCBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmNwcCBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmNwcApp
bmRleCAzOGMyYWQ2NTIyMDJkZDE3ZDBlZWU5M2FlYWRmZmU4YzJiYmFlOWQ4Li4zNTIzM2Q1YmU0
OTYwMDc2YjMxYTUzYWNmZmUwYjU4ZGU2MjJiZTAyIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHAKKysrIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCkBAIC0yNTQsNyAr
MjU0LDYgQEAgTGF5b3V0VGVzdENvbnRyb2xsZXI6OkxheW91dFRlc3RDb250cm9sbGVyKFRlc3RT
aGVsbCogc2hlbGwpCiAgICAgYmluZE1ldGhvZCgic2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1
b3RhIiwgJkxheW91dFRlc3RDb250cm9sbGVyOjpzZXRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVv
dGEpOwogICAgIGJpbmRNZXRob2QoInNldENhbGxDbG9zZU9uV2ViVmlld3MiLCAmTGF5b3V0VGVz
dENvbnRyb2xsZXI6OnNldENhbGxDbG9zZU9uV2ViVmlld3MpOwogICAgIGJpbmRNZXRob2QoInNl
dE1haW5GcmFtZUlzRmlyc3RSZXNwb25kZXIiLCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldE1h
aW5GcmFtZUlzRmlyc3RSZXNwb25kZXIpOwotICAgIGJpbmRNZXRob2QoInNldFByaXZhdGVCcm93
c2luZ0VuYWJsZWQiLCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFByaXZhdGVCcm93c2luZ0Vu
YWJsZWQpOwogICAgIGJpbmRNZXRob2QoInNldFVzZURhc2hib2FyZENvbXBhdGliaWxpdHlNb2Rl
IiwgJkxheW91dFRlc3RDb250cm9sbGVyOjpzZXRVc2VEYXNoYm9hcmRDb21wYXRpYmlsaXR5TW9k
ZSk7CiAgICAgYmluZE1ldGhvZCgic3RvcmVXZWJTY3JpcHRPYmplY3QiLCAmTGF5b3V0VGVzdENv
bnRyb2xsZXI6OnN0b3JlV2ViU2NyaXB0T2JqZWN0KTsKICAgICBiaW5kTWV0aG9kKCJkZWxldGVB
bGxMb2NhbFN0b3JhZ2UiLCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OmRlbGV0ZUFsbExvY2FsU3Rv
cmFnZSk7CkBAIC0xMjkyLDExICsxMjkxLDYgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6
c2V0Q2FsbENsb3NlT25XZWJWaWV3cyhjb25zdCBDcHBBcmd1bWVudExpc3QmIGFyZ3VtZW4KICAg
ICByZXN1bHQtPnNldE51bGwoKTsKIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0
UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChjb25zdCBDcHBBcmd1bWVudExpc3QmIGFyZ3VtZW50cywg
Q3BwVmFyaWFudCogcmVzdWx0KQotewotICAgIHJlc3VsdC0+c2V0TnVsbCgpOwotfQotCiB2b2lk
IExheW91dFRlc3RDb250cm9sbGVyOjpzZXRKYXZhU2NyaXB0Q2FuQWNjZXNzQ2xpcGJvYXJkKGNv
bnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBWYXJpYW50KiByZXN1bHQpCiB7CiAg
ICAgaWYgKGFyZ3VtZW50cy5zaXplKCkgPiAwICYmIGFyZ3VtZW50c1swXS5pc0Jvb2woKSkgewpk
aWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRy
b2xsZXIuaCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9s
bGVyLmgKaW5kZXggMDcwM2VmMDEwZDY1NWVlNzc4MTE4NWNjMmNkMWQyNzUwNmM5NWNkNC4uZGMx
YTkwZmQ4MzMwMmIzY2NkZTExNWZhZDBmMjAzNWY2NmY2ZDMyMSAxMDA2NDQKLS0tIGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuaAorKysgYi9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5oCkBAIC0yNzks
NyArMjc5LDYgQEAgcHVibGljOgogICAgIHZvaWQgYWRkRGlzYWxsb3dlZFVSTChjb25zdCBDcHBB
cmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CiAgICAgdm9pZCBjYWxsU2hvdWxkQ2xvc2VPbldl
YlZpZXcoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCopOwogICAgIHZvaWQgc2V0
Q2FsbENsb3NlT25XZWJWaWV3cyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7
Ci0gICAgdm9pZCBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKGNvbnN0IENwcEFyZ3VtZW50TGlz
dCYsIENwcFZhcmlhbnQqKTsKIAogICAgIHZvaWQgc2V0SmF2YVNjcmlwdENhbkFjY2Vzc0NsaXBi
b2FyZChjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CiAgICAgdm9pZCBzZXRY
U1NBdWRpdG9yRW5hYmxlZChjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CmRp
ZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJF
ZmwuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZs
LmNwcAppbmRleCAyZjExMWVkMzkyZTM0ZTg0MGI4NGY0YzQ5ZWMzZDZlZmQ0OTY5OGY0Li4zYmFi
OTRjMDNhMTU5Y2E3YTI4OTExNzdhYWYyYTU0Y2QxZWU4ZWY4IDEwMDY0NAotLS0gYS9Ub29scy9E
dW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwCisrKyBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHAKQEAgLTMyMiwx
MSArMzIyLDYgQEAgaW50IExheW91dFRlc3RDb250cm9sbGVyOjp3aW5kb3dDb3VudCgpCiAgICAg
cmV0dXJuIGJyb3dzZXItPmV4dHJhVmlld3MoKS5zaXplKCkgKyAxOyAvLyArIDEgZm9yIHRoZSBt
YWluIHZpZXcuCiB9CiAKLXZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFByaXZhdGVCcm93
c2luZ0VuYWJsZWQoYm9vbCBmbGFnKQotewotICAgIGV3a192aWV3X3NldHRpbmdfcHJpdmF0ZV9i
cm93c2luZ19zZXQoYnJvd3Nlci0+bWFpblZpZXcoKSwgZmxhZyk7Ci19Ci0KIHZvaWQgTGF5b3V0
VGVzdENvbnRyb2xsZXI6OnNldEphdmFTY3JpcHRDYW5BY2Nlc3NDbGlwYm9hcmQoYm9vbCBmbGFn
KQogewogICAgIGV3a192aWV3X3NldHRpbmdfc2NyaXB0c19jYW5fYWNjZXNzX2NsaXBib2FyZF9z
ZXQoYnJvd3Nlci0+bWFpblZpZXcoKSwgZmxhZyk7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9ndGsvTGF5b3V0VGVzdENvbnRyb2xsZXJHdGsuY3BwIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvZ3RrL0xheW91dFRlc3RDb250cm9sbGVyR3RrLmNwcAppbmRleCA5NTFkMmJlZjdlZDk4
ZjcwZWQ5OTA3MzdlODEyODM5YzMxN2Q2MmFlLi5hZTU0ZDM4ZDIwMmY3MTljYzYzN2MzYzVlYTk4
ODA3NGJiMDExZWViIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9ndGsvTGF5b3V0
VGVzdENvbnRyb2xsZXJHdGsuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9MYXlv
dXRUZXN0Q29udHJvbGxlckd0ay5jcHAKQEAgLTM4NSwxNSArMzg1LDYgQEAgaW50IExheW91dFRl
c3RDb250cm9sbGVyOjp3aW5kb3dDb3VudCgpCiAgICAgcmV0dXJuIGdfc2xpc3RfbGVuZ3RoKHdl
YlZpZXdMaXN0KSArIDE7CiB9CiAKLXZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFByaXZh
dGVCcm93c2luZ0VuYWJsZWQoYm9vbCBmbGFnKQotewotICAgIFdlYktpdFdlYlZpZXcqIHZpZXcg
PSB3ZWJraXRfd2ViX2ZyYW1lX2dldF93ZWJfdmlldyhtYWluRnJhbWUpOwotICAgIEFTU0VSVCh2
aWV3KTsKLQotICAgIFdlYktpdFdlYlNldHRpbmdzKiBzZXR0aW5ncyA9IHdlYmtpdF93ZWJfdmll
d19nZXRfc2V0dGluZ3Modmlldyk7Ci0gICAgZ19vYmplY3Rfc2V0KEdfT0JKRUNUKHNldHRpbmdz
KSwgImVuYWJsZS1wcml2YXRlLWJyb3dzaW5nIiwgZmxhZywgTlVMTCk7Ci19Ci0KIHZvaWQgTGF5
b3V0VGVzdENvbnRyb2xsZXI6OnNldEphdmFTY3JpcHRDYW5BY2Nlc3NDbGlwYm9hcmQoYm9vbCBm
bGFnKQogewogICAgIFdlYktpdFdlYlZpZXcqIHZpZXcgPSB3ZWJraXRfd2ViX2ZyYW1lX2dldF93
ZWJfdmlldyhtYWluRnJhbWUpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFj
L0R1bXBSZW5kZXJUcmVlLm1tIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJU
cmVlLm1tCmluZGV4IGMxZjQ0YTQ3MzQ4YzdiMDBlMzg5ZWMwNWIxYjZhNjQ5YWNkM2RmYjUuLjA1
NDQ1MjRiZDVkYWRiMzZkNDliYmRkMzZmMDA4NzU0YmRjNzQ2MzIgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQorKysgYi9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KQEAgLTYzMyw3ICs2MzMsNiBAQCBzdGF0aWMg
dm9pZCByZXNldERlZmF1bHRzVG9Db25zaXN0ZW50VmFsdWVzKCkKICAgICBbcHJlZmVyZW5jZXMg
c2V0UGx1Z0luc0VuYWJsZWQ6WUVTXTsKICAgICBbcHJlZmVyZW5jZXMgc2V0VGV4dEFyZWFzQXJl
UmVzaXphYmxlOllFU107CiAKLSAgICBbcHJlZmVyZW5jZXMgc2V0UHJpdmF0ZUJyb3dzaW5nRW5h
YmxlZDpOT107CiAgICAgW3ByZWZlcmVuY2VzIHNldEF1dGhvckFuZFVzZXJTdHlsZXNFbmFibGVk
OllFU107CiAgICAgW3ByZWZlcmVuY2VzIHNldEphdmFTY3JpcHRDYW5PcGVuV2luZG93c0F1dG9t
YXRpY2FsbHk6WUVTXTsKICAgICBbcHJlZmVyZW5jZXMgc2V0SmF2YVNjcmlwdENhbkFjY2Vzc0Ns
aXBib2FyZDpZRVNdOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0xheW91
dFRlc3RDb250cm9sbGVyTWFjLm1tIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0xheW91dFRl
c3RDb250cm9sbGVyTWFjLm1tCmluZGV4IDY3NzM4MjUzNzc5ZGI4YTE0N2IyYWQyYWY2ZjQ2NTQ2
MDg0NzdhNDEuLjYxZjM3YThmOGI4NjBjNjE4MjcwMmI0ZDc2ZDNmODhkYmUzY2ExZjMgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9MYXlvdXRUZXN0Q29udHJvbGxlck1hYy5t
bQorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvTGF5b3V0VGVzdENvbnRyb2xsZXJNYWMu
bW0KQEAgLTU3NSwxMSArNTc1LDYgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0TWFp
bkZyYW1lSXNGaXJzdFJlc3BvbmRlcihib29sIGZsYWcpCiAgICAgW1tbbWFpbkZyYW1lIHdlYlZp
ZXddIHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOmZpcnN0UmVzcG9uZGVyXTsKIH0KIAotdm9p
ZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIHBy
aXZhdGVCcm93c2luZ0VuYWJsZWQpCi17Ci0gICAgW1tbbWFpbkZyYW1lIHdlYlZpZXddIHByZWZl
cmVuY2VzXSBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkOnByaXZhdGVCcm93c2luZ0VuYWJsZWRd
OwotfQotCiB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRYU1NBdWRpdG9yRW5hYmxlZChi
b29sIGVuYWJsZWQpCiB7CiAgICAgW1tbbWFpbkZyYW1lIHdlYlZpZXddIHByZWZlcmVuY2VzXSBz
ZXRYU1NBdWRpdG9yRW5hYmxlZDplbmFibGVkXTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAKaW5kZXggYzE2ODNmMTBlMTgyN2Q1NmJl
MWM0NWYzNDRlMjQwMTIzMDNmMzdiMC4uZTE4MzdiYmI3ZDBjM2NhNTA2NTI3Mzg2ZTIzZTA2Njhl
OGVhY2IxMCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENv
bnRyb2xsZXJRdC5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENv
bnRyb2xsZXJRdC5jcHAKQEAgLTQ5MywxMSArNDkzLDYgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJv
bGxlcjo6c2V0Rml4ZWRDb250ZW50c1NpemUoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KQogICAgIG1f
dG9wTG9hZGluZ0ZyYW1lLT5wYWdlKCktPnNldFByZWZlcnJlZENvbnRlbnRzU2l6ZShRU2l6ZSh3
aWR0aCwgaGVpZ2h0KSk7CiB9CiAKLXZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFByaXZh
dGVCcm93c2luZ0VuYWJsZWQoYm9vbCBlbmFibGUpCi17Ci0gICAgbV9kcnQtPndlYlBhZ2UoKS0+
c2V0dGluZ3MoKS0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6UHJpdmF0ZUJyb3dzaW5nRW5h
YmxlZCwgZW5hYmxlKTsKLX0KLQogdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U3BhdGlh
bE5hdmlnYXRpb25FbmFibGVkKGJvb2wgZW5hYmxlKQogewogICAgIG1fZHJ0LT53ZWJQYWdlKCkt
PnNldHRpbmdzKCktPnNldEF0dHJpYnV0ZShRV2ViU2V0dGluZ3M6OlNwYXRpYWxOYXZpZ2F0aW9u
RW5hYmxlZCwgZW5hYmxlKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xh
eW91dFRlc3RDb250cm9sbGVyUXQuaCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRl
c3RDb250cm9sbGVyUXQuaAppbmRleCA1NTExNjc2NzJjODQ2NThlY2E1NDcwNzI1MTA0NDZhYzFh
YThjYTI5Li4zNDViZjJhODY2NjA3ZWM1Zjg2MTM2NGNiNzNjOWQ3YjBiNmY4YWEyIDEwMDY0NAot
LS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgKKysr
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCkBAIC0x
NjIsNyArMTYyLDYgQEAgcHVibGljIHNsb3RzOgogICAgIHZvaWQgc2V0SmF2YVNjcmlwdFByb2Zp
bGluZ0VuYWJsZWQoYm9vbCBlbmFibGUpOwogICAgIHZvaWQgc2V0VmFsdWVGb3JVc2VyKGNvbnN0
IFFXZWJFbGVtZW50JiwgY29uc3QgUVN0cmluZyYgdmFsdWUpOwogICAgIHZvaWQgc2V0Rml4ZWRD
b250ZW50c1NpemUoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKLSAgICB2b2lkIHNldFByaXZhdGVC
cm93c2luZ0VuYWJsZWQoYm9vbCBlbmFibGUpOwogICAgIHZvaWQgc2V0U3BhdGlhbE5hdmlnYXRp
b25FbmFibGVkKGJvb2wgZW5hYmxlZCk7CiAgICAgdm9pZCBzZXRQbHVnaW5zRW5hYmxlZChib29s
IGZsYWcpOwogICAgIHZvaWQgc2V0UG9wdXBCbG9ja2luZ0VuYWJsZWQoYm9vbCBlbmFibGUpOwpk
aWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0R1bXBSZW5kZXJUcmVlLmNwcCBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9EdW1wUmVuZGVyVHJlZS5jcHAKaW5kZXggNGVkOGUw
ZGM2NzU2OGNkZjczMDIxNTNhMzk0MzBhOWMxZGNiMTY5Ny4uZTQ5YmM5ODIxOTI2NzBlMTQzYTY2
NGFmNmI4MTU5ZmY4ZGE4ZGVmNyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvd2lu
L0R1bXBSZW5kZXJUcmVlLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS93aW4vRHVtcFJl
bmRlclRyZWUuY3BwCkBAIC04MzUsNyArODM1LDYgQEAgc3RhdGljIHZvaWQgcmVzZXREZWZhdWx0
c1RvQ29uc2lzdGVudFZhbHVlcyhJV2ViUHJlZmVyZW5jZXMqIHByZWZlcmVuY2VzKQogICAgIHBy
ZWZlcmVuY2VzLT5zZXRFZGl0YWJsZUxpbmtCZWhhdmlvcihXZWJLaXRFZGl0YWJsZUxpbmtPbmx5
TGl2ZVdpdGhTaGlmdEtleSk7CiAgICAgcHJlZmVyZW5jZXMtPnNldEZvbnRTbW9vdGhpbmcoRm9u
dFNtb290aGluZ1R5cGVTdGFuZGFyZCk7CiAgICAgcHJlZmVyZW5jZXMtPnNldFVzZXNQYWdlQ2Fj
aGUoRkFMU0UpOwotICAgIHByZWZlcmVuY2VzLT5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKEZB
TFNFKTsKICAgICBwcmVmZXJlbmNlcy0+c2V0SmF2YVNjcmlwdENhbk9wZW5XaW5kb3dzQXV0b21h
dGljYWxseShUUlVFKTsKICAgICBwcmVmZXJlbmNlcy0+c2V0SmF2YVNjcmlwdEVuYWJsZWQoVFJV
RSk7CiAgICAgcHJlZmVyZW5jZXMtPnNldFRhYnNUb0xpbmtzKEZBTFNFKTsKZGlmZiAtLWdpdCBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9MYXlvdXRUZXN0Q29udHJvbGxlcldpbi5jcHAgYi9U
b29scy9EdW1wUmVuZGVyVHJlZS93aW4vTGF5b3V0VGVzdENvbnRyb2xsZXJXaW4uY3BwCmluZGV4
IDdlNWVlNzMyMmRhZWU2MzhjYjlhNDA5YjhiZGFiY2RlZTYxMWZhNDkuLjE5OTBiZDFlNWU5ZTk2
ODRjNGRiNDIwNjNiMDhiNDc0MGNjNTYzMGUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL3dpbi9MYXlvdXRUZXN0Q29udHJvbGxlcldpbi5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvd2luL0xheW91dFRlc3RDb250cm9sbGVyV2luLmNwcApAQCAtNDc0LDE5ICs0NzQsNiBA
QCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRNYWluRnJhbWVJc0ZpcnN0UmVzcG9uZGVy
KGJvb2wgZmxhZykKICAgICAvLyBGSVhNRTogSW1wbGVtZW50IQogfQogCi12b2lkIExheW91dFRl
c3RDb250cm9sbGVyOjpzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKGJvb2wgcHJpdmF0ZUJyb3dz
aW5nRW5hYmxlZCkKLXsKLSAgICBDT01QdHI8SVdlYlZpZXc+IHdlYlZpZXc7Ci0gICAgaWYgKEZB
SUxFRChmcmFtZS0+d2ViVmlldygmd2ViVmlldykpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBD
T01QdHI8SVdlYlByZWZlcmVuY2VzPiBwcmVmZXJlbmNlczsKLSAgICBpZiAoRkFJTEVEKHdlYlZp
ZXctPnByZWZlcmVuY2VzKCZwcmVmZXJlbmNlcykpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBw
cmVmZXJlbmNlcy0+c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChwcml2YXRlQnJvd3NpbmdFbmFi
bGVkKTsKLX0KLQogdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0WFNTQXVkaXRvckVuYWJs
ZWQoYm9vbCBlbmFibGVkKQogewogICAgIENPTVB0cjxJV2ViVmlldz4gd2ViVmlldzsKZGlmZiAt
LWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3d4L0xheW91dFRlc3RDb250cm9sbGVyV3guY3Bw
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvd3gvTGF5b3V0VGVzdENvbnRyb2xsZXJXeC5jcHAKaW5k
ZXggYjRiMTgwNmNjZGM3N2Y1Yjc5ZTdhNjRkMzI4NGNhMTc2MTljZDNmMS4uMjk3YmUwMTEzOWEz
NDBlN2U2ZWUzYzU4Mjg2YzUyNTU1M2I1NDFkMiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRl
clRyZWUvd3gvTGF5b3V0VGVzdENvbnRyb2xsZXJXeC5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvd3gvTGF5b3V0VGVzdENvbnRyb2xsZXJXeC5jcHAKQEAgLTE3MiwxMSArMTcyLDYgQEAg
aW50IExheW91dFRlc3RDb250cm9sbGVyOjp3aW5kb3dDb3VudCgpCiAgICAgcmV0dXJuIDE7CiB9
CiAKLXZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQo
Ym9vbCBwcml2YXRlQnJvd3NpbmdFbmFibGVkKQotewotICAgIC8vIEZJWE1FOiBpbXBsZW1lbnQK
LX0KLQogdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0SmF2YVNjcmlwdENhbkFjY2Vzc0Ns
aXBib2FyZChib29sIGVuYWJsZWQpCiB7CiAgICAgLy8gRklYTUU6IGltcGxlbWVudApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IGMzYTZhMjRlZDVlNmE2YjEzODE2OGZjZjllYjEyMTE4MjhhODJmZWQuLjIwYjE0NTI5MWZhOGRh
NDk3MGU2ZmRjMGVhMTJhMjk4ZTZkYjg4NTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMi0w
NS0yMyAgTWFyY2VsbyBMaXJhICA8bWFyY2Vsby5saXJhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAg
ICAgTW92ZSBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkIGZyb20gbGF5b3V0VGVzdENvbnRyb2xs
ZXIgdG8gd2luZG93LmludGVybmFscygpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NzI3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb29raWVzL3Jlc291cmNlcy9m
aXJzdC1wYXJ0eS1jb29raWUtYWxsb3cueHNsOgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJp
dHkvY29va2llcy9yZXNvdXJjZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLnhzbDoKKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvdGhpcmQtcGFydHktY29va2llLWJs
b2NraW5nLW1haW4tZnJhbWUuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nv
b2tpZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLXVzZXItYWN0aW9uLmh0bWw6CisgICAg
ICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jb29raWVzL3RoaXJkLXBhcnR5LWNvb2tpZS1ibG9j
a2luZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNj
ZXNzLXByaXZhdGUtYnJvd3NpbmcuaHRtbDoKKyAgICAgICAgKiBwbHVnaW5zL3ByaXZhdGUtYnJv
d3NpbmctbW9kZS0yLmh0bWw6CisgICAgICAgICogcGx1Z2lucy9wcml2YXRlLWJyb3dzaW5nLW1v
ZGUuaHRtbDoKKyAgICAgICAgKiBzdG9yYWdlL2RvbXN0b3JhZ2UvbG9jYWxzdG9yYWdlL3ByaXZh
dGUtYnJvd3NpbmctYWZmZWN0cy1zdG9yYWdlLmh0bWw6CisgICAgICAgICogc3RvcmFnZS9kb21z
dG9yYWdlL3Nlc3Npb25zdG9yYWdlL3ByaXZhdGUtYnJvd3NpbmctYWZmZWN0cy1zdG9yYWdlLmh0
bWw6CisgICAgICAgICogc3RvcmFnZS93ZWJzcWwvcHJpdmF0ZS1icm93c2luZy1ub3JlYWQtbm93
cml0ZS5odG1sOgorCiAyMDEyLTA1LTIzICBFbWlsIEEgRWtsdW5kICA8ZWFlQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBVbnNraXAgc3ViLXBpeGVsIHRlc3RzIG9uIGNocm9taXVtIG5vdyB0aGF0
IHRoZXkgZmxhZyBoYXMgYmVlbiB0dXJuZWQgb24gKGluIHIgMTE3ODE1KS4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy9yZXNvdXJjZXMvZmlyc3Qt
cGFydHktY29va2llLWFsbG93LnhzbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29va2llcy9yZXNvdXJjZXMvZmlyc3QtcGFydHktY29va2llLWFsbG93LnhzbAppbmRleCAzNjE4
OTRhODNkMjQ3MzVhNTM0MDllZjM0OGQzZjcyOGVhMDQyOWQzLi5iNzE4ZDhlNGYzODkyYzA0NzI5
MDI2ZWM1YzMxMzhmN2RkNWY2Njc4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2Nvb2tpZXMvcmVzb3VyY2VzL2ZpcnN0LXBhcnR5LWNvb2tpZS1hbGxvdy54c2wK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb29raWVzL3Jlc291cmNlcy9m
aXJzdC1wYXJ0eS1jb29raWUtYWxsb3cueHNsCkBAIC0xMSw4ICsxMSw4IEBAIGlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKIAogICAgIC8vIFN0YXJ0IHdpdGggYSBjbGVhbiBzdGF0
ZSwgYXMgb3RoZXJ3aXNlIGFuIGV4cGlyZWQgY29va2llIGZvciB0aGlzIGRvbWFpbiBjb3VsZCBh
ZmZlY3QgYmVoYXZpb3Igd2l0aCBDRk5ldHdvcmsuCiAgICAgLy8gQ2FuIGJlIHJlbW92ZWQgb25j
ZSByZGFyOi8vcHJvYmxlbS8xMDA4MDEzMCBpcyBmaXhlZC4KLSAgICBpZiAobGF5b3V0VGVzdENv
bnRyb2xsZXIuc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCkKLSAgICAgICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIuc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKKyAgICBpZiAod2luZG93
LmludGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldFByaXZhdGVCcm93c2lu
Z0VuYWJsZWQodHJ1ZSk7CiAKICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRBbHdheXNBY2Nl
cHRDb29raWVzKGZhbHNlKTsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29va2llcy9yZXNvdXJjZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLnhz
bCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy9yZXNvdXJjZXMvdGhp
cmQtcGFydHktY29va2llLWJsb2NraW5nLnhzbAppbmRleCBhMGFiMDViOWZlNjJjNWFhZDI5Mzc1
NzA3OTlkNjMxZWQxMzNmMGEyLi4yODJiZTQ0ZDJhNjdiOTRmYjM0ZDM0ZDExN2ZlZTg1YzljNjIw
MjJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMv
cmVzb3VyY2VzL3RoaXJkLXBhcnR5LWNvb2tpZS1ibG9ja2luZy54c2wKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb29raWVzL3Jlc291cmNlcy90aGlyZC1wYXJ0eS1jb29r
aWUtYmxvY2tpbmcueHNsCkBAIC0xMSw4ICsxMSw5IEBAIGlmICh3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIpIHsKIAogICAgIC8vIFN0YXJ0IHdpdGggYSBjbGVhbiBzdGF0ZSwgYXMgb3RoZXJ3
aXNlIGFuIGV4cGlyZWQgY29va2llIGZvciB0aGlzIGRvbWFpbiBjb3VsZCBhZmZlY3QgYmVoYXZp
b3Igd2l0aCBDRk5ldHdvcmsuCiAgICAgLy8gQ2FuIGJlIHJlbW92ZWQgb25jZSByZGFyOi8vcHJv
YmxlbS8xMDA4MDEzMCBpcyBmaXhlZC4KLSAgICBpZiAobGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0
UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCkKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0
UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKKyAgICBpZiAod2luZG93LmludGVybmFscykK
KyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1
ZSk7CisKIAogICAgIGxheW91dFRlc3RDb250cm9sbGVyLnNldEFsd2F5c0FjY2VwdENvb2tpZXMo
ZmFsc2UpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9j
b29raWVzL3RoaXJkLXBhcnR5LWNvb2tpZS1ibG9ja2luZy1tYWluLWZyYW1lLmh0bWwgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvdGhpcmQtcGFydHktY29va2llLWJs
b2NraW5nLW1haW4tZnJhbWUuaHRtbAppbmRleCBiMTkzNzllNjljMzdiNWRhMjJjYzg0ZTc3ODc4
NWJhNTFkMzUyYTgzLi5iNDNhZTg4ZjllOTQ0NTgyZWJlZThmYjI2MWI4MGQ0M2EzNzA2NTMzIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvdGhpcmQt
cGFydHktY29va2llLWJsb2NraW5nLW1haW4tZnJhbWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLW1h
aW4tZnJhbWUuaHRtbApAQCAtOSw4ICs5LDggQEAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJv
bGxlcikgewogCiAgICAgLy8gU3RhcnQgd2l0aCBhIGNsZWFuIHN0YXRlLCBhcyBvdGhlcndpc2Ug
YW4gZXhwaXJlZCBjb29raWUgZm9yIHRoaXMgZG9tYWluIGNvdWxkIGFmZmVjdCBiZWhhdmlvciB3
aXRoIENGTmV0d29yay4KICAgICAvLyBDYW4gYmUgcmVtb3ZlZCBvbmNlIDxyZGFyOi8vcHJvYmxl
bS8xMDA4MDEzMD4gaXMgZml4ZWQuCi0gICAgaWYgKGxheW91dFRlc3RDb250cm9sbGVyLnNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLnNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisg
ICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHRydWUp
OwogCiAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0QWx3YXlzQWNjZXB0Q29va2llcyhmYWxz
ZSk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tp
ZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLXVzZXItYWN0aW9uLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tpZXMvdGhpcmQtcGFydHktY29va2llLWJsb2Nr
aW5nLXVzZXItYWN0aW9uLmh0bWwKaW5kZXggNTE0MmI1NzJmOTRjMmY3Y2I3ZjdjMmYwOTczZGI4
ZGIzOTcxZDQwZC4uNjhiM2I5NWI1ZDc3NGU1ODI2ZDEyODE0Zjc2YTdhMWFiYjhlMDdhYiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb29raWVzL3RoaXJkLXBh
cnR5LWNvb2tpZS1ibG9ja2luZy11c2VyLWFjdGlvbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmctdXNl
ci1hY3Rpb24uaHRtbApAQCAtOSw4ICs5LDggQEAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJv
bGxlcikgewogCiAgICAgLy8gU3RhcnQgd2l0aCBhIGNsZWFuIHN0YXRlLCBhcyBvdGhlcndpc2Ug
YW4gZXhwaXJlZCBjb29raWUgZm9yIHRoaXMgZG9tYWluIGNvdWxkIGFmZmVjdCBiZWhhdmlvciB3
aXRoIENGTmV0d29yay4KICAgICAvLyBDYW4gYmUgcmVtb3ZlZCBvbmNlIDxyZGFyOi8vcHJvYmxl
bS8xMDA4MDEzMD4gaXMgZml4ZWQuCi0gICAgaWYgKGxheW91dFRlc3RDb250cm9sbGVyLnNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLnNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisg
ICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHRydWUp
OwogCiAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0QWx3YXlzQWNjZXB0Q29va2llcyhmYWxz
ZSk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nvb2tp
ZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2Nvb2tpZXMvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLmh0bWwKaW5k
ZXggZmY0ODkwZmMyMDIzYWQ4YWJjY2RkNTZkZTBmMmIzOTk1MTU2YmQ2Mi4uYTE4YThiNjMzMGQ1
YTE2ZmU4NzY0MWIzM2QzOTFjMTk1Y2UyZmVmZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jb29raWVzL3RoaXJkLXBhcnR5LWNvb2tpZS1ibG9ja2luZy5odG1s
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29va2llcy90aGlyZC1wYXJ0
eS1jb29raWUtYmxvY2tpbmcuaHRtbApAQCAtOSw4ICs5LDggQEAgaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikgewogCiAgICAgLy8gU3RhcnQgd2l0aCBhIGNsZWFuIHN0YXRlLCBhcyBv
dGhlcndpc2UgYW4gZXhwaXJlZCBjb29raWUgZm9yIHRoaXMgZG9tYWluIGNvdWxkIGFmZmVjdCBi
ZWhhdmlvciB3aXRoIENGTmV0d29yay4KICAgICAvLyBDYW4gYmUgcmVtb3ZlZCBvbmNlIDxyZGFy
Oi8vcHJvYmxlbS8xMDA4MDEzMD4gaXMgZml4ZWQuCi0gICAgaWYgKGxheW91dFRlc3RDb250cm9s
bGVyLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CisgICAgaWYgKHdpbmRvdy5pbnRl
cm5hbHMpCisgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRQcml2YXRlQnJvd3NpbmdFbmFi
bGVkKHRydWUpOwogCiAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0QWx3YXlzQWNjZXB0Q29v
a2llcyhmYWxzZSk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1wcml2YXRlLWJyb3dzaW5nLmh0bWwgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1wcml2YXRlLWJyb3dzaW5n
Lmh0bWwKaW5kZXggZmMwNzc0OTdkNjQ1ZWU1YjVhNWI3ZDgxOGU0MWVkMzBmZDdkODBkMi4uMDY4
OTY4YTVjYzc3MTRjNDk0NTMzMjZhN2Y3MTc2NmYwYWM4YTI0OCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1mcmFtZS1hY2Nlc3MtcHJpdmF0ZS1icm93
c2luZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJh
bWUtYWNjZXNzLXByaXZhdGUtYnJvd3NpbmcuaHRtbApAQCAtMjUsNyArMjUsNyBAQAogCiAgICAg
ICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CiAgICAgICAgICAgICB2YXIgc3ViRnJhbWUgPSB3aW5k
b3cuZnJhbWVzWzBdOwotICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0UHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKKyAgICAgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5z
ZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHRydWUpOwogCiAgICAgICAgICAgICB0cnkgewogICAg
ICAgICAgICAgICAgIGxvZygiQXR0ZW1wdGluZyB0byB2aW9sYXRlIHRoZSBzYW1lLW9yaWdpbiBw
b2xpY3kgd2l0aCBwcml2YXRlIGJyb3dzaW5nIGVuYWJsZWQuICBJZiB0aGlzIHN1Y2NlZWRzIHRo
ZSBjb25zb2xlIHNob3VsZCBub3QgbG9nIHRoZSB2aW9sYXRpb24uIik7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbHVnaW5zL3ByaXZhdGUtYnJvd3NpbmctbW9kZS0yLmh0bWwgYi9MYXlvdXRU
ZXN0cy9wbHVnaW5zL3ByaXZhdGUtYnJvd3NpbmctbW9kZS0yLmh0bWwKaW5kZXggMzMyMjE4YmU4
MWZhYjZhNjFmMDBlYTYxNjU1NGM1Yjg4MDBmNDNmNy4uZDVhZmQxODc4OWU2MGVjMjUwYjgxY2Jh
OTI3ZDdhNTU1NGQ1MjYzMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGx1Z2lucy9wcml2YXRl
LWJyb3dzaW5nLW1vZGUtMi5odG1sCisrKyBiL0xheW91dFRlc3RzL3BsdWdpbnMvcHJpdmF0ZS1i
cm93c2luZy1tb2RlLTIuaHRtbApAQCAtMjAsNyArMjAsNyBAQCBmdW5jdGlvbiBydW5UZXN0KCkK
ICAgICBzaG91bGRCZSgicGx1Z2luMS5wcml2YXRlQnJvd3NpbmdFbmFibGVkIiwgImZhbHNlIik7
CiAKICAgICAvLyBOb3cgZW5hYmxlIHByaXZhdGUgYnJvd3NpbmcKLSAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHRydWUpOworICAgIGludGVybmFscy5z
ZXR0aW5ncy5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHRydWUpOwogCiAgICAgc2hvdWxkQmUo
InBsdWdpbjEucHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCIsICJ0cnVlIik7CiAgICAgCkBAIC0zMCw3
ICszMCw3IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKQogICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hp
bGQocGx1Z2luMik7CiAgICAgCiAgICAgc2hvdWxkQmUoInBsdWdpbjIucHJpdmF0ZUJyb3dzaW5n
RW5hYmxlZCIsICJ0cnVlIik7Ci0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0UHJpdmF0ZUJy
b3dzaW5nRW5hYmxlZChmYWxzZSk7CisgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldFByaXZhdGVC
cm93c2luZ0VuYWJsZWQoZmFsc2UpOwogICAgIHNob3VsZEJlKCJwbHVnaW4xLnByaXZhdGVCcm93
c2luZ0VuYWJsZWQiLCAiZmFsc2UiKTsKICAgICBzaG91bGRCZSgicGx1Z2luMi5wcml2YXRlQnJv
d3NpbmdFbmFibGVkIiwgImZhbHNlIik7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbHVn
aW5zL3ByaXZhdGUtYnJvd3NpbmctbW9kZS5odG1sIGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9wcml2
YXRlLWJyb3dzaW5nLW1vZGUuaHRtbAppbmRleCAzMGRiMGZlNmQ3NTg5Mjc3MTRiMTA2YzQ1YTA2
NzU4MDc2MTA5ZjQ0Li5lNzQ1MzU3NDIxMjljNmExNGQxNjJlNDNjOWFjYzMxNzU4ZDNmMjQ3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbHVnaW5zL3ByaXZhdGUtYnJvd3NpbmctbW9kZS5odG1s
CisrKyBiL0xheW91dFRlc3RzL3BsdWdpbnMvcHJpdmF0ZS1icm93c2luZy1tb2RlLmh0bWwKQEAg
LTIxLDcgKzIxLDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgc2hvdWxkQmUoInBsdWdpbjEu
Y2FjaGVkUHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCIsICJmYWxzZSIpOwogCiAgICAgLy8gTm93IGVu
YWJsZSBwcml2YXRlIGJyb3dzaW5nCi0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0UHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKKyAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0UHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKIAogICAgIHNob3VsZEJlKCJwbHVnaW4xLnByaXZhdGVC
cm93c2luZ0VuYWJsZWQiLCAidHJ1ZSIpOwogICAgIHNob3VsZEJlKCJwbHVnaW4xLmNhY2hlZFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQiLCAidHJ1ZSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
c3RvcmFnZS9kb21zdG9yYWdlL2xvY2Fsc3RvcmFnZS9wcml2YXRlLWJyb3dzaW5nLWFmZmVjdHMt
c3RvcmFnZS5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9kb21zdG9yYWdlL2xvY2Fsc3RvcmFn
ZS9wcml2YXRlLWJyb3dzaW5nLWFmZmVjdHMtc3RvcmFnZS5odG1sCmluZGV4IGIyZTQ3MjA5NGM5
ZDc4MGJiYTFiY2FjYzQ4MjlmOTUyZTE1NmU5YzQuLjA4OWU2YmM1ZjNlN2JiODQ5MTgxYjk1M2U1
Mzc3MGZlNzIzNzBiNzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvZG9tc3RvcmFn
ZS9sb2NhbHN0b3JhZ2UvcHJpdmF0ZS1icm93c2luZy1hZmZlY3RzLXN0b3JhZ2UuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9zdG9yYWdlL2RvbXN0b3JhZ2UvbG9jYWxzdG9yYWdlL3ByaXZhdGUtYnJv
d3NpbmctYWZmZWN0cy1zdG9yYWdlLmh0bWwKQEAgLTIzLDcgKzIzLDcgQEAgZnVuY3Rpb24gcnVu
VGVzdCgpCiAgICAgbG9jYWxTdG9yYWdlLmNsZWFyKCk7CiAgICAgCiAgICAgbG9jYWxTdG9yYWdl
LnNldEl0ZW0oInRlc3RJdGVtIiwgIkluaXRpYWxWYWx1ZSIpOyAgICAKLSAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHRydWUpOworICAgIGludGVybmFs
cy5zZXR0aW5ncy5zZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHRydWUpOwogICAgIGxvZygiSW5p
dGlhbCB2YWx1ZSBvZiB0ZXN0SXRlbSBpczogIiArIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ0ZXN0
SXRlbSIpKTsKIAogICAgIHRyeSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2Rv
bXN0b3JhZ2Uvc2Vzc2lvbnN0b3JhZ2UvcHJpdmF0ZS1icm93c2luZy1hZmZlY3RzLXN0b3JhZ2Uu
aHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZG9tc3RvcmFnZS9zZXNzaW9uc3RvcmFnZS9wcml2
YXRlLWJyb3dzaW5nLWFmZmVjdHMtc3RvcmFnZS5odG1sCmluZGV4IDhkZDdhNmEzYzQ4N2JlMDI0
NmI2M2E5ZWRkZjY0NTQ1MjRkZmU0NjAuLjk5YmFlN2ViMDUyOTM4M2VjZDg1OGQwNjU5MGE3MmRl
M2ZiMTliN2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvZG9tc3RvcmFnZS9zZXNz
aW9uc3RvcmFnZS9wcml2YXRlLWJyb3dzaW5nLWFmZmVjdHMtc3RvcmFnZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvZG9tc3RvcmFnZS9zZXNzaW9uc3RvcmFnZS9wcml2YXRlLWJyb3dz
aW5nLWFmZmVjdHMtc3RvcmFnZS5odG1sCkBAIC0yMyw3ICsyMyw3IEBAIGZ1bmN0aW9uIHJ1blRl
c3QoKQogICAgIH0KICAgICAKICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCJ0ZXN0SXRlbSIs
ICJJbml0aWFsVmFsdWUiKTsgICAgCi0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0UHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKKyAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0UHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKICAgICBsb2coIkluaXRpYWwgdmFsdWUgb2YgdGVzdEl0
ZW0gaXM6ICIgKyBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJ0ZXN0SXRlbSIpKTsKIAogICAgIHRy
eSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL3dlYnNxbC9wcml2YXRlLWJyb3dz
aW5nLW5vcmVhZC1ub3dyaXRlLmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL3dlYnNxbC9wcml2
YXRlLWJyb3dzaW5nLW5vcmVhZC1ub3dyaXRlLmh0bWwKaW5kZXggYjliNTg4MmI0ZGUxYzU2MjA2
NGM1ZTg0NzcwMTA2OTc5YTAxZmMxNS4uNmYzZTFjNjgxYTA2MTZmNmIxMTY1MTM5NDUyZjM0OTMz
NDc4YmJkNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS93ZWJzcWwvcHJpdmF0ZS1i
cm93c2luZy1ub3JlYWQtbm93cml0ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2Uvd2Vi
c3FsL3ByaXZhdGUtYnJvd3Npbmctbm9yZWFkLW5vd3JpdGUuaHRtbApAQCAtNjcsOCArNjcsOCBA
QCBmdW5jdGlvbiBydW5Qcml2YXRlQnJvd3NpbmdUZXN0cygpCiB7CiAgICAgY29tcGxldGVkID0g
MDsKIAotICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCi0gICAgICAgIGxheW91
dFRlc3RDb250cm9sbGVyLnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQodHJ1ZSk7CisgICAgaWYg
KHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRQcml2YXRl
QnJvd3NpbmdFbmFibGVkKHRydWUpOwogICAgIAogICAgIGZvciAoaSBpbiBwcml2YXRlQnJvd3Np
bmdTdGF0ZW1lbnRzKQogICAgICAgICB0aGVUcmFuc2FjdGlvbi5leGVjdXRlU3FsKHByaXZhdGVC
cm93c2luZ1N0YXRlbWVudHNbaV0sIFtdLCBwcml2YXRlQnJvd3NpbmdTdWNjZXNzRnVuY3Rpb24s
IHByaXZhdGVCcm93c2luZ0Vycm9yRnVuY3Rpb24pOwpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIv
Q2hhbmdlTG9nCmluZGV4IDIxZWZiYWEzNTUwM2M1NDYwMzNhMzk3OWQxOGIxZjUzODI5YmVjNTYu
LmIwZWRlMWNjZjJmZjllYjNiMjI1ZDg1ZmFjYmJiOTk3ODAxNjg5NzYgMTAwNjQ0Ci0tLSBhL0No
YW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxMi0wNS0yMyAgTWFy
Y2VsbyBMaXJhICA8bWFyY2Vsby5saXJhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAgICAgTW92ZSBz
ZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkIGZyb20gbGF5b3V0VGVzdENvbnRyb2xsZXIgdG8gd2lu
ZG93LmludGVybmFscygpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD04NzI3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogU291cmNlL2F1dG90b29scy9zeW1ib2xzLmZpbHRlcjoKKwogMjAxMi0wNS0yMiAg
RG9uZ3dvbyBJbSAgPGR3LmltQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxdIEltcGxlbWVu
dHMgdGhlIHJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyIG1ldGhvZCBhbmQgb3B0aW9uLgo=
</data>
<flag name="commit-queue"
          id="150257"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
      

    </bug>

</bugzilla>