<?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>220812</bug_id>
          
          <creation_ts>2021-01-21 12:02:48 -0800</creation_ts>
          <short_desc>REGRESSION (r271691): [BigSur] 22 API tests failing with Unknown C++ exception thrown in the test body</short_desc>
          <delta_ts>2021-01-21 14:55:06 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=220633</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryan Haddad">ryanhaddad</reporter>
          <assigned_to name="Aditya Keerthi">akeerthi</assigned_to>
          <cc>akeerthi</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bot-watchers-bugzilla</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1721273</commentid>
    <comment_count>0</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2021-01-21 12:02:48 -0800</bug_when>
    <thetext>There are 22 API tests failing (only) on Big Sur bots with the following output:

File name unavailable
Unknown C++ exception thrown in the test body.

This appears to have started with https://trac.webkit.org/changeset/271691

Here are the affected tests:
    TestWebKitAPI.CloseWebViewDuringEnterFullscreen.VideoFullscreen
    TestWebKitAPI.WKWebViewCloseAllMediaPresentations.ElementFullscreen
    TestWebKitAPI.WKWebViewTitlebarSeparatorTests.ScrollWithTitlebarAdjacency
    TestWebKitAPI.CloseWebViewAfterEnterFullscreen.VideoFullscreen
    TestWebKitAPI.WKWebViewTitlebarSeparatorTests.ChangeViewVisibility
    TestWebKitAPI.TopContentInset.AutomaticAdjustment
    TestWebKitAPI.TopContentInset.AutomaticAdjustmentDisabled
    TestWebKitAPI.ExitFullscreenOnEnterPiP.VideoFullscreen
    TestWebKitAPI.TopContentInset.Fullscreen
    TestWebKitAPI.WKWebViewCloseAllMediaPresentations.VideoFullscreen
    TestWebKitAPI.Fullscreen.Focus
    TestWebKitAPI.WKWebViewTitlebarSeparatorTests.BackForwardCache
    TestWebKitAPI.WKWebViewTitlebarSeparatorTests.ScrollWithoutTitlebarAdjacency
    TestWebKitAPI.CloseWebViewAfterEnterFullscreen.ElementFullscreen
    TestWebKitAPI.WKWebView.PrepareForMoveToWindowThenWindowDeallocBeforeMoving
    TestWebKitAPI.Fullscreen.WKViewDelegate
    TestWebKitAPI.WKWebViewTitlebarSeparatorTests.ChangeTitlebarAdjacency
    TestWebKitAPI.Fullscreen.Delegate
    TestWebKitAPI.ExitFullscreenOnEnterPiP.ElementFullscreen
    TestWebKitAPI.Fullscreen.PointerLeave
    TestWebKitAPI.CloseWebViewDuringEnterFullscreen.ElementFullscreen
    TestWebKitAPI.WKWebViewTitlebarSeparatorTests.NavigationResetsTitlebarAppearance

https://build.webkit.org/builders/Apple-BigSur-Release-WK2-Tests/builds/1077/steps/run-api-tests/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721274</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-01-21 12:02:57 -0800</bug_when>
    <thetext>&lt;rdar://problem/73462770&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721275</commentid>
    <comment_count>2</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2021-01-21 12:03:58 -0800</bug_when>
    <thetext>I checked two of the bots and didn&apos;t find any related crash logs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721310</commentid>
    <comment_count>3</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2021-01-21 13:29:55 -0800</bug_when>
    <thetext>This is reproducible for me by running a single test:
$ run-api-tests TestWebKitAPI.WKWebViewTitlebarSeparatorTests.BackForwardCache
Running tests
    LEAK: 1 WebProcessPool
    LEAK: 1 WebPageProxy

    File name unavailable
    Unknown C++ exception thrown in the test body.

TestWebKitAPI.WKWebViewTitlebarSeparatorTests.BackForwardCache Failed
Ran 1 tests of 1 with 0 successful
------------------------------
Test suite failed

Failed

    TestWebKitAPI.WKWebViewTitlebarSeparatorTests.BackForwardCache
        LEAK: 1 WebProcessPool
        LEAK: 1 WebPageProxy

        File name unavailable
        Unknown C++ exception thrown in the test body.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721325</commentid>
    <comment_count>4</comment_count>
      <attachid>418083</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-01-21 13:54:49 -0800</bug_when>
    <thetext>Created attachment 418083
Revert r271691</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721329</commentid>
    <comment_count>5</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-01-21 13:59:44 -0800</bug_when>
    <thetext>Reverting, while I investigate the underlying cause.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721353</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-01-21 14:55:04 -0800</bug_when>
    <thetext>Committed r271713: &lt;https://trac.webkit.org/changeset/271713&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 418083.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418083</attachid>
            <date>2021-01-21 13:54:49 -0800</date>
            <delta_ts>2021-01-21 14:55:05 -0800</delta_ts>
            <desc>Revert r271691</desc>
            <filename>bug-220812-20210121165450.patch</filename>
            <type>text/plain</type>
            <size>32555</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNzEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDhjNDBmNjQxNDc1MzM2ZjYxZmJmMTEy
ZDEzZTliMTI5NTRjNWJhODguLjE4ZTg0NDNiMmJjMTJhY2IyYTg0MDk3YzczMGY1NTRiNzUyZGE1
MjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDEtMjEgIEFkaXR5YSBLZWVydGhpICA8YWtl
ZXJ0aGlAYXBwbGUuY29tPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjcxNjkx
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwODEy
CisKKyAgICAgICAgSW50cm9kdWNlZCBjcmFzaCwgYW5kIGZhaWxpbmcgQVBJIHRlc3RzLgorCisg
ICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAgICAiW21hY09TXSBUaXRsZWJhciBz
ZXBhcmF0b3IgZG9lc24ndCBzaG93IHdoZW4gV0tXZWJWaWV3IGlzIHNjcm9sbGVkIgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwNjMzCisgICAgICAg
IGh0dHBzOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yNzE2OTEKKwogMjAyMS0wMS0yMSAg
RnVqaWkgSGlyb25vcmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4KIAogICAgICAgICBSZW1v
dmUgRU5BQkxFX1VTRVJTRUxFQ1RfQUxMIG1hY3JvIHdoaWNoIGlzIGVuYWJsZWQgZm9yIGFsbCBw
b3J0cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwppbmRleCBkYzkzMjQ1NzVlOWIyZDg5NGY3MzNmZjJjODlkMWQ3YjdjNzhhMWNi
Li5jMWJmOTVhYTBiOWQwNjRiOTBhNTgwMDE1M2U2ZmI5Y2RjNDZmMTlmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE2IEBACisyMDIxLTAxLTIxICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxl
LmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI3MTY5MS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDgxMgorCisgICAgICAg
IEludHJvZHVjZWQgY3Jhc2gsIGFuZCBmYWlsaW5nIEFQSSB0ZXN0cy4KKworICAgICAgICBSZXZl
cnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIlttYWNPU10gVGl0bGViYXIgc2VwYXJhdG9yIGRv
ZXNuJ3Qgc2hvdyB3aGVuIFdLV2ViVmlldyBpcyBzY3JvbGxlZCIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDYzMworICAgICAgICBodHRwczovL3Ry
YWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjcxNjkxCisKIDIwMjEtMDEtMjEgIFBlciBBcm5lIFZv
bGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gVGhlIGRldmVsb3Bt
ZW50IFdlYkNvbnRlbnQgWFBDIHNlcnZpY2UgY3Jhc2hlcyB1bmRlciBXZWJLaXQ6OkF1eGlsaWFy
eVByb2Nlc3M6OmluaXRpYWxpemVTYW5kYm94CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9Q
bGF0Zm9ybUhhdmUuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2ZS5oCmluZGV4IDhjZDA0
ODliNTY5YmNhZGU2YjM1YTQyNDMwODg2NGY0NzIyNDI2MjguLjIwNzZkYzg5Mjg3NWVjNmUwMGNk
OTFjY2MzNTc5YjEyNDEyNDIyODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
SGF2ZS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2ZS5oCkBAIC04MjcsMTAgKzgy
Nyw2IEBACiAjZGVmaW5lIEhBVkVfQVZDT05URU5US0VZUkVRVUVTVF9QRU5ESU5HX1BST1RFQ1RJ
T05fU1RBVFVTIDEKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZF
UlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMAotI2RlZmluZSBIQVZFX05TU0NST0xMVklFV19T
RVBBUkFUT1JfVFJBQ0tJTkdfQURBUFRFUiAxCi0jZW5kaWYKLQogI2lmIChQTEFURk9STShNQUMp
ICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTEwMDAwKSBcCiAgICAgfHwg
KChQTEFURk9STShJT1MpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKSkgJiYgX19JUEhPTkVfT1Nf
VkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKSBcCiAgICAgfHwgKFBMQVRGT1JNKFdBVENI
T1MpICYmIF9fV0FUQ0hfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gNzAwMDApIFwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL21hYy9BcHBLaXRTUEkuaCBiL1NvdXJj
ZS9XZWJLaXQvUGxhdGZvcm0vc3BpL21hYy9BcHBLaXRTUEkuaAppbmRleCBiOWQxN2QwNTRmYWI3
ZDk1YzA5NDM4YmFhY2NkZGI3MzkzYTg5NDNkLi45N2Y0ZTk0Y2U5NzQ2NzBhNzQ2OWYzNmEyMTY0
ZTBjMTBhYTA4ZGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9tYWMv
QXBwS2l0U1BJLmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvbWFjL0FwcEtpdFNQ
SS5oCkBAIC0zMSwyMyArMzEsMTIgQEAKICNpbXBvcnQgPEFwcEtpdC9OU1RleHRJbnB1dENsaWVu
dF9Qcml2YXRlLmg+CiAjaW1wb3J0IDxBcHBLaXQvTlNXaW5kb3dfUHJpdmF0ZS5oPgogCi0jaWYg
SEFWRShOU1NDUk9MTFZJRVdfU0VQQVJBVE9SX1RSQUNLSU5HX0FEQVBURVIpCi0jaW1wb3J0IDxB
cHBLaXQvTlNTY3JvbGxWaWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyX1ByaXZhdGUuaD4KLSNl
bmRpZgotCiAjZWxzZQogCiBAaW50ZXJmYWNlIE5TSW5zcGVjdG9yQmFyIDogTlNPYmplY3QKIEBw
cm9wZXJ0eSAoZ2V0dGVyPWlzVmlzaWJsZSkgQk9PTCB2aXNpYmxlOwogQGVuZAogCi0jaWYgSEFW
RShOU1NDUk9MTFZJRVdfU0VQQVJBVE9SX1RSQUNLSU5HX0FEQVBURVIpCi1AcHJvdG9jb2wgTlNT
Y3JvbGxWaWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyCi1AcHJvcGVydHkgKHJlYWRvbmx5KSBO
U1JlY3Qgc2Nyb2xsVmlld0ZyYW1lOwotQHByb3BlcnR5IChyZWFkb25seSkgQk9PTCBoYXNTY3Jv
bGxlZENvbnRlbnRzVW5kZXJUaXRsZWJhcjsKLUBlbmQKLSNlbmRpZgotCiBAcHJvdG9jb2wgTlNU
ZXh0SW5wdXRDbGllbnRfQXN5bmMKIEBlbmQKIApAQCAtNjUsMTEgKzU0LDYgQEAgdHlwZWRlZiBO
U19PUFRJT05TKE5TVUludGVnZXIsIE5TV2luZG93U2hhZG93T3B0aW9ucykgewogQHByb3BlcnR5
IENHRmxvYXQgdGl0bGViYXJBbHBoYVZhbHVlOwogI2VuZGlmCiAKLSNpZiBIQVZFKE5TU0NST0xM
VklFV19TRVBBUkFUT1JfVFJBQ0tJTkdfQURBUFRFUikKLS0gKEJPT0wpcmVnaXN0ZXJTY3JvbGxW
aWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyOihOU09iamVjdDxOU1Njcm9sbFZpZXdTZXBhcmF0
b3JUcmFja2luZ0FkYXB0ZXI+ICopYWRhcHRlcjsKLS0gKHZvaWQpdW5yZWdpc3RlclNjcm9sbFZp
ZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXI6KE5TT2JqZWN0PE5TU2Nyb2xsVmlld1NlcGFyYXRv
clRyYWNraW5nQWRhcHRlcj4gKilhZGFwdGVyOwotI2VuZGlmCi0KIEBlbmQKIAogI2VuZGlmCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbSBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tCmluZGV4IGYwNzc5YzJjZjk1
N2ExYjI0MjBhMDI4MzhkY2Q1OGVjNzEyMWE1MzEuLjE0MzE4ZTU3OGY4YzQwZmUyMzExZjc5YjZh
ZDY4NmM0NGRhMzFkYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9t
YWMvV0tWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3
Lm1tCkBAIC0zMSw3ICszMSw2IEBACiAjaW1wb3J0ICJBUElIaXRUZXN0UmVzdWx0LmgiCiAjaW1w
b3J0ICJBUElJY29uTG9hZGluZ0NsaWVudC5oIgogI2ltcG9ydCAiQVBJUGFnZUNvbmZpZ3VyYXRp
b24uaCIKLSNpbXBvcnQgIkFwcEtpdFNQSS5oIgogI2ltcG9ydCAiV0tCcm93c2luZ0NvbnRleHRH
cm91cFByaXZhdGUuaCIKICNpbXBvcnQgIldLTlNEYXRhLmgiCiAjaW1wb3J0ICJXS1Byb2Nlc3NH
cm91cFByaXZhdGUuaCIKQEAgLTY4LDExICs2Nyw2IEBAIEBpbnRlcmZhY2UgV0tWaWV3ICgpIDxO
U1RvdWNoQmFyUHJvdmlkZXI+CiBAZW5kCiAjZW5kaWYKIAotI2lmIEhBVkUoTlNTQ1JPTExWSUVX
X1NFUEFSQVRPUl9UUkFDS0lOR19BREFQVEVSKQotQGludGVyZmFjZSBXS1ZpZXcoKSA8TlNTY3Jv
bGxWaWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyPgotQGVuZAotI2VuZGlmCi0KICNpZiBFTkFC
TEUoRFJBR19TVVBQT1JUKQogCiBAaW50ZXJmYWNlIFdLVmlldyAoKSA8TlNGaWxlUHJvbWlzZVBy
b3ZpZGVyRGVsZWdhdGUsIE5TRHJhZ2dpbmdTb3VyY2U+CkBAIC0xMTMzLDM0ICsxMTI3LDYgQEAg
LSAodm9pZClfd2ViX2RpZFJlbW92ZU1lZGlhQ29udHJvbHNNYW5hZ2VyCiAKICNlbmRpZiAvLyBI
QVZFKFRPVUNIX0JBUikKIAotI2lmIEhBVkUoTlNTQ1JPTExWSUVXX1NFUEFSQVRPUl9UUkFDS0lO
R19BREFQVEVSKQotCi0tIChOU1JlY3Qpc2Nyb2xsVmlld0ZyYW1lCi17Ci0gICAgaWYgKCFfZGF0
YS0+X2ltcGwpCi0gICAgICAgIHJldHVybiBOU1plcm9SZWN0OwotICAgIHJldHVybiBfZGF0YS0+
X2ltcGwtPnNjcm9sbFZpZXdGcmFtZSgpOwotfQotCi0tIChCT09MKWhhc1Njcm9sbGVkQ29udGVu
dHNVbmRlclRpdGxlYmFyCi17Ci0gICAgaWYgKCFfZGF0YS0+X2ltcGwpCi0gICAgICAgIHJldHVy
biBOTzsKLSAgICByZXR1cm4gX2RhdGEtPl9pbXBsLT5oYXNTY3JvbGxlZENvbnRlbnRzVW5kZXJU
aXRsZWJhcigpOwotfQotCi0tIChCT09MKV93ZWJfcmVnaXN0ZXJTY3JvbGxWaWV3U2VwYXJhdG9y
VHJhY2tpbmdBZGFwdGVyCi17Ci0gICAgcmV0dXJuIFtzZWxmLndpbmRvdyByZWdpc3RlclNjcm9s
bFZpZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXI6c2VsZl07Ci19Ci0KLS0gKHZvaWQpX3dlYl91
bnJlZ2lzdGVyU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlcgotewotICAgIFtzZWxm
LndpbmRvdyB1bnJlZ2lzdGVyU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlcjpzZWxm
XTsKLX0KLQotI2VuZGlmIC8vIEhBVkUoTlNTQ1JPTExWSUVXX1NFUEFSQVRPUl9UUkFDS0lOR19B
REFQVEVSKQotCiAjaWYgRU5BQkxFKERSQUdfU1VQUE9SVCkKIAogLSAoTlNTdHJpbmcgKilmaWxl
UHJvbWlzZVByb3ZpZGVyOihOU0ZpbGVQcm9taXNlUHJvdmlkZXIgKilmaWxlUHJvbWlzZVByb3Zp
ZGVyIGZpbGVOYW1lRm9yVHlwZTooTlNTdHJpbmcgKilmaWxlVHlwZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL21hYy9XS1dlYlZpZXdNYWMubW0gYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvbWFjL1dLV2ViVmlld01hYy5tbQppbmRleCA1YTYzZDRiYWUxZDA0
MzFmOTI1NGRhOGVlMmQ3ZDJkMjNjYTdjZDExLi40Nzc1ZTBlMzY3YTk4MjgwYTg2NDQ4NmNmYzQx
NjcxZGJlNmRjOTU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvbWFj
L1dLV2ViVmlld01hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvbWFjL1dL
V2ViVmlld01hYy5tbQpAQCAtODMsOSArODMsNiBAQCBAaW50ZXJmYWNlIFdLV2ViVmlldyAoV0tJ
bXBsZW1lbnRhdGlvbk1hYykgPE5TVGV4dElucHV0Q2xpZW50CiAjaWYgRU5BQkxFKERSQUdfU1VQ
UE9SVCkKICAgICAsIE5TRmlsZVByb21pc2VQcm92aWRlckRlbGVnYXRlCiAgICAgLCBOU0RyYWdn
aW5nU291cmNlCi0jZW5kaWYKLSNpZiBIQVZFKE5TU0NST0xMVklFV19TRVBBUkFUT1JfVFJBQ0tJ
TkdfQURBUFRFUikKLSAgICAsIE5TU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlcgog
I2VuZGlmCiAgICAgPgogQGVuZApAQCAtOTk3LDM2ICs5OTQsNiBAQCAtICh2b2lkKV9pbnRlcmFj
dFdpdGhNZWRpYUNvbnRyb2xzRm9yVGVzdGluZwogCiAjZW5kaWYgLy8gSEFWRShUT1VDSF9CQVIp
CiAKLSNwcmFnbWEgbWFyayAtIE5TU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlcgot
Ci0jaWYgSEFWRShOU1NDUk9MTFZJRVdfU0VQQVJBVE9SX1RSQUNLSU5HX0FEQVBURVIpCi0KLS0g
KE5TUmVjdClzY3JvbGxWaWV3RnJhbWUKLXsKLSAgICBpZiAoIV9pbXBsKQotICAgICAgICByZXR1
cm4gTlNaZXJvUmVjdDsKLSAgICByZXR1cm4gX2ltcGwtPnNjcm9sbFZpZXdGcmFtZSgpOwotfQot
Ci0tIChCT09MKWhhc1Njcm9sbGVkQ29udGVudHNVbmRlclRpdGxlYmFyCi17Ci0gICAgaWYgKCFf
aW1wbCkKLSAgICAgICAgcmV0dXJuIE5POwotICAgIHJldHVybiBfaW1wbC0+aGFzU2Nyb2xsZWRD
b250ZW50c1VuZGVyVGl0bGViYXIoKTsKLX0KLQotLSAoQk9PTClfd2ViX3JlZ2lzdGVyU2Nyb2xs
Vmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlcgotewotICAgIHJldHVybiBbc2VsZi53aW5kb3cg
cmVnaXN0ZXJTY3JvbGxWaWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyOnNlbGZdOwotfQotCi0t
ICh2b2lkKV93ZWJfdW5yZWdpc3RlclNjcm9sbFZpZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIK
LXsKLSAgICBbc2VsZi53aW5kb3cgdW5yZWdpc3RlclNjcm9sbFZpZXdTZXBhcmF0b3JUcmFja2lu
Z0FkYXB0ZXI6c2VsZl07Ci19Ci0KLSNlbmRpZiAvLyBIQVZFKE5TU0NST0xMVklFV19TRVBBUkFU
T1JfVFJBQ0tJTkdfQURBUFRFUikKLQogQGVuZAogCiAjcHJhZ21hIG1hcmsgLQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViVmlld0ltcGwuaCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLmgKaW5kZXggNzNhNzk1OWZkZDQwZTkw
ZDJmZGM4NjBjODhmOTk4NDlhNzM4ZjFhNi4uNjllZWMwYWYzYjE4NGUwNTc4MDMyNGQxMTc0NmNk
Y2Q2MTY3YzVhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2Vi
Vmlld0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3SW1w
bC5oCkBAIC04OCw3ICs4OCw2IEBAIGNsYXNzIFBhZ2VDb25maWd1cmF0aW9uOwogfQogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7Ci1jbGFzcyBJbnRQb2ludDsKIHN0cnVjdCBTaGFyZURhdGFXaXRoUGFy
c2VkVVJMOwogfQogCkBAIC0xMzIsMTEgKzEzMSw2IEBAIHN0cnVjdCBTaGFyZURhdGFXaXRoUGFy
c2VkVVJMOwogLSAodm9pZClfZGlkSGFuZGxlQWNjZXB0ZWRDYW5kaWRhdGU7CiAtICh2b2lkKV9k
aWRVcGRhdGVDYW5kaWRhdGVMaXN0VmlzaWJpbGl0eTooQk9PTCl2aXNpYmxlOwogCi0jaWYgSEFW
RShOU1NDUk9MTFZJRVdfU0VQQVJBVE9SX1RSQUNLSU5HX0FEQVBURVIpCi0tIChCT09MKV93ZWJf
cmVnaXN0ZXJTY3JvbGxWaWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyOwotLSAodm9pZClfd2Vi
X3VucmVnaXN0ZXJTY3JvbGxWaWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyOwotI2VuZGlmCi0K
IEBlbmQKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMjkzLDE0ICsyODcsNiBAQCBwdWJsaWM6
CiAgICAgdm9pZCB2aWV3RGlkVW5oaWRlKCk7CiAgICAgdm9pZCBhY3RpdmVTcGFjZURpZENoYW5n
ZSgpOwogCi0gICAgdm9pZCBwYWdlRGlkU2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jik7
Ci0KLSNpZiBIQVZFKE5TU0NST0xMVklFV19TRVBBUkFUT1JfVFJBQ0tJTkdfQURBUFRFUikKLSAg
ICBOU1JlY3Qgc2Nyb2xsVmlld0ZyYW1lKCk7Ci0gICAgYm9vbCBoYXNTY3JvbGxlZENvbnRlbnRz
VW5kZXJUaXRsZWJhcigpOwotICAgIHZvaWQgdXBkYXRlVGl0bGViYXJBZGphY2VuY3lTdGF0ZSgp
OwotI2VuZGlmCi0KICAgICBOU1ZpZXcgKmhpdFRlc3QoQ0dQb2ludCk7CiAKICAgICBDb2xvclNw
YWNlRGF0YSBjb2xvclNwYWNlKCk7CkBAIC04NDIsMTEgKzgyOCw2IEBAIHByaXZhdGU6CiAgICAg
TlNJbnRlZ2VyIG1faW5pdGlhbE51bWJlck9mVmFsaWRJdGVtc0ZvckRyb3AgeyAwIH07CiAjZW5k
aWYKIAotI2lmIEhBVkUoTlNTQ1JPTExWSUVXX1NFUEFSQVRPUl9UUkFDS0lOR19BREFQVEVSKQot
ICAgIGJvb2wgbV9wYWdlSXNTY3JvbGxlZCB7IGZhbHNlIH07Ci0gICAgYm9vbCBtX2lzUmVnaXN0
ZXJlZFNjcm9sbFZpZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgeyBmYWxzZSB9OwotI2VuZGlm
Ci0KICAgICBSZXRhaW5QdHI8TlNNZW51PiBtX2RvbVBhc3RlTWVudTsKICAgICBSZXRhaW5QdHI8
V0tET01QYXN0ZU1lbnVEZWxlZ2F0ZT4gbV9kb21QYXN0ZU1lbnVEZWxlZ2F0ZTsKICAgICBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkRPTVBhc3RlQWNjZXNzUmVzcG9uc2UpPiBtX2Rv
bVBhc3RlUmVxdWVzdEhhbmRsZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9XZWJWaWV3SW1wbC5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dl
YlZpZXdJbXBsLm1tCmluZGV4IDhhMzBhYWRlMGU0MjVmZWFjNTkwYmU3ZGU4OTNiMzc3ZjJhMDMz
MmIuLjU5ZGMwNTcwNjhjNGFlOTZmMzg1NmZkMWQxNzgyMmIwNzc0ZDUyMWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tCkBAIC0xMTUsNyArMTE1LDYg
QEAKICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNUb3VjaEJhclNQSS5oPgogI2ltcG9ydCA8cGFs
L3NwaS9tYWMvRGF0YURldGVjdG9yc1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTG9va3Vw
U1BJLmg+Ci0jaW1wb3J0IDxwYWwvc3BpL21hYy9OU0FwcGVhcmFuY2VTUEkuaD4KICNpbXBvcnQg
PHBhbC9zcGkvbWFjL05TQXBwbGljYXRpb25TUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05T
SW1tZWRpYXRlQWN0aW9uR2VzdHVyZVJlY29nbml6ZXJTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkv
bWFjL05TU2Nyb2xsZXJJbXBTUEkuaD4KQEAgLTE4MDUsMTEgKzE4MDQsNiBAQCB2b2lkIFdlYlZp
ZXdJbXBsOjp1cGRhdGVXaW5kb3dBbmRWaWV3RnJhbWVzKCkKICAgICBpZiAoY2xpcHNUb1Zpc2li
bGVSZWN0KCkpCiAgICAgICAgIHVwZGF0ZVZpZXdFeHBvc2VkUmVjdCgpOwogCi0jaWYgSEFWRShO
U1NDUk9MTFZJRVdfU0VQQVJBVE9SX1RSQUNLSU5HX0FEQVBURVIpCi0gICAgW21fdmlldyBkaWRD
aGFuZ2VWYWx1ZUZvcktleTpAInNjcm9sbFZpZXdGcmFtZSJdOwotICAgIHVwZGF0ZVRpdGxlYmFy
QWRqYWNlbmN5U3RhdGUoKTsKLSNlbmRpZgotCiAgICAgaWYgKG1fZGlkU2NoZWR1bGVXaW5kb3dB
bmRWaWV3RnJhbWVVcGRhdGUpCiAgICAgICAgIHJldHVybjsKIApAQCAtMjMwOSwxNSArMjMwMyw2
IEBAIHZvaWQgV2ViVmlld0ltcGw6OnZpZXdXaWxsTW92ZVRvV2luZG93SW1wbChOU1dpbmRvdyAq
d2luZG93KQogICAgIE5TV2luZG93ICpzdG9wT2JzZXJ2aW5nV2luZG93ID0gbV90YXJnZXRXaW5k
b3dGb3JNb3ZlUHJlcGFyYXRpb24gPyBtX3RhcmdldFdpbmRvd0Zvck1vdmVQcmVwYXJhdGlvbi5n
ZXQoKSA6IFttX3ZpZXcgd2luZG93XTsKICAgICBbbV93aW5kb3dWaXNpYmlsaXR5T2JzZXJ2ZXIg
c3RvcE9ic2VydmluZzpzdG9wT2JzZXJ2aW5nV2luZG93XTsKICAgICBbbV93aW5kb3dWaXNpYmls
aXR5T2JzZXJ2ZXIgc3RhcnRPYnNlcnZpbmc6d2luZG93XTsKLQotI2lmIEhBVkUoTlNTQ1JPTExW
SUVXX1NFUEFSQVRPUl9UUkFDS0lOR19BREFQVEVSKQotICAgIGlmIChtX2lzUmVnaXN0ZXJlZFNj
cm9sbFZpZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIpIHsKLSAgICAgICAgaWYgKFttX3ZpZXcg
cmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcihfd2ViX3VucmVnaXN0ZXJTY3JvbGxWaWV3U2Vw
YXJhdG9yVHJhY2tpbmdBZGFwdGVyKV0pIHsKLSAgICAgICAgICAgIFttX3ZpZXcgX3dlYl91bnJl
Z2lzdGVyU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlcl07Ci0gICAgICAgICAgICBt
X2lzUmVnaXN0ZXJlZFNjcm9sbFZpZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgPSBmYWxzZTsK
LSAgICAgICAgfQotICAgIH0KLSNlbmRpZgogfQogCiB2b2lkIFdlYlZpZXdJbXBsOjp2aWV3V2ls
bE1vdmVUb1dpbmRvdyhOU1dpbmRvdyAqd2luZG93KQpAQCAtMjM5OSwxOCArMjM4NCwxMiBAQCB2
b2lkIFdlYlZpZXdJbXBsOjp2aWV3RGlkSGlkZSgpCiB7CiAgICAgTE9HKEFjdGl2aXR5U3RhdGUs
ICJXZWJWaWV3SW1wbCAlcCAocGFnZSAlbGx1KSB2aWV3RGlkSGlkZSIsIHRoaXMsIG1fcGFnZS0+
aWRlbnRpZmllcigpLnRvVUludDY0KCkpOwogICAgIG1fcGFnZS0+YWN0aXZpdHlTdGF0ZURpZENo
YW5nZShXZWJDb3JlOjpBY3Rpdml0eVN0YXRlOjpJc1Zpc2libGUpOwotI2lmIEhBVkUoTlNTQ1JP
TExWSUVXX1NFUEFSQVRPUl9UUkFDS0lOR19BREFQVEVSKQotICAgIHVwZGF0ZVRpdGxlYmFyQWRq
YWNlbmN5U3RhdGUoKTsKLSNlbmRpZgogfQogCiB2b2lkIFdlYlZpZXdJbXBsOjp2aWV3RGlkVW5o
aWRlKCkKIHsKICAgICBMT0coQWN0aXZpdHlTdGF0ZSwgIldlYlZpZXdJbXBsICVwIChwYWdlICVs
bHUpIHZpZXdEaWRVbmhpZGUiLCB0aGlzLCBtX3BhZ2UtPmlkZW50aWZpZXIoKS50b1VJbnQ2NCgp
KTsKICAgICBtX3BhZ2UtPmFjdGl2aXR5U3RhdGVEaWRDaGFuZ2UoV2ViQ29yZTo6QWN0aXZpdHlT
dGF0ZTo6SXNWaXNpYmxlKTsKLSNpZiBIQVZFKE5TU0NST0xMVklFV19TRVBBUkFUT1JfVFJBQ0tJ
TkdfQURBUFRFUikKLSAgICB1cGRhdGVUaXRsZWJhckFkamFjZW5jeVN0YXRlKCk7Ci0jZW5kaWYK
IH0KIAogdm9pZCBXZWJWaWV3SW1wbDo6YWN0aXZlU3BhY2VEaWRDaGFuZ2UoKQpAQCAtMjQxOSw1
NyArMjM5OCw2IEBAIHZvaWQgV2ViVmlld0ltcGw6OmFjdGl2ZVNwYWNlRGlkQ2hhbmdlKCkKICAg
ICBtX3BhZ2UtPmFjdGl2aXR5U3RhdGVEaWRDaGFuZ2UoV2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6
SXNWaXNpYmxlKTsKIH0KIAotdm9pZCBXZWJWaWV3SW1wbDo6cGFnZURpZFNjcm9sbChjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsUG9zaXRpb24pCi17Ci0jaWYgSEFWRShOU1NDUk9MTFZJ
RVdfU0VQQVJBVE9SX1RSQUNLSU5HX0FEQVBURVIpCi0gICAgaWYgKCFtX2lzUmVnaXN0ZXJlZFNj
cm9sbFZpZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIpCi0gICAgICAgIHJldHVybjsKLQotICAg
IGlmICgoc2Nyb2xsUG9zaXRpb24ueSgpID4gMCAmJiAhbV9wYWdlSXNTY3JvbGxlZCkgfHwgKHNj
cm9sbFBvc2l0aW9uLnkoKSA8PSAwICYmIG1fcGFnZUlzU2Nyb2xsZWQpKSB7Ci0gICAgICAgIFtt
X3ZpZXcgd2lsbENoYW5nZVZhbHVlRm9yS2V5OkAiaGFzU2Nyb2xsZWRDb250ZW50c1VuZGVyVGl0
bGViYXIiXTsKLSAgICAgICAgbV9wYWdlSXNTY3JvbGxlZCA9ICFtX3BhZ2VJc1Njcm9sbGVkOwot
ICAgICAgICBbbV92aWV3IGRpZENoYW5nZVZhbHVlRm9yS2V5OkAiaGFzU2Nyb2xsZWRDb250ZW50
c1VuZGVyVGl0bGViYXIiXTsKLSAgICB9Ci0jZW5kaWYKLX0KLQotI2lmIEhBVkUoTlNTQ1JPTExW
SUVXX1NFUEFSQVRPUl9UUkFDS0lOR19BREFQVEVSKQotCi1OU1JlY3QgV2ViVmlld0ltcGw6OnNj
cm9sbFZpZXdGcmFtZSgpCi17Ci0gICAgcmV0dXJuIFttX3ZpZXcgY29udmVydFJlY3Q6W21fdmll
dyBib3VuZHNdIHRvVmlldzpuaWxdOwotfQotCi1ib29sIFdlYlZpZXdJbXBsOjpoYXNTY3JvbGxl
ZENvbnRlbnRzVW5kZXJUaXRsZWJhcigpCi17Ci0gICAgcmV0dXJuIG1faXNSZWdpc3RlcmVkU2Ny
b2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlciAmJiBtX3BhZ2VJc1Njcm9sbGVkOwotfQot
Ci12b2lkIFdlYlZpZXdJbXBsOjp1cGRhdGVUaXRsZWJhckFkamFjZW5jeVN0YXRlKCkKLXsKLSAg
ICBCT09MIHdhbnRzU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlclJlZ2lzdHJhdGlv
biA9IGZhbHNlOwotCi0gICAgTlNXaW5kb3cgKndpbmRvdyA9IFttX3ZpZXcgd2luZG93XTsKLSAg
ICBCT09MIHZpc2libGUgPSAhW21fdmlldyBpc0hpZGRlbk9ySGFzSGlkZGVuQW5jZXN0b3JdOwot
ICAgIE5TUmVjdCB3aW5kb3dDb250ZW50TGF5b3V0UmVjdEluU2VsZiA9IFttX3ZpZXcgY29udmVy
dFJlY3Q6W3dpbmRvdyBjb250ZW50TGF5b3V0UmVjdF0gZnJvbVZpZXc6bmlsXTsKLSAgICBCT09M
IHRvcE9mV2luZG93Q29udGVudExheW91dFJlY3RBZGphY2VudCA9IChOU01pblkoW21fdmlldyBi
b3VuZHNdKSA8PSBOU01pblkod2luZG93Q29udGVudExheW91dFJlY3RJblNlbGYpKTsKLQotICAg
IGlmICh0b3BPZldpbmRvd0NvbnRlbnRMYXlvdXRSZWN0QWRqYWNlbnQgJiYgdmlzaWJsZSAmJiBb
W21fdmlldyBlZmZlY3RpdmVBcHBlYXJhbmNlXSBfdXNlc01ldHJpY3NBcHBlYXJhbmNlXSkKLSAg
ICAgICAgd2FudHNTY3JvbGxWaWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyUmVnaXN0cmF0aW9u
ID0gWUVTOwotCi0gICAgaWYgKHdhbnRzU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRl
clJlZ2lzdHJhdGlvbiAmJiAhbV9pc1JlZ2lzdGVyZWRTY3JvbGxWaWV3U2VwYXJhdG9yVHJhY2tp
bmdBZGFwdGVyKSB7Ci0gICAgICAgIGlmIChbbV92aWV3IHJlc3BvbmRzVG9TZWxlY3RvcjpAc2Vs
ZWN0b3IoX3dlYl9yZWdpc3RlclNjcm9sbFZpZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIpXSkK
LSAgICAgICAgICAgIG1faXNSZWdpc3RlcmVkU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRh
cHRlciA9IFttX3ZpZXcgX3dlYl9yZWdpc3RlclNjcm9sbFZpZXdTZXBhcmF0b3JUcmFja2luZ0Fk
YXB0ZXJdOwotICAgIH0gZWxzZSBpZiAoIXdhbnRzU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5n
QWRhcHRlclJlZ2lzdHJhdGlvbiAmJiBtX2lzUmVnaXN0ZXJlZFNjcm9sbFZpZXdTZXBhcmF0b3JU
cmFja2luZ0FkYXB0ZXIpIHsKLSAgICAgICAgaWYgKFttX3ZpZXcgcmVzcG9uZHNUb1NlbGVjdG9y
OkBzZWxlY3Rvcihfd2ViX3VucmVnaXN0ZXJTY3JvbGxWaWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFw
dGVyKV0pIHsKLSAgICAgICAgICAgIFttX3ZpZXcgX3dlYl91bnJlZ2lzdGVyU2Nyb2xsVmlld1Nl
cGFyYXRvclRyYWNraW5nQWRhcHRlcl07Ci0gICAgICAgICAgICBtX2lzUmVnaXN0ZXJlZFNjcm9s
bFZpZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgPSBmYWxzZTsKLSAgICAgICAgfQotICAgIH0K
LX0KLQotI2VuZGlmIC8vIEhBVkUoTlNTQ1JPTExWSUVXX1NFUEFSQVRPUl9UUkFDS0lOR19BREFQ
VEVSKQotCiBOU1ZpZXcgKldlYlZpZXdJbXBsOjpoaXRUZXN0KENHUG9pbnQgcG9pbnQpCiB7CiAg
ICAgTlNWaWV3ICpoaXRWaWV3ID0gW21fdmlldyBfd2ViX3N1cGVySGl0VGVzdDpOU1BvaW50RnJv
bUNHUG9pbnQocG9pbnQpXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Bh
Z2VDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaAppbmRleCA2
NTg1ZjEwYTZiNDRhN2MyYzAwZDZiOWVjYjNjMjU5MzZjYmJjMGU2Li5lOGQyN2MyYTEzYTM0MGEx
Zjc4NWUwOGE2ZWJmMzI1MmY5YzUyZjU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9QYWdlQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUGFnZUNsaWVu
dC5oCkBAIC01MjMsOCArNTIzLDYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBkZWNpZGVQ
b2xpY3lGb3JJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2luc1Blcm1pc3Npb25SZXF1ZXN0KEluc3Rh
bGxNaXNzaW5nTWVkaWFQbHVnaW5zUGVybWlzc2lvblJlcXVlc3QmKSA9IDA7CiAjZW5kaWYKIAot
ICAgIHZpcnR1YWwgdm9pZCBwYWdlRGlkU2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jikg
eyB9Ci0KICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVzdG9yZVNjcm9sbFBvc2l0aW9uKCkgPSAwOwog
CiAgICAgdmlydHVhbCBib29sIHdpbmRvd0lzRnJvbnRXaW5kb3dVbmRlck1vdXNlKGNvbnN0IE5h
dGl2ZVdlYk1vdXNlRXZlbnQmKSB7IHJldHVybiBmYWxzZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggMmY4MzZjOWIwYTAzYjE5NzRmNTYwNzcyZjI4YTQ1
N2ZiYWIxYmE2NS4uNDJkZWJiYWZhNDY5N2YwOGU1ZGVhMGRlMDFlODc3NjYyYjVmZDg5ZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC01ODUxLDEyICs1ODUx
LDEwIEBAIHZvaWQgV2ViUGFnZVByb3h5OjpkaWRDaGFuZ2VWaWV3cG9ydFByb3BlcnRpZXMoY29u
c3QgVmlld3BvcnRBdHRyaWJ1dGVzJiBhdHRyKQogICAgIHBhZ2VDbGllbnQoKS5kaWRDaGFuZ2VW
aWV3cG9ydFByb3BlcnRpZXMoYXR0cik7CiB9CiAKLXZvaWQgV2ViUGFnZVByb3h5OjpwYWdlRGlk
U2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBzY3JvbGxQb3NpdGlvbikKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpwYWdlRGlkU2Nyb2xsKCkKIHsKICAgICBtX3VpQ2xpZW50LT5wYWdlRGlkU2Ny
b2xsKHRoaXMpOwogCi0gICAgcGFnZUNsaWVudCgpLnBhZ2VEaWRTY3JvbGwoc2Nyb2xsUG9zaXRp
b24pOwotCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICAvLyBEbyBub3QgaGlkZSB0aGUg
dmFsaWRhdGlvbiBtZXNzYWdlIGlmIHRoZSBzY3JvbGxpbmcgd2FzIGNhdXNlZCBieSB0aGUga2V5
Ym9hcmQgc2hvd2luZyB1cC4KICAgICBpZiAobV9pc0tleWJvYXJkQW5pbWF0aW5nSW4pCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IDNkYmI2MjQxOGYwZGMxZGJkYjdm
NTczOGZjYzgzOTdiYjc4ZmYzMTkuLjQ2ZmQyMDI5NDg0MjBiNmFiNzQzODExOTAxM2Q5OTZiYzI3
Zjg5NWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC0xOTY2LDcg
KzE5NjYsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3Jl
ZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgdmlld1JlY3QsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoV2ViQ29yZTo6SW50UmVjdCk+JiYpOwogICAgIHZvaWQgcnVuQmVmb3JlVW5sb2FkQ29uZmly
bVBhbmVsKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0YSYmLCBjb25zdCBT
dHJpbmcmIG1lc3NhZ2UsIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENv
bmZpcm1QYW5lbERlbGF5ZWRSZXBseSYmKTsKICAgICB2b2lkIGRpZENoYW5nZVZpZXdwb3J0UHJv
cGVydGllcyhjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEF0dHJpYnV0ZXMmKTsKLSAgICB2b2lkIHBh
Z2VEaWRTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKTsKKyAgICB2b2lkIHBhZ2VEaWRT
Y3JvbGwoKTsKICAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIs
IEZyYW1lSW5mb0RhdGEmJiwgY29uc3QgV2ViQ29yZTo6RmlsZUNob29zZXJTZXR0aW5ncyYpOwog
ICAgIGJvb2wgZGlkQ2hvb3NlRmlsZXNGb3JPcGVuUGFuZWxXaXRoSW1hZ2VUcmFuc2NvZGluZyhj
b25zdCBWZWN0b3I8U3RyaW5nPiYgZmlsZVVSTHMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBhbGxv
d2VkTUlNRVR5cGVzKTsKICAgICB2b2lkIHNob3dTaGFyZVNoZWV0KGNvbnN0IFdlYkNvcmU6OlNo
YXJlRGF0YVdpdGhQYXJzZWRVUkwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdl
cy5pbiBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpp
bmRleCBkZmE1YTFjOWFlOTMxMzA2ZDllMDIxMTgwOTBhMDdmNzRjYzQyY2YxLi5mZDAxZDU1M2Nj
NGVhMGQ1M2Y4NjQ5MzQwZjRjY2MxYWJmYTU3NWY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCkBAIC02Niw3ICs2Niw3IEBAIG1lc3Nh
Z2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAjZW5kaWYKIAogICAgIFJ1bkJlZm9yZVVubG9hZENvbmZp
cm1QYW5lbChXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6
RnJhbWVJbmZvRGF0YSBmcmFtZUluZm8sIFN0cmluZyBtZXNzYWdlKSAtPiAoYm9vbCBzaG91bGRD
bG9zZSkgU3luY2hyb25vdXMKLSAgICBQYWdlRGlkU2Nyb2xsKFdlYkNvcmU6OkludFBvaW50IHNj
cm9sbFBvc2l0aW9uKQorICAgIFBhZ2VEaWRTY3JvbGwoKQogICAgIFJ1bk9wZW5QYW5lbChXZWJD
b3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6RnJhbWVJbmZvRGF0
YSBmcmFtZUluZm8sIHN0cnVjdCBXZWJDb3JlOjpGaWxlQ2hvb3NlclNldHRpbmdzIHBhcmFtZXRl
cnMpCiAgICAgU2hvd1NoYXJlU2hlZXQoc3RydWN0IFdlYkNvcmU6OlNoYXJlRGF0YVdpdGhQYXJz
ZWRVUkwgc2hhcmVEYXRhKSAtPiAoYm9vbCBncmFudGVkKSBBc3luYwogICAgIFNob3dDb250YWN0
UGlja2VyKHN0cnVjdCBXZWJDb3JlOjpDb250YWN0c1JlcXVlc3REYXRhIHJlcXVlc3REYXRhKSAt
PiAoT3B0aW9uYWw8VmVjdG9yPFdlYkNvcmU6OkNvbnRhY3RJbmZvPj4gaW5mbykgQXN5bmMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9QYWdlQ2xpZW50SW1wbE1hYy5o
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1BhZ2VDbGllbnRJbXBsTWFjLmgKaW5kZXgg
NTIzOGYwYTJkNTI3Nzc4Yjg3ZDFjZjkwMDY5YTc5NzY1M2IwNjk0MC4uOTQ5YmUwYTc2NzI2ZmQ5
ZDUwZWM1NGViOTA0ZDU4OTA1Nzg2ODNhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvbWFjL1BhZ2VDbGllbnRJbXBsTWFjLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvbWFjL1BhZ2VDbGllbnRJbXBsTWFjLmgKQEAgLTI2Myw3ICsyNjMsNiBAQCBwcml2YXRlOgog
ICAgIHZvaWQgcmVmVmlldygpIG92ZXJyaWRlOwogICAgIHZvaWQgZGVyZWZWaWV3KCkgb3ZlcnJp
ZGU7CiAKLSAgICB2b2lkIHBhZ2VEaWRTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBv
dmVycmlkZTsKICAgICB2b2lkIGRpZFJlc3RvcmVTY3JvbGxQb3NpdGlvbigpIG92ZXJyaWRlOwog
ICAgIGJvb2wgd2luZG93SXNGcm9udFdpbmRvd1VuZGVyTW91c2UoY29uc3QgTmF0aXZlV2ViTW91
c2VFdmVudCYpIG92ZXJyaWRlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9tYWMvUGFnZUNsaWVudEltcGxNYWMubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMv
UGFnZUNsaWVudEltcGxNYWMubW0KaW5kZXggMWU5NmNiZjMwYTI0YjM5YjA3N2QzZTUxN2U3N2U5
OWM1NWI1Y2ZhYi4uYjU2OGU5MjRiNWVjOWE1N2QzNzFmM2Y1MGFlZDVhMmMwMzQwNjNlMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1BhZ2VDbGllbnRJbXBsTWFjLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9QYWdlQ2xpZW50SW1wbE1hYy5tbQpA
QCAtMjg2LDcgKzI4Niw2IEBAIHZvaWQgUGFnZUNsaWVudEltcGw6OmRpZENvbW1pdExvYWRGb3JN
YWluRnJhbWUoY29uc3QgU3RyaW5nJiwgYm9vbCkKICAgICBtX2ltcGwtPnVwZGF0ZVN1cHBvcnRz
QXJiaXRyYXJ5TGF5b3V0TW9kZXMoKTsKICAgICBtX2ltcGwtPmRpc21pc3NDb250ZW50UmVsYXRp
dmVDaGlsZFdpbmRvd3NXaXRoQW5pbWF0aW9uKHRydWUpOwogICAgIG1faW1wbC0+Y2xlYXJQcm9t
aXNlZERyYWdJbWFnZSgpOwotICAgIG1faW1wbC0+cGFnZURpZFNjcm9sbCh7MCwgMH0pOwogfQog
CiB2b2lkIFBhZ2VDbGllbnRJbXBsOjpkaWRGaW5pc2hMb2FkaW5nRGF0YUZvckN1c3RvbUNvbnRl
bnRQcm92aWRlcihjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZEZpbGVuYW1lLCBjb25zdCBJUEM6OkRh
dGFSZWZlcmVuY2UmIGRhdGFSZWZlcmVuY2UpCkBAIC05NDAsMTEgKzkzOSw2IEBAIF9XS1JlbW90
ZU9iamVjdFJlZ2lzdHJ5ICpQYWdlQ2xpZW50SW1wbDo6cmVtb3RlT2JqZWN0UmVnaXN0cnkoKQog
ICAgIHJldHVybiBtX2ltcGwtPnJlbW90ZU9iamVjdFJlZ2lzdHJ5KCk7CiB9CiAKLXZvaWQgUGFn
ZUNsaWVudEltcGw6OnBhZ2VEaWRTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHNjcm9s
bFBvc2l0aW9uKQotewotICAgIG1faW1wbC0+cGFnZURpZFNjcm9sbChzY3JvbGxQb3NpdGlvbik7
Ci19Ci0KIHZvaWQgUGFnZUNsaWVudEltcGw6OmRpZFJlc3RvcmVTY3JvbGxQb3NpdGlvbigpCiB7
CiAgICAgbV9pbXBsLT5kaWRSZXN0b3JlU2Nyb2xsUG9zaXRpb24oKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggYmFkNzcwNjAwYWY1NzYxN2Ux
MDA3MzE3ZDlmYjg1MTVkODBmMWMwMy4uMjgzYzRhNzYzMjRhOGIzZDNjYjQ2NGZmNWE0NjJjYWE1
MmFjNjY2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAKQEAgLTI1NzUsOCArMjU3NSw3IEBAIHZvaWQgV2ViUGFnZTo6cGFnZURpZFNjcm9sbCgpCiAK
ICAgICBtX3BhZ2VTY3JvbGxlZEh5c3RlcmVzaXMuaW1wdWxzZSgpOwogCi0gICAgYXV0byBzY3Jv
bGxQb3NpdGlvbiA9IG1fcGFnZS0+bWFpbkZyYW1lKCkudmlldygpLT5zY3JvbGxQb3NpdGlvbigp
OwotICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UGFnZURpZFNjcm9sbChzY3JvbGxQ
b3NpdGlvbikpOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UGFnZURpZFNjcm9s
bCgpKTsKIH0KIAogdm9pZCBXZWJQYWdlOjpwYWdlU3RvcHBlZFNjcm9sbGluZygpCmRpZmYgLS1n
aXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMjQ3ODU3ODY5NmZk
ZjhhM2E3NTI2ZjFkZTI1OTJjNTFjMDRkMWQwZi4uZTJkNzU0NTg0NWRlN2VjYjVkNDM5Zjk4Y2Fk
NGM1MmI0YzFkNDE0OCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAxLTIxICBBZGl0eWEgS2VlcnRoaSAgPGFr
ZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI3MTY5
MS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDgx
MgorCisgICAgICAgIEludHJvZHVjZWQgY3Jhc2gsIGFuZCBmYWlsaW5nIEFQSSB0ZXN0cy4KKwor
ICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIlttYWNPU10gVGl0bGViYXIg
c2VwYXJhdG9yIGRvZXNuJ3Qgc2hvdyB3aGVuIFdLV2ViVmlldyBpcyBzY3JvbGxlZCIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDYzMworICAgICAg
ICBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjcxNjkxCisKIDIwMjEtMDEtMjEg
IEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CiAKICAgICAgICAgUmVt
b3ZlIEVOQUJMRV9VU0VSU0VMRUNUX0FMTCBtYWNybyB3aGljaCBpcyBlbmFibGVkIGZvciBhbGwg
cG9ydHMKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJ
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZjljMGJjZGQwMjlmMmNlMDc1MjkwZjg2
MWI5YjVjMDEzMTM5MTU2Mi4uYjdmYmY4NTI2MjI3OTg3ZGI5NWVkOTYxZDE0NGQ4YTIyMmIxZTky
NCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJ
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTExMDUsNyArMTEwNSw2IEBACiAJCUUzRUZC
MDJGMjU1MDY1MDMwMDNDMkY5NiAvKiBTeXN0ZW1CZWVwLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNFRkIwMkUyNTUwNjUwMzAwM0MyRjk2IC8qIFN5
c3RlbUJlZXAubW0gKi87IH07CiAJCUUzRjhBQjkyMjQxQUI5Q0UwMDNFMkE3RSAvKiBBY2Nlc3Np
YmlsaXR5UmVtb3RlVUlBcHAubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFM0Y4QUI5MTI0MUFCOUNFMDAzRTJBN0UgLyogQWNjZXNzaWJpbGl0eVJlbW90
ZVVJQXBwLm1tICovOyB9OwogCQlFNTAzNkY3ODIxMUJDMjU0MDBCRkRCRTIgLyogY29sb3ItZHJv
cC5odG1sIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEU1MDM2Rjc3MjExQkMyMjgwMEJGREJFMiAvKiBjb2xvci1kcm9wLmh0bWwgKi87IH07Ci0J
CUU1MjBBMzZCMjVBRkI3NkMwMDUyNkNCOSAvKiBXS1dlYlZpZXdUaXRsZWJhclNlcGFyYXRvclRl
c3RzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTUy
MEEzNkEyNUFGQjc2QzAwNTI2Q0I5IC8qIFdLV2ViVmlld1RpdGxlYmFyU2VwYXJhdG9yVGVzdHMu
bW0gKi87IH07CiAJCUU1ODkxODNDMjUyQkM5MEEwMDQxREVENSAvKiBEYXRlVGltZUlucHV0c0Fj
Y2Vzc29yeVZpZXdUZXN0cy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU1ODkxODNCMjUyQkM5MEEwMDQxREVENSAvKiBEYXRlVGltZUlucHV0c0FjY2Vz
c29yeVZpZXdUZXN0cy5tbSAqLzsgfTsKIAkJRTVBQTQyRjIyNTkxMjhBRTAwNDEwQTNEIC8qIFVz
ZXJJbnRlcmZhY2VJZGlvbVVwZGF0ZS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEU1QUE0MkYxMjU5MTI4QUUwMDQxMEEzRCAvKiBVc2VySW50ZXJmYWNl
SWRpb21VcGRhdGUubW0gKi87IH07CiAJCUU1QUE4RDFEMjUxNTFDQzYwMDUxQ0M0NSAvKiBEYXRl
SW5wdXRUZXN0cy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEU1QUE4RDFDMjUxNTFDQzYwMDUxQ0M0NSAvKiBEYXRlSW5wdXRUZXN0cy5tbSAqLzsgfTsK
QEAgLTI4NjAsNyArMjg1OSw2IEBACiAJCUU0QTc1N0QzMTc4QUVBNUIwMEI1RDdBNCAvKiBEZXF1
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEZXF1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUU0QzlBQkM3MUIzREIxNzEwMDQwQTk4NyAvKiBSdW5Mb29wLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJ1bkxvb3AuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlFNTAzNkY3NzIxMUJDMjI4MDBCRkRCRTIgLyogY29sb3ItZHJvcC5o
dG1sICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dC5odG1sOyBwYXRoID0gImNvbG9yLWRyb3AuaHRtbCI7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUU1MjBBMzZBMjVBRkI3NkMwMDUyNkNCOSAvKiBXS1dl
YlZpZXdUaXRsZWJhclNlcGFyYXRvclRlc3RzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV0tX
ZWJWaWV3VGl0bGViYXJTZXBhcmF0b3JUZXN0cy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJRTU4OTE4M0IyNTJCQzkwQTAwNDFERUQ1IC8qIERhdGVUaW1lSW5wdXRzQWNjZXNzb3J5
Vmlld1Rlc3RzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRGF0ZVRpbWVJbnB1dHNBY2Nlc3Nv
cnlWaWV3VGVzdHMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUU1QUE0MkYxMjU5
MTI4QUUwMDQxMEEzRCAvKiBVc2VySW50ZXJmYWNlSWRpb21VcGRhdGUubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBVc2VySW50ZXJmYWNlSWRpb21VcGRhdGUubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUU1QUE4RDFDMjUxNTFDQzYwMDUxQ0M0NSAvKiBEYXRlSW5wdXRUZXN0cy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERhdGVJbnB1dFRlc3RzLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtNDU3OCw3ICs0NTc2LDYgQEAKIAkJCQlBNUUyMDI3MjE1QjIxODE5
MDBDMTNFMTQgLyogV2luZG93bGVzc1dlYlZpZXdXaXRoTWVkaWEubW0gKi8sCiAJCQkJRjQyNTgz
MTUyNEYwN0NBNTAwNkI5ODVEIC8qIFdLV2ViVmlld0NvZGVycy5tbSAqLywKIAkJCQlGNEZBOTE3
RjFFNjE4NDlCMDA3QjhDMUQgLyogV0tXZWJWaWV3TWFjRWRpdGluZ1Rlc3RzLm1tICovLAotCQkJ
CUU1MjBBMzZBMjVBRkI3NkMwMDUyNkNCOSAvKiBXS1dlYlZpZXdUaXRsZWJhclNlcGFyYXRvclRl
c3RzLm1tICovLAogCQkJKTsKIAkJCXBhdGggPSBtYWM7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91
cD4iOwpAQCAtNTY5MCw3ICs1Njg3LDYgQEAKIAkJCQk5M0Y1NkRBOTFFNUY5MTlEMDAzRURFODQg
LyogV0tXZWJWaWV3U25hcHNob3QubW0gaW4gU291cmNlcyAqLywKIAkJCQlDRDdGODlEQzIyQTg2
Q0RBMDBENjgzQUUgLyogV0tXZWJWaWV3U3VzcGVuZEFsbE1lZGlhUGxheWJhY2subW0gaW4gU291
cmNlcyAqLywKIAkJCQk5OTg0RkFDQzFDRkZBRjYwMDA4RDE5OEMgLyogV0tXZWJWaWV3VGV4dElu
cHV0Lm1tIGluIFNvdXJjZXMgKi8sCi0JCQkJRTUyMEEzNkIyNUFGQjc2QzAwNTI2Q0I5IC8qIFdL
V2ViVmlld1RpdGxlYmFyU2VwYXJhdG9yVGVzdHMubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Qzc0
QzhGQTIyREZCQTk2MDBEQTJEQUIgLyogV1RGU3RyaW5nVXRpbGl0aWVzLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUMxNEQzMDQ2MjRCNEMzQkEwMDQ4MDM4NyAvKiBYUENFbmRwb2ludC5tbSBpbiBT
b3VyY2VzICovLAogCQkJCTlDNjREQzMyMUQ3NjE5OEEwMDRCNTk4RSAvKiBZb3VUdWJlUGx1Z2lu
UmVwbGFjZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1Rlc3RXZWJLaXRBUEkvbWFjL0FwcEtpdFNQSS5oIGIvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9UZXN0V2ViS2l0QVBJL21hYy9BcHBLaXRTUEkuaAppbmRleCA5YmNiMjVh
Zjk4ZjYzNWQwNWE1ZGFmNWE4NjliMGVjMDJjZjdkZmUyLi4yNWIwMjA1YWYyODRhMzY1NjVlYmRl
MTAzZGYwZGViNGEzNTUyMDhjIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1Rlc3RXZWJLaXRBUEkvbWFjL0FwcEtpdFNQSS5oCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvVGVzdFdlYktpdEFQSS9tYWMvQXBwS2l0U1BJLmgKQEAgLTMzLDEwICszMyw2IEBACiAj
aW1wb3J0IDxBcHBLaXQvTlNUZXh0SW5wdXRDbGllbnRfUHJpdmF0ZS5oPgogI2ltcG9ydCA8QXBw
S2l0L05TV2luZG93X1ByaXZhdGUuaD4KIAotI2lmIEhBVkUoTlNTQ1JPTExWSUVXX1NFUEFSQVRP
Ul9UUkFDS0lOR19BREFQVEVSKQotI2ltcG9ydCA8QXBwS2l0L05TU2Nyb2xsVmlld1NlcGFyYXRv
clRyYWNraW5nQWRhcHRlcl9Qcml2YXRlLmg+Ci0jZW5kaWYKLQogI2Vsc2UKIAogQHByb3RvY29s
IE5TVGV4dElucHV0Q2xpZW50X0FzeW5jCkBAIC04MywxMyArNzksNiBAQCBOU1N0cmluZyAqIGNv
bnN0IE5TSW5zcGVjdG9yQmFyVGV4dEFsaWdubWVudEl0ZW1JZGVudGlmaWVyID0gQCJOU0luc3Bl
Y3RvckJhclRleAogLSAodm9pZClzZXRJbnNwZWN0b3JCYXI6KE5TSW5zcGVjdG9yQmFyICopYmFy
OwogQGVuZAogCi0jaWYgSEFWRShOU1NDUk9MTFZJRVdfU0VQQVJBVE9SX1RSQUNLSU5HX0FEQVBU
RVIpCi1AcHJvdG9jb2wgTlNTY3JvbGxWaWV3U2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyCi1AcHJv
cGVydHkgKHJlYWRvbmx5KSBOU1JlY3Qgc2Nyb2xsVmlld0ZyYW1lOwotQHByb3BlcnR5IChyZWFk
b25seSkgQk9PTCBoYXNTY3JvbGxlZENvbnRlbnRzVW5kZXJUaXRsZWJhcjsKLUBlbmQKLSNlbmRp
ZgotCiAjZW5kaWYKIAogQHByb3RvY29sIE5TVGV4dElucHV0Q2xpZW50X0FzeW5jX1N0YWdpbmdf
NDQ2NDg1NjQKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvbWFjL1dLV2Vi
Vmlld1RpdGxlYmFyU2VwYXJhdG9yVGVzdHMubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L21hYy9XS1dlYlZpZXdUaXRsZWJhclNlcGFyYXRvclRlc3RzLm1tCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAxZGIxNDhjODYzZTg2YzRlY2JiMzk1YTdlNzRjNjM3NWRiN2FmYWMyLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvbWFjL1dLV2ViVmlld1RpdGxlYmFyU2VwYXJhdG9yVGVzdHMubW0KKysr
IC9kZXYvbnVsbApAQCAtMSwxNzUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
LSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgot
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbXBvcnQgImNvbmZp
Zy5oIgotCi0jaWYgUExBVEZPUk0oTUFDKQotCi0jaW1wb3J0ICJBcHBLaXRTUEkuaCIKLSNpbXBv
cnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCi0jaW1wb3J0ICJUZXN0V0tXZWJWaWV3LmgiCi0jaW1w
b3J0IDx3dGYvUmV0YWluUHRyLmg+Ci0KLSNpZiBIQVZFKE5TU0NST0xMVklFV19TRVBBUkFUT1Jf
VFJBQ0tJTkdfQURBUFRFUikKLQotQGludGVyZmFjZSBUaXRsZWJhclNlcGFyYXRvclRlc3RXS1dl
YlZpZXcgOiBUZXN0V0tXZWJWaWV3Ci0tIChpZDxOU1Njcm9sbFZpZXdTZXBhcmF0b3JUcmFja2lu
Z0FkYXB0ZXI+KXNlcGFyYXRvclRyYWNraW5nQWRhcHRlcjsKLUBlbmQKLQotQGltcGxlbWVudGF0
aW9uIFRpdGxlYmFyU2VwYXJhdG9yVGVzdFdLV2ViVmlldyB7Ci0gICAgUmV0YWluUHRyPE5TV2lu
ZG93PiBfaG9zdFdpbmRvdzsKLX0KLQotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoRnJhbWU6KENH
UmVjdClmcmFtZSBjb25maWd1cmF0aW9uOihXS1dlYlZpZXdDb25maWd1cmF0aW9uICopY29uZmln
dXJhdGlvbgotewotICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhGcmFtZTpmcmFtZSBjb25maWd1
cmF0aW9uOmNvbmZpZ3VyYXRpb24gYWRkVG9XaW5kb3c6Tk9dOwotICAgIGlmICghc2VsZikKLSAg
ICAgICAgcmV0dXJuIG5pbDsKLQotICAgIFtzZWxmIHN5bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VO
YW1lZDpAInNpbXBsZS10YWxsIl07Ci0KLSAgICBfaG9zdFdpbmRvdyA9IGFkb3B0TlMoW1tOU1dp
bmRvdyBhbGxvY10gaW5pdFdpdGhDb250ZW50UmVjdDpzZWxmLmZyYW1lIHN0eWxlTWFzazpOU1dp
bmRvd1N0eWxlTWFza1RpdGxlZCBiYWNraW5nOk5TQmFja2luZ1N0b3JlQnVmZmVyZWQgZGVmZXI6
WUVTXSk7Ci0gICAgW1tfaG9zdFdpbmRvdyBjb250ZW50Vmlld10gYWRkU3VidmlldzpzZWxmXTsK
LSAgICBbX2hvc3RXaW5kb3cgbWFrZUtleUFuZE9yZGVyRnJvbnQ6bmlsXTsKLQotICAgIHJldHVy
biBzZWxmOwotfQotCi0tIChpZDxOU1Njcm9sbFZpZXdTZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXI+
KXNlcGFyYXRvclRyYWNraW5nQWRhcHRlcgotewotICAgIEFTU0VSVChbc2VsZiBjb25mb3Jtc1Rv
UHJvdG9jb2w6QHByb3RvY29sKE5TU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlcild
KTsKLSAgICByZXR1cm4gKGlkPE5TU2Nyb2xsVmlld1NlcGFyYXRvclRyYWNraW5nQWRhcHRlcj4p
c2VsZjsKLX0KLQotQGVuZAotCi1URVNUKFdLV2ViVmlld1RpdGxlYmFyU2VwYXJhdG9yVGVzdHMs
IFNjcm9sbFdpdGhUaXRsZWJhckFkamFjZW5jeSkKLXsKLSAgICBhdXRvIHdlYlZpZXcgPSBhZG9w
dE5TKFtbVGl0bGViYXJTZXBhcmF0b3JUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7Ci0KLSAgICBhdXRvIHNlcGFyYXRvclRyYWNr
aW5nQWRhcHRlciA9IFt3ZWJWaWV3IHNlcGFyYXRvclRyYWNraW5nQWRhcHRlcl07Ci0gICAgRVhQ
RUNUX0ZBTFNFKFtzZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgaGFzU2Nyb2xsZWRDb250ZW50c1Vu
ZGVyVGl0bGViYXJdKTsKLQotICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3Jp
cHQ6QCJzY3JvbGxUbygwLCAxMDAwKSJdOwotICAgIFt3ZWJWaWV3IHdhaXRGb3JOZXh0UHJlc2Vu
dGF0aW9uVXBkYXRlXTsKLSAgICBFWFBFQ1RfVFJVRShbc2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVy
IGhhc1Njcm9sbGVkQ29udGVudHNVbmRlclRpdGxlYmFyXSk7Ci0KLSAgICBbd2ViVmlldyBzdHJp
bmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAic2Nyb2xsVG8oMCwgMCkiXTsKLSAgICBbd2ViVmll
dyB3YWl0Rm9yTmV4dFByZXNlbnRhdGlvblVwZGF0ZV07Ci0gICAgRVhQRUNUX0ZBTFNFKFtzZXBh
cmF0b3JUcmFja2luZ0FkYXB0ZXIgaGFzU2Nyb2xsZWRDb250ZW50c1VuZGVyVGl0bGViYXJdKTsK
LX0KLQotVEVTVChXS1dlYlZpZXdUaXRsZWJhclNlcGFyYXRvclRlc3RzLCBOYXZpZ2F0aW9uUmVz
ZXRzVGl0bGViYXJBcHBlYXJhbmNlKQotewotICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tU
aXRsZWJhclNlcGFyYXRvclRlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtl
UmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKLQotICAgIGF1dG8gc2VwYXJhdG9yVHJhY2tpbmdBZGFw
dGVyID0gW3dlYlZpZXcgc2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyXTsKLSAgICBFWFBFQ1RfRkFM
U0UoW3NlcGFyYXRvclRyYWNraW5nQWRhcHRlciBoYXNTY3JvbGxlZENvbnRlbnRzVW5kZXJUaXRs
ZWJhcl0pOwotCi0gICAgW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAInNj
cm9sbFRvKDAsIDEwMDApIl07Ci0gICAgW3dlYlZpZXcgd2FpdEZvck5leHRQcmVzZW50YXRpb25V
cGRhdGVdOwotICAgIEVYUEVDVF9UUlVFKFtzZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgaGFzU2Ny
b2xsZWRDb250ZW50c1VuZGVyVGl0bGViYXJdKTsKLQotICAgIFt3ZWJWaWV3IHN5bmNocm9ub3Vz
bHlMb2FkVGVzdFBhZ2VOYW1lZDpAInNpbXBsZS10YWxsIl07Ci0gICAgW3dlYlZpZXcgd2FpdEZv
ck5leHRQcmVzZW50YXRpb25VcGRhdGVdOwotICAgIEVYUEVDVF9GQUxTRShbc2VwYXJhdG9yVHJh
Y2tpbmdBZGFwdGVyIGhhc1Njcm9sbGVkQ29udGVudHNVbmRlclRpdGxlYmFyXSk7Ci19Ci0KLVRF
U1QoV0tXZWJWaWV3VGl0bGViYXJTZXBhcmF0b3JUZXN0cywgU2Nyb2xsV2l0aG91dFRpdGxlYmFy
QWRqYWNlbmN5KQotewotICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUaXRsZWJhclNlcGFy
YXRvclRlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4
MDAsIDYwMCldKTsKLSAgICBbd2ViVmlldyBzZXRGcmFtZVNpemU6TlNNYWtlU2l6ZSg4MDAsIDUw
MCldOwotCi0gICAgYXV0byBzZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgPSBbd2ViVmlldyBzZXBh
cmF0b3JUcmFja2luZ0FkYXB0ZXJdOwotICAgIEVYUEVDVF9GQUxTRShbc2VwYXJhdG9yVHJhY2tp
bmdBZGFwdGVyIGhhc1Njcm9sbGVkQ29udGVudHNVbmRlclRpdGxlYmFyXSk7Ci0KLSAgICBbd2Vi
VmlldyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAic2Nyb2xsVG8oMCwgMTAwMCkiXTsK
LSAgICBbd2ViVmlldyB3YWl0Rm9yTmV4dFByZXNlbnRhdGlvblVwZGF0ZV07Ci0gICAgRVhQRUNU
X0ZBTFNFKFtzZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgaGFzU2Nyb2xsZWRDb250ZW50c1VuZGVy
VGl0bGViYXJdKTsKLX0KLQotVEVTVChXS1dlYlZpZXdUaXRsZWJhclNlcGFyYXRvclRlc3RzLCBD
aGFuZ2VUaXRsZWJhckFkamFjZW5jeSkKLXsKLSAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtb
VGl0bGViYXJTZXBhcmF0b3JUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFr
ZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7Ci0KLSAgICBhdXRvIHNlcGFyYXRvclRyYWNraW5nQWRh
cHRlciA9IFt3ZWJWaWV3IHNlcGFyYXRvclRyYWNraW5nQWRhcHRlcl07Ci0gICAgRVhQRUNUX0ZB
TFNFKFtzZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgaGFzU2Nyb2xsZWRDb250ZW50c1VuZGVyVGl0
bGViYXJdKTsKLQotICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJz
Y3JvbGxUbygwLCAxMDAwKSJdOwotICAgIFt3ZWJWaWV3IHdhaXRGb3JOZXh0UHJlc2VudGF0aW9u
VXBkYXRlXTsKLSAgICBFWFBFQ1RfVFJVRShbc2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyIGhhc1Nj
cm9sbGVkQ29udGVudHNVbmRlclRpdGxlYmFyXSk7Ci0KLSAgICBbd2ViVmlldyBzZXRGcmFtZVNp
emU6TlNNYWtlU2l6ZSg4MDAsIDUwMCldOwotICAgIEVYUEVDVF9GQUxTRShbc2VwYXJhdG9yVHJh
Y2tpbmdBZGFwdGVyIGhhc1Njcm9sbGVkQ29udGVudHNVbmRlclRpdGxlYmFyXSk7Ci0KLSAgICBb
d2ViVmlldyBzZXRGcmFtZVNpemU6TlNNYWtlU2l6ZSg4MDAsIDYwMCldOwotICAgIEVYUEVDVF9U
UlVFKFtzZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgaGFzU2Nyb2xsZWRDb250ZW50c1VuZGVyVGl0
bGViYXJdKTsKLX0KLQotVEVTVChXS1dlYlZpZXdUaXRsZWJhclNlcGFyYXRvclRlc3RzLCBDaGFu
Z2VWaWV3VmlzaWJpbGl0eSkKLXsKLSAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGl0bGVi
YXJTZXBhcmF0b3JUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3Qo
MCwgMCwgODAwLCA2MDApXSk7Ci0KLSAgICBhdXRvIHNlcGFyYXRvclRyYWNraW5nQWRhcHRlciA9
IFt3ZWJWaWV3IHNlcGFyYXRvclRyYWNraW5nQWRhcHRlcl07Ci0gICAgRVhQRUNUX0ZBTFNFKFtz
ZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgaGFzU2Nyb2xsZWRDb250ZW50c1VuZGVyVGl0bGViYXJd
KTsKLQotICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJzY3JvbGxU
bygwLCAxMDAwKSJdOwotICAgIFt3ZWJWaWV3IHdhaXRGb3JOZXh0UHJlc2VudGF0aW9uVXBkYXRl
XTsKLSAgICBFWFBFQ1RfVFJVRShbc2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyIGhhc1Njcm9sbGVk
Q29udGVudHNVbmRlclRpdGxlYmFyXSk7Ci0KLSAgICBbd2ViVmlldyBzZXRIaWRkZW46WUVTXTsK
LSAgICBFWFBFQ1RfRkFMU0UoW3NlcGFyYXRvclRyYWNraW5nQWRhcHRlciBoYXNTY3JvbGxlZENv
bnRlbnRzVW5kZXJUaXRsZWJhcl0pOwotCi0gICAgW3dlYlZpZXcgc2V0SGlkZGVuOk5PXTsKLSAg
ICBFWFBFQ1RfVFJVRShbc2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyIGhhc1Njcm9sbGVkQ29udGVu
dHNVbmRlclRpdGxlYmFyXSk7Ci19Ci0KLVRFU1QoV0tXZWJWaWV3VGl0bGViYXJTZXBhcmF0b3JU
ZXN0cywgQmFja0ZvcndhcmRDYWNoZSkKLXsKLSAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtb
VGl0bGViYXJTZXBhcmF0b3JUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFr
ZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7Ci0KLSAgICBhdXRvIHNlcGFyYXRvclRyYWNraW5nQWRh
cHRlciA9IFt3ZWJWaWV3IHNlcGFyYXRvclRyYWNraW5nQWRhcHRlcl07Ci0gICAgRVhQRUNUX0ZB
TFNFKFtzZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgaGFzU2Nyb2xsZWRDb250ZW50c1VuZGVyVGl0
bGViYXJdKTsKLQotICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJz
Y3JvbGxUbygwLCAxMDAwKSJdOwotICAgIFt3ZWJWaWV3IHdhaXRGb3JOZXh0UHJlc2VudGF0aW9u
VXBkYXRlXTsKLSAgICBFWFBFQ1RfVFJVRShbc2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVyIGhhc1Nj
cm9sbGVkQ29udGVudHNVbmRlclRpdGxlYmFyXSk7Ci0KLSAgICBbd2ViVmlldyBzeW5jaHJvbm91
c2x5TG9hZFRlc3RQYWdlTmFtZWQ6QCJzaW1wbGUiXTsKLSAgICBbd2ViVmlldyB3YWl0Rm9yTmV4
dFByZXNlbnRhdGlvblVwZGF0ZV07Ci0gICAgRVhQRUNUX0ZBTFNFKFtzZXBhcmF0b3JUcmFja2lu
Z0FkYXB0ZXIgaGFzU2Nyb2xsZWRDb250ZW50c1VuZGVyVGl0bGViYXJdKTsKLQotICAgIFt3ZWJW
aWV3IHN5bmNocm9ub3VzbHlHb0JhY2tdOwotICAgIFt3ZWJWaWV3IHdhaXRGb3JOZXh0UHJlc2Vu
dGF0aW9uVXBkYXRlXTsKLSAgICBFWFBFQ1RfVFJVRShbc2VwYXJhdG9yVHJhY2tpbmdBZGFwdGVy
IGhhc1Njcm9sbGVkQ29udGVudHNVbmRlclRpdGxlYmFyXSk7Ci0KLSAgICBbd2ViVmlldyBzeW5j
aHJvbm91c2x5R29Gb3J3YXJkXTsKLSAgICBbd2ViVmlldyB3YWl0Rm9yTmV4dFByZXNlbnRhdGlv
blVwZGF0ZV07Ci0gICAgRVhQRUNUX0ZBTFNFKFtzZXBhcmF0b3JUcmFja2luZ0FkYXB0ZXIgaGFz
U2Nyb2xsZWRDb250ZW50c1VuZGVyVGl0bGViYXJdKTsKLX0KLQotI2VuZGlmIC8vIEhBVkUoTlNT
Q1JPTExWSUVXX1NFUEFSQVRPUl9UUkFDS0lOR19BREFQVEVSKQotCi0jZW5kaWYgLy8gUExBVEZP
Uk0oTUFDKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>