<?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>227859</bug_id>
          
          <creation_ts>2021-07-11 10:37:54 -0700</creation_ts>
          <short_desc>[watchOS] Make a few additional adjustments to support system minimum layout margins</short_desc>
          <delta_ts>2021-07-12 10:54:51 -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>Platform</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>hi</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1776219</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-07-11 10:37:54 -0700</bug_when>
    <thetext>rdar://80113612</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776227</commentid>
    <comment_count>1</comment_count>
      <attachid>433291</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-07-11 15:12:07 -0700</bug_when>
    <thetext>Created attachment 433291
For EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776246</commentid>
    <comment_count>2</comment_count>
      <attachid>433291</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-07-11 19:46:50 -0700</bug_when>
    <thetext>Comment on attachment 433291
For EWS

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

&gt; Source/WebKit/UIProcess/ios/WKScrollView.mm:464
&gt; +        super.contentScrollInset = UIEdgeInsetsZero;

Is this bit going to cause any trouble on iOS?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776312</commentid>
    <comment_count>3</comment_count>
      <attachid>433291</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-07-12 07:30:51 -0700</bug_when>
    <thetext>Comment on attachment 433291
For EWS

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

Thanks for the review!

&gt;&gt; Source/WebKit/UIProcess/ios/WKScrollView.mm:464
&gt;&gt; +        super.contentScrollInset = UIEdgeInsetsZero;
&gt; 
&gt; Is this bit going to cause any trouble on iOS?

Oh, good catch! I think that in theory, it could cause trouble if a client were setting `-_contentScrollInset` on iOS (since the interaction between `-_contentScrollInset` and `-contentInset` is…reasonable on non-watch iOS platforms). Since the need to duck `-_contentScrollInset` when a `-contentInset` is specified is really only needed on watchOS, I&apos;ll make some of this code conditional for watchOS only.

That said — as this patch currently is, this method shouldn&apos;t be reachable at all on non-watchOS platforms, since the only way it can be reached is for `_contentScrollInsetInternal` to be set, and we only call `-_setContentScrollInsetInternal:` from a watchOS-specific codepath.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776314</commentid>
    <comment_count>4</comment_count>
      <attachid>433316</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-07-12 07:38:51 -0700</bug_when>
    <thetext>Created attachment 433316
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776348</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-07-12 09:15:20 -0700</bug_when>
    <thetext>Committed r279830 (239591@main): &lt;https://commits.webkit.org/239591@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 433316.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776372</commentid>
    <comment_count>6</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-07-12 10:54:51 -0700</bug_when>
    <thetext>(In reply to Wenson Hsieh from comment #3)
&gt; Comment on attachment 433291 [details]
&gt; For EWS
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=433291&amp;action=review
&gt; 
&gt; Thanks for the review!
&gt; 
&gt; &gt;&gt; Source/WebKit/UIProcess/ios/WKScrollView.mm:464
&gt; &gt;&gt; +        super.contentScrollInset = UIEdgeInsetsZero;
&gt; &gt; 
&gt; &gt; Is this bit going to cause any trouble on iOS?
&gt; 
&gt; Oh, good catch! I think that in theory, it could cause trouble if a client
&gt; were setting `-_contentScrollInset` on iOS (since the interaction between
&gt; `-_contentScrollInset` and `-contentInset` is…reasonable on non-watch iOS
&gt; platforms). Since the need to duck `-_contentScrollInset` when a
&gt; `-contentInset` is specified is really only needed on watchOS, I&apos;ll make
&gt; some of this code conditional for watchOS only.

Perfect! Thank you. Best to limit the counter-hacks to places where the hacks exist :)

&gt; That said — as this patch currently is, this method shouldn&apos;t be reachable
&gt; at all on non-watchOS platforms, since the only way it can be reached is for
&gt; `_contentScrollInsetInternal` to be set, and we only call
&gt; `-_setContentScrollInsetInternal:` from a watchOS-specific codepath.

Sure, makes sense.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433291</attachid>
            <date>2021-07-11 15:12:07 -0700</date>
            <delta_ts>2021-07-12 07:38:50 -0700</delta_ts>
            <desc>For EWS</desc>
            <filename>bug-227859-20210711151206.patch</filename>
            <type>text/plain</type>
            <size>18776</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NzcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTFkNDMxZTA5NzJjY2Y3
YmUxM2U5Mzk0MmQ0MzVkMDNlODZhM2NiZi4uNjVkODcxODg1ZTg5MDE5Yjg2NTQzZmZlOWU1YTZj
MGVjOWU0NDAzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIxLTA3LTExICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFt3YXRjaE9TXSBN
YWtlIGEgZmV3IGFkZGl0aW9uYWwgYWRqdXN0bWVudHMgdG8gc3VwcG9ydCBzeXN0ZW0gbWluaW11
bSBsYXlvdXQgbWFyZ2lucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI3ODU5CisgICAgICAgIHJkYXI6Ly84MDExMzYxMgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlZHVjZSB0aGUgZGVmYXVsdCBtaW5p
bXVtIHZpZXdwb3J0IHNjYWxlIG9uIHdhdGNoT1MgdG8gYXZvaWQgaG9yaXpvbnRhbCBzY3JvbGxp
bmcgd2hlbiBsb2FkaW5nIHdpZGUgZml4ZWQtCisgICAgICAgIHZpZXdwb3J0LXdpZHRoIHdlYiBj
b250ZW50LiBTZWUgV2ViS2l0IENoYW5nZUxvZyBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgICAg
ICogcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6cGxh
dGZvcm1EZXZpY2VXaWR0aE92ZXJyaWRlKToKKyAgICAgICAgKFdlYkNvcmU6OnBsYXRmb3JtTWlu
aW11bVNjYWxlRm9yV2VicGFnZSk6CisgICAgICAgIChXZWJDb3JlOjpzaG91bGRPdmVycmlkZVNo
cmlua1RvRml0QXJndW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6Vmlld3BvcnRDb25maWd1cmF0
aW9uOjpuYXRpdmVXZWJwYWdlUGFyYW1ldGVyc1dpdGhTaHJpbmtUb0ZpdCk6CisgICAgICAgIChX
ZWJDb3JlOjpWaWV3cG9ydENvbmZpZ3VyYXRpb246OndlYnBhZ2VQYXJhbWV0ZXJzKToKKwogMjAy
MS0wNy0wOCAgS2F0ZSBDaGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KIAogICAg
ICAgICBVbnJldmlld2VkIGlPUyBidWlsZCBmaXggYWZ0ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggMzU0YjE2YzRl
NWFiM2U1MTk3ODNhZDM1Mjc1NWE5ZmI0ZjcxYzQ0ZC4uZWU1NTdiNWU3NWY1ZWQ3ODdlMjczMWI3
MDMyYTk1MjZmZWU1MmZhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0MSBAQAorMjAyMS0wNy0xMSAg
V2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBbd2F0Y2hP
U10gTWFrZSBhIGZldyBhZGRpdGlvbmFsIGFkanVzdG1lbnRzIHRvIHN1cHBvcnQgc3lzdGVtIG1p
bmltdW0gbGF5b3V0IG1hcmdpbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNzg1OQorICAgICAgICByZGFyOi8vODAxMTM2MTIKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYWtlIGEgY291cGxlIG9mIG1p
bm9yIGFkanVzdG1lbnRzIHRvIGRlYWwgd2l0aCB0aGUgZmFjdCB0aGF0IGAtY29udGVudEluc2V0
YCBpbmNsdWRlcyBzeXN0ZW0gY29udGVudCBpbnNldHMKKyAgICAgICAgKHNwZWNpZmljYWxseSwg
YC1fY29udGVudFNjcm9sbEluc2V0YCkgb24gd2F0Y2hPUywgZHVlIHRvIG1ldGhvZCBzd2l6emxp
bmcgdGhhdCBoYXBwZW5zIGluIFBlcHBlclVJQ29yZS4gU2VlCisgICAgICAgIGNoYW5nZXMgYmVs
b3cgZm9yIG1vcmUgZGV0YWlsLgorCisgICAgICAgIFRlc3Q6IGZhc3Qvdmlld3BvcnQvd2F0Y2hv
cy92aWV3cG9ydC13aXRoLXN5c3RlbS1taW5pbXVtLWxheW91dC1tYXJnaW5zLmh0bWwKKworICAg
ICAgICAqIFVJUHJvY2Vzcy9BUEkvaW9zL1dLV2ViVmlld0lPUy5tbToKKyAgICAgICAgKC1bV0tX
ZWJWaWV3IF9jb21wdXRlZENvbnRlbnRJbnNldF0pOgorCisgICAgICAgIE9ubHkgYXBwbHkgYC1z
YWZlQXJlYUluc2V0c2Agb24gdG9wIG9mIGAtY29udGVudEluc2V0YCB3aGVuIGNvbXB1dGluZyB0
aGUgdG90YWwgc2Nyb2xsIHZpZXcgY29udGVudCBpbnNldCBvbgorICAgICAgICB3YXRjaE9TIChh
cyBvcHBvc2VkIHRvIGFwcGx5aW5nIGJvdGggYC1zYWZlQXJlYUluc2V0c2AgYW5kIGAtX2NvbnRl
bnRTY3JvbGxJbnNldGApOyB0aGlzIGlzIGJlY2F1c2UKKyAgICAgICAgYC1jb250ZW50SW5zZXRg
IG9uIHdhdGNoT1MgaXMgYWN0dWFsbHkgZXF1aXZhbGVudCB0byBgLV9lZmZlY3RpdmVDb250ZW50
SW5zZXRgIG9uIG90aGVyIGlPUy1mYW1pbHkgcGxhdGZvcm1zLCBzbworICAgICAgICBhZGRpdGlv
bmFsbHkgYWRkaW5nIGAtX2NvbnRlbnRTY3JvbGxJbnNldGAgaGVyZSB3b3VsZCByZXN1bHQgaW4g
dGhlIHNjcm9sbCBjb250ZW50IGluc2V0IGJlaW5nIGRvdWJsZS1jb3VudGVkLgorCisgICAgICAg
ICogVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcubW06CisgICAgICAgICgtW1dLU2Nyb2xsVmll
dyBzZXRDb250ZW50SW5zZXQ6XSk6CisgICAgICAgICgtW1dLU2Nyb2xsVmlldyBfc2V0Q29udGVu
dFNjcm9sbEluc2V0SW50ZXJuYWw6XSk6CisgICAgICAgICgtW1dLU2Nyb2xsVmlldyBfdXBkYXRl
Q29udGVudFNjcm9sbEluc2V0XSk6CisKKyAgICAgICAgSW4gdGhlIGNhc2Ugd2hlcmUgdGhlIFdl
YktpdCBjbGllbnQgZXhwbGljaXRseSBzZXRzIHRoZSBzY3JvbGwgdmlldydzIGNvbnRlbnQgaW5z
ZXRzIHVzaW5nIGAtW1dLU2Nyb2xsVmlldworICAgICAgICBzZXRDb250ZW50SW5zZXQ6XWAsIHNl
dCBhIGZsYWcgKGBfY29udGVudEluc2V0V2FzRXh0ZXJuYWxseU92ZXJyaWRkZW5gKSBhbmQgaW1t
ZWRpYXRlbHkgcmV2ZXJ0IGFueSBpbnRlcm5hbGx5CisgICAgICAgIHNwZWNpZmllZCBgLV9jb250
ZW50U2Nyb2xsSW5zZXRgIG9uIFdLU2Nyb2xsVmlldy4gRHVlIHRvIHRoZSBzd2l6emxlZCBpbXBs
ZW1lbnRhdGlvbiBvZiBgLVtVSVNjcm9sbFZpZXcKKyAgICAgICAgY29udGVudEluc2V0XWAgZGVz
Y3JpYmVkIGFib3ZlLCBpdCdzIHByYWN0aWNhbGx5IGltcG9zc2libGUgZm9yIGFueSBjbGllbnQg
dG8gdXNlIGAtc2V0Q29udGVudEluc2V0OmAgY29ycmVjdGx5CisgICAgICAgIHdoZW4gdGhlcmUg
aXMgYSBub256ZXJvIGAtX2NvbnRlbnRTY3JvbGxJbnNldGAgb24gd2F0Y2hPUywgc28gcHJlZmVy
YWJsZSB0byBzaW1wbHkgZ2V0IG91dCBvZiB0aGUgd2F5IG9mIHRoZQorICAgICAgICBjbGllbnQg
aW4gdGhpcyBzY2VuYXJpby4KKworICAgICAgICBJbiB0aGUgY29udGV4dCBvZiBfU0ZOYW5vQnJv
d3NlclZpZXdDb250cm9sbGVyLCB0aGlzIGVuc3VyZXMgdGhhdCBzY3JvbGwgdmlldyBjb250ZW50
IGluc2V0IGFkanVzdG1lbnQgbG9naWMgaW4KKyAgICAgICAgU2FmYXJpIGRvZXNuJ3QgaW5hZHZl
cnRlbnRseSBjYXVzZSBob3Jpem9udGFsIGNvbnRlbnQgaW5zZXRzIHRvIGluY3JlYXNlIGJ5IGAt
X2NvbnRlbnRTY3JvbGxJbnNldGAgZXZlcnkgdGltZQorICAgICAgICBgLVtXS1Njcm9sbFZpZXcg
c2V0Q29udGVudEluc2V0Ol1gIGlzIGludm9rZWQgYnkgdGhlIGNsaWVudC4KKwogMjAyMS0wNy0w
OCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBbd2F0
Y2hPU10gVGFwcGluZyAiRG9uZSIgaW4gU2NyaWJibGUgd2hlbiBmb2N1c2luZyBhbiBlZGl0YWJs
ZSBlbGVtZW50IHNob3VsZCBkaXNtaXNzIFF1aWNrYm9hcmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmNwcAppbmRleCBjYWU0MjQwMTU0NTA3YmI2NzQ4MGI1
NmU5MmRlODhjYzY2MjZjNGE4Li5kYzQwNjA2ZGViYzY0MTliMTk2Y2RhYjY1NDVhZWRiODY5ODM4
MDE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1ZpZXdwb3J0Q29uZmlndXJhdGlv
bi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3Bw
CkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBib29sIGNvbnN0cmFpbnRzQXJlQWxsUmVsYXRpdmUo
Y29uc3QgVmlld3BvcnRDb25maWd1cmF0aW9uOjpQYXJhbWV0ZXJzJiBjCiB9CiAjZW5kaWYgLy8g
QVNTRVJUX0VOQUJMRUQKIAotc3RhdGljIGZsb2F0IHBsYXRmb3JtRGV2aWNlV2lkdGhPdmVycmlk
ZSgpCitzdGF0aWMgY29uc3RleHByIGZsb2F0IHBsYXRmb3JtRGV2aWNlV2lkdGhPdmVycmlkZSgp
CiB7CiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKICAgICByZXR1cm4gMzIwOwpAQCAtNTQsNyArNTQs
MTYgQEAgc3RhdGljIGZsb2F0IHBsYXRmb3JtRGV2aWNlV2lkdGhPdmVycmlkZSgpCiAjZW5kaWYK
IH0KIAotc3RhdGljIGJvb2wgc2hvdWxkT3ZlcnJpZGVTaHJpbmtUb0ZpdEFyZ3VtZW50KCkKK3N0
YXRpYyBjb25zdGV4cHIgZG91YmxlIHBsYXRmb3JtTWluaW11bVNjYWxlRm9yV2VicGFnZSgpCit7
CisjaWYgUExBVEZPUk0oV0FUQ0hPUykKKyAgICByZXR1cm4gMC4xOworI2Vsc2UKKyAgICByZXR1
cm4gMC4yNTsKKyNlbmRpZgorfQorCitzdGF0aWMgY29uc3RleHByIGJvb2wgc2hvdWxkT3ZlcnJp
ZGVTaHJpbmtUb0ZpdEFyZ3VtZW50KCkKIHsKICNpZiBQTEFURk9STShXQVRDSE9TKQogICAgIHJl
dHVybiB0cnVlOwpAQCAtMzcyLDcgKzM4MSw3IEBAIFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6UGFy
YW1ldGVycyBWaWV3cG9ydENvbmZpZ3VyYXRpb246Om5hdGl2ZVdlYnBhZ2VQYXJhbWV0ZXJzCiB7
CiAgICAgUGFyYW1ldGVycyBwYXJhbWV0ZXJzID0gVmlld3BvcnRDb25maWd1cmF0aW9uOjpuYXRp
dmVXZWJwYWdlUGFyYW1ldGVyc1dpdGhvdXRTaHJpbmtUb0ZpdCgpOwogICAgIHBhcmFtZXRlcnMu
YWxsb3dzU2hyaW5rVG9GaXQgPSB0cnVlOwotICAgIHBhcmFtZXRlcnMubWluaW11bVNjYWxlID0g
MC4yNTsKKyAgICBwYXJhbWV0ZXJzLm1pbmltdW1TY2FsZSA9IHBsYXRmb3JtTWluaW11bVNjYWxl
Rm9yV2VicGFnZSgpOwogICAgIHBhcmFtZXRlcnMuaW5pdGlhbFNjYWxlSXNTZXQgPSBmYWxzZTsK
ICAgICByZXR1cm4gcGFyYW1ldGVyczsKIH0KQEAgLTM4NCw3ICszOTMsNyBAQCBWaWV3cG9ydENv
bmZpZ3VyYXRpb246OlBhcmFtZXRlcnMgVmlld3BvcnRDb25maWd1cmF0aW9uOjp3ZWJwYWdlUGFy
YW1ldGVycygpCiAgICAgcGFyYW1ldGVycy53aWR0aElzU2V0ID0gdHJ1ZTsKICAgICBwYXJhbWV0
ZXJzLmFsbG93c1VzZXJTY2FsaW5nID0gdHJ1ZTsKICAgICBwYXJhbWV0ZXJzLmFsbG93c1Nocmlu
a1RvRml0ID0gdHJ1ZTsKLSAgICBwYXJhbWV0ZXJzLm1pbmltdW1TY2FsZSA9IDAuMjU7CisgICAg
cGFyYW1ldGVycy5taW5pbXVtU2NhbGUgPSBwbGF0Zm9ybU1pbmltdW1TY2FsZUZvcldlYnBhZ2Uo
KTsKICAgICBwYXJhbWV0ZXJzLm1heGltdW1TY2FsZSA9IDU7CiAgICAgcmV0dXJuIHBhcmFtZXRl
cnM7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvaW9zL1dLV2Vi
Vmlld0lPUy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9pb3MvV0tXZWJWaWV3SU9T
Lm1tCmluZGV4IGY0NDg0MDg0YTE4NDM0ZDRmY2UzZjJlYmU0NGI0NjkzNWNiYzI0MzEuLjQxZGU3
YjkwMjMyMWNmZGQwNThmMzA0NmNjZmY0MjcwMTE5ZjM4MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9pb3MvV0tXZWJWaWV3SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9pb3MvV0tXZWJWaWV3SU9TLm1tCkBAIC02MzMsOSArNjMzLDE2IEBA
IC0gKFVJRWRnZUluc2V0cylfY29tcHV0ZWRDb250ZW50SW5zZXQKICAgICAgICAgcmV0dXJuIF9v
YnNjdXJlZEluc2V0czsKIAogICAgIFVJRWRnZUluc2V0cyBpbnNldHMgPSBbX3Njcm9sbFZpZXcg
Y29udGVudEluc2V0XTsKLQotICAgIGlmIChzZWxmLl9zYWZlQXJlYVNob3VsZEFmZmVjdE9ic2N1
cmVkSW5zZXRzKQotICAgICAgICBpbnNldHMgPSBVSUVkZ2VJbnNldHNBZGQoaW5zZXRzLCBzZWxm
Ll9zY3JvbGxWaWV3U3lzdGVtQ29udGVudEluc2V0LCBzZWxmLl9lZmZlY3RpdmVPYnNjdXJlZElu
c2V0RWRnZXNBZmZlY3RlZEJ5U2FmZUFyZWEpOworICAgIGlmIChzZWxmLl9zYWZlQXJlYVNob3Vs
ZEFmZmVjdE9ic2N1cmVkSW5zZXRzKSB7CisjaWYgUExBVEZPUk0oV0FUQ0hPUykKKyAgICAgICAg
Ly8gT24gd2F0Y2hPUywgUGVwcGVyVUlDb3JlIHN3aXp6bGVzIC1bVUlTY3JvbGxWaWV3IGNvbnRl
bnRJbnNldF0sIHN1Y2ggdGhhdCBpdCBpbmNsdWRlcyAtX2NvbnRlbnRTY3JvbGxJbnNldCBhcyB3
ZWxsLgorICAgICAgICAvLyBUbyBhdm9pZCBkb3VibGUtY291bnRpbmcgLV9jb250ZW50U2Nyb2xs
SW5zZXQgd2hlbiBkZXRlcm1pbmluZyB0aGUgdG90YWwgY29udGVudCBpbnNldCwgd2Ugb25seSBh
cHBseSBzYWZlIGFyZWEgaW5zZXRzIGhlcmUuCisgICAgICAgIGF1dG8gYWRkaXRpb25hbFNjcm9s
bFZpZXdDb250ZW50SW5zZXQgPSBzZWxmLnNhZmVBcmVhSW5zZXRzOworI2Vsc2UKKyAgICAgICAg
YXV0byBhZGRpdGlvbmFsU2Nyb2xsVmlld0NvbnRlbnRJbnNldCA9IHNlbGYuX3Njcm9sbFZpZXdT
eXN0ZW1Db250ZW50SW5zZXQ7CisjZW5kaWYKKyAgICAgICAgaW5zZXRzID0gVUlFZGdlSW5zZXRz
QWRkKGluc2V0cywgYWRkaXRpb25hbFNjcm9sbFZpZXdDb250ZW50SW5zZXQsIHNlbGYuX2VmZmVj
dGl2ZU9ic2N1cmVkSW5zZXRFZGdlc0FmZmVjdGVkQnlTYWZlQXJlYSk7CisgICAgfQogCiAgICAg
cmV0dXJuIGluc2V0czsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS1Njcm9sbFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxW
aWV3Lm1tCmluZGV4IGI1MmJjMGU0YzU0NDU1YzY4Y2MyZjEyYTljM2U1NDg2ZjRjNDA1YzMuLjU1
ODM4ZjZiZDNlM2ZmNzE5ZjYxYTk2NGUzM2YzODhjYjAzOWUzNWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcubW0KKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5tbQpAQCAtMTMxLDYgKzEzMSw3IEBAIEBpbXBs
ZW1lbnRhdGlvbiBXS1Njcm9sbFZpZXcgewogI2lmICFQTEFURk9STShXQVRDSE9TKSAmJiAhUExB
VEZPUk0oQVBQTEVUVikKICAgICBCT09MIF9jb250ZW50SW5zZXRBZGp1c3RtZW50QmVoYXZpb3JX
YXNFeHRlcm5hbGx5T3ZlcnJpZGRlbjsKICNlbmRpZgorICAgIEJPT0wgX2NvbnRlbnRJbnNldFdh
c0V4dGVybmFsbHlPdmVycmlkZGVuOwogICAgIENHRmxvYXQgX2tleWJvYXJkQm90dG9tSW5zZXRB
ZGp1c3RtZW50OwogICAgIEJPT0wgX3Njcm9sbEVuYWJsZWRCeUNsaWVudDsKICAgICBCT09MIF9z
Y3JvbGxFbmFibGVkSW50ZXJuYWw7CkBAIC0yNzEsNiArMjcyLDEyIEBAIC0gKHZvaWQpc2V0Q29u
dGVudEluc2V0OihVSUVkZ2VJbnNldHMpY29udGVudEluc2V0CiB7CiAgICAgW3N1cGVyIHNldENv
bnRlbnRJbnNldDpjb250ZW50SW5zZXRdOwogCisgICAgX2NvbnRlbnRJbnNldFdhc0V4dGVybmFs
bHlPdmVycmlkZGVuID0gWUVTOworICAgIGlmIChfY29udGVudFNjcm9sbEluc2V0SW50ZXJuYWwp
IHsKKyAgICAgICAgX2NvbnRlbnRTY3JvbGxJbnNldEludGVybmFsID0gc3RkOjpudWxsb3B0Owor
ICAgICAgICBbc2VsZiBfdXBkYXRlQ29udGVudFNjcm9sbEluc2V0XTsKKyAgICB9CisKICAgICBb
X2ludGVybmFsRGVsZWdhdGUgX3NjaGVkdWxlVmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlXTsKIH0K
IApAQCAtNDMzLDYgKzQ0MCw5IEBAIC0gKHZvaWQpX3NldENvbnRlbnRTY3JvbGxJbnNldDooVUlF
ZGdlSW5zZXRzKWluc2V0cwogCiAtIChCT09MKV9zZXRDb250ZW50U2Nyb2xsSW5zZXRJbnRlcm5h
bDooVUlFZGdlSW5zZXRzKWluc2V0cwogeworICAgIGlmIChfY29udGVudEluc2V0V2FzRXh0ZXJu
YWxseU92ZXJyaWRkZW4pCisgICAgICAgIHJldHVybiBOTzsKKwogICAgIGlmIChfY29udGVudFNj
cm9sbEluc2V0RnJvbUNsaWVudCkKICAgICAgICAgcmV0dXJuIE5POwogCkBAIC00NTAsNiArNDYw
LDggQEAgLSAodm9pZClfdXBkYXRlQ29udGVudFNjcm9sbEluc2V0CiAgICAgICAgIHN1cGVyLmNv
bnRlbnRTY3JvbGxJbnNldCA9ICppbnNldHM7CiAgICAgZWxzZSBpZiAoYXV0byBpbnNldHMgPSBf
Y29udGVudFNjcm9sbEluc2V0SW50ZXJuYWwpCiAgICAgICAgIHN1cGVyLmNvbnRlbnRTY3JvbGxJ
bnNldCA9ICppbnNldHM7CisgICAgZWxzZSBpZiAoX2NvbnRlbnRJbnNldFdhc0V4dGVybmFsbHlP
dmVycmlkZGVuKQorICAgICAgICBzdXBlci5jb250ZW50U2Nyb2xsSW5zZXQgPSBVSUVkZ2VJbnNl
dHNaZXJvOwogICAgIGVsc2UKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNGYxYjNlYWZj
Njg4MzhmMjA5MmZmNDJjMDgxNDEwNjYyMmZhZWJmOS4uYjU5NDJlZjkxNDJlZmM1YmQ5NDU2NDll
Y2IxNWQzMGZhODFhYTVkMiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIxLTA3LTExICBXZW5zb24gSHNpZWggIDx3
ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFt3YXRjaE9TXSBNYWtlIGEgZmV3IGFk
ZGl0aW9uYWwgYWRqdXN0bWVudHMgdG8gc3VwcG9ydCBzeXN0ZW0gbWluaW11bSBsYXlvdXQgbWFy
Z2lucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3
ODU5CisgICAgICAgIHJkYXI6Ly84MDExMzYxMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBzaW11bGF0aW5nIGFyYml0cmFy
eSBob3Jpem9udGFsICh0cmFpbGluZyBhbmQgbGVhZGluZykgdmFsdWVzIGZvciBgLXN5c3RlbU1p
bmltdW1MYXlvdXRNYXJnaW5gCisgICAgICAgIGluIFdlYktpdFRlc3RSdW5uZXIsIHZpYSBhIG5l
dyAiaG9yaXpvbnRhbFN5c3RlbU1pbmltdW1MYXlvdXRNYXJnaW4iIHRlc3Qgb3B0aW9uLiBCeSBk
ZWZhdWx0LCB0aGlzIGlzIDAuCisKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RPcHRp
b25zLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdE9wdGlvbnM6OmRlZmF1bHRzKToKKyAgICAgICAg
KFdUUjo6VGVzdE9wdGlvbnM6OmtleVR5cGVNYXBwaW5nKToKKyAgICAgICAgKiBXZWJLaXRUZXN0
UnVubmVyL1Rlc3RPcHRpb25zLmg6CisgICAgICAgIChXVFI6OlRlc3RPcHRpb25zOjpob3Jpem9u
dGFsU3lzdGVtTWluaW11bUxheW91dE1hcmdpbiBjb25zdCk6CisgICAgICAgICogV2ViS2l0VGVz
dFJ1bm5lci9pb3MvUGxhdGZvcm1XZWJWaWV3SU9TLm1tOgorICAgICAgICAoLVtQbGF0Zm9ybVdl
YlZpZXdDb250cm9sbGVyIHN5c3RlbU1pbmltdW1MYXlvdXRNYXJnaW5zXSk6CisKKyAgICAgICAg
T3ZlcnJpZGUgdGhpcyBVSVZpZXdDb250cm9sbGVyIG1ldGhvZCBhbmQgcmVwbGFjZSB0aGUgbGVh
ZGluZyBhbmQgdHJhaWxpbmcgbGF5b3V0IG1hcmdpbiB2YWx1ZXMgd2l0aCB0aGUgdmFsdWVzCisg
ICAgICAgIGZyb20gdGVzdCBvcHRpb25zLgorCisgICAgICAgIChXVFI6OlBsYXRmb3JtV2ViVmll
dzo6UGxhdGZvcm1XZWJWaWV3KToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL2lvcy9UZXN0
Q29udHJvbGxlcklPUy5tbToKKyAgICAgICAgKFdUUjo6VGVzdENvbnRyb2xsZXI6OnBsYXRmb3Jt
UmVzZXRTdGF0ZVRvQ29uc2lzdGVudFZhbHVlcyk6CisKKyAgICAgICAgQWRkaXRpb25hbGx5IG1h
a2UgYSBzbGlnaHQgYWRqdXN0bWVudCBoZXJlIHRvIGF2b2lkIGNhbGxpbmcgYC1zZXRDb250ZW50
SW5zZXRgIG9uIHRoZSBzY3JvbGwgdmlldyBpbiBiZXR3ZWVuCisgICAgICAgIHRlc3RzIGlmIHRo
ZSBjb250ZW50IGluc2V0cyBhcmVuJ3QgY2hhbmdpbmcuIFRoaXMgaXMgbmVlZGVkIGluIG9yZGVy
IGZvciB0aGUgbmV3IGxheW91dCB0ZXN0IHRvIHdvcmsgb24gd2F0Y2hPUy4KKwogMjAyMS0wNy0w
OCAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIFlp
amlhIEh1YW5nIGFzIGEgY29tbWl0dGVyCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL1Rlc3RPcHRpb25zLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMu
Y3BwCmluZGV4IDQ2OTAxMzY1MzdhYTI4M2VmZmFlNWQxZjk1MTQxMTYxZmE4YmU5MTEuLjkyNjlm
YTM1ZmU4Yzc4YWQ4NWM1NzdlYWI5ZDc0YmRmNmJlMzM1NTMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvVGVzdE9wdGlvbnMuY3BwCkBAIC0xNTksNiArMTU5LDcgQEAgY29uc3QgVGVzdEZlYXR1cmVz
JiBUZXN0T3B0aW9uczo6ZGVmYXVsdHMoKQogICAgICAgICB9OwogICAgICAgICBmZWF0dXJlcy5k
b3VibGVUZXN0UnVubmVyRmVhdHVyZXMgPSB7CiAgICAgICAgICAgICB7ICJjb250ZW50SW5zZXQu
dG9wIiwgMCB9LAorICAgICAgICAgICAgeyAiaG9yaXpvbnRhbFN5c3RlbU1pbmltdW1MYXlvdXRN
YXJnaW4iLCAwIH0sCiAgICAgICAgICAgICB7ICJkZXZpY2VTY2FsZUZhY3RvciIsIDEgfSwKICAg
ICAgICAgICAgIHsgInZpZXdIZWlnaHQiLCA2MDAgfSwKICAgICAgICAgICAgIHsgInZpZXdXaWR0
aCIsIDgwMCB9LApAQCAtMjEwLDYgKzIxMSw3IEBAIGNvbnN0IHN0ZDo6dW5vcmRlcmVkX21hcDxz
dGQ6OnN0cmluZywgVGVzdEhlYWRlcktleVR5cGU+JiBUZXN0T3B0aW9uczo6a2V5VHlwZU1hCiAg
ICAgICAgIHsgInVzZVRocmVhZGVkU2Nyb2xsaW5nIiwgVGVzdEhlYWRlcktleVR5cGU6OkJvb2xU
ZXN0UnVubmVyIH0sCiAgICAgCiAgICAgICAgIHsgImNvbnRlbnRJbnNldC50b3AiLCBUZXN0SGVh
ZGVyS2V5VHlwZTo6RG91YmxlVGVzdFJ1bm5lciB9LAorICAgICAgICB7ICJob3Jpem9udGFsU3lz
dGVtTWluaW11bUxheW91dE1hcmdpbiIsIFRlc3RIZWFkZXJLZXlUeXBlOjpEb3VibGVUZXN0UnVu
bmVyIH0sCiAgICAgICAgIHsgImRldmljZVNjYWxlRmFjdG9yIiwgVGVzdEhlYWRlcktleVR5cGU6
OkRvdWJsZVRlc3RSdW5uZXIgfSwKICAgICAgICAgeyAidmlld0hlaWdodCIsIFRlc3RIZWFkZXJL
ZXlUeXBlOjpEb3VibGVUZXN0UnVubmVyIH0sCiAgICAgICAgIHsgInZpZXdXaWR0aCIsIFRlc3RI
ZWFkZXJLZXlUeXBlOjpEb3VibGVUZXN0UnVubmVyIH0sCmRpZmYgLS1naXQgYS9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL1Rlc3RPcHRpb25zLmggYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RP
cHRpb25zLmgKaW5kZXggOTM2MDM4NzQ2Y2FiN2U5ZTlkNzkyYTVlOTljYjg1ZmNhNzEyZjJlOS4u
Yjc5ZjA0NjE4NmNhM2JmY2YxYjc1YTExNjE1ZmM0MThlMTZmZWMyOCAxMDA2NDQKLS0tIGEvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvVGVzdE9wdGlvbnMuaApAQCAtNzMsNiArNzMsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCB1
c2VSZW1vdGVMYXllclRyZWUoKSBjb25zdCB7IHJldHVybiBib29sVGVzdFJ1bm5lckZlYXR1cmVW
YWx1ZSgidXNlUmVtb3RlTGF5ZXJUcmVlIik7IH0KICAgICBib29sIHVzZVRocmVhZGVkU2Nyb2xs
aW5nKCkgY29uc3QgeyByZXR1cm4gYm9vbFRlc3RSdW5uZXJGZWF0dXJlVmFsdWUoInVzZVRocmVh
ZGVkU2Nyb2xsaW5nIik7IH0KICAgICBkb3VibGUgY29udGVudEluc2V0VG9wKCkgY29uc3QgeyBy
ZXR1cm4gZG91YmxlVGVzdFJ1bm5lckZlYXR1cmVWYWx1ZSgiY29udGVudEluc2V0LnRvcCIpOyB9
CisgICAgZG91YmxlIGhvcml6b250YWxTeXN0ZW1NaW5pbXVtTGF5b3V0TWFyZ2luKCkgY29uc3Qg
eyByZXR1cm4gZG91YmxlVGVzdFJ1bm5lckZlYXR1cmVWYWx1ZSgiaG9yaXpvbnRhbFN5c3RlbU1p
bmltdW1MYXlvdXRNYXJnaW4iKTsgfQogICAgIGRvdWJsZSBkZXZpY2VTY2FsZUZhY3RvcigpIGNv
bnN0IHsgcmV0dXJuIGRvdWJsZVRlc3RSdW5uZXJGZWF0dXJlVmFsdWUoImRldmljZVNjYWxlRmFj
dG9yIik7IH0KICAgICBkb3VibGUgdmlld0hlaWdodCgpIGNvbnN0IHsgcmV0dXJuIGRvdWJsZVRl
c3RSdW5uZXJGZWF0dXJlVmFsdWUoInZpZXdIZWlnaHQiKTsgfQogICAgIGRvdWJsZSB2aWV3V2lk
dGgoKSBjb25zdCB7IHJldHVybiBkb3VibGVUZXN0UnVubmVyRmVhdHVyZVZhbHVlKCJ2aWV3V2lk
dGgiKTsgfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvUGxhdGZvcm1X
ZWJWaWV3SU9TLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvUGxhdGZvcm1XZWJWaWV3
SU9TLm1tCmluZGV4IDQxZmIwODY5OTZlNzY3ZDExYmRmMmFlZWNiNjBkNmU5NjBhMzI0ZDYuLjRh
OWNmZGU1MzgxNjNmYThlMjE4ZWFkYzRlNjQ1MmE2OGQ5NGM1ZDAgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1dlYktpdFRlc3RSdW5uZXIvaW9zL1BsYXRmb3JtV2ViVmlld0lPUy5tbQorKysgYi9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL2lvcy9QbGF0Zm9ybVdlYlZpZXdJT1MubW0KQEAgLTEzNSwxMCArMTM1
LDE5IEBAIHN0YXRpYyBDR1JlY3Qgdmlld1JlY3RGb3JXaW5kb3dSZWN0KENHUmVjdCwgUGxhdGZv
cm1XZWJWaWV3OjpXZWJWaWV3U2l6aW5nTW9kZSk7CiB9IC8vIG5hbWVzcGFjZSBXVFIKIAogQGlu
dGVyZmFjZSBQbGF0Zm9ybVdlYlZpZXdDb250cm9sbGVyIDogVUlWaWV3Q29udHJvbGxlcgorQHBy
b3BlcnR5IChub25hdG9taWMpIENHRmxvYXQgaG9yaXpvbnRhbFN5c3RlbU1pbmltdW1MYXlvdXRN
YXJnaW47CiBAZW5kCiAKIEBpbXBsZW1lbnRhdGlvbiBQbGF0Zm9ybVdlYlZpZXdDb250cm9sbGVy
CiAKKy0gKE5TRGlyZWN0aW9uYWxFZGdlSW5zZXRzKXN5c3RlbU1pbmltdW1MYXlvdXRNYXJnaW5z
Cit7CisgICAgYXV0byBsYXlvdXRNYXJnaW5zID0gW3N1cGVyIHN5c3RlbU1pbmltdW1MYXlvdXRN
YXJnaW5zXTsKKyAgICBsYXlvdXRNYXJnaW5zLmxlYWRpbmcgPSBzZWxmLmhvcml6b250YWxTeXN0
ZW1NaW5pbXVtTGF5b3V0TWFyZ2luOworICAgIGxheW91dE1hcmdpbnMudHJhaWxpbmcgPSBzZWxm
Lmhvcml6b250YWxTeXN0ZW1NaW5pbXVtTGF5b3V0TWFyZ2luOworICAgIHJldHVybiBsYXlvdXRN
YXJnaW5zOworfQorCiAtICh2b2lkKXZpZXdXaWxsVHJhbnNpdGlvblRvU2l6ZTooQ0dTaXplKXRv
U2l6ZSB3aXRoVHJhbnNpdGlvbkNvb3JkaW5hdG9yOihpZCA8VUlWaWV3Q29udHJvbGxlclRyYW5z
aXRpb25Db29yZGluYXRvcj4pY29vcmRpbmF0b3IKIHsKICAgICBbc3VwZXIgdmlld1dpbGxUcmFu
c2l0aW9uVG9TaXplOnRvU2l6ZSB3aXRoVHJhbnNpdGlvbkNvb3JkaW5hdG9yOmNvb3JkaW5hdG9y
XTsKQEAgLTIwNCw3ICsyMTMsOSBAQCBQbGF0Zm9ybVdlYlZpZXc6OlBsYXRmb3JtV2ViVmlldyhX
S1dlYlZpZXdDb25maWd1cmF0aW9uKiBjb25maWd1cmF0aW9uLCBjb25zdCBUZQogICAgIG1fd2lu
ZG93LmJhY2tncm91bmRDb2xvciA9IFtVSUNvbG9yIGxpZ2h0R3JheUNvbG9yXTsKICAgICBtX3dp
bmRvdy5wbGF0Zm9ybVdlYlZpZXcgPSB0aGlzOwogCi0gICAgW21fd2luZG93IHNldFJvb3RWaWV3
Q29udHJvbGxlcjphZG9wdE5TKFtbUGxhdGZvcm1XZWJWaWV3Q29udHJvbGxlciBhbGxvY10gaW5p
dF0pLmdldCgpXTsKKyAgICBhdXRvIHdlYlZpZXdDb250cm9sbGVyID0gYWRvcHROUyhbW1BsYXRm
b3JtV2ViVmlld0NvbnRyb2xsZXIgYWxsb2NdIGluaXRdKTsKKyAgICBbd2ViVmlld0NvbnRyb2xs
ZXIgc2V0SG9yaXpvbnRhbFN5c3RlbU1pbmltdW1MYXlvdXRNYXJnaW46b3B0aW9ucy5ob3Jpem9u
dGFsU3lzdGVtTWluaW11bUxheW91dE1hcmdpbigpXTsKKyAgICBbbV93aW5kb3cgc2V0Um9vdFZp
ZXdDb250cm9sbGVyOndlYlZpZXdDb250cm9sbGVyLmdldCgpXTsKIAogICAgIG1fdmlldyA9IFtb
VGVzdFJ1bm5lcldLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTp2aWV3UmVjdEZvcldpbmRv
d1JlY3QocmVjdCwgV2ViVmlld1NpemluZ01vZGU6OkRlZmF1bHQpIGNvbmZpZ3VyYXRpb246Y29u
ZmlndXJhdGlvbl07CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1Rl
c3RDb250cm9sbGVySU9TLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvVGVzdENvbnRy
b2xsZXJJT1MubW0KaW5kZXggNGZkMTdiZmE5MDk3ZTY3NjI0M2RjMzgwODg5OWEzZmY4MmY0ZTM5
MS4uZGM2YmNmN2VlZTg0Y2Y1N2U2N2I1M2ExZjk0YmNlNmMzODE5MDNmZiAxMDA2NDQKLS0tIGEv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvVGVzdENvbnRyb2xsZXJJT1MubW0KKysrIGIvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvVGVzdENvbnRyb2xsZXJJT1MubW0KQEAgLTIxOCwxMCAr
MjE4LDE0IEBAIGJvb2wgVGVzdENvbnRyb2xsZXI6OnBsYXRmb3JtUmVzZXRTdGF0ZVRvQ29uc2lz
dGVudFZhbHVlcyhjb25zdCBUZXN0T3B0aW9ucyYgb3B0CiAgICAgICAgIFVJU2Nyb2xsVmlldyAq
c2Nyb2xsVmlldyA9IHdlYlZpZXcuc2Nyb2xsVmlldzsKICAgICAgICAgW3Njcm9sbFZpZXcgX3Jl
bW92ZUFsbEFuaW1hdGlvbnM6WUVTXTsKICAgICAgICAgW3Njcm9sbFZpZXcgc2V0Wm9vbVNjYWxl
OjEgYW5pbWF0ZWQ6Tk9dOwotICAgICAgICAKKworICAgICAgICBhdXRvIGN1cnJlbnRDb250ZW50
SW5zZXQgPSBzY3JvbGxWaWV3LmNvbnRlbnRJbnNldDsKICAgICAgICAgYXV0byBjb250ZW50SW5z
ZXRUb3AgPSBvcHRpb25zLmNvbnRlbnRJbnNldFRvcCgpOwotICAgICAgICBzY3JvbGxWaWV3LmNv
bnRlbnRJbnNldCA9IFVJRWRnZUluc2V0c01ha2UoY29udGVudEluc2V0VG9wLCAwLCAwLCAwKTsK
LSAgICAgICAgc2Nyb2xsVmlldy5jb250ZW50T2Zmc2V0ID0gQ0dQb2ludE1ha2UoMCwgLWNvbnRl
bnRJbnNldFRvcCk7CisgICAgICAgIGlmIChjdXJyZW50Q29udGVudEluc2V0LnRvcCAhPSBjb250
ZW50SW5zZXRUb3ApIHsKKyAgICAgICAgICAgIGN1cnJlbnRDb250ZW50SW5zZXQudG9wID0gY29u
dGVudEluc2V0VG9wOworICAgICAgICAgICAgc2Nyb2xsVmlldy5jb250ZW50SW5zZXQgPSBjdXJy
ZW50Q29udGVudEluc2V0OworICAgICAgICAgICAgc2Nyb2xsVmlldy5jb250ZW50T2Zmc2V0ID0g
Q0dQb2ludE1ha2UoLWN1cnJlbnRDb250ZW50SW5zZXQubGVmdCwgLWN1cnJlbnRDb250ZW50SW5z
ZXQudG9wKTsKKyAgICAgICAgfQogCiAgICAgICAgIGlmICh3ZWJWaWV3LmludGVyYWN0aW5nV2l0
aEZvcm1Db250cm9sKQogICAgICAgICAgICAgc2hvdWxkUmVzdG9yZUZpcnN0UmVzcG9uZGVyID0g
W3dlYlZpZXcgcmVzaWduRmlyc3RSZXNwb25kZXJdOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDc1OGFlMWU3NGFkZTNkOWU1
ZmViNjg0YzM1NzIzYWI3N2NjZDJkMzMuLmVmNzczZWUyYzZlNzU0ZTgxYTYzYzk4ZjlkZDI0MGQ0
Zjk2Y2NmZDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAyMS0wNy0xMSAgV2Vuc29uIEhzaWVo
ICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBbd2F0Y2hPU10gTWFrZSBhIGZl
dyBhZGRpdGlvbmFsIGFkanVzdG1lbnRzIHRvIHN1cHBvcnQgc3lzdGVtIG1pbmltdW0gbGF5b3V0
IG1hcmdpbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNzg1OQorICAgICAgICByZGFyOi8vODAxMTM2MTIKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYSBuZXcgbGF5b3V0IHRlc3QgdGhhdCB1c2Vz
IHRoZSBuZXcgdGVzdCBvcHRpb24gdG8gdmVyaWZ5IHRoYXQgbm9uemVybyBob3Jpem9udGFsIHN5
c3RlbSBtaW5pbXVtIGxheW91dAorICAgICAgICBtYXJnaW5zIHNocmluayB0aGUgd2lkdGggb2Yg
dGhlIHZpZXdwb3J0IG9uIHdhdGNoT1MgKHRoaXMgdGVzdCBhbHNvIGRpc2FibGVzIHdhdGNoT1Mg
ZGV2aWNlIGFkYXB0YXRpb25zIGFuZCB1c2VzCisgICAgICAgIGEgZGV2aWNlLXdpZHRoIHZpZXdw
b3J0IHdpdGggYGluaXRpYWwtc2NhbGU9MWAgc3VjaCB0aGF0IHdlIGNhbiBzaW1wbHkgY2hlY2sg
dGhlIHZhbHVlIG9mIGBpbm5lcldpZHRoYCkuCisKKyAgICAgICAgKiBmYXN0L3ZpZXdwb3J0L3dh
dGNob3Mvdmlld3BvcnQtd2l0aC1zeXN0ZW0tbWluaW11bS1sYXlvdXQtbWFyZ2lucy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvdmlld3BvcnQvd2F0Y2hvcy92aWV3cG9ydC13
aXRoLXN5c3RlbS1taW5pbXVtLWxheW91dC1tYXJnaW5zLmh0bWw6IEFkZGVkLgorCiAyMDIxLTA3
LTA4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgW0luZGV4ZWRE
Ql0gS2V5UGF0aCB2YWxpZGl0eSBjaGVja3Mgc2hvdWxkIGhhcHBlbiBvbiB0aGUgY2xvbmVkIHZh
bHVlLCBub3QgdGhlIG9yaWdpbmFsIG9uZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC92
aWV3cG9ydC93YXRjaG9zL3ZpZXdwb3J0LXdpdGgtc3lzdGVtLW1pbmltdW0tbGF5b3V0LW1hcmdp
bnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC92aWV3cG9ydC93YXRjaG9zL3ZpZXdw
b3J0LXdpdGgtc3lzdGVtLW1pbmltdW0tbGF5b3V0LW1hcmdpbnMtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmQ1M2IzNmJjZmJkYzIwNjdiYTA2NmVkOWVlOTliMjkzODM2OGIyYzAKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3ZpZXdwb3J0L3dhdGNob3Mvdmlld3BvcnQtd2l0
aC1zeXN0ZW0tbWluaW11bS1sYXlvdXQtbWFyZ2lucy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
MCBAQAorVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgbm9uLXplcm8gaG9yaXpvbnRhbCBzeXN0ZW0g
bWluaW11bSBsYXlvdXQgbWFyZ2lucyBhZmZlY3QgdGhlIHdpZHRoIG9mIHRoZSB2aWV3cG9ydC4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgaW5uZXJXaWR0aCBpcyAxMzIK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3ZpZXdwb3J0L3dhdGNob3Mvdmlld3BvcnQtd2l0aC1z
eXN0ZW0tbWluaW11bS1sYXlvdXQtbWFyZ2lucy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC92aWV3
cG9ydC93YXRjaG9zL3ZpZXdwb3J0LXdpdGgtc3lzdGVtLW1pbmltdW0tbGF5b3V0LW1hcmdpbnMu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lMTYyOTY4Mzk0MzM4ODBmNmE3Y2VmYWFlYjg4ZGRhOWQ2NDkxNTc4
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC92aWV3cG9ydC93YXRjaG9zL3Zp
ZXdwb3J0LXdpdGgtc3lzdGVtLW1pbmltdW0tbGF5b3V0LW1hcmdpbnMuaHRtbApAQCAtMCwwICsx
LDMxIEBACis8IURPQ1RZUEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyB1c2VGbGV4
aWJsZVZpZXdwb3J0PXRydWUgaG9yaXpvbnRhbFN5c3RlbU1pbmltdW1MYXlvdXRNYXJnaW49MTIg
XSAtLT4KKzxodG1sPgorPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmlj
ZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKzxtZXRhIG5hbWU9ImRpc2FibGVkLWFkYXB0YXRp
b25zIiBjb250ZW50PSJ3YXRjaCI+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNv
dXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+Citib2R5LCBodG1sIHsKKyAgICBt
YXJnaW46IDA7CisgICAgd2lkdGg6IDEwMCU7CisgICAgaGVpZ2h0OiAxMDAlOworfQorPC9zdHls
ZT4KKzxzY3JpcHQ+Citqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworYXN5bmMgZnVuY3Rpb24gcnVu
VGVzdCgpIHsKKyAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgbm9uLXpl
cm8gaG9yaXpvbnRhbCBzeXN0ZW0gbWluaW11bSBsYXlvdXQgbWFyZ2lucyBhZmZlY3QgdGhlIHdp
ZHRoIG9mIHRoZSB2aWV3cG9ydC4iKTsKKworICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICAgIHJldHVybjsKKworICAgIGF3YWl0IFVJSGVscGVyLmVuc3VyZVZpc2libGVDb250ZW50
UmVjdFVwZGF0ZSgpOworICAgIHNob3VsZEJlKCJpbm5lcldpZHRoIiwgIjEzMiIpOworICAgIGZp
bmlzaEpTVGVzdCgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRl
c3QoKSI+PC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433316</attachid>
            <date>2021-07-12 07:38:51 -0700</date>
            <delta_ts>2021-07-12 10:20:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227859-20210712073851.patch</filename>
            <type>text/plain</type>
            <size>18918</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NzcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTFkNDMxZTA5NzJjY2Y3
YmUxM2U5Mzk0MmQ0MzVkMDNlODZhM2NiZi4uYmZkN2ZiYmIyNGYyMDliMTU4YmY1NjEwN2FhYmZj
ZGY5ODRiMmU1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIxLTA3LTExICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFt3YXRjaE9TXSBN
YWtlIGEgZmV3IGFkZGl0aW9uYWwgYWRqdXN0bWVudHMgdG8gc3VwcG9ydCBzeXN0ZW0gbWluaW11
bSBsYXlvdXQgbWFyZ2lucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI3ODU5CisgICAgICAgIHJkYXI6Ly84MDExMzYxMgorCisgICAgICAgIFJldmll
d2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAgUmVkdWNlIHRoZSBkZWZhdWx0IG1pbmltdW0g
dmlld3BvcnQgc2NhbGUgb24gd2F0Y2hPUyB0byBhdm9pZCBob3Jpem9udGFsIHNjcm9sbGluZyB3
aGVuIGxvYWRpbmcgd2lkZSBmaXhlZC0KKyAgICAgICAgdmlld3BvcnQtd2lkdGggd2ViIGNvbnRl
bnQuIFNlZSBXZWJLaXQgQ2hhbmdlTG9nIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICAgICAgKiBw
YWdlL1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpwbGF0Zm9y
bURldmljZVdpZHRoT3ZlcnJpZGUpOgorICAgICAgICAoV2ViQ29yZTo6cGxhdGZvcm1NaW5pbXVt
U2NhbGVGb3JXZWJwYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OnNob3VsZE92ZXJyaWRlU2hyaW5r
VG9GaXRBcmd1bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpWaWV3cG9ydENvbmZpZ3VyYXRpb246
Om5hdGl2ZVdlYnBhZ2VQYXJhbWV0ZXJzV2l0aFNocmlua1RvRml0KToKKyAgICAgICAgKFdlYkNv
cmU6OlZpZXdwb3J0Q29uZmlndXJhdGlvbjo6d2VicGFnZVBhcmFtZXRlcnMpOgorCiAyMDIxLTA3
LTA4ICBLYXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgogCiAgICAgICAg
IFVucmV2aWV3ZWQgaU9TIGJ1aWxkIGZpeCBhZnRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCAzNTRiMTZjNGU1YWIz
ZTUxOTc4M2FkMzUyNzU1YTlmYjRmNzFjNDRkLi45N2IyNWEyMzZmNWQ4NjUwM2E3MDY2ZjY4YzFi
NDY2MzJmMGVmYTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTA3LTExICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFt3YXRjaE9TXSBN
YWtlIGEgZmV3IGFkZGl0aW9uYWwgYWRqdXN0bWVudHMgdG8gc3VwcG9ydCBzeXN0ZW0gbWluaW11
bSBsYXlvdXQgbWFyZ2lucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI3ODU5CisgICAgICAgIHJkYXI6Ly84MDExMzYxMgorCisgICAgICAgIFJldmll
d2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAgTWFrZSBhIGNvdXBsZSBvZiBtaW5vciBhZGp1
c3RtZW50cyB0byBkZWFsIHdpdGggdGhlIGZhY3QgdGhhdCBgLWNvbnRlbnRJbnNldGAgaW5jbHVk
ZXMgc3lzdGVtIGNvbnRlbnQgaW5zZXRzCisgICAgICAgIChzcGVjaWZpY2FsbHksIGAtX2NvbnRl
bnRTY3JvbGxJbnNldGApIG9uIHdhdGNoT1MsIGR1ZSB0byBtZXRob2Qgc3dpenpsaW5nIHRoYXQg
aGFwcGVucyBpbiBQZXBwZXJVSUNvcmUuIFNlZQorICAgICAgICBjaGFuZ2VzIGJlbG93IGZvciBt
b3JlIGRldGFpbC4KKworICAgICAgICBUZXN0OiBmYXN0L3ZpZXdwb3J0L3dhdGNob3Mvdmlld3Bv
cnQtd2l0aC1zeXN0ZW0tbWluaW11bS1sYXlvdXQtbWFyZ2lucy5odG1sCisKKyAgICAgICAgKiBV
SVByb2Nlc3MvQVBJL2lvcy9XS1dlYlZpZXdJT1MubW06CisgICAgICAgICgtW1dLV2ViVmlldyBf
Y29tcHV0ZWRDb250ZW50SW5zZXRdKToKKworICAgICAgICBPbmx5IGFwcGx5IGAtc2FmZUFyZWFJ
bnNldHNgIG9uIHRvcCBvZiBgLWNvbnRlbnRJbnNldGAgd2hlbiBjb21wdXRpbmcgdGhlIHRvdGFs
IHNjcm9sbCB2aWV3IGNvbnRlbnQgaW5zZXQgb24KKyAgICAgICAgd2F0Y2hPUyAoYXMgb3Bwb3Nl
ZCB0byBhcHBseWluZyBib3RoIGAtc2FmZUFyZWFJbnNldHNgIGFuZCBgLV9jb250ZW50U2Nyb2xs
SW5zZXRgKTsgdGhpcyBpcyBiZWNhdXNlCisgICAgICAgIGAtY29udGVudEluc2V0YCBvbiB3YXRj
aE9TIGlzIGFjdHVhbGx5IGVxdWl2YWxlbnQgdG8gYC1fZWZmZWN0aXZlQ29udGVudEluc2V0YCBv
biBvdGhlciBpT1MtZmFtaWx5IHBsYXRmb3Jtcywgc28KKyAgICAgICAgYWRkaXRpb25hbGx5IGFk
ZGluZyBgLV9jb250ZW50U2Nyb2xsSW5zZXRgIGhlcmUgd291bGQgcmVzdWx0IGluIHRoZSBzY3Jv
bGwgY29udGVudCBpbnNldCBiZWluZyBkb3VibGUtY291bnRlZC4KKworICAgICAgICAqIFVJUHJv
Y2Vzcy9pb3MvV0tTY3JvbGxWaWV3Lm1tOgorICAgICAgICAoLVtXS1Njcm9sbFZpZXcgc2V0Q29u
dGVudEluc2V0Ol0pOgorICAgICAgICAoLVtXS1Njcm9sbFZpZXcgX3NldENvbnRlbnRTY3JvbGxJ
bnNldEludGVybmFsOl0pOgorICAgICAgICAoLVtXS1Njcm9sbFZpZXcgX3VwZGF0ZUNvbnRlbnRT
Y3JvbGxJbnNldF0pOgorCisgICAgICAgIEluIHRoZSBjYXNlIHdoZXJlIHRoZSBXZWJLaXQgY2xp
ZW50IGV4cGxpY2l0bHkgc2V0cyB0aGUgc2Nyb2xsIHZpZXcncyBjb250ZW50IGluc2V0cyB1c2lu
ZyBgLVtXS1Njcm9sbFZpZXcKKyAgICAgICAgc2V0Q29udGVudEluc2V0Ol1gLCBzZXQgYSBmbGFn
IChgX2NvbnRlbnRJbnNldFdhc0V4dGVybmFsbHlPdmVycmlkZGVuYCkgYW5kIGltbWVkaWF0ZWx5
IHJldmVydCBhbnkgaW50ZXJuYWxseQorICAgICAgICBzcGVjaWZpZWQgYC1fY29udGVudFNjcm9s
bEluc2V0YCBvbiBXS1Njcm9sbFZpZXcuIER1ZSB0byB0aGUgc3dpenpsZWQgaW1wbGVtZW50YXRp
b24gb2YgYC1bVUlTY3JvbGxWaWV3CisgICAgICAgIGNvbnRlbnRJbnNldF1gIGRlc2NyaWJlZCBh
Ym92ZSwgaXQncyBwcmFjdGljYWxseSBpbXBvc3NpYmxlIGZvciBhbnkgY2xpZW50IHRvIHVzZSBg
LXNldENvbnRlbnRJbnNldDpgIGNvcnJlY3RseQorICAgICAgICB3aGVuIHRoZXJlIGlzIGEgbm9u
emVybyBgLV9jb250ZW50U2Nyb2xsSW5zZXRgIG9uIHdhdGNoT1MsIHNvIHByZWZlcmFibGUgdG8g
c2ltcGx5IGdldCBvdXQgb2YgdGhlIHdheSBvZiB0aGUKKyAgICAgICAgY2xpZW50IGluIHRoaXMg
c2NlbmFyaW8uCisKKyAgICAgICAgSW4gdGhlIGNvbnRleHQgb2YgX1NGTmFub0Jyb3dzZXJWaWV3
Q29udHJvbGxlciwgdGhpcyBlbnN1cmVzIHRoYXQgc2Nyb2xsIHZpZXcgY29udGVudCBpbnNldCBh
ZGp1c3RtZW50IGxvZ2ljIGluCisgICAgICAgIFNhZmFyaSBkb2Vzbid0IGluYWR2ZXJ0ZW50bHkg
Y2F1c2UgaG9yaXpvbnRhbCBjb250ZW50IGluc2V0cyB0byBpbmNyZWFzZSBieSBgLV9jb250ZW50
U2Nyb2xsSW5zZXRgIGV2ZXJ5IHRpbWUKKyAgICAgICAgYC1bV0tTY3JvbGxWaWV3IHNldENvbnRl
bnRJbnNldDpdYCBpcyBpbnZva2VkIGJ5IHRoZSBjbGllbnQuCisKIDIwMjEtMDctMDggIFdlbnNv
biBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgW3dhdGNoT1NdIFRh
cHBpbmcgIkRvbmUiIGluIFNjcmliYmxlIHdoZW4gZm9jdXNpbmcgYW4gZWRpdGFibGUgZWxlbWVu
dCBzaG91bGQgZGlzbWlzcyBRdWlja2JvYXJkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1ZpZXdw
b3J0Q29uZmlndXJhdGlvbi5jcHAKaW5kZXggY2FlNDI0MDE1NDUwN2JiNjc0ODBiNTZlOTJkZTg4
Y2M2NjI2YzRhOC4uZGM0MDYwNmRlYmM2NDE5YjE5NmNkYWI2NTQ1YWVkYjg2OTgzODAxNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmNwcApAQCAtNDUs
NyArNDUsNyBAQCBzdGF0aWMgYm9vbCBjb25zdHJhaW50c0FyZUFsbFJlbGF0aXZlKGNvbnN0IFZp
ZXdwb3J0Q29uZmlndXJhdGlvbjo6UGFyYW1ldGVycyYgYwogfQogI2VuZGlmIC8vIEFTU0VSVF9F
TkFCTEVECiAKLXN0YXRpYyBmbG9hdCBwbGF0Zm9ybURldmljZVdpZHRoT3ZlcnJpZGUoKQorc3Rh
dGljIGNvbnN0ZXhwciBmbG9hdCBwbGF0Zm9ybURldmljZVdpZHRoT3ZlcnJpZGUoKQogewogI2lm
IFBMQVRGT1JNKFdBVENIT1MpCiAgICAgcmV0dXJuIDMyMDsKQEAgLTU0LDcgKzU0LDE2IEBAIHN0
YXRpYyBmbG9hdCBwbGF0Zm9ybURldmljZVdpZHRoT3ZlcnJpZGUoKQogI2VuZGlmCiB9CiAKLXN0
YXRpYyBib29sIHNob3VsZE92ZXJyaWRlU2hyaW5rVG9GaXRBcmd1bWVudCgpCitzdGF0aWMgY29u
c3RleHByIGRvdWJsZSBwbGF0Zm9ybU1pbmltdW1TY2FsZUZvcldlYnBhZ2UoKQoreworI2lmIFBM
QVRGT1JNKFdBVENIT1MpCisgICAgcmV0dXJuIDAuMTsKKyNlbHNlCisgICAgcmV0dXJuIDAuMjU7
CisjZW5kaWYKK30KKworc3RhdGljIGNvbnN0ZXhwciBib29sIHNob3VsZE92ZXJyaWRlU2hyaW5r
VG9GaXRBcmd1bWVudCgpCiB7CiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKICAgICByZXR1cm4gdHJ1
ZTsKQEAgLTM3Miw3ICszODEsNyBAQCBWaWV3cG9ydENvbmZpZ3VyYXRpb246OlBhcmFtZXRlcnMg
Vmlld3BvcnRDb25maWd1cmF0aW9uOjpuYXRpdmVXZWJwYWdlUGFyYW1ldGVycwogewogICAgIFBh
cmFtZXRlcnMgcGFyYW1ldGVycyA9IFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6bmF0aXZlV2VicGFn
ZVBhcmFtZXRlcnNXaXRob3V0U2hyaW5rVG9GaXQoKTsKICAgICBwYXJhbWV0ZXJzLmFsbG93c1No
cmlua1RvRml0ID0gdHJ1ZTsKLSAgICBwYXJhbWV0ZXJzLm1pbmltdW1TY2FsZSA9IDAuMjU7Cisg
ICAgcGFyYW1ldGVycy5taW5pbXVtU2NhbGUgPSBwbGF0Zm9ybU1pbmltdW1TY2FsZUZvcldlYnBh
Z2UoKTsKICAgICBwYXJhbWV0ZXJzLmluaXRpYWxTY2FsZUlzU2V0ID0gZmFsc2U7CiAgICAgcmV0
dXJuIHBhcmFtZXRlcnM7CiB9CkBAIC0zODQsNyArMzkzLDcgQEAgVmlld3BvcnRDb25maWd1cmF0
aW9uOjpQYXJhbWV0ZXJzIFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6d2VicGFnZVBhcmFtZXRlcnMo
KQogICAgIHBhcmFtZXRlcnMud2lkdGhJc1NldCA9IHRydWU7CiAgICAgcGFyYW1ldGVycy5hbGxv
d3NVc2VyU2NhbGluZyA9IHRydWU7CiAgICAgcGFyYW1ldGVycy5hbGxvd3NTaHJpbmtUb0ZpdCA9
IHRydWU7Ci0gICAgcGFyYW1ldGVycy5taW5pbXVtU2NhbGUgPSAwLjI1OworICAgIHBhcmFtZXRl
cnMubWluaW11bVNjYWxlID0gcGxhdGZvcm1NaW5pbXVtU2NhbGVGb3JXZWJwYWdlKCk7CiAgICAg
cGFyYW1ldGVycy5tYXhpbXVtU2NhbGUgPSA1OwogICAgIHJldHVybiBwYXJhbWV0ZXJzOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2lvcy9XS1dlYlZpZXdJT1Mu
bW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvaW9zL1dLV2ViVmlld0lPUy5tbQppbmRl
eCBmNDQ4NDA4NGExODQzNGQ0ZmNlM2YyZWJlNDRiNDY5MzVjYmMyNDMxLi40MWRlN2I5MDIzMjFj
ZmRkMDU4ZjMwNDZjY2ZmNDI3MDExOWYzODBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvaW9zL1dLV2ViVmlld0lPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvaW9zL1dLV2ViVmlld0lPUy5tbQpAQCAtNjMzLDkgKzYzMywxNiBAQCAtIChVSUVk
Z2VJbnNldHMpX2NvbXB1dGVkQ29udGVudEluc2V0CiAgICAgICAgIHJldHVybiBfb2JzY3VyZWRJ
bnNldHM7CiAKICAgICBVSUVkZ2VJbnNldHMgaW5zZXRzID0gW19zY3JvbGxWaWV3IGNvbnRlbnRJ
bnNldF07Ci0KLSAgICBpZiAoc2VsZi5fc2FmZUFyZWFTaG91bGRBZmZlY3RPYnNjdXJlZEluc2V0
cykKLSAgICAgICAgaW5zZXRzID0gVUlFZGdlSW5zZXRzQWRkKGluc2V0cywgc2VsZi5fc2Nyb2xs
Vmlld1N5c3RlbUNvbnRlbnRJbnNldCwgc2VsZi5fZWZmZWN0aXZlT2JzY3VyZWRJbnNldEVkZ2Vz
QWZmZWN0ZWRCeVNhZmVBcmVhKTsKKyAgICBpZiAoc2VsZi5fc2FmZUFyZWFTaG91bGRBZmZlY3RP
YnNjdXJlZEluc2V0cykgeworI2lmIFBMQVRGT1JNKFdBVENIT1MpCisgICAgICAgIC8vIE9uIHdh
dGNoT1MsIFBlcHBlclVJQ29yZSBzd2l6emxlcyAtW1VJU2Nyb2xsVmlldyBjb250ZW50SW5zZXRd
LCBzdWNoIHRoYXQgaXQgaW5jbHVkZXMgLV9jb250ZW50U2Nyb2xsSW5zZXQgYXMgd2VsbC4KKyAg
ICAgICAgLy8gVG8gYXZvaWQgZG91YmxlLWNvdW50aW5nIC1fY29udGVudFNjcm9sbEluc2V0IHdo
ZW4gZGV0ZXJtaW5pbmcgdGhlIHRvdGFsIGNvbnRlbnQgaW5zZXQsIHdlIG9ubHkgYXBwbHkgc2Fm
ZSBhcmVhIGluc2V0cyBoZXJlLgorICAgICAgICBhdXRvIGFkZGl0aW9uYWxTY3JvbGxWaWV3Q29u
dGVudEluc2V0ID0gc2VsZi5zYWZlQXJlYUluc2V0czsKKyNlbHNlCisgICAgICAgIGF1dG8gYWRk
aXRpb25hbFNjcm9sbFZpZXdDb250ZW50SW5zZXQgPSBzZWxmLl9zY3JvbGxWaWV3U3lzdGVtQ29u
dGVudEluc2V0OworI2VuZGlmCisgICAgICAgIGluc2V0cyA9IFVJRWRnZUluc2V0c0FkZChpbnNl
dHMsIGFkZGl0aW9uYWxTY3JvbGxWaWV3Q29udGVudEluc2V0LCBzZWxmLl9lZmZlY3RpdmVPYnNj
dXJlZEluc2V0RWRnZXNBZmZlY3RlZEJ5U2FmZUFyZWEpOworICAgIH0KIAogICAgIHJldHVybiBp
bnNldHM7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tTY3Jv
bGxWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5tbQpp
bmRleCBiNTJiYzBlNGM1NDQ1NWM2OGNjMmYxMmE5YzNlNTQ4NmY0YzQwNWMzLi5iYzIwMWI2OGJh
OWNmZTMzYmYwYWIyMWE4NzA3NDhmZWViM2JmYWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2lvcy9XS1Njcm9sbFZpZXcubW0KQEAgLTEzMSw2ICsxMzEsNyBAQCBAaW1wbGVtZW50YXRp
b24gV0tTY3JvbGxWaWV3IHsKICNpZiAhUExBVEZPUk0oV0FUQ0hPUykgJiYgIVBMQVRGT1JNKEFQ
UExFVFYpCiAgICAgQk9PTCBfY29udGVudEluc2V0QWRqdXN0bWVudEJlaGF2aW9yV2FzRXh0ZXJu
YWxseU92ZXJyaWRkZW47CiAjZW5kaWYKKyAgICBCT09MIF9jb250ZW50SW5zZXRXYXNFeHRlcm5h
bGx5T3ZlcnJpZGRlbjsKICAgICBDR0Zsb2F0IF9rZXlib2FyZEJvdHRvbUluc2V0QWRqdXN0bWVu
dDsKICAgICBCT09MIF9zY3JvbGxFbmFibGVkQnlDbGllbnQ7CiAgICAgQk9PTCBfc2Nyb2xsRW5h
YmxlZEludGVybmFsOwpAQCAtMjcxLDYgKzI3MiwxNCBAQCAtICh2b2lkKXNldENvbnRlbnRJbnNl
dDooVUlFZGdlSW5zZXRzKWNvbnRlbnRJbnNldAogewogICAgIFtzdXBlciBzZXRDb250ZW50SW5z
ZXQ6Y29udGVudEluc2V0XTsKIAorICAgIF9jb250ZW50SW5zZXRXYXNFeHRlcm5hbGx5T3ZlcnJp
ZGRlbiA9IFlFUzsKKyNpZiBQTEFURk9STShXQVRDSE9TKQorICAgIGlmIChfY29udGVudFNjcm9s
bEluc2V0SW50ZXJuYWwpIHsKKyAgICAgICAgX2NvbnRlbnRTY3JvbGxJbnNldEludGVybmFsID0g
c3RkOjpudWxsb3B0OworICAgICAgICBbc2VsZiBfdXBkYXRlQ29udGVudFNjcm9sbEluc2V0XTsK
KyAgICB9CisjZW5kaWYgLy8gUExBVEZPUk0oV0FUQ0hPUykKKwogICAgIFtfaW50ZXJuYWxEZWxl
Z2F0ZSBfc2NoZWR1bGVWaXNpYmxlQ29udGVudFJlY3RVcGRhdGVdOwogfQogCkBAIC00MzMsNiAr
NDQyLDExIEBAIC0gKHZvaWQpX3NldENvbnRlbnRTY3JvbGxJbnNldDooVUlFZGdlSW5zZXRzKWlu
c2V0cwogCiAtIChCT09MKV9zZXRDb250ZW50U2Nyb2xsSW5zZXRJbnRlcm5hbDooVUlFZGdlSW5z
ZXRzKWluc2V0cwogeworI2lmIFBMQVRGT1JNKFdBVENIT1MpCisgICAgaWYgKF9jb250ZW50SW5z
ZXRXYXNFeHRlcm5hbGx5T3ZlcnJpZGRlbikKKyAgICAgICAgcmV0dXJuIE5POworI2VuZGlmIC8v
IFBMQVRGT1JNKFdBVENIT1MpCisKICAgICBpZiAoX2NvbnRlbnRTY3JvbGxJbnNldEZyb21DbGll
bnQpCiAgICAgICAgIHJldHVybiBOTzsKIApAQCAtNDUwLDYgKzQ2NCwxMCBAQCAtICh2b2lkKV91
cGRhdGVDb250ZW50U2Nyb2xsSW5zZXQKICAgICAgICAgc3VwZXIuY29udGVudFNjcm9sbEluc2V0
ID0gKmluc2V0czsKICAgICBlbHNlIGlmIChhdXRvIGluc2V0cyA9IF9jb250ZW50U2Nyb2xsSW5z
ZXRJbnRlcm5hbCkKICAgICAgICAgc3VwZXIuY29udGVudFNjcm9sbEluc2V0ID0gKmluc2V0czsK
KyNpZiBQTEFURk9STShXQVRDSE9TKQorICAgIGVsc2UgaWYgKF9jb250ZW50SW5zZXRXYXNFeHRl
cm5hbGx5T3ZlcnJpZGRlbikKKyAgICAgICAgc3VwZXIuY29udGVudFNjcm9sbEluc2V0ID0gVUlF
ZGdlSW5zZXRzWmVybzsKKyNlbmRpZiAvLyBQTEFURk9STShXQVRDSE9TKQogICAgIGVsc2UKICAg
ICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VM
b2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNGYxYjNlYWZjNjg4MzhmMjA5MmZmNDJjMDgxNDEw
NjYyMmZhZWJmOS4uYTg4MGVhZmFkMmI3ODZmZTViYmYwYTU3OTBhY2U2MTRhOWU3ODVkYSAxMDA2
NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDMyIEBACisyMDIxLTA3LTExICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29t
PgorCisgICAgICAgIFt3YXRjaE9TXSBNYWtlIGEgZmV3IGFkZGl0aW9uYWwgYWRqdXN0bWVudHMg
dG8gc3VwcG9ydCBzeXN0ZW0gbWluaW11bSBsYXlvdXQgbWFyZ2lucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODU5CisgICAgICAgIHJkYXI6Ly84
MDExMzYxMgorCisgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAgQWRk
IHN1cHBvcnQgZm9yIHNpbXVsYXRpbmcgYXJiaXRyYXJ5IGhvcml6b250YWwgKHRyYWlsaW5nIGFu
ZCBsZWFkaW5nKSB2YWx1ZXMgZm9yIGAtc3lzdGVtTWluaW11bUxheW91dE1hcmdpbmAKKyAgICAg
ICAgaW4gV2ViS2l0VGVzdFJ1bm5lciwgdmlhIGEgbmV3ICJob3Jpem9udGFsU3lzdGVtTWluaW11
bUxheW91dE1hcmdpbiIgdGVzdCBvcHRpb24uIEJ5IGRlZmF1bHQsIHRoaXMgaXMgMC4KKworICAg
ICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMuY3BwOgorICAgICAgICAoV1RSOjpU
ZXN0T3B0aW9uczo6ZGVmYXVsdHMpOgorICAgICAgICAoV1RSOjpUZXN0T3B0aW9uczo6a2V5VHlw
ZU1hcHBpbmcpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMuaDoKKyAg
ICAgICAgKFdUUjo6VGVzdE9wdGlvbnM6Omhvcml6b250YWxTeXN0ZW1NaW5pbXVtTGF5b3V0TWFy
Z2luIGNvbnN0KToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL2lvcy9QbGF0Zm9ybVdlYlZp
ZXdJT1MubW06CisgICAgICAgICgtW1BsYXRmb3JtV2ViVmlld0NvbnRyb2xsZXIgc3lzdGVtTWlu
aW11bUxheW91dE1hcmdpbnNdKToKKworICAgICAgICBPdmVycmlkZSB0aGlzIFVJVmlld0NvbnRy
b2xsZXIgbWV0aG9kIGFuZCByZXBsYWNlIHRoZSBsZWFkaW5nIGFuZCB0cmFpbGluZyBsYXlvdXQg
bWFyZ2luIHZhbHVlcyB3aXRoIHRoZSB2YWx1ZXMKKyAgICAgICAgZnJvbSB0ZXN0IG9wdGlvbnMu
CisKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjpQbGF0Zm9ybVdlYlZpZXcpOgorICAg
ICAgICAqIFdlYktpdFRlc3RSdW5uZXIvaW9zL1Rlc3RDb250cm9sbGVySU9TLm1tOgorICAgICAg
ICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6cGxhdGZvcm1SZXNldFN0YXRlVG9Db25zaXN0ZW50VmFs
dWVzKToKKworICAgICAgICBBZGRpdGlvbmFsbHkgbWFrZSBhIHNsaWdodCBhZGp1c3RtZW50IGhl
cmUgdG8gYXZvaWQgY2FsbGluZyBgLXNldENvbnRlbnRJbnNldGAgb24gdGhlIHNjcm9sbCB2aWV3
IGluIGJldHdlZW4KKyAgICAgICAgdGVzdHMgaWYgdGhlIGNvbnRlbnQgaW5zZXRzIGFyZW4ndCBj
aGFuZ2luZy4gVGhpcyBpcyBuZWVkZWQgaW4gb3JkZXIgZm9yIHRoZSBuZXcgbGF5b3V0IHRlc3Qg
dG8gd29yayBvbiB3YXRjaE9TLgorCiAyMDIxLTA3LTA4ICBZaWppYSBIdWFuZyAgPHlpamlhX2h1
YW5nQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgWWlqaWEgSHVhbmcgYXMgYSBjb21taXR0ZXIK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMuY3BwIGIvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5jcHAKaW5kZXggNDY5MDEzNjUzN2FhMjgz
ZWZmYWU1ZDFmOTUxNDExNjFmYThiZTkxMS4uOTI2OWZhMzVmZThjNzhhZDg1YzU3N2VhYjlkNzRi
ZGY2YmUzMzU1MyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9u
cy5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5jcHAKQEAgLTE1
OSw2ICsxNTksNyBAQCBjb25zdCBUZXN0RmVhdHVyZXMmIFRlc3RPcHRpb25zOjpkZWZhdWx0cygp
CiAgICAgICAgIH07CiAgICAgICAgIGZlYXR1cmVzLmRvdWJsZVRlc3RSdW5uZXJGZWF0dXJlcyA9
IHsKICAgICAgICAgICAgIHsgImNvbnRlbnRJbnNldC50b3AiLCAwIH0sCisgICAgICAgICAgICB7
ICJob3Jpem9udGFsU3lzdGVtTWluaW11bUxheW91dE1hcmdpbiIsIDAgfSwKICAgICAgICAgICAg
IHsgImRldmljZVNjYWxlRmFjdG9yIiwgMSB9LAogICAgICAgICAgICAgeyAidmlld0hlaWdodCIs
IDYwMCB9LAogICAgICAgICAgICAgeyAidmlld1dpZHRoIiwgODAwIH0sCkBAIC0yMTAsNiArMjEx
LDcgQEAgY29uc3Qgc3RkOjp1bm9yZGVyZWRfbWFwPHN0ZDo6c3RyaW5nLCBUZXN0SGVhZGVyS2V5
VHlwZT4mIFRlc3RPcHRpb25zOjprZXlUeXBlTWEKICAgICAgICAgeyAidXNlVGhyZWFkZWRTY3Jv
bGxpbmciLCBUZXN0SGVhZGVyS2V5VHlwZTo6Qm9vbFRlc3RSdW5uZXIgfSwKICAgICAKICAgICAg
ICAgeyAiY29udGVudEluc2V0LnRvcCIsIFRlc3RIZWFkZXJLZXlUeXBlOjpEb3VibGVUZXN0UnVu
bmVyIH0sCisgICAgICAgIHsgImhvcml6b250YWxTeXN0ZW1NaW5pbXVtTGF5b3V0TWFyZ2luIiwg
VGVzdEhlYWRlcktleVR5cGU6OkRvdWJsZVRlc3RSdW5uZXIgfSwKICAgICAgICAgeyAiZGV2aWNl
U2NhbGVGYWN0b3IiLCBUZXN0SGVhZGVyS2V5VHlwZTo6RG91YmxlVGVzdFJ1bm5lciB9LAogICAg
ICAgICB7ICJ2aWV3SGVpZ2h0IiwgVGVzdEhlYWRlcktleVR5cGU6OkRvdWJsZVRlc3RSdW5uZXIg
fSwKICAgICAgICAgeyAidmlld1dpZHRoIiwgVGVzdEhlYWRlcktleVR5cGU6OkRvdWJsZVRlc3RS
dW5uZXIgfSwKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMu
aCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMuaAppbmRleCA5MzYwMzg3NDZj
YWI3ZTllOWQ3OTJhNWU5OWNiODVmY2E3MTJmMmU5Li5iNzlmMDQ2MTg2Y2EzYmZjZjFiNzVhMTE2
MTVmYzQxOGUxNmZlYzI4IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RP
cHRpb25zLmgKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5oCkBAIC03
Myw2ICs3Myw3IEBAIHB1YmxpYzoKICAgICBib29sIHVzZVJlbW90ZUxheWVyVHJlZSgpIGNvbnN0
IHsgcmV0dXJuIGJvb2xUZXN0UnVubmVyRmVhdHVyZVZhbHVlKCJ1c2VSZW1vdGVMYXllclRyZWUi
KTsgfQogICAgIGJvb2wgdXNlVGhyZWFkZWRTY3JvbGxpbmcoKSBjb25zdCB7IHJldHVybiBib29s
VGVzdFJ1bm5lckZlYXR1cmVWYWx1ZSgidXNlVGhyZWFkZWRTY3JvbGxpbmciKTsgfQogICAgIGRv
dWJsZSBjb250ZW50SW5zZXRUb3AoKSBjb25zdCB7IHJldHVybiBkb3VibGVUZXN0UnVubmVyRmVh
dHVyZVZhbHVlKCJjb250ZW50SW5zZXQudG9wIik7IH0KKyAgICBkb3VibGUgaG9yaXpvbnRhbFN5
c3RlbU1pbmltdW1MYXlvdXRNYXJnaW4oKSBjb25zdCB7IHJldHVybiBkb3VibGVUZXN0UnVubmVy
RmVhdHVyZVZhbHVlKCJob3Jpem9udGFsU3lzdGVtTWluaW11bUxheW91dE1hcmdpbiIpOyB9CiAg
ICAgZG91YmxlIGRldmljZVNjYWxlRmFjdG9yKCkgY29uc3QgeyByZXR1cm4gZG91YmxlVGVzdFJ1
bm5lckZlYXR1cmVWYWx1ZSgiZGV2aWNlU2NhbGVGYWN0b3IiKTsgfQogICAgIGRvdWJsZSB2aWV3
SGVpZ2h0KCkgY29uc3QgeyByZXR1cm4gZG91YmxlVGVzdFJ1bm5lckZlYXR1cmVWYWx1ZSgidmll
d0hlaWdodCIpOyB9CiAgICAgZG91YmxlIHZpZXdXaWR0aCgpIGNvbnN0IHsgcmV0dXJuIGRvdWJs
ZVRlc3RSdW5uZXJGZWF0dXJlVmFsdWUoInZpZXdXaWR0aCIpOyB9CmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL2lvcy9QbGF0Zm9ybVdlYlZpZXdJT1MubW0gYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL2lvcy9QbGF0Zm9ybVdlYlZpZXdJT1MubW0KaW5kZXggNDFmYjA4Njk5NmU3
NjdkMTFiZGYyYWVlY2I2MGQ2ZTk2MGEzMjRkNi4uNGE5Y2ZkZTUzODE2M2ZhOGUyMThlYWRjNGU2
NDUyYTY4ZDk0YzVkMCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvUGxh
dGZvcm1XZWJWaWV3SU9TLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1BsYXRm
b3JtV2ViVmlld0lPUy5tbQpAQCAtMTM1LDEwICsxMzUsMTkgQEAgc3RhdGljIENHUmVjdCB2aWV3
UmVjdEZvcldpbmRvd1JlY3QoQ0dSZWN0LCBQbGF0Zm9ybVdlYlZpZXc6OldlYlZpZXdTaXppbmdN
b2RlKTsKIH0gLy8gbmFtZXNwYWNlIFdUUgogCiBAaW50ZXJmYWNlIFBsYXRmb3JtV2ViVmlld0Nv
bnRyb2xsZXIgOiBVSVZpZXdDb250cm9sbGVyCitAcHJvcGVydHkgKG5vbmF0b21pYykgQ0dGbG9h
dCBob3Jpem9udGFsU3lzdGVtTWluaW11bUxheW91dE1hcmdpbjsKIEBlbmQKIAogQGltcGxlbWVu
dGF0aW9uIFBsYXRmb3JtV2ViVmlld0NvbnRyb2xsZXIKIAorLSAoTlNEaXJlY3Rpb25hbEVkZ2VJ
bnNldHMpc3lzdGVtTWluaW11bUxheW91dE1hcmdpbnMKK3sKKyAgICBhdXRvIGxheW91dE1hcmdp
bnMgPSBbc3VwZXIgc3lzdGVtTWluaW11bUxheW91dE1hcmdpbnNdOworICAgIGxheW91dE1hcmdp
bnMubGVhZGluZyA9IHNlbGYuaG9yaXpvbnRhbFN5c3RlbU1pbmltdW1MYXlvdXRNYXJnaW47Cisg
ICAgbGF5b3V0TWFyZ2lucy50cmFpbGluZyA9IHNlbGYuaG9yaXpvbnRhbFN5c3RlbU1pbmltdW1M
YXlvdXRNYXJnaW47CisgICAgcmV0dXJuIGxheW91dE1hcmdpbnM7Cit9CisKIC0gKHZvaWQpdmll
d1dpbGxUcmFuc2l0aW9uVG9TaXplOihDR1NpemUpdG9TaXplIHdpdGhUcmFuc2l0aW9uQ29vcmRp
bmF0b3I6KGlkIDxVSVZpZXdDb250cm9sbGVyVHJhbnNpdGlvbkNvb3JkaW5hdG9yPiljb29yZGlu
YXRvcgogewogICAgIFtzdXBlciB2aWV3V2lsbFRyYW5zaXRpb25Ub1NpemU6dG9TaXplIHdpdGhU
cmFuc2l0aW9uQ29vcmRpbmF0b3I6Y29vcmRpbmF0b3JdOwpAQCAtMjA0LDcgKzIxMyw5IEBAIFBs
YXRmb3JtV2ViVmlldzo6UGxhdGZvcm1XZWJWaWV3KFdLV2ViVmlld0NvbmZpZ3VyYXRpb24qIGNv
bmZpZ3VyYXRpb24sIGNvbnN0IFRlCiAgICAgbV93aW5kb3cuYmFja2dyb3VuZENvbG9yID0gW1VJ
Q29sb3IgbGlnaHRHcmF5Q29sb3JdOwogICAgIG1fd2luZG93LnBsYXRmb3JtV2ViVmlldyA9IHRo
aXM7CiAKLSAgICBbbV93aW5kb3cgc2V0Um9vdFZpZXdDb250cm9sbGVyOmFkb3B0TlMoW1tQbGF0
Zm9ybVdlYlZpZXdDb250cm9sbGVyIGFsbG9jXSBpbml0XSkuZ2V0KCldOworICAgIGF1dG8gd2Vi
Vmlld0NvbnRyb2xsZXIgPSBhZG9wdE5TKFtbUGxhdGZvcm1XZWJWaWV3Q29udHJvbGxlciBhbGxv
Y10gaW5pdF0pOworICAgIFt3ZWJWaWV3Q29udHJvbGxlciBzZXRIb3Jpem9udGFsU3lzdGVtTWlu
aW11bUxheW91dE1hcmdpbjpvcHRpb25zLmhvcml6b250YWxTeXN0ZW1NaW5pbXVtTGF5b3V0TWFy
Z2luKCldOworICAgIFttX3dpbmRvdyBzZXRSb290Vmlld0NvbnRyb2xsZXI6d2ViVmlld0NvbnRy
b2xsZXIuZ2V0KCldOwogCiAgICAgbV92aWV3ID0gW1tUZXN0UnVubmVyV0tXZWJWaWV3IGFsbG9j
XSBpbml0V2l0aEZyYW1lOnZpZXdSZWN0Rm9yV2luZG93UmVjdChyZWN0LCBXZWJWaWV3U2l6aW5n
TW9kZTo6RGVmYXVsdCkgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXTsKIApkaWZmIC0tZ2l0
IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvVGVzdENvbnRyb2xsZXJJT1MubW0gYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL2lvcy9UZXN0Q29udHJvbGxlcklPUy5tbQppbmRleCA0ZmQxN2Jm
YTkwOTdlNjc2MjQzZGMzODA4ODk5YTNmZjgyZjRlMzkxLi5kYzZiY2Y3ZWVlODRjZjU3ZTY3YjUz
YTFmOTRiY2U2YzM4MTkwM2ZmIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lv
cy9UZXN0Q29udHJvbGxlcklPUy5tbQorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9U
ZXN0Q29udHJvbGxlcklPUy5tbQpAQCAtMjE4LDEwICsyMTgsMTQgQEAgYm9vbCBUZXN0Q29udHJv
bGxlcjo6cGxhdGZvcm1SZXNldFN0YXRlVG9Db25zaXN0ZW50VmFsdWVzKGNvbnN0IFRlc3RPcHRp
b25zJiBvcHQKICAgICAgICAgVUlTY3JvbGxWaWV3ICpzY3JvbGxWaWV3ID0gd2ViVmlldy5zY3Jv
bGxWaWV3OwogICAgICAgICBbc2Nyb2xsVmlldyBfcmVtb3ZlQWxsQW5pbWF0aW9uczpZRVNdOwog
ICAgICAgICBbc2Nyb2xsVmlldyBzZXRab29tU2NhbGU6MSBhbmltYXRlZDpOT107Ci0gICAgICAg
IAorCisgICAgICAgIGF1dG8gY3VycmVudENvbnRlbnRJbnNldCA9IHNjcm9sbFZpZXcuY29udGVu
dEluc2V0OwogICAgICAgICBhdXRvIGNvbnRlbnRJbnNldFRvcCA9IG9wdGlvbnMuY29udGVudElu
c2V0VG9wKCk7Ci0gICAgICAgIHNjcm9sbFZpZXcuY29udGVudEluc2V0ID0gVUlFZGdlSW5zZXRz
TWFrZShjb250ZW50SW5zZXRUb3AsIDAsIDAsIDApOwotICAgICAgICBzY3JvbGxWaWV3LmNvbnRl
bnRPZmZzZXQgPSBDR1BvaW50TWFrZSgwLCAtY29udGVudEluc2V0VG9wKTsKKyAgICAgICAgaWYg
KGN1cnJlbnRDb250ZW50SW5zZXQudG9wICE9IGNvbnRlbnRJbnNldFRvcCkgeworICAgICAgICAg
ICAgY3VycmVudENvbnRlbnRJbnNldC50b3AgPSBjb250ZW50SW5zZXRUb3A7CisgICAgICAgICAg
ICBzY3JvbGxWaWV3LmNvbnRlbnRJbnNldCA9IGN1cnJlbnRDb250ZW50SW5zZXQ7CisgICAgICAg
ICAgICBzY3JvbGxWaWV3LmNvbnRlbnRPZmZzZXQgPSBDR1BvaW50TWFrZSgtY3VycmVudENvbnRl
bnRJbnNldC5sZWZ0LCAtY3VycmVudENvbnRlbnRJbnNldC50b3ApOworICAgICAgICB9CiAKICAg
ICAgICAgaWYgKHdlYlZpZXcuaW50ZXJhY3RpbmdXaXRoRm9ybUNvbnRyb2wpCiAgICAgICAgICAg
ICBzaG91bGRSZXN0b3JlRmlyc3RSZXNwb25kZXIgPSBbd2ViVmlldyByZXNpZ25GaXJzdFJlc3Bv
bmRlcl07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggNzU4YWUxZTc0YWRlM2Q5ZTVmZWI2ODRjMzU3MjNhYjc3Y2NkMmQzMy4u
ZWE0MGQyNjFlYWE0NDY3YjhiMjIzMGJjOWI3MTgzYTJmYmQ2ZWMyMSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE4IEBACisyMDIxLTA3LTExICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29t
PgorCisgICAgICAgIFt3YXRjaE9TXSBNYWtlIGEgZmV3IGFkZGl0aW9uYWwgYWRqdXN0bWVudHMg
dG8gc3VwcG9ydCBzeXN0ZW0gbWluaW11bSBsYXlvdXQgbWFyZ2lucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODU5CisgICAgICAgIHJkYXI6Ly84
MDExMzYxMgorCisgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAgQWRk
IGEgbmV3IGxheW91dCB0ZXN0IHRoYXQgdXNlcyB0aGUgbmV3IHRlc3Qgb3B0aW9uIHRvIHZlcmlm
eSB0aGF0IG5vbnplcm8gaG9yaXpvbnRhbCBzeXN0ZW0gbWluaW11bSBsYXlvdXQKKyAgICAgICAg
bWFyZ2lucyBzaHJpbmsgdGhlIHdpZHRoIG9mIHRoZSB2aWV3cG9ydCBvbiB3YXRjaE9TICh0aGlz
IHRlc3QgYWxzbyBkaXNhYmxlcyB3YXRjaE9TIGRldmljZSBhZGFwdGF0aW9ucyBhbmQgdXNlcwor
ICAgICAgICBhIGRldmljZS13aWR0aCB2aWV3cG9ydCB3aXRoIGBpbml0aWFsLXNjYWxlPTFgIHN1
Y2ggdGhhdCB3ZSBjYW4gc2ltcGx5IGNoZWNrIHRoZSB2YWx1ZSBvZiBgaW5uZXJXaWR0aGApLgor
CisgICAgICAgICogZmFzdC92aWV3cG9ydC93YXRjaG9zL3ZpZXdwb3J0LXdpdGgtc3lzdGVtLW1p
bmltdW0tbGF5b3V0LW1hcmdpbnMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L3ZpZXdwb3J0L3dhdGNob3Mvdmlld3BvcnQtd2l0aC1zeXN0ZW0tbWluaW11bS1sYXlvdXQtbWFy
Z2lucy5odG1sOiBBZGRlZC4KKwogMjAyMS0wNy0wOCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgogCiAgICAgICAgIFtJbmRleGVkREJdIEtleVBhdGggdmFsaWRpdHkgY2hlY2tzIHNo
b3VsZCBoYXBwZW4gb24gdGhlIGNsb25lZCB2YWx1ZSwgbm90IHRoZSBvcmlnaW5hbCBvbmUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQvd2F0Y2hvcy92aWV3cG9ydC13aXRo
LXN5c3RlbS1taW5pbXVtLWxheW91dC1tYXJnaW5zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3Qvdmlld3BvcnQvd2F0Y2hvcy92aWV3cG9ydC13aXRoLXN5c3RlbS1taW5pbXVtLWxheW91
dC1tYXJnaW5zLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNTNiMzZiY2ZiZGMyMDY3YmEwNjZl
ZDllZTk5YjI5MzgzNjhiMmMwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC92
aWV3cG9ydC93YXRjaG9zL3ZpZXdwb3J0LXdpdGgtc3lzdGVtLW1pbmltdW0tbGF5b3V0LW1hcmdp
bnMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0
IG5vbi16ZXJvIGhvcml6b250YWwgc3lzdGVtIG1pbmltdW0gbGF5b3V0IG1hcmdpbnMgYWZmZWN0
IHRoZSB3aWR0aCBvZiB0aGUgdmlld3BvcnQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitQQVNTIGlubmVyV2lkdGggaXMgMTMyCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC92aWV3
cG9ydC93YXRjaG9zL3ZpZXdwb3J0LXdpdGgtc3lzdGVtLW1pbmltdW0tbGF5b3V0LW1hcmdpbnMu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQvd2F0Y2hvcy92aWV3cG9ydC13aXRoLXN5
c3RlbS1taW5pbXVtLWxheW91dC1tYXJnaW5zLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTE2Mjk2ODM5NDMz
ODgwZjZhN2NlZmFhZWI4OGRkYTlkNjQ5MTU3OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3Qvdmlld3BvcnQvd2F0Y2hvcy92aWV3cG9ydC13aXRoLXN5c3RlbS1taW5pbXVtLWxh
eW91dC1tYXJnaW5zLmh0bWwKQEAgLTAsMCArMSwzMSBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0g
d2Via2l0LXRlc3QtcnVubmVyIFsgdXNlRmxleGlibGVWaWV3cG9ydD10cnVlIGhvcml6b250YWxT
eXN0ZW1NaW5pbXVtTGF5b3V0TWFyZ2luPTEyIF0gLS0+Cis8aHRtbD4KKzxtZXRhIG5hbWU9InZp
ZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+Cis8
bWV0YSBuYW1lPSJkaXNhYmxlZC1hZGFwdGF0aW9ucyIgY29udGVudD0id2F0Y2giPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0Pgor
PHN0eWxlPgorYm9keSwgaHRtbCB7CisgICAgbWFyZ2luOiAwOworICAgIHdpZHRoOiAxMDAlOwor
ICAgIGhlaWdodDogMTAwJTsKK30KKzwvc3R5bGU+Cis8c2NyaXB0PgoranNUZXN0SXNBc3luYyA9
IHRydWU7CisKK2FzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgZGVzY3JpcHRpb24oIlRo
aXMgdGVzdCB2ZXJpZmllcyB0aGF0IG5vbi16ZXJvIGhvcml6b250YWwgc3lzdGVtIG1pbmltdW0g
bGF5b3V0IG1hcmdpbnMgYWZmZWN0IHRoZSB3aWR0aCBvZiB0aGUgdmlld3BvcnQuIik7CisKKyAg
ICBpZiAoIXdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICByZXR1cm47CisKKyAgICBhd2FpdCBV
SUhlbHBlci5lbnN1cmVWaXNpYmxlQ29udGVudFJlY3RVcGRhdGUoKTsKKyAgICBzaG91bGRCZSgi
aW5uZXJXaWR0aCIsICIxMzIiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKzwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPjwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="commit-queue"
          id="455531"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>