<?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>192377</bug_id>
          
          <creation_ts>2018-12-04 14:01:48 -0800</creation_ts>
          <short_desc>We should ignore minimumEffectiveDeviceWidth if the page specifies device-width in viewport meta-tag.</short_desc>
          <delta_ts>2018-12-06 17:35:36 -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>Layout and Rendering</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="Yongjun Zhang">yongjun_zhang</reporter>
          <assigned_to name="Yongjun Zhang">yongjun_zhang</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>wenson_hsieh</cc>
    
    <cc>yongjun_zhang</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1484996</commentid>
    <comment_count>0</comment_count>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2018-12-04 14:01:48 -0800</bug_when>
    <thetext>If the page specifies width=device-width in the viewport meta tag, we should use the native device width and ignore the minimum effective device width.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485000</commentid>
    <comment_count>1</comment_count>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2018-12-04 14:11:41 -0800</bug_when>
    <thetext>rdar://problem/46364206</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485046</commentid>
    <comment_count>2</comment_count>
      <attachid>356548</attachid>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2018-12-04 15:39:47 -0800</bug_when>
    <thetext>Created attachment 356548
Patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485047</commentid>
    <comment_count>3</comment_count>
      <attachid>356548</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2018-12-04 15:46:23 -0800</bug_when>
    <thetext>Comment on attachment 356548
Patch.

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

&gt; Source/WebCore/page/ViewportConfiguration.cpp:151
&gt; +void ViewportConfiguration::overrideDefaultConfiguration()

This is more of an &quot;update&quot; method than an actual &quot;override&quot; method, right? It doesn&apos;t always &quot;override&quot;, it decides whether it should or not.

&gt; Source/WebCore/page/ViewportConfiguration.cpp:161
&gt; +    // When ignoring mEDW, we should render the content with native device width and use nativeWebpageParameters.

Please don&apos;t abbreviate like that :) It makes find-and-replace terrible! Also this is sort of a what and not a why comment. Might just leave it out</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485048</commentid>
    <comment_count>4</comment_count>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2018-12-04 15:57:36 -0800</bug_when>
    <thetext>(In reply to Tim Horton from comment #3)
&gt; Comment on attachment 356548 [details]
&gt; Patch.
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=356548&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/ViewportConfiguration.cpp:151
&gt; &gt; +void ViewportConfiguration::overrideDefaultConfiguration()
&gt; 
&gt; This is more of an &quot;update&quot; method than an actual &quot;override&quot; method, right?
Right, it is more like &quot;update&quot;. I will change to that.
&gt; It doesn&apos;t always &quot;override&quot;, it decides whether it should or not.
&gt; 
&gt; &gt; Source/WebCore/page/ViewportConfiguration.cpp:161
&gt; &gt; +    // When ignoring mEDW, we should render the content with native device width and use nativeWebpageParameters.
&gt; 
&gt; Please don&apos;t abbreviate like that :) It makes find-and-replace terrible!
&gt; Also this is sort of a what and not a why comment. Might just leave it out
Sure, will do!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485276</commentid>
    <comment_count>5</comment_count>
      <attachid>356613</attachid>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2018-12-05 09:59:08 -0800</bug_when>
    <thetext>Created attachment 356613
Address review comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485822</commentid>
    <comment_count>6</comment_count>
      <attachid>356613</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2018-12-06 14:19:04 -0800</bug_when>
    <thetext>Comment on attachment 356613
Address review comments.

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

&gt; Source/WebCore/page/ViewportConfiguration.cpp:351
&gt; +ViewportConfiguration::Parameters ViewportConfiguration::standardWebpageParameters()

We talked about the name of this offline. You might also consider sharing some code with the function above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485866</commentid>
    <comment_count>7</comment_count>
      <attachid>356762</attachid>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2018-12-06 16:31:22 -0800</bug_when>
    <thetext>Created attachment 356762
Address review comments before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485886</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-06 17:20:27 -0800</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 356762:

imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/failures_AES-GCM.https.any.html bug 192050
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485891</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-06 17:20:40 -0800</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 356762:

imported/w3c/web-platform-tests/css/geometry/interfaces.worker.html bug 192484 (author: rego@igalia.com)
inspector/dom/customElementState.html bug 192485 (authors: drousso@apple.com and rniwa@webkit.org)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485895</commentid>
    <comment_count>10</comment_count>
      <attachid>356762</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-06 17:35:34 -0800</bug_when>
    <thetext>Comment on attachment 356762
Address review comments before landing.

Clearing flags on attachment: 356762

Committed r238946: &lt;https://trac.webkit.org/changeset/238946&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1485896</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-06 17:35:36 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>356548</attachid>
            <date>2018-12-04 15:39:47 -0800</date>
            <delta_ts>2018-12-05 09:59:08 -0800</delta_ts>
            <desc>Patch.</desc>
            <filename>ignore_minimum_effective_device_width.patch</filename>
            <type>text/plain</type>
            <size>19573</size>
            <attacher name="Yongjun Zhang">yongjun_zhang</attacher>
            
              <data encoding="base64">Y29tbWl0IGNmODk2MzMxZTQ4MzJjODY0Yzc0ODY0MjgwZmE5MDg0YWRkODNlNzgKQXV0aG9yOiBZ
b25nanVuIFpoYW5nIDx5b25nanVuX3poYW5nQGFwcGxlLmNvbT4KRGF0ZTogICBUdWUgRGVjIDQg
MTQ6MDM6MTQgMjAxOCAtMDgwMAoKICAgIFdlIHNob3VsZCBpZ25vcmUgbWluaW11bUVmZmVjdGl2
ZURldmljZVdpZHRoIGlmIHRoZSBwYWdlIHNwZWNpZmllcyBkZXZpY2Utd2lkdGggaW4gdmlld3Bv
cnQgbWV0YS10YWcuCiAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTkyMzc3CiAgICA8cmRhcjovL3Byb2JsZW0vNDYzNjQyMDY+CgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE5MTk1Mzc4NWNk
Li45OWI1MDQzMTNiNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE4LTEyLTA0ICBZb25nanVu
IFpoYW5nICA8eW9uZ2p1bl96aGFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgV2Ugc2hvdWxkIGln
bm9yZSBtaW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGggaWYgdGhlIHBhZ2Ugc3BlY2lmaWVzIGRl
dmljZS13aWR0aCBpbiB2aWV3cG9ydCBtZXRhLXRhZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MjM3NworICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NDYzNjQyMDY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBmYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBh
Z2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGgtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBh
Z2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGguaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC92aWV3cG9ydC9pb3MvdXNlLW1pbmltdW0tZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdpdGhvdXQt
dmlld3BvcnQtbWV0YS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvdmlld3Bv
cnQvaW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRob3V0LXZpZXdwb3J0
LW1ldGEuaHRtbDogQWRkZWQuCisKIDIwMTgtMTItMDQgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRh
ZEBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIzODgzOC4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQvaW9zL2lnbm9yZS1taW5pbXVt
LWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRoLXZpZXdwb3J0LWRldmljZS13aWR0aC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZp
Y2Utd2lkdGgtZm9yLXBhZ2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGgtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi44MjM3MzVmNDY1ZAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQvaW9zL2lnbm9yZS1taW5p
bXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRoLXZpZXdwb3J0LWRldmljZS13aWR0aC1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw0MSBAQAorc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDY0MC4w
MCkKK3dpbmRvdyBzaXplOiBbMzIwLCA1NDhdCitzcXVhcmUgc2l6ZTogWzMyLCA1NV0KK3pvb20g
c2NhbGU6IDEuMDAKKworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDc2OC4wMCkKK3dpbmRvdyBz
aXplOiBbMzIwLCA1NDhdCitzcXVhcmUgc2l6ZTogWzMyLCA1NV0KK3pvb20gc2NhbGU6IDEuMDAK
Kworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDgzNC4wMCkKK3dpbmRvdyBzaXplOiBbMzIwLCA1
NDhdCitzcXVhcmUgc2l6ZTogWzMyLCA1NV0KK3pvb20gc2NhbGU6IDEuMDAKKworc2V0TWluaW11
bUVmZmVjdGl2ZVdpZHRoKDk4MC4wMCkKK3dpbmRvdyBzaXplOiBbMzIwLCA1NDhdCitzcXVhcmUg
c2l6ZTogWzMyLCA1NV0KK3pvb20gc2NhbGU6IDEuMDAKKworc2V0TWluaW11bUVmZmVjdGl2ZVdp
ZHRoKDEwMjQuMDApCit3aW5kb3cgc2l6ZTogWzMyMCwgNTQ4XQorc3F1YXJlIHNpemU6IFszMiwg
NTVdCit6b29tIHNjYWxlOiAxLjAwCisKK3NldE1pbmltdW1FZmZlY3RpdmVXaWR0aCgxMTEyLjAw
KQord2luZG93IHNpemU6IFszMjAsIDU0OF0KK3NxdWFyZSBzaXplOiBbMzIsIDU1XQorem9vbSBz
Y2FsZTogMS4wMAorCitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoMTI4MC4wMCkKK3dpbmRvdyBz
aXplOiBbMzIwLCA1NDhdCitzcXVhcmUgc2l6ZTogWzMyLCA1NV0KK3pvb20gc2NhbGU6IDEuMDAK
Kworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDEzMzYuMDApCit3aW5kb3cgc2l6ZTogWzMyMCwg
NTQ4XQorc3F1YXJlIHNpemU6IFszMiwgNTVdCit6b29tIHNjYWxlOiAxLjAwCisKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC92aWV3cG9ydC9pb3MvaWdub3JlLW1pbmltdW0tZGV2aWNl
LXdpZHRoLWZvci1wYWdlLXdpdGgtdmlld3BvcnQtZGV2aWNlLXdpZHRoLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBh
Z2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMC4uODAyMmQ5ODU1MTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBh
Z2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGguaHRtbApAQCAtMCwwICsxLDU4IEBACis8IURP
Q1RZUEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBzaG91bGRJZ25vcmVNZXRhVmll
d3BvcnQ9dHJ1ZSBdIC0tPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8bWV0YSBuYW1lPSJ2aWV3cG9y
dCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KKyAgICA8c3R5bGU+CisgICAgICAgICNz
cXVhcmUgeworICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICAgICAgd2lk
dGg6IDEwdnc7CisgICAgICAgICAgICBoZWlnaHQ6IDEwdmg7CisgICAgICAgICAgICBib3JkZXI6
IDJweCBzb2xpZCBibGFjazsKKyAgICAgICAgfQorCisgICAgICAgICNvdXRwdXQgeworICAgICAg
ICAgICAgd2lkdGg6IDEwMCU7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAgICAg
ICBvdmVyZmxvdzogc2Nyb2xsOworICAgICAgICB9CisKKyAgICAgICAgYm9keSB7CisgICAgICAg
ICAgICBtYXJnaW46IDA7CisgICAgICAgICAgICB3aWR0aDogMTAwJTsKKyAgICAgICAgICAgIGhl
aWdodDogMTAwJTsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+Cisg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICB9CisKKyAgICBh
c3luYyBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgICBjb25zdCBhcHBlbmRPdXRwdXQgPSBt
ZXNzYWdlID0+IHsKKyAgICAgICAgICAgIG91dHB1dC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVh
dGVUZXh0Tm9kZShtZXNzYWdlKSk7CisgICAgICAgICAgICBvdXRwdXQuYXBwZW5kQ2hpbGQoZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiYnIiKSk7CisgICAgICAgIH07CisKKyAgICAgICAgZm9yIChs
ZXQgdGFyZ2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoIG9mIFs2NDAsIDc2OCwgODM0LCA5ODAsIDEw
MjQsIDExMTIsIDEyODAsIDEzMzZdKSB7CisgICAgICAgICAgICBhcHBlbmRPdXRwdXQoYHNldE1p
bmltdW1FZmZlY3RpdmVXaWR0aCgke3RhcmdldE1pbmltdW1FZmZlY3RpdmVXaWR0aC50b0ZpeGVk
KDIpfSlgKTsKKworICAgICAgICAgICAgYXdhaXQgVUlIZWxwZXIuc2V0TWluaW11bUVmZmVjdGl2
ZVdpZHRoKHRhcmdldE1pbmltdW1FZmZlY3RpdmVXaWR0aCk7CisgICAgICAgICAgICBhd2FpdCBQ
cm9taXNlLmFsbChbVUlIZWxwZXIuZW5zdXJlVmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlKCksIFVJ
SGVscGVyLmVuc3VyZVByZXNlbnRhdGlvblVwZGF0ZSgpXSk7CisgICAgICAgICAgICBhcHBlbmRP
dXRwdXQoYHdpbmRvdyBzaXplOiBbJHtpbm5lcldpZHRofSwgJHtpbm5lckhlaWdodH1dYCk7Cisg
ICAgICAgICAgICBhcHBlbmRPdXRwdXQoYHNxdWFyZSBzaXplOiBbJHtzcXVhcmUuY2xpZW50V2lk
dGh9LCAke3NxdWFyZS5jbGllbnRIZWlnaHR9XWApOworICAgICAgICAgICAgYXBwZW5kT3V0cHV0
KGB6b29tIHNjYWxlOiAkeyhhd2FpdCBVSUhlbHBlci56b29tU2NhbGUoKSkudG9GaXhlZCgyKX1g
KTsKKyAgICAgICAgICAgIGFwcGVuZE91dHB1dCgiIik7CisgICAgICAgIH0KKworICAgICAgICB0
ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+CisK
Kzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJzcXVhcmUiPjwvZGl2Pgor
ICAgIDxwcmUgaWQ9Im91dHB1dCI+PC9wcmU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy91c2UtbWluaW11bS1kZXZpY2Utd2lkdGgt
Zm9yLXBhZ2Utd2l0aG91dC12aWV3cG9ydC1tZXRhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3Qvdmlld3BvcnQvaW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRo
b3V0LXZpZXdwb3J0LW1ldGEtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwLi4wNmQ5MTBlMTA1MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3Qvdmlld3BvcnQvaW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRo
b3V0LXZpZXdwb3J0LW1ldGEtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDEgQEAKK3NldE1pbmlt
dW1FZmZlY3RpdmVXaWR0aCg2NDAuMDApCit3aW5kb3cgc2l6ZTogWzY0MCwgMTA5Nl0KK3NxdWFy
ZSBzaXplOiBbNjQsIDExMF0KK3pvb20gc2NhbGU6IDAuNTAKKworc2V0TWluaW11bUVmZmVjdGl2
ZVdpZHRoKDc2OC4wMCkKK3dpbmRvdyBzaXplOiBbNzY4LCAxMzE1XQorc3F1YXJlIHNpemU6IFs3
NywgMTMyXQorem9vbSBzY2FsZTogMC40MgorCitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoODM0
LjAwKQord2luZG93IHNpemU6IFs4MzQsIDE0MjhdCitzcXVhcmUgc2l6ZTogWzgzLCAxNDNdCit6
b29tIHNjYWxlOiAwLjM4CisKK3NldE1pbmltdW1FZmZlY3RpdmVXaWR0aCg5ODAuMDApCit3aW5k
b3cgc2l6ZTogWzk4MCwgMTY3OF0KK3NxdWFyZSBzaXplOiBbOTgsIDE2OF0KK3pvb20gc2NhbGU6
IDAuMzMKKworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDEwMjQuMDApCit3aW5kb3cgc2l6ZTog
WzEwMjQsIDE3NTRdCitzcXVhcmUgc2l6ZTogWzEwMiwgMTc1XQorem9vbSBzY2FsZTogMC4zMQor
CitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoMTExMi4wMCkKK3dpbmRvdyBzaXplOiBbMTExMiwg
MTkwNF0KK3NxdWFyZSBzaXplOiBbMTExLCAxOTBdCit6b29tIHNjYWxlOiAwLjI5CisKK3NldE1p
bmltdW1FZmZlY3RpdmVXaWR0aCgxMjgwLjAwKQord2luZG93IHNpemU6IFsxMjgwLCAyMTkyXQor
c3F1YXJlIHNpemU6IFsxMjgsIDIxOV0KK3pvb20gc2NhbGU6IDAuMjUKKworc2V0TWluaW11bUVm
ZmVjdGl2ZVdpZHRoKDEzMzYuMDApCit3aW5kb3cgc2l6ZTogWzEzMzYsIDIyODhdCitzcXVhcmUg
c2l6ZTogWzEzNCwgMjI5XQorem9vbSBzY2FsZTogMC4yNAorCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3Qvdmlld3BvcnQvaW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFn
ZS13aXRob3V0LXZpZXdwb3J0LW1ldGEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQv
aW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRob3V0LXZpZXdwb3J0LW1l
dGEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZjIwNDNkNGQz
Y2UKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy91c2Ut
bWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBhZ2Utd2l0aG91dC12aWV3cG9ydC1tZXRhLmh0bWwK
QEAgLTAsMCArMSw1NyBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVubmVy
IFsgc2hvdWxkSWdub3JlTWV0YVZpZXdwb3J0PXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+Cisg
ICAgPHN0eWxlPgorICAgICAgICAjc3F1YXJlIHsKKyAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNv
bHV0ZTsKKyAgICAgICAgICAgIHdpZHRoOiAxMHZ3OworICAgICAgICAgICAgaGVpZ2h0OiAxMHZo
OworICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7CisgICAgICAgIH0KKworICAg
ICAgICAjb3V0cHV0IHsKKyAgICAgICAgICAgIHdpZHRoOiAxMDAlOworICAgICAgICAgICAgaGVp
Z2h0OiAxMDAlOworICAgICAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDsKKyAgICAgICAgfQorCisg
ICAgICAgIGJvZHkgeworICAgICAgICAgICAgbWFyZ2luOiAwOworICAgICAgICAgICAgd2lkdGg6
IDEwMCU7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAgIH0KKyAgICA8L3N0eWxl
PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3Nj
cmlwdD4KKyAgICA8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxE
b25lKCk7CisgICAgfQorCisgICAgYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAg
Y29uc3QgYXBwZW5kT3V0cHV0ID0gbWVzc2FnZSA9PiB7CisgICAgICAgICAgICBvdXRwdXQuYXBw
ZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobWVzc2FnZSkpOworICAgICAgICAgICAg
b3V0cHV0LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJyIikpOworICAgICAg
ICB9OworCisgICAgICAgIGZvciAobGV0IHRhcmdldE1pbmltdW1FZmZlY3RpdmVXaWR0aCBvZiBb
NjQwLCA3NjgsIDgzNCwgOTgwLCAxMDI0LCAxMTEyLCAxMjgwLCAxMzM2XSkgeworICAgICAgICAg
ICAgYXBwZW5kT3V0cHV0KGBzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoJHt0YXJnZXRNaW5pbXVt
RWZmZWN0aXZlV2lkdGgudG9GaXhlZCgyKX0pYCk7CisKKyAgICAgICAgICAgIGF3YWl0IFVJSGVs
cGVyLnNldE1pbmltdW1FZmZlY3RpdmVXaWR0aCh0YXJnZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgp
OworICAgICAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoW1VJSGVscGVyLmVuc3VyZVZpc2libGVD
b250ZW50UmVjdFVwZGF0ZSgpLCBVSUhlbHBlci5lbnN1cmVQcmVzZW50YXRpb25VcGRhdGUoKV0p
OworICAgICAgICAgICAgYXBwZW5kT3V0cHV0KGB3aW5kb3cgc2l6ZTogWyR7aW5uZXJXaWR0aH0s
ICR7aW5uZXJIZWlnaHR9XWApOworICAgICAgICAgICAgYXBwZW5kT3V0cHV0KGBzcXVhcmUgc2l6
ZTogWyR7c3F1YXJlLmNsaWVudFdpZHRofSwgJHtzcXVhcmUuY2xpZW50SGVpZ2h0fV1gKTsKKyAg
ICAgICAgICAgIGFwcGVuZE91dHB1dChgem9vbSBzY2FsZTogJHsoYXdhaXQgVUlIZWxwZXIuem9v
bVNjYWxlKCkpLnRvRml4ZWQoMil9YCk7CisgICAgICAgICAgICBhcHBlbmRPdXRwdXQoIiIpOwor
ICAgICAgICB9CisKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfQorICAg
IDwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgPGRp
diBpZD0ic3F1YXJlIj48L2Rpdj4KKyAgICA8cHJlIGlkPSJvdXRwdXQiPjwvcHJlPgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGU2ZWU5ZWQ0NzkxLi44ZGYyZThjMjMzYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDE4LTEyLTA0ICBZb25nanVuIFpoYW5nICA8eW9uZ2p1
bl96aGFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgV2Ugc2hvdWxkIGlnbm9yZSBtaW5pbXVtRWZm
ZWN0aXZlRGV2aWNlV2lkdGggaWYgdGhlIHBhZ2Ugc3BlY2lmaWVzIGRldmljZS13aWR0aCBpbiB2
aWV3cG9ydCBtZXRhLXRhZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE5MjM3NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDYzNjQyMDY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgdGhlIHBhZ2Ug
c3BlY2lmaWVzIHdpZHRoPWRldmljZS13aWR0aCBvciBpbml0aWFsLXNjYWxlPTEgaW4gdGhlIHZp
ZXdwb3J0IG1ldGEgdGFnLCB3ZSBzaG91bGQgdXNlIHRoZQorICAgICAgICBuYXRpdmUgZGV2aWNl
IHdpZHRoIGFuZCBpZ25vcmUgdGhlIG1pbmltdW0gZWZmZWN0aXZlIGRldmljZSB3aWR0aCBpbiBW
aWV3cG9ydENvbmZpZ3VyYXRpb24uIFRoZSBwYXRjaAorICAgICAgICBhbHNvIGludHJvZHVjZXMg
c3RhbmRhcmRXZWJwYWdlUGFyYW1ldGVycygpIHdoaWNoIHVzZXMgdGhlIGRldmljZSB3aWR0aCBh
cyBkZWZhdWx0IGFuZCBhbHNvIGFsbG93cyB0aGUgcGFnZQorICAgICAgICB0byBzaHJpbmstdG8t
Zml0LiBJZiBhIHBhZ2UgZG9lc24ndCBoYXZlIHZpZXdwb3J0IG1ldGEgdGFnLCBvciBpZiB0aGUg
d2lkdGggYXJndW1lbnQgaXNuJ3QgZGV2aWNlLXdpZHRoCisgICAgICAgIGFuZCB0aGUgaW5pdGlh
bCBzY2FsZSBpc24ndCAxLCB3ZSB3aWxsIHVzZSBzdGFuZGFyZFdlYnBhZ2VQYXJhbWV0ZXJzKCkg
YXMgdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbi4KKworICAgICAgICBUZXN0czogZmFzdC92aWV3
cG9ydC9pb3MvaWdub3JlLW1pbmltdW0tZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdpdGgtdmlld3Bv
cnQtZGV2aWNlLXdpZHRoLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3Qvdmlld3BvcnQvaW9zL3Vz
ZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRob3V0LXZpZXdwb3J0LW1ldGEuaHRt
bAorCisgICAgICAgICogcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Vmlld3BvcnRDb25maWd1cmF0aW9uOjpvdmVycmlkZURlZmF1bHRDb25maWd1cmF0
aW9uKTogcGljayB0aGUgZGVmYXVsdCBjb25maWd1cmF0aW9uIGJhc2VkIG9uCisgICAgICAgICAg
ICB0aGUgcGFnZSdzIHZpZXdwb3J0IGFyZ3VtZW50cy4gQWxzbywgd2Ugd2lsbCBhbHdheXMgZmFs
bCBiYWNrIHRvIHN0YW5kYXJkV2VicGFnZVBhcmFtZXRlcnMoKSBpZiB3ZQorICAgICAgICAgICAg
Y2FuIGlnbm9yZSBzY2FsaW5nIGNvbnN0cmFpbnRzLgorICAgICAgICAoV2ViQ29yZTo6Vmlld3Bv
cnRDb25maWd1cmF0aW9uOjpzZXRWaWV3cG9ydEFyZ3VtZW50cyk6IFdoZW4gcGFnZSBzZW5kcyB1
cyBuZXcgVmlld3BvcnRBcmd1bWVudHMsIHBpY2sKKyAgICAgICAgICAgIHVwIHRoZSBjb3JyZXBv
bnNkaW5nIGRlZmF1bHQgY29uZmlndXJhdGlvbiBiZWZvcmUgdXBkYXRpbmcgdGhlIGNvbmZpZ3Vy
YXRpb24uCisgICAgICAgIChXZWJDb3JlOjpWaWV3cG9ydENvbmZpZ3VyYXRpb246OnNldENhbkln
bm9yZVNjYWxpbmdDb25zdHJhaW50cyk6IFdoZW4gbV9jYW5JZ25vcmVTY2FsaW5nQ29uc3RyYWlu
dHMgaXMKKyAgICAgICAgICAgIGNoYW5nZWQsIHRyeSB0byBwaWNrIHVwIHRoZSBjb3JyZXBvbnNk
aW5nIGRlZmF1bHQgY29uZmlndXJhdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OlZpZXdwb3J0Q29u
ZmlndXJhdGlvbjo6c3RhbmRhcmRXZWJwYWdlUGFyYW1ldGVycyk6IEFkZCBhIG5ldyBkZWZhdWx0
IHNldCBvZiB2aWV3cG9ydCBQYXJhbWV0ZXJzCisgICAgICAgICAgICB0aGlzIGlzIHZlcnkgY2xv
c2UgdG8gbmF0aXZlV2VicGFnZVBhcmFtZXRlcnMoKSBleGNwZXQgdGhhdCBpdCBhbGxvd3Mgc2hy
aW5rIHRvIGZpdCBhbmQgaXRzIG1pbmltdW0gc2NhbGUKKyAgICAgICAgICAgIGlzIDAuMjUuIFdl
IHdpbGwgdXNlIHRoaXMgUGFyYW1ldGVycyBmb3IgcGFnZXMgdGhhdCBkb2Vzbid0IGhhdmUgdmll
d3BvcnQgbWV0YSB0YWc7IG9yIHRoZSB3aWR0aCBpcworICAgICAgICAgICAgbm90IGRldmljZS13
aWR0aCBhbmQgaW5pdGlhbCBzY2FsZSBpcyBub3QgMS4KKyAgICAgICAgKFdlYkNvcmU6OlZpZXdw
b3J0Q29uZmlndXJhdGlvbjo6dXBkYXRlQ29uZmlndXJhdGlvbik6IElmIHRoZSBwYWdlJ3Mgdmll
d3BvcnQgYXJndW1lbnQgZG9lc24ndCBvdmVycmlkZQorICAgICAgICAgICAgdGhlIGRlZmF1bHQg
d2lkdGgsIHVzZSB0aGUgbV9taW5pbXVtTGF5b3V0U2l6ZS53aWR0aCgpLgorICAgICAgICAqIHBh
Z2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpWaWV3cG9ydENv
bmZpZ3VyYXRpb246OnNob3VsZElnbm9yZU1pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0aCBjb25z
dCk6IEEgaGVscGVyIG1ldGhvZCB0byB0ZWxsCisgICAgICAgICAgICBpZiB3ZSBzaG91bGQgYXZv
aWQgdXNpbmcgbWluaW11bSBlZmZlY3RpdmUgZGV2aWNlIHdpZHRoLgorICAgICAgICAoV2ViQ29y
ZTo6Vmlld3BvcnRDb25maWd1cmF0aW9uOjpjYW5PdmVycmlkZUNvbmZpZ3VyYXRpb25QYXJhbWV0
ZXJzIGNvbnN0KTogSWYgd2UgYXJlIHVzaW5nIGEgZGVmYXVsdAorICAgICAgICAgICAgY29uZmln
dXJhdGlvbiB0aGF0IGlzIG5laXRoZXIgbmF0aXZlV2VicGFnZVBhcmFtZXRlcnMoKSBub3Igc3Rh
bmRhcmRXZWJwYWdlUGFyYW1ldGVycygpLCBkb24ndCBvdmVycmlkZQorICAgICAgICAgICAgaXQu
CisgICAgICAgIChXZWJDb3JlOjpWaWV3cG9ydENvbmZpZ3VyYXRpb246Om1pbmltdW1FZmZlY3Rp
dmVEZXZpY2VXaWR0aCBjb25zdCk6IEFkZCBhIGhlbHBlciBtZXRob2QgdG8gcmV0dXJuIG1pbmlt
dW0KKyAgICAgICAgICAgIGVmZmVjdGl2ZSBkZXZpY2Ugd2lkdGggYmFzZWQgb24gc2hvdWxkSWdu
b3JlTWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoKCkuCisgICAgICAgIChXZWJDb3JlOjpWaWV3
cG9ydENvbmZpZ3VyYXRpb246OmVmZmVjdGl2ZUxheW91dFNpemVTY2FsZUZhY3RvciBjb25zdCk6
IFVzZSBtaW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGgoKS4KKwogMjAxOC0xMi0wNCAgQ2hyaXMg
RHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJlZ3Jlc3Npb24ocjIzODgxNykg
UFNPTiBQYWdlIENhY2hlIEFQSSB0ZXN0cyBhcmUgZmFpbGluZwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwCmluZGV4IDVjYzgxNDA4N2I2Li5iYTk1NTBk
NWVhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRp
b24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmNw
cApAQCAtMTQzLDYgKzE0MywyOCBAQCBib29sIFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6c2V0RGlz
YWJsZWRBZGFwdGF0aW9ucyhjb25zdCBPcHRpb25TZXQ8RGlzYWJsZWRBZGFwdAogICAgIHJldHVy
biB0cnVlOwogfQogCitib29sIFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6Y2FuT3ZlcnJpZGVDb25m
aWd1cmF0aW9uUGFyYW1ldGVycygpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fZGVmYXVsdENvbmZp
Z3VyYXRpb24gPT0gVmlld3BvcnRDb25maWd1cmF0aW9uOjpuYXRpdmVXZWJwYWdlUGFyYW1ldGVy
cygpIHx8IG1fZGVmYXVsdENvbmZpZ3VyYXRpb24gPT0gVmlld3BvcnRDb25maWd1cmF0aW9uOjpz
dGFuZGFyZFdlYnBhZ2VQYXJhbWV0ZXJzKCk7Cit9CisKK3ZvaWQgVmlld3BvcnRDb25maWd1cmF0
aW9uOjpvdmVycmlkZURlZmF1bHRDb25maWd1cmF0aW9uKCkKK3sKKyAgICBpZiAoIWNhbk92ZXJy
aWRlQ29uZmlndXJhdGlvblBhcmFtZXRlcnMoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYg
KG1fY2FuSWdub3JlU2NhbGluZ0NvbnN0cmFpbnRzKSB7CisgICAgICAgIG1fZGVmYXVsdENvbmZp
Z3VyYXRpb24gPSBWaWV3cG9ydENvbmZpZ3VyYXRpb246OnN0YW5kYXJkV2VicGFnZVBhcmFtZXRl
cnMoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIC8vIFdoZW4gaWdub3JpbmcgbUVE
Vywgd2Ugc2hvdWxkIHJlbmRlciB0aGUgY29udGVudCB3aXRoIG5hdGl2ZSBkZXZpY2Ugd2lkdGgg
YW5kIHVzZSBuYXRpdmVXZWJwYWdlUGFyYW1ldGVycy4KKyAgICBpZiAoc2hvdWxkSWdub3JlTWlu
aW11bUVmZmVjdGl2ZURldmljZVdpZHRoKCkpCisgICAgICAgIG1fZGVmYXVsdENvbmZpZ3VyYXRp
b24gPSBWaWV3cG9ydENvbmZpZ3VyYXRpb246Om5hdGl2ZVdlYnBhZ2VQYXJhbWV0ZXJzKCk7Cisg
ICAgZWxzZQorICAgICAgICBtX2RlZmF1bHRDb25maWd1cmF0aW9uID0gVmlld3BvcnRDb25maWd1
cmF0aW9uOjpzdGFuZGFyZFdlYnBhZ2VQYXJhbWV0ZXJzKCk7Cit9CisKIGJvb2wgVmlld3BvcnRD
b25maWd1cmF0aW9uOjpzZXRWaWV3cG9ydEFyZ3VtZW50cyhjb25zdCBWaWV3cG9ydEFyZ3VtZW50
cyYgdmlld3BvcnRBcmd1bWVudHMpCiB7CiAgICAgaWYgKG1fdmlld3BvcnRBcmd1bWVudHMgPT0g
dmlld3BvcnRBcmd1bWVudHMpCkBAIC0xNTEsNiArMTczLDcgQEAgYm9vbCBWaWV3cG9ydENvbmZp
Z3VyYXRpb246OnNldFZpZXdwb3J0QXJndW1lbnRzKGNvbnN0IFZpZXdwb3J0QXJndW1lbnRzJiB2
aWV3cG8KICAgICBMT0dfV0lUSF9TVFJFQU0oVmlld3BvcnRzLCBzdHJlYW0gPDwgIlZpZXdwb3J0
Q29uZmlndXJhdGlvbjo6c2V0Vmlld3BvcnRBcmd1bWVudHMgIiA8PCB2aWV3cG9ydEFyZ3VtZW50
cyk7CiAgICAgbV92aWV3cG9ydEFyZ3VtZW50cyA9IHZpZXdwb3J0QXJndW1lbnRzOwogCisgICAg
b3ZlcnJpZGVEZWZhdWx0Q29uZmlndXJhdGlvbigpOwogICAgIHVwZGF0ZU1pbmltdW1MYXlvdXRT
aXplKCk7CiAgICAgdXBkYXRlQ29uZmlndXJhdGlvbigpOwogICAgIHJldHVybiB0cnVlOwpAQCAt
MTYyLDYgKzE4NSw3IEBAIGJvb2wgVmlld3BvcnRDb25maWd1cmF0aW9uOjpzZXRDYW5JZ25vcmVT
Y2FsaW5nQ29uc3RyYWludHMoYm9vbCBjYW5JZ25vcmVTY2FsaW5nCiAgICAgICAgIHJldHVybiBm
YWxzZTsKICAgICAKICAgICBtX2Nhbklnbm9yZVNjYWxpbmdDb25zdHJhaW50cyA9IGNhbklnbm9y
ZVNjYWxpbmdDb25zdHJhaW50czsKKyAgICBvdmVycmlkZURlZmF1bHRDb25maWd1cmF0aW9uKCk7
CiAgICAgdXBkYXRlQ29uZmlndXJhdGlvbigpOwogICAgIHJldHVybiB0cnVlOwogfQpAQCAtMzI1
LDYgKzM0OSwyMSBAQCBWaWV3cG9ydENvbmZpZ3VyYXRpb246OlBhcmFtZXRlcnMgVmlld3BvcnRD
b25maWd1cmF0aW9uOjpuYXRpdmVXZWJwYWdlUGFyYW1ldGVycwogICAgIHJldHVybiBwYXJhbWV0
ZXJzOwogfQogCitWaWV3cG9ydENvbmZpZ3VyYXRpb246OlBhcmFtZXRlcnMgVmlld3BvcnRDb25m
aWd1cmF0aW9uOjpzdGFuZGFyZFdlYnBhZ2VQYXJhbWV0ZXJzKCkKK3sKKyAgICBQYXJhbWV0ZXJz
IHBhcmFtZXRlcnM7CisgICAgcGFyYW1ldGVycy53aWR0aCA9IFZpZXdwb3J0QXJndW1lbnRzOjpW
YWx1ZURldmljZVdpZHRoOworICAgIHBhcmFtZXRlcnMud2lkdGhJc1NldCA9IHRydWU7CisgICAg
cGFyYW1ldGVycy5hbGxvd3NVc2VyU2NhbGluZyA9IHRydWU7CisgICAgcGFyYW1ldGVycy5hbGxv
d3NTaHJpbmtUb0ZpdCA9IHRydWU7CisgICAgcGFyYW1ldGVycy5taW5pbXVtU2NhbGUgPSAwLjI1
OworICAgIHBhcmFtZXRlcnMubWF4aW11bVNjYWxlID0gNTsKKyAgICBwYXJhbWV0ZXJzLmluaXRp
YWxTY2FsZSA9IDE7CisgICAgcGFyYW1ldGVycy5pbml0aWFsU2NhbGVJc1NldCA9IHRydWU7Cisg
ICAgcGFyYW1ldGVycy5pbml0aWFsU2NhbGVJZ25vcmluZ0xheW91dFNjYWxlRmFjdG9yID0gMTsK
KyAgICByZXR1cm4gcGFyYW1ldGVyczsKK30KKwogVmlld3BvcnRDb25maWd1cmF0aW9uOjpQYXJh
bWV0ZXJzIFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6d2VicGFnZVBhcmFtZXRlcnMoKQogewogICAg
IFBhcmFtZXRlcnMgcGFyYW1ldGVyczsKQEAgLTQ0OCw2ICs0ODcsOSBAQCB2b2lkIFZpZXdwb3J0
Q29uZmlndXJhdGlvbjo6dXBkYXRlQ29uZmlndXJhdGlvbigpCiAgICAgZWxzZSBpZiAoYm9vbGVh
blZpZXdwb3J0QXJndW1lbnRJc1NldChtX3ZpZXdwb3J0QXJndW1lbnRzLnNocmlua1RvRml0KSkK
ICAgICAgICAgbV9jb25maWd1cmF0aW9uLmFsbG93c1Nocmlua1RvRml0ID0gbV92aWV3cG9ydEFy
Z3VtZW50cy5zaHJpbmtUb0ZpdCAhPSAwLjsKIAorICAgIGlmIChjYW5PdmVycmlkZUNvbmZpZ3Vy
YXRpb25QYXJhbWV0ZXJzKCkgJiYgIXZpZXdwb3J0QXJndW1lbnRzT3ZlcnJpZGVzV2lkdGgpCisg
ICAgICAgIG1fY29uZmlndXJhdGlvbi53aWR0aCA9IG1fbWluaW11bUxheW91dFNpemUud2lkdGgo
KTsKKwogICAgIG1fY29uZmlndXJhdGlvbi5hdm9pZHNVbnNhZmVBcmVhID0gbV92aWV3cG9ydEFy
Z3VtZW50cy52aWV3cG9ydEZpdCAhPSBWaWV3cG9ydEZpdDo6Q292ZXI7CiAgICAgbV9jb25maWd1
cmF0aW9uLmluaXRpYWxTY2FsZUlnbm9yaW5nTGF5b3V0U2NhbGVGYWN0b3IgPSBtX2NvbmZpZ3Vy
YXRpb24uaW5pdGlhbFNjYWxlOwogICAgIGZsb2F0IGVmZmVjdGl2ZUxheW91dFNjYWxlID0gZWZm
ZWN0aXZlTGF5b3V0U2l6ZVNjYWxlRmFjdG9yKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9WaWV3
cG9ydENvbmZpZ3VyYXRpb24uaAppbmRleCA0OTg3YmUyYzY0NS4uMjMwZDY5MDNjNzkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uaApAQCAtMTAzLDYgKzEw
Myw3IEBAIHB1YmxpYzoKIAogICAgIC8vIE1hdGNoZXMgYSB3aWR0aD1kZXZpY2Utd2lkdGgsIGlu
aXRpYWwtc2NhbGU9MSB2aWV3cG9ydC4KICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUGFyYW1l
dGVycyBuYXRpdmVXZWJwYWdlUGFyYW1ldGVycygpOworICAgIHN0YXRpYyBQYXJhbWV0ZXJzIHN0
YW5kYXJkV2VicGFnZVBhcmFtZXRlcnMoKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUGFy
YW1ldGVycyB3ZWJwYWdlUGFyYW1ldGVycygpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBQ
YXJhbWV0ZXJzIHRleHREb2N1bWVudFBhcmFtZXRlcnMoKTsKICAgICBXRUJDT1JFX0VYUE9SVCBz
dGF0aWMgUGFyYW1ldGVycyBpbWFnZURvY3VtZW50UGFyYW1ldGVycygpOwpAQCAtMTI2LDYgKzEy
NywyOSBAQCBwcml2YXRlOgogICAgIGJvb2wgc2hvdWxkSWdub3JlU2NhbGluZ0NvbnN0cmFpbnRz
KCkgY29uc3Q7CiAgICAgYm9vbCBzaG91bGRJZ25vcmVWZXJ0aWNhbFNjYWxpbmdDb25zdHJhaW50
cygpIGNvbnN0OwogICAgIGJvb2wgc2hvdWxkSWdub3JlSG9yaXpvbnRhbFNjYWxpbmdDb25zdHJh
aW50cygpIGNvbnN0OworICAgIHZvaWQgb3ZlcnJpZGVEZWZhdWx0Q29uZmlndXJhdGlvbigpOwor
ICAgIGJvb2wgY2FuT3ZlcnJpZGVDb25maWd1cmF0aW9uUGFyYW1ldGVycygpIGNvbnN0OworCisg
ICAgY29uc3RleHByIGJvb2wgc2hvdWxkSWdub3JlTWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRo
KCkgY29uc3QKKyAgICB7CisgICAgICAgIGlmIChtX2Nhbklnbm9yZVNjYWxpbmdDb25zdHJhaW50
cykKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworCisgICAgICAgIGlmIChtX3ZpZXdwb3J0QXJn
dW1lbnRzID09IFZpZXdwb3J0QXJndW1lbnRzKCkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7
CisKKyAgICAgICAgaWYgKG1fdmlld3BvcnRBcmd1bWVudHMud2lkdGggPT0gVmlld3BvcnRBcmd1
bWVudHM6OlZhbHVlRGV2aWNlV2lkdGggfHwgbV92aWV3cG9ydEFyZ3VtZW50cy56b29tID09IDEu
KQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAg
IH0KKworICAgIGNvbnN0ZXhwciBkb3VibGUgbWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoKCkg
Y29uc3QKKyAgICB7CisgICAgICAgIGlmIChzaG91bGRJZ25vcmVNaW5pbXVtRWZmZWN0aXZlRGV2
aWNlV2lkdGgoKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbV9taW5p
bXVtRWZmZWN0aXZlRGV2aWNlV2lkdGg7CisgICAgfQogCiAgICAgY29uc3RleHByIGRvdWJsZSBm
b3JjZUFsd2F5c1VzZXJTY2FsYWJsZU1heGltdW1TY2FsZSgpIGNvbnN0CiAgICAgewpAQCAtMTQx
LDkgKzE2NSw5IEBAIHByaXZhdGU6CiAKICAgICBjb25zdGV4cHIgZG91YmxlIGVmZmVjdGl2ZUxh
eW91dFNpemVTY2FsZUZhY3RvcigpIGNvbnN0CiAgICAgewotICAgICAgICBpZiAoIW1fdmlld0xh
eW91dFNpemUud2lkdGgoKSB8fCAhbV9taW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGgpCisgICAg
ICAgIGlmICghbV92aWV3TGF5b3V0U2l6ZS53aWR0aCgpIHx8ICFtaW5pbXVtRWZmZWN0aXZlRGV2
aWNlV2lkdGgoKSkKICAgICAgICAgICAgIHJldHVybiBtX2xheW91dFNpemVTY2FsZUZhY3RvcjsK
LSAgICAgICAgcmV0dXJuIG1fbGF5b3V0U2l6ZVNjYWxlRmFjdG9yICogbV92aWV3TGF5b3V0U2l6
ZS53aWR0aCgpIC8gc3RkOjptYXg8ZG91YmxlPihtX21pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0
aCwgbV92aWV3TGF5b3V0U2l6ZS53aWR0aCgpKTsKKyAgICAgICAgcmV0dXJuIG1fbGF5b3V0U2l6
ZVNjYWxlRmFjdG9yICogbV92aWV3TGF5b3V0U2l6ZS53aWR0aCgpIC8gc3RkOjptYXg8ZG91Ymxl
PihtaW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGgoKSwgbV92aWV3TGF5b3V0U2l6ZS53aWR0aCgp
KTsKICAgICB9CiAKICAgICB2b2lkIHVwZGF0ZU1pbmltdW1MYXlvdXRTaXplKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmlu
ZGV4IDU1ZGZmMWMwMTlhLi5jYzkyMTYwYzY4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAor
MjAxOC0xMi0wNCAgWW9uZ2p1biBaaGFuZyAgPHlvbmdqdW5femhhbmdAYXBwbGUuY29tPgorCisg
ICAgICAgIFdlIHNob3VsZCBpZ25vcmUgbWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoIGlmIHRo
ZSBwYWdlIHNwZWNpZmllcyBkZXZpY2Utd2lkdGggaW4gdmlld3BvcnQgbWV0YS10YWcuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTIzNzcKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzQ2MzY0MjA2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFNpbmNlIHdlIGFyZSB1c2luZyBwYWdlJ3Mgdmlld3BvcnQg
YXJndW1lbnRzIHRvIGRlY2lkZSB0aGUgZGVmYXVsdCB2aWV3cG9ydCBwYXJhbWV0ZXJzIGFuZAor
ICAgICAgICB3aGV0aGVyIHdlIGNhbiB1c2UgbWluaW51bSBlZmZlY3RpdmUgZGV2aWNlIHdpZHRo
LCB3ZSBzaG91bGQgYWx3YXlzIGNhbGwgc2V0Vmlld3BvcnRBcmd1bWVudHMoKQorICAgICAgICBy
ZWdhcmRsZXNzIG9mIHNob3VsZElnbm9yZU1ldGFWaWV3cG9ydCBzZXR0aW5ncy4KKworICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6dmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKTogQWx3YXlzIGNhbGwgc2V0Vmlld3Bv
cnRBcmd1bWVudHMoKS4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZGlkQ29tbWl0TG9hZCk6
IERpdHRvLgorCiAyMDE4LTEyLTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
ICAgICAgICAgUmVncmVzc2lvbihyMjM4ODE3KSBQU09OIFBhZ2UgQ2FjaGUgQVBJIHRlc3RzIGFy
ZSBmYWlsaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
CmluZGV4IGFjNDc1MTUyZDc0Li42ZjJjYTFmNTA5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTE5MjYsNyArMTkyNiw3IEBAIHZvaWQgV2Vi
UGFnZTo6ZGlzYWJsZWRBZGFwdGF0aW9uc0RpZENoYW5nZShjb25zdCBPcHRpb25TZXQ8RGlzYWJs
ZWRBZGFwdGF0aW9ucz4mCiB2b2lkIFdlYlBhZ2U6OnZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5n
ZShjb25zdCBWaWV3cG9ydEFyZ3VtZW50cyYgdmlld3BvcnRBcmd1bWVudHMpCiB7CiAjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBpZiAoIW1fcGFnZS0+c2V0dGluZ3MoKS5zaG91bGRJZ25v
cmVNZXRhVmlld3BvcnQoKSAmJiBtX3ZpZXdwb3J0Q29uZmlndXJhdGlvbi5zZXRWaWV3cG9ydEFy
Z3VtZW50cyh2aWV3cG9ydEFyZ3VtZW50cykpCisgICAgaWYgKG1fdmlld3BvcnRDb25maWd1cmF0
aW9uLnNldFZpZXdwb3J0QXJndW1lbnRzKHZpZXdwb3J0QXJndW1lbnRzKSkKICAgICAgICAgdmll
d3BvcnRDb25maWd1cmF0aW9uQ2hhbmdlZCgpOwogI2VuZGlmCiAKQEAgLTU1NDEsNyArNTU0MSw3
IEBAIHZvaWQgV2ViUGFnZTo6ZGlkQ29tbWl0TG9hZChXZWJGcmFtZSogZnJhbWUpCiAgICAgaWYg
KG1fdmlld3BvcnRDb25maWd1cmF0aW9uLnNldENvbnRlbnRzU2l6ZShjb3JlRnJhbWUtPnZpZXco
KS0+Y29udGVudHNTaXplKCkpKQogICAgICAgICB2aWV3cG9ydENoYW5nZWQgPSB0cnVlOwogCi0g
ICAgaWYgKCFtX3BhZ2UtPnNldHRpbmdzKCkuc2hvdWxkSWdub3JlTWV0YVZpZXdwb3J0KCkgJiYg
bV92aWV3cG9ydENvbmZpZ3VyYXRpb24uc2V0Vmlld3BvcnRBcmd1bWVudHMoY29yZUZyYW1lLT5k
b2N1bWVudCgpLT52aWV3cG9ydEFyZ3VtZW50cygpKSkKKyAgICBpZiAobV92aWV3cG9ydENvbmZp
Z3VyYXRpb24uc2V0Vmlld3BvcnRBcmd1bWVudHMoY29yZUZyYW1lLT5kb2N1bWVudCgpLT52aWV3
cG9ydEFyZ3VtZW50cygpKSkKICAgICAgICAgdmlld3BvcnRDaGFuZ2VkID0gdHJ1ZTsKIAogICAg
IGlmICh2aWV3cG9ydENoYW5nZWQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>356613</attachid>
            <date>2018-12-05 09:59:08 -0800</date>
            <delta_ts>2018-12-06 16:31:22 -0800</delta_ts>
            <desc>Address review comments.</desc>
            <filename>ignore_minimum_effective_device_width.patch</filename>
            <type>text/plain</type>
            <size>19448</size>
            <attacher name="Yongjun Zhang">yongjun_zhang</attacher>
            
              <data encoding="base64">Y29tbWl0IDcwZDgxZjdkNmRiOGMyYjM5MTA4ZjJkM2UxZTFjM2Y5MGVkYWQxZjIKQXV0aG9yOiBZ
b25nanVuIFpoYW5nIDx5b25nanVuX3poYW5nQGFwcGxlLmNvbT4KRGF0ZTogICBUdWUgRGVjIDQg
MTQ6MDM6MTQgMjAxOCAtMDgwMAoKICAgIFdlIHNob3VsZCBpZ25vcmUgbWluaW11bUVmZmVjdGl2
ZURldmljZVdpZHRoIGlmIHRoZSBwYWdlIHNwZWNpZmllcyBkZXZpY2Utd2lkdGggaW4gdmlld3Bv
cnQgbWV0YS10YWcuCiAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTkyMzc3CiAgICA8cmRhcjovL3Byb2JsZW0vNDYzNjQyMDY+CgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE5MTk1Mzc4NWNk
Li45OWI1MDQzMTNiNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE4LTEyLTA0ICBZb25nanVu
IFpoYW5nICA8eW9uZ2p1bl96aGFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgV2Ugc2hvdWxkIGln
bm9yZSBtaW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGggaWYgdGhlIHBhZ2Ugc3BlY2lmaWVzIGRl
dmljZS13aWR0aCBpbiB2aWV3cG9ydCBtZXRhLXRhZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MjM3NworICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NDYzNjQyMDY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBmYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBh
Z2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGgtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBh
Z2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGguaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC92aWV3cG9ydC9pb3MvdXNlLW1pbmltdW0tZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdpdGhvdXQt
dmlld3BvcnQtbWV0YS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvdmlld3Bv
cnQvaW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRob3V0LXZpZXdwb3J0
LW1ldGEuaHRtbDogQWRkZWQuCisKIDIwMTgtMTItMDQgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRh
ZEBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIzODgzOC4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQvaW9zL2lnbm9yZS1taW5pbXVt
LWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRoLXZpZXdwb3J0LWRldmljZS13aWR0aC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZp
Y2Utd2lkdGgtZm9yLXBhZ2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGgtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi44MjM3MzVmNDY1ZAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQvaW9zL2lnbm9yZS1taW5p
bXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRoLXZpZXdwb3J0LWRldmljZS13aWR0aC1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw0MSBAQAorc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDY0MC4w
MCkKK3dpbmRvdyBzaXplOiBbMzIwLCA1NDhdCitzcXVhcmUgc2l6ZTogWzMyLCA1NV0KK3pvb20g
c2NhbGU6IDEuMDAKKworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDc2OC4wMCkKK3dpbmRvdyBz
aXplOiBbMzIwLCA1NDhdCitzcXVhcmUgc2l6ZTogWzMyLCA1NV0KK3pvb20gc2NhbGU6IDEuMDAK
Kworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDgzNC4wMCkKK3dpbmRvdyBzaXplOiBbMzIwLCA1
NDhdCitzcXVhcmUgc2l6ZTogWzMyLCA1NV0KK3pvb20gc2NhbGU6IDEuMDAKKworc2V0TWluaW11
bUVmZmVjdGl2ZVdpZHRoKDk4MC4wMCkKK3dpbmRvdyBzaXplOiBbMzIwLCA1NDhdCitzcXVhcmUg
c2l6ZTogWzMyLCA1NV0KK3pvb20gc2NhbGU6IDEuMDAKKworc2V0TWluaW11bUVmZmVjdGl2ZVdp
ZHRoKDEwMjQuMDApCit3aW5kb3cgc2l6ZTogWzMyMCwgNTQ4XQorc3F1YXJlIHNpemU6IFszMiwg
NTVdCit6b29tIHNjYWxlOiAxLjAwCisKK3NldE1pbmltdW1FZmZlY3RpdmVXaWR0aCgxMTEyLjAw
KQord2luZG93IHNpemU6IFszMjAsIDU0OF0KK3NxdWFyZSBzaXplOiBbMzIsIDU1XQorem9vbSBz
Y2FsZTogMS4wMAorCitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoMTI4MC4wMCkKK3dpbmRvdyBz
aXplOiBbMzIwLCA1NDhdCitzcXVhcmUgc2l6ZTogWzMyLCA1NV0KK3pvb20gc2NhbGU6IDEuMDAK
Kworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDEzMzYuMDApCit3aW5kb3cgc2l6ZTogWzMyMCwg
NTQ4XQorc3F1YXJlIHNpemU6IFszMiwgNTVdCit6b29tIHNjYWxlOiAxLjAwCisKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC92aWV3cG9ydC9pb3MvaWdub3JlLW1pbmltdW0tZGV2aWNl
LXdpZHRoLWZvci1wYWdlLXdpdGgtdmlld3BvcnQtZGV2aWNlLXdpZHRoLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBh
Z2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMC4uODAyMmQ5ODU1MTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBh
Z2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGguaHRtbApAQCAtMCwwICsxLDU4IEBACis8IURP
Q1RZUEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBzaG91bGRJZ25vcmVNZXRhVmll
d3BvcnQ9dHJ1ZSBdIC0tPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8bWV0YSBuYW1lPSJ2aWV3cG9y
dCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KKyAgICA8c3R5bGU+CisgICAgICAgICNz
cXVhcmUgeworICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICAgICAgd2lk
dGg6IDEwdnc7CisgICAgICAgICAgICBoZWlnaHQ6IDEwdmg7CisgICAgICAgICAgICBib3JkZXI6
IDJweCBzb2xpZCBibGFjazsKKyAgICAgICAgfQorCisgICAgICAgICNvdXRwdXQgeworICAgICAg
ICAgICAgd2lkdGg6IDEwMCU7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAgICAg
ICBvdmVyZmxvdzogc2Nyb2xsOworICAgICAgICB9CisKKyAgICAgICAgYm9keSB7CisgICAgICAg
ICAgICBtYXJnaW46IDA7CisgICAgICAgICAgICB3aWR0aDogMTAwJTsKKyAgICAgICAgICAgIGhl
aWdodDogMTAwJTsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+Cisg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICB9CisKKyAgICBh
c3luYyBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgICBjb25zdCBhcHBlbmRPdXRwdXQgPSBt
ZXNzYWdlID0+IHsKKyAgICAgICAgICAgIG91dHB1dC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVh
dGVUZXh0Tm9kZShtZXNzYWdlKSk7CisgICAgICAgICAgICBvdXRwdXQuYXBwZW5kQ2hpbGQoZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiYnIiKSk7CisgICAgICAgIH07CisKKyAgICAgICAgZm9yIChs
ZXQgdGFyZ2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoIG9mIFs2NDAsIDc2OCwgODM0LCA5ODAsIDEw
MjQsIDExMTIsIDEyODAsIDEzMzZdKSB7CisgICAgICAgICAgICBhcHBlbmRPdXRwdXQoYHNldE1p
bmltdW1FZmZlY3RpdmVXaWR0aCgke3RhcmdldE1pbmltdW1FZmZlY3RpdmVXaWR0aC50b0ZpeGVk
KDIpfSlgKTsKKworICAgICAgICAgICAgYXdhaXQgVUlIZWxwZXIuc2V0TWluaW11bUVmZmVjdGl2
ZVdpZHRoKHRhcmdldE1pbmltdW1FZmZlY3RpdmVXaWR0aCk7CisgICAgICAgICAgICBhd2FpdCBQ
cm9taXNlLmFsbChbVUlIZWxwZXIuZW5zdXJlVmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlKCksIFVJ
SGVscGVyLmVuc3VyZVByZXNlbnRhdGlvblVwZGF0ZSgpXSk7CisgICAgICAgICAgICBhcHBlbmRP
dXRwdXQoYHdpbmRvdyBzaXplOiBbJHtpbm5lcldpZHRofSwgJHtpbm5lckhlaWdodH1dYCk7Cisg
ICAgICAgICAgICBhcHBlbmRPdXRwdXQoYHNxdWFyZSBzaXplOiBbJHtzcXVhcmUuY2xpZW50V2lk
dGh9LCAke3NxdWFyZS5jbGllbnRIZWlnaHR9XWApOworICAgICAgICAgICAgYXBwZW5kT3V0cHV0
KGB6b29tIHNjYWxlOiAkeyhhd2FpdCBVSUhlbHBlci56b29tU2NhbGUoKSkudG9GaXhlZCgyKX1g
KTsKKyAgICAgICAgICAgIGFwcGVuZE91dHB1dCgiIik7CisgICAgICAgIH0KKworICAgICAgICB0
ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+CisK
Kzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJzcXVhcmUiPjwvZGl2Pgor
ICAgIDxwcmUgaWQ9Im91dHB1dCI+PC9wcmU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy91c2UtbWluaW11bS1kZXZpY2Utd2lkdGgt
Zm9yLXBhZ2Utd2l0aG91dC12aWV3cG9ydC1tZXRhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3Qvdmlld3BvcnQvaW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRo
b3V0LXZpZXdwb3J0LW1ldGEtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwLi4wNmQ5MTBlMTA1MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3Qvdmlld3BvcnQvaW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRo
b3V0LXZpZXdwb3J0LW1ldGEtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDEgQEAKK3NldE1pbmlt
dW1FZmZlY3RpdmVXaWR0aCg2NDAuMDApCit3aW5kb3cgc2l6ZTogWzY0MCwgMTA5Nl0KK3NxdWFy
ZSBzaXplOiBbNjQsIDExMF0KK3pvb20gc2NhbGU6IDAuNTAKKworc2V0TWluaW11bUVmZmVjdGl2
ZVdpZHRoKDc2OC4wMCkKK3dpbmRvdyBzaXplOiBbNzY4LCAxMzE1XQorc3F1YXJlIHNpemU6IFs3
NywgMTMyXQorem9vbSBzY2FsZTogMC40MgorCitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoODM0
LjAwKQord2luZG93IHNpemU6IFs4MzQsIDE0MjhdCitzcXVhcmUgc2l6ZTogWzgzLCAxNDNdCit6
b29tIHNjYWxlOiAwLjM4CisKK3NldE1pbmltdW1FZmZlY3RpdmVXaWR0aCg5ODAuMDApCit3aW5k
b3cgc2l6ZTogWzk4MCwgMTY3OF0KK3NxdWFyZSBzaXplOiBbOTgsIDE2OF0KK3pvb20gc2NhbGU6
IDAuMzMKKworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDEwMjQuMDApCit3aW5kb3cgc2l6ZTog
WzEwMjQsIDE3NTRdCitzcXVhcmUgc2l6ZTogWzEwMiwgMTc1XQorem9vbSBzY2FsZTogMC4zMQor
CitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoMTExMi4wMCkKK3dpbmRvdyBzaXplOiBbMTExMiwg
MTkwNF0KK3NxdWFyZSBzaXplOiBbMTExLCAxOTBdCit6b29tIHNjYWxlOiAwLjI5CisKK3NldE1p
bmltdW1FZmZlY3RpdmVXaWR0aCgxMjgwLjAwKQord2luZG93IHNpemU6IFsxMjgwLCAyMTkyXQor
c3F1YXJlIHNpemU6IFsxMjgsIDIxOV0KK3pvb20gc2NhbGU6IDAuMjUKKworc2V0TWluaW11bUVm
ZmVjdGl2ZVdpZHRoKDEzMzYuMDApCit3aW5kb3cgc2l6ZTogWzEzMzYsIDIyODhdCitzcXVhcmUg
c2l6ZTogWzEzNCwgMjI5XQorem9vbSBzY2FsZTogMC4yNAorCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3Qvdmlld3BvcnQvaW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFn
ZS13aXRob3V0LXZpZXdwb3J0LW1ldGEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQv
aW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRob3V0LXZpZXdwb3J0LW1l
dGEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZjIwNDNkNGQz
Y2UKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy91c2Ut
bWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBhZ2Utd2l0aG91dC12aWV3cG9ydC1tZXRhLmh0bWwK
QEAgLTAsMCArMSw1NyBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVubmVy
IFsgc2hvdWxkSWdub3JlTWV0YVZpZXdwb3J0PXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+Cisg
ICAgPHN0eWxlPgorICAgICAgICAjc3F1YXJlIHsKKyAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNv
bHV0ZTsKKyAgICAgICAgICAgIHdpZHRoOiAxMHZ3OworICAgICAgICAgICAgaGVpZ2h0OiAxMHZo
OworICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7CisgICAgICAgIH0KKworICAg
ICAgICAjb3V0cHV0IHsKKyAgICAgICAgICAgIHdpZHRoOiAxMDAlOworICAgICAgICAgICAgaGVp
Z2h0OiAxMDAlOworICAgICAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDsKKyAgICAgICAgfQorCisg
ICAgICAgIGJvZHkgeworICAgICAgICAgICAgbWFyZ2luOiAwOworICAgICAgICAgICAgd2lkdGg6
IDEwMCU7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAgIH0KKyAgICA8L3N0eWxl
PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3Nj
cmlwdD4KKyAgICA8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxE
b25lKCk7CisgICAgfQorCisgICAgYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAg
Y29uc3QgYXBwZW5kT3V0cHV0ID0gbWVzc2FnZSA9PiB7CisgICAgICAgICAgICBvdXRwdXQuYXBw
ZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobWVzc2FnZSkpOworICAgICAgICAgICAg
b3V0cHV0LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJyIikpOworICAgICAg
ICB9OworCisgICAgICAgIGZvciAobGV0IHRhcmdldE1pbmltdW1FZmZlY3RpdmVXaWR0aCBvZiBb
NjQwLCA3NjgsIDgzNCwgOTgwLCAxMDI0LCAxMTEyLCAxMjgwLCAxMzM2XSkgeworICAgICAgICAg
ICAgYXBwZW5kT3V0cHV0KGBzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoJHt0YXJnZXRNaW5pbXVt
RWZmZWN0aXZlV2lkdGgudG9GaXhlZCgyKX0pYCk7CisKKyAgICAgICAgICAgIGF3YWl0IFVJSGVs
cGVyLnNldE1pbmltdW1FZmZlY3RpdmVXaWR0aCh0YXJnZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgp
OworICAgICAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoW1VJSGVscGVyLmVuc3VyZVZpc2libGVD
b250ZW50UmVjdFVwZGF0ZSgpLCBVSUhlbHBlci5lbnN1cmVQcmVzZW50YXRpb25VcGRhdGUoKV0p
OworICAgICAgICAgICAgYXBwZW5kT3V0cHV0KGB3aW5kb3cgc2l6ZTogWyR7aW5uZXJXaWR0aH0s
ICR7aW5uZXJIZWlnaHR9XWApOworICAgICAgICAgICAgYXBwZW5kT3V0cHV0KGBzcXVhcmUgc2l6
ZTogWyR7c3F1YXJlLmNsaWVudFdpZHRofSwgJHtzcXVhcmUuY2xpZW50SGVpZ2h0fV1gKTsKKyAg
ICAgICAgICAgIGFwcGVuZE91dHB1dChgem9vbSBzY2FsZTogJHsoYXdhaXQgVUlIZWxwZXIuem9v
bVNjYWxlKCkpLnRvRml4ZWQoMil9YCk7CisgICAgICAgICAgICBhcHBlbmRPdXRwdXQoIiIpOwor
ICAgICAgICB9CisKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfQorICAg
IDwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgPGRp
diBpZD0ic3F1YXJlIj48L2Rpdj4KKyAgICA8cHJlIGlkPSJvdXRwdXQiPjwvcHJlPgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGU2ZWU5ZWQ0NzkxLi4zODY1YjNkNTc5ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDE4LTEyLTA0ICBZb25nanVuIFpoYW5nICA8eW9uZ2p1
bl96aGFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgV2Ugc2hvdWxkIGlnbm9yZSBtaW5pbXVtRWZm
ZWN0aXZlRGV2aWNlV2lkdGggaWYgdGhlIHBhZ2Ugc3BlY2lmaWVzIGRldmljZS13aWR0aCBpbiB2
aWV3cG9ydCBtZXRhLXRhZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE5MjM3NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDYzNjQyMDY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgdGhlIHBhZ2Ug
c3BlY2lmaWVzIHdpZHRoPWRldmljZS13aWR0aCBvciBpbml0aWFsLXNjYWxlPTEgaW4gdGhlIHZp
ZXdwb3J0IG1ldGEgdGFnLCB3ZSBzaG91bGQgdXNlIHRoZQorICAgICAgICBuYXRpdmUgZGV2aWNl
IHdpZHRoIGFuZCBpZ25vcmUgdGhlIG1pbmltdW0gZWZmZWN0aXZlIGRldmljZSB3aWR0aCBpbiBW
aWV3cG9ydENvbmZpZ3VyYXRpb24uIFRoZSBwYXRjaAorICAgICAgICBhbHNvIGludHJvZHVjZXMg
c3RhbmRhcmRXZWJwYWdlUGFyYW1ldGVycygpIHdoaWNoIHVzZXMgdGhlIGRldmljZSB3aWR0aCBh
cyBkZWZhdWx0IGFuZCBhbHNvIGFsbG93cyB0aGUgcGFnZQorICAgICAgICB0byBzaHJpbmstdG8t
Zml0LiBJZiBhIHBhZ2UgZG9lc24ndCBoYXZlIHZpZXdwb3J0IG1ldGEgdGFnLCBvciBpZiB0aGUg
d2lkdGggYXJndW1lbnQgaXNuJ3QgZGV2aWNlLXdpZHRoCisgICAgICAgIGFuZCB0aGUgaW5pdGlh
bCBzY2FsZSBpc24ndCAxLCB3ZSB3aWxsIHVzZSBzdGFuZGFyZFdlYnBhZ2VQYXJhbWV0ZXJzKCkg
YXMgdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbi4KKworICAgICAgICBUZXN0czogZmFzdC92aWV3
cG9ydC9pb3MvaWdub3JlLW1pbmltdW0tZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdpdGgtdmlld3Bv
cnQtZGV2aWNlLXdpZHRoLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3Qvdmlld3BvcnQvaW9zL3Vz
ZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRob3V0LXZpZXdwb3J0LW1ldGEuaHRt
bAorCisgICAgICAgICogcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Vmlld3BvcnRDb25maWd1cmF0aW9uOjp1cGRhdGVEZWZhdWx0Q29uZmlndXJhdGlv
bik6IHBpY2sgdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbiBiYXNlZCBvbgorICAgICAgICAgICAg
dGhlIHBhZ2UncyB2aWV3cG9ydCBhcmd1bWVudHMuIEFsc28sIHdlIHdpbGwgYWx3YXlzIGZhbGwg
YmFjayB0byBzdGFuZGFyZFdlYnBhZ2VQYXJhbWV0ZXJzKCkgaWYgd2UKKyAgICAgICAgICAgIGNh
biBpZ25vcmUgc2NhbGluZyBjb25zdHJhaW50cy4KKyAgICAgICAgKFdlYkNvcmU6OlZpZXdwb3J0
Q29uZmlndXJhdGlvbjo6c2V0Vmlld3BvcnRBcmd1bWVudHMpOiBXaGVuIHBhZ2Ugc2VuZHMgdXMg
bmV3IFZpZXdwb3J0QXJndW1lbnRzLCBwaWNrCisgICAgICAgICAgICB1cCB0aGUgY29ycmVwb25z
ZGluZyBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gYmVmb3JlIHVwZGF0aW5nIHRoZSBjb25maWd1cmF0
aW9uLgorICAgICAgICAoV2ViQ29yZTo6Vmlld3BvcnRDb25maWd1cmF0aW9uOjpzZXRDYW5JZ25v
cmVTY2FsaW5nQ29uc3RyYWludHMpOiBXaGVuIG1fY2FuSWdub3JlU2NhbGluZ0NvbnN0cmFpbnRz
IGlzCisgICAgICAgICAgICBjaGFuZ2VkLCB0cnkgdG8gcGljayB1cCB0aGUgY29ycmVwb25zZGlu
ZyBkZWZhdWx0IGNvbmZpZ3VyYXRpb24uCisgICAgICAgIChXZWJDb3JlOjpWaWV3cG9ydENvbmZp
Z3VyYXRpb246OnN0YW5kYXJkV2VicGFnZVBhcmFtZXRlcnMpOiBBZGQgYSBuZXcgZGVmYXVsdCBz
ZXQgb2Ygdmlld3BvcnQgUGFyYW1ldGVycworICAgICAgICAgICAgdGhpcyBpcyB2ZXJ5IGNsb3Nl
IHRvIG5hdGl2ZVdlYnBhZ2VQYXJhbWV0ZXJzKCkgZXhjcGV0IHRoYXQgaXQgYWxsb3dzIHNocmlu
ayB0byBmaXQgYW5kIGl0cyBtaW5pbXVtIHNjYWxlCisgICAgICAgICAgICBpcyAwLjI1LiBXZSB3
aWxsIHVzZSB0aGlzIFBhcmFtZXRlcnMgZm9yIHBhZ2VzIHRoYXQgZG9lc24ndCBoYXZlIHZpZXdw
b3J0IG1ldGEgdGFnOyBvciB0aGUgd2lkdGggaXMKKyAgICAgICAgICAgIG5vdCBkZXZpY2Utd2lk
dGggYW5kIGluaXRpYWwgc2NhbGUgaXMgbm90IDEuCisgICAgICAgIChXZWJDb3JlOjpWaWV3cG9y
dENvbmZpZ3VyYXRpb246OnVwZGF0ZUNvbmZpZ3VyYXRpb24pOiBJZiB0aGUgcGFnZSdzIHZpZXdw
b3J0IGFyZ3VtZW50IGRvZXNuJ3Qgb3ZlcnJpZGUKKyAgICAgICAgICAgIHRoZSBkZWZhdWx0IHdp
ZHRoLCB1c2UgdGhlIG1fbWluaW11bUxheW91dFNpemUud2lkdGgoKS4KKyAgICAgICAgKiBwYWdl
L1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6Vmlld3BvcnRDb25m
aWd1cmF0aW9uOjpzaG91bGRJZ25vcmVNaW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGggY29uc3Qp
OiBBIGhlbHBlciBtZXRob2QgdG8gdGVsbAorICAgICAgICAgICAgaWYgd2Ugc2hvdWxkIGF2b2lk
IHVzaW5nIG1pbmltdW0gZWZmZWN0aXZlIGRldmljZSB3aWR0aC4KKyAgICAgICAgKFdlYkNvcmU6
OlZpZXdwb3J0Q29uZmlndXJhdGlvbjo6Y2FuT3ZlcnJpZGVDb25maWd1cmF0aW9uUGFyYW1ldGVy
cyBjb25zdCk6IElmIHdlIGFyZSB1c2luZyBhIGRlZmF1bHQKKyAgICAgICAgICAgIGNvbmZpZ3Vy
YXRpb24gdGhhdCBpcyBuZWl0aGVyIG5hdGl2ZVdlYnBhZ2VQYXJhbWV0ZXJzKCkgbm9yIHN0YW5k
YXJkV2VicGFnZVBhcmFtZXRlcnMoKSwgZG9uJ3Qgb3ZlcnJpZGUKKyAgICAgICAgICAgIGl0Lgor
ICAgICAgICAoV2ViQ29yZTo6Vmlld3BvcnRDb25maWd1cmF0aW9uOjptaW5pbXVtRWZmZWN0aXZl
RGV2aWNlV2lkdGggY29uc3QpOiBBZGQgYSBoZWxwZXIgbWV0aG9kIHRvIHJldHVybiBtaW5pbXVt
CisgICAgICAgICAgICBlZmZlY3RpdmUgZGV2aWNlIHdpZHRoIGJhc2VkIG9uIHNob3VsZElnbm9y
ZU1pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0aCgpLgorICAgICAgICAoV2ViQ29yZTo6Vmlld3Bv
cnRDb25maWd1cmF0aW9uOjplZmZlY3RpdmVMYXlvdXRTaXplU2NhbGVGYWN0b3IgY29uc3QpOiBV
c2UgbWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoKCkuCisKIDIwMTgtMTItMDQgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBSZWdyZXNzaW9uKHIyMzg4MTcpIFBT
T04gUGFnZSBDYWNoZSBBUEkgdGVzdHMgYXJlIGZhaWxpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmNwcAppbmRleCA1Y2M4MTQwODdiNi4uMzczY2RhZGUx
N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5jcHAK
QEAgLTE0Myw2ICsxNDMsMjcgQEAgYm9vbCBWaWV3cG9ydENvbmZpZ3VyYXRpb246OnNldERpc2Fi
bGVkQWRhcHRhdGlvbnMoY29uc3QgT3B0aW9uU2V0PERpc2FibGVkQWRhcHQKICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAorYm9vbCBWaWV3cG9ydENvbmZpZ3VyYXRpb246OmNhbk92ZXJyaWRlQ29uZmln
dXJhdGlvblBhcmFtZXRlcnMoKSBjb25zdAoreworICAgIHJldHVybiBtX2RlZmF1bHRDb25maWd1
cmF0aW9uID09IFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6bmF0aXZlV2VicGFnZVBhcmFtZXRlcnMo
KSB8fCBtX2RlZmF1bHRDb25maWd1cmF0aW9uID09IFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6c3Rh
bmRhcmRXZWJwYWdlUGFyYW1ldGVycygpOworfQorCit2b2lkIFZpZXdwb3J0Q29uZmlndXJhdGlv
bjo6dXBkYXRlRGVmYXVsdENvbmZpZ3VyYXRpb24oKQoreworICAgIGlmICghY2FuT3ZlcnJpZGVD
b25maWd1cmF0aW9uUGFyYW1ldGVycygpKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAobV9j
YW5JZ25vcmVTY2FsaW5nQ29uc3RyYWludHMpIHsKKyAgICAgICAgbV9kZWZhdWx0Q29uZmlndXJh
dGlvbiA9IFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6c3RhbmRhcmRXZWJwYWdlUGFyYW1ldGVycygp
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKHNob3VsZElnbm9yZU1pbmltdW1F
ZmZlY3RpdmVEZXZpY2VXaWR0aCgpKQorICAgICAgICBtX2RlZmF1bHRDb25maWd1cmF0aW9uID0g
Vmlld3BvcnRDb25maWd1cmF0aW9uOjpuYXRpdmVXZWJwYWdlUGFyYW1ldGVycygpOworICAgIGVs
c2UKKyAgICAgICAgbV9kZWZhdWx0Q29uZmlndXJhdGlvbiA9IFZpZXdwb3J0Q29uZmlndXJhdGlv
bjo6c3RhbmRhcmRXZWJwYWdlUGFyYW1ldGVycygpOworfQorCiBib29sIFZpZXdwb3J0Q29uZmln
dXJhdGlvbjo6c2V0Vmlld3BvcnRBcmd1bWVudHMoY29uc3QgVmlld3BvcnRBcmd1bWVudHMmIHZp
ZXdwb3J0QXJndW1lbnRzKQogewogICAgIGlmIChtX3ZpZXdwb3J0QXJndW1lbnRzID09IHZpZXdw
b3J0QXJndW1lbnRzKQpAQCAtMTUxLDYgKzE3Miw3IEBAIGJvb2wgVmlld3BvcnRDb25maWd1cmF0
aW9uOjpzZXRWaWV3cG9ydEFyZ3VtZW50cyhjb25zdCBWaWV3cG9ydEFyZ3VtZW50cyYgdmlld3Bv
CiAgICAgTE9HX1dJVEhfU1RSRUFNKFZpZXdwb3J0cywgc3RyZWFtIDw8ICJWaWV3cG9ydENvbmZp
Z3VyYXRpb246OnNldFZpZXdwb3J0QXJndW1lbnRzICIgPDwgdmlld3BvcnRBcmd1bWVudHMpOwog
ICAgIG1fdmlld3BvcnRBcmd1bWVudHMgPSB2aWV3cG9ydEFyZ3VtZW50czsKIAorICAgIHVwZGF0
ZURlZmF1bHRDb25maWd1cmF0aW9uKCk7CiAgICAgdXBkYXRlTWluaW11bUxheW91dFNpemUoKTsK
ICAgICB1cGRhdGVDb25maWd1cmF0aW9uKCk7CiAgICAgcmV0dXJuIHRydWU7CkBAIC0xNjIsNiAr
MTg0LDcgQEAgYm9vbCBWaWV3cG9ydENvbmZpZ3VyYXRpb246OnNldENhbklnbm9yZVNjYWxpbmdD
b25zdHJhaW50cyhib29sIGNhbklnbm9yZVNjYWxpbmcKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgIAogICAgIG1fY2FuSWdub3JlU2NhbGluZ0NvbnN0cmFpbnRzID0gY2FuSWdub3JlU2NhbGlu
Z0NvbnN0cmFpbnRzOworICAgIHVwZGF0ZURlZmF1bHRDb25maWd1cmF0aW9uKCk7CiAgICAgdXBk
YXRlQ29uZmlndXJhdGlvbigpOwogICAgIHJldHVybiB0cnVlOwogfQpAQCAtMzI1LDYgKzM0OCwy
MSBAQCBWaWV3cG9ydENvbmZpZ3VyYXRpb246OlBhcmFtZXRlcnMgVmlld3BvcnRDb25maWd1cmF0
aW9uOjpuYXRpdmVXZWJwYWdlUGFyYW1ldGVycwogICAgIHJldHVybiBwYXJhbWV0ZXJzOwogfQog
CitWaWV3cG9ydENvbmZpZ3VyYXRpb246OlBhcmFtZXRlcnMgVmlld3BvcnRDb25maWd1cmF0aW9u
OjpzdGFuZGFyZFdlYnBhZ2VQYXJhbWV0ZXJzKCkKK3sKKyAgICBQYXJhbWV0ZXJzIHBhcmFtZXRl
cnM7CisgICAgcGFyYW1ldGVycy53aWR0aCA9IFZpZXdwb3J0QXJndW1lbnRzOjpWYWx1ZURldmlj
ZVdpZHRoOworICAgIHBhcmFtZXRlcnMud2lkdGhJc1NldCA9IHRydWU7CisgICAgcGFyYW1ldGVy
cy5hbGxvd3NVc2VyU2NhbGluZyA9IHRydWU7CisgICAgcGFyYW1ldGVycy5hbGxvd3NTaHJpbmtU
b0ZpdCA9IHRydWU7CisgICAgcGFyYW1ldGVycy5taW5pbXVtU2NhbGUgPSAwLjI1OworICAgIHBh
cmFtZXRlcnMubWF4aW11bVNjYWxlID0gNTsKKyAgICBwYXJhbWV0ZXJzLmluaXRpYWxTY2FsZSA9
IDE7CisgICAgcGFyYW1ldGVycy5pbml0aWFsU2NhbGVJc1NldCA9IHRydWU7CisgICAgcGFyYW1l
dGVycy5pbml0aWFsU2NhbGVJZ25vcmluZ0xheW91dFNjYWxlRmFjdG9yID0gMTsKKyAgICByZXR1
cm4gcGFyYW1ldGVyczsKK30KKwogVmlld3BvcnRDb25maWd1cmF0aW9uOjpQYXJhbWV0ZXJzIFZp
ZXdwb3J0Q29uZmlndXJhdGlvbjo6d2VicGFnZVBhcmFtZXRlcnMoKQogewogICAgIFBhcmFtZXRl
cnMgcGFyYW1ldGVyczsKQEAgLTQ0OCw2ICs0ODYsOSBAQCB2b2lkIFZpZXdwb3J0Q29uZmlndXJh
dGlvbjo6dXBkYXRlQ29uZmlndXJhdGlvbigpCiAgICAgZWxzZSBpZiAoYm9vbGVhblZpZXdwb3J0
QXJndW1lbnRJc1NldChtX3ZpZXdwb3J0QXJndW1lbnRzLnNocmlua1RvRml0KSkKICAgICAgICAg
bV9jb25maWd1cmF0aW9uLmFsbG93c1Nocmlua1RvRml0ID0gbV92aWV3cG9ydEFyZ3VtZW50cy5z
aHJpbmtUb0ZpdCAhPSAwLjsKIAorICAgIGlmIChjYW5PdmVycmlkZUNvbmZpZ3VyYXRpb25QYXJh
bWV0ZXJzKCkgJiYgIXZpZXdwb3J0QXJndW1lbnRzT3ZlcnJpZGVzV2lkdGgpCisgICAgICAgIG1f
Y29uZmlndXJhdGlvbi53aWR0aCA9IG1fbWluaW11bUxheW91dFNpemUud2lkdGgoKTsKKwogICAg
IG1fY29uZmlndXJhdGlvbi5hdm9pZHNVbnNhZmVBcmVhID0gbV92aWV3cG9ydEFyZ3VtZW50cy52
aWV3cG9ydEZpdCAhPSBWaWV3cG9ydEZpdDo6Q292ZXI7CiAgICAgbV9jb25maWd1cmF0aW9uLmlu
aXRpYWxTY2FsZUlnbm9yaW5nTGF5b3V0U2NhbGVGYWN0b3IgPSBtX2NvbmZpZ3VyYXRpb24uaW5p
dGlhbFNjYWxlOwogICAgIGZsb2F0IGVmZmVjdGl2ZUxheW91dFNjYWxlID0gZWZmZWN0aXZlTGF5
b3V0U2l6ZVNjYWxlRmFjdG9yKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Zp
ZXdwb3J0Q29uZmlndXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9WaWV3cG9ydENvbmZp
Z3VyYXRpb24uaAppbmRleCA0OTg3YmUyYzY0NS4uNzM4MGI3Mjc3ZDMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uaApAQCAtMTAzLDYgKzEwMyw3IEBAIHB1
YmxpYzoKIAogICAgIC8vIE1hdGNoZXMgYSB3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2Nh
bGU9MSB2aWV3cG9ydC4KICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUGFyYW1ldGVycyBuYXRp
dmVXZWJwYWdlUGFyYW1ldGVycygpOworICAgIHN0YXRpYyBQYXJhbWV0ZXJzIHN0YW5kYXJkV2Vi
cGFnZVBhcmFtZXRlcnMoKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUGFyYW1ldGVycyB3
ZWJwYWdlUGFyYW1ldGVycygpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBQYXJhbWV0ZXJz
IHRleHREb2N1bWVudFBhcmFtZXRlcnMoKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUGFy
YW1ldGVycyBpbWFnZURvY3VtZW50UGFyYW1ldGVycygpOwpAQCAtMTI2LDYgKzEyNywyOSBAQCBw
cml2YXRlOgogICAgIGJvb2wgc2hvdWxkSWdub3JlU2NhbGluZ0NvbnN0cmFpbnRzKCkgY29uc3Q7
CiAgICAgYm9vbCBzaG91bGRJZ25vcmVWZXJ0aWNhbFNjYWxpbmdDb25zdHJhaW50cygpIGNvbnN0
OwogICAgIGJvb2wgc2hvdWxkSWdub3JlSG9yaXpvbnRhbFNjYWxpbmdDb25zdHJhaW50cygpIGNv
bnN0OworICAgIHZvaWQgdXBkYXRlRGVmYXVsdENvbmZpZ3VyYXRpb24oKTsKKyAgICBib29sIGNh
bk92ZXJyaWRlQ29uZmlndXJhdGlvblBhcmFtZXRlcnMoKSBjb25zdDsKKworICAgIGNvbnN0ZXhw
ciBib29sIHNob3VsZElnbm9yZU1pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0aCgpIGNvbnN0Cisg
ICAgeworICAgICAgICBpZiAobV9jYW5JZ25vcmVTY2FsaW5nQ29uc3RyYWludHMpCisgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKKworICAgICAgICBpZiAobV92aWV3cG9ydEFyZ3VtZW50cyA9PSBW
aWV3cG9ydEFyZ3VtZW50cygpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAg
IGlmIChtX3ZpZXdwb3J0QXJndW1lbnRzLndpZHRoID09IFZpZXdwb3J0QXJndW1lbnRzOjpWYWx1
ZURldmljZVdpZHRoIHx8IG1fdmlld3BvcnRBcmd1bWVudHMuem9vbSA9PSAxLikKKyAgICAgICAg
ICAgIHJldHVybiB0cnVlOworCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBj
b25zdGV4cHIgZG91YmxlIG1pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0aCgpIGNvbnN0CisgICAg
eworICAgICAgICBpZiAoc2hvdWxkSWdub3JlTWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoKCkp
CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIG1fbWluaW11bUVmZmVjdGl2
ZURldmljZVdpZHRoOworICAgIH0KIAogICAgIGNvbnN0ZXhwciBkb3VibGUgZm9yY2VBbHdheXNV
c2VyU2NhbGFibGVNYXhpbXVtU2NhbGUoKSBjb25zdAogICAgIHsKQEAgLTE0MSw5ICsxNjUsOSBA
QCBwcml2YXRlOgogCiAgICAgY29uc3RleHByIGRvdWJsZSBlZmZlY3RpdmVMYXlvdXRTaXplU2Nh
bGVGYWN0b3IoKSBjb25zdAogICAgIHsKLSAgICAgICAgaWYgKCFtX3ZpZXdMYXlvdXRTaXplLndp
ZHRoKCkgfHwgIW1fbWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoKQorICAgICAgICBpZiAoIW1f
dmlld0xheW91dFNpemUud2lkdGgoKSB8fCAhbWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoKCkp
CiAgICAgICAgICAgICByZXR1cm4gbV9sYXlvdXRTaXplU2NhbGVGYWN0b3I7Ci0gICAgICAgIHJl
dHVybiBtX2xheW91dFNpemVTY2FsZUZhY3RvciAqIG1fdmlld0xheW91dFNpemUud2lkdGgoKSAv
IHN0ZDo6bWF4PGRvdWJsZT4obV9taW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGgsIG1fdmlld0xh
eW91dFNpemUud2lkdGgoKSk7CisgICAgICAgIHJldHVybiBtX2xheW91dFNpemVTY2FsZUZhY3Rv
ciAqIG1fdmlld0xheW91dFNpemUud2lkdGgoKSAvIHN0ZDo6bWF4PGRvdWJsZT4obWluaW11bUVm
ZmVjdGl2ZURldmljZVdpZHRoKCksIG1fdmlld0xheW91dFNpemUud2lkdGgoKSk7CiAgICAgfQog
CiAgICAgdm9pZCB1cGRhdGVNaW5pbXVtTGF5b3V0U2l6ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA1NWRmZjFj
MDE5YS4uY2M5MjE2MGM2ODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTgtMTItMDQg
IFlvbmdqdW4gWmhhbmcgIDx5b25nanVuX3poYW5nQGFwcGxlLmNvbT4KKworICAgICAgICBXZSBz
aG91bGQgaWdub3JlIG1pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0aCBpZiB0aGUgcGFnZSBzcGVj
aWZpZXMgZGV2aWNlLXdpZHRoIGluIHZpZXdwb3J0IG1ldGEtdGFnLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyMzc3CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS80NjM2NDIwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBTaW5jZSB3ZSBhcmUgdXNpbmcgcGFnZSdzIHZpZXdwb3J0IGFyZ3VtZW50cyB0
byBkZWNpZGUgdGhlIGRlZmF1bHQgdmlld3BvcnQgcGFyYW1ldGVycyBhbmQKKyAgICAgICAgd2hl
dGhlciB3ZSBjYW4gdXNlIG1pbmludW0gZWZmZWN0aXZlIGRldmljZSB3aWR0aCwgd2Ugc2hvdWxk
IGFsd2F5cyBjYWxsIHNldFZpZXdwb3J0QXJndW1lbnRzKCkKKyAgICAgICAgcmVnYXJkbGVzcyBv
ZiBzaG91bGRJZ25vcmVNZXRhVmlld3BvcnQgc2V0dGluZ3MuCisKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnZpZXdw
b3J0UHJvcGVydGllc0RpZENoYW5nZSk6IEFsd2F5cyBjYWxsIHNldFZpZXdwb3J0QXJndW1lbnRz
KCkuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmRpZENvbW1pdExvYWQpOiBEaXR0by4KKwog
MjAxOC0xMi0wNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJl
Z3Jlc3Npb24ocjIzODgxNykgUFNPTiBQYWdlIENhY2hlIEFQSSB0ZXN0cyBhcmUgZmFpbGluZwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBhYzQ3
NTE1MmQ3NC4uNmYyY2ExZjUwOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCkBAIC0xOTI2LDcgKzE5MjYsNyBAQCB2b2lkIFdlYlBhZ2U6OmRpc2Fi
bGVkQWRhcHRhdGlvbnNEaWRDaGFuZ2UoY29uc3QgT3B0aW9uU2V0PERpc2FibGVkQWRhcHRhdGlv
bnM+Jgogdm9pZCBXZWJQYWdlOjp2aWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgVmll
d3BvcnRBcmd1bWVudHMmIHZpZXdwb3J0QXJndW1lbnRzKQogewogI2lmIFBMQVRGT1JNKElPU19G
QU1JTFkpCi0gICAgaWYgKCFtX3BhZ2UtPnNldHRpbmdzKCkuc2hvdWxkSWdub3JlTWV0YVZpZXdw
b3J0KCkgJiYgbV92aWV3cG9ydENvbmZpZ3VyYXRpb24uc2V0Vmlld3BvcnRBcmd1bWVudHModmll
d3BvcnRBcmd1bWVudHMpKQorICAgIGlmIChtX3ZpZXdwb3J0Q29uZmlndXJhdGlvbi5zZXRWaWV3
cG9ydEFyZ3VtZW50cyh2aWV3cG9ydEFyZ3VtZW50cykpCiAgICAgICAgIHZpZXdwb3J0Q29uZmln
dXJhdGlvbkNoYW5nZWQoKTsKICNlbmRpZgogCkBAIC01NTQxLDcgKzU1NDEsNyBAQCB2b2lkIFdl
YlBhZ2U6OmRpZENvbW1pdExvYWQoV2ViRnJhbWUqIGZyYW1lKQogICAgIGlmIChtX3ZpZXdwb3J0
Q29uZmlndXJhdGlvbi5zZXRDb250ZW50c1NpemUoY29yZUZyYW1lLT52aWV3KCktPmNvbnRlbnRz
U2l6ZSgpKSkKICAgICAgICAgdmlld3BvcnRDaGFuZ2VkID0gdHJ1ZTsKIAotICAgIGlmICghbV9w
YWdlLT5zZXR0aW5ncygpLnNob3VsZElnbm9yZU1ldGFWaWV3cG9ydCgpICYmIG1fdmlld3BvcnRD
b25maWd1cmF0aW9uLnNldFZpZXdwb3J0QXJndW1lbnRzKGNvcmVGcmFtZS0+ZG9jdW1lbnQoKS0+
dmlld3BvcnRBcmd1bWVudHMoKSkpCisgICAgaWYgKG1fdmlld3BvcnRDb25maWd1cmF0aW9uLnNl
dFZpZXdwb3J0QXJndW1lbnRzKGNvcmVGcmFtZS0+ZG9jdW1lbnQoKS0+dmlld3BvcnRBcmd1bWVu
dHMoKSkpCiAgICAgICAgIHZpZXdwb3J0Q2hhbmdlZCA9IHRydWU7CiAKICAgICBpZiAodmlld3Bv
cnRDaGFuZ2VkKQo=
</data>
<flag name="review"
          id="373575"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>356762</attachid>
            <date>2018-12-06 16:31:22 -0800</date>
            <delta_ts>2018-12-06 17:35:34 -0800</delta_ts>
            <desc>Address review comments before landing.</desc>
            <filename>ignore_minimum_effective_device_width.patch</filename>
            <type>text/plain</type>
            <size>19240</size>
            <attacher name="Yongjun Zhang">yongjun_zhang</attacher>
            
              <data encoding="base64">Y29tbWl0IDllZDI2YmNkN2MyMjI3YjhhNzU4MTI4ZDRiYzAxZTU3OWU5NDM4YTAKQXV0aG9yOiBZ
b25nanVuIFpoYW5nIDx5b25nanVuX3poYW5nQGFwcGxlLmNvbT4KRGF0ZTogICBUdWUgRGVjIDQg
MTQ6MDM6MTQgMjAxOCAtMDgwMAoKICAgIFdlIHNob3VsZCBpZ25vcmUgbWluaW11bUVmZmVjdGl2
ZURldmljZVdpZHRoIGlmIHRoZSBwYWdlIHNwZWNpZmllcyBkZXZpY2Utd2lkdGggaW4gdmlld3Bv
cnQgbWV0YS10YWcuCiAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTkyMzc3CiAgICA8cmRhcjovL3Byb2JsZW0vNDYzNjQyMDY+CgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE5MTk1Mzc4NWNk
Li4wZjVkMTBjZjI0MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE4LTEyLTA0ICBZb25nanVu
IFpoYW5nICA8eW9uZ2p1bl96aGFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgV2Ugc2hvdWxkIGln
bm9yZSBtaW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGggaWYgdGhlIHBhZ2Ugc3BlY2lmaWVzIGRl
dmljZS13aWR0aCBpbiB2aWV3cG9ydCBtZXRhLXRhZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MjM3NworICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NDYzNjQyMDY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKworICAgICAgICAq
IGZhc3Qvdmlld3BvcnQvaW9zL2lnbm9yZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13
aXRoLXZpZXdwb3J0LWRldmljZS13aWR0aC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGZhc3Qvdmlld3BvcnQvaW9zL2lnbm9yZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13
aXRoLXZpZXdwb3J0LWRldmljZS13aWR0aC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Zp
ZXdwb3J0L2lvcy91c2UtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBhZ2Utd2l0aG91dC12aWV3
cG9ydC1tZXRhLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC92aWV3cG9ydC9p
b3MvdXNlLW1pbmltdW0tZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdpdGhvdXQtdmlld3BvcnQtbWV0
YS5odG1sOiBBZGRlZC4KKwogMjAxOC0xMi0wNCAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFw
cGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjM4ODM4LgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC92aWV3cG9ydC9pb3MvaWdub3JlLW1pbmltdW0tZGV2
aWNlLXdpZHRoLWZvci1wYWdlLXdpdGgtdmlld3BvcnQtZGV2aWNlLXdpZHRoLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQvaW9zL2lnbm9yZS1taW5pbXVtLWRldmljZS13
aWR0aC1mb3ItcGFnZS13aXRoLXZpZXdwb3J0LWRldmljZS13aWR0aC1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjgyMzczNWY0NjVkCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC92aWV3cG9ydC9pb3MvaWdub3JlLW1pbmltdW0t
ZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdpdGgtdmlld3BvcnQtZGV2aWNlLXdpZHRoLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDQxIEBACitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoNjQwLjAwKQor
d2luZG93IHNpemU6IFszMjAsIDU0OF0KK3NxdWFyZSBzaXplOiBbMzIsIDU1XQorem9vbSBzY2Fs
ZTogMS4wMAorCitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoNzY4LjAwKQord2luZG93IHNpemU6
IFszMjAsIDU0OF0KK3NxdWFyZSBzaXplOiBbMzIsIDU1XQorem9vbSBzY2FsZTogMS4wMAorCitz
ZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoODM0LjAwKQord2luZG93IHNpemU6IFszMjAsIDU0OF0K
K3NxdWFyZSBzaXplOiBbMzIsIDU1XQorem9vbSBzY2FsZTogMS4wMAorCitzZXRNaW5pbXVtRWZm
ZWN0aXZlV2lkdGgoOTgwLjAwKQord2luZG93IHNpemU6IFszMjAsIDU0OF0KK3NxdWFyZSBzaXpl
OiBbMzIsIDU1XQorem9vbSBzY2FsZTogMS4wMAorCitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgo
MTAyNC4wMCkKK3dpbmRvdyBzaXplOiBbMzIwLCA1NDhdCitzcXVhcmUgc2l6ZTogWzMyLCA1NV0K
K3pvb20gc2NhbGU6IDEuMDAKKworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDExMTIuMDApCit3
aW5kb3cgc2l6ZTogWzMyMCwgNTQ4XQorc3F1YXJlIHNpemU6IFszMiwgNTVdCit6b29tIHNjYWxl
OiAxLjAwCisKK3NldE1pbmltdW1FZmZlY3RpdmVXaWR0aCgxMjgwLjAwKQord2luZG93IHNpemU6
IFszMjAsIDU0OF0KK3NxdWFyZSBzaXplOiBbMzIsIDU1XQorem9vbSBzY2FsZTogMS4wMAorCitz
ZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoMTMzNi4wMCkKK3dpbmRvdyBzaXplOiBbMzIwLCA1NDhd
CitzcXVhcmUgc2l6ZTogWzMyLCA1NV0KK3pvb20gc2NhbGU6IDEuMDAKKworCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3ZpZXdwb3J0L2lvcy9pZ25vcmUtbWluaW11bS1kZXZpY2Utd2lk
dGgtZm9yLXBhZ2Utd2l0aC12aWV3cG9ydC1kZXZpY2Utd2lkdGguaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3Qvdmlld3BvcnQvaW9zL2lnbm9yZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13
aXRoLXZpZXdwb3J0LWRldmljZS13aWR0aC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwLi44MDIyZDk4NTUxMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3Qvdmlld3BvcnQvaW9zL2lnbm9yZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13
aXRoLXZpZXdwb3J0LWRldmljZS13aWR0aC5odG1sCkBAIC0wLDAgKzEsNTggQEAKKzwhRE9DVFlQ
RSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIHNob3VsZElnbm9yZU1ldGFWaWV3cG9y
dD10cnVlIF0gLS0+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBj
b250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPgorICAgIDxzdHlsZT4KKyAgICAgICAgI3NxdWFy
ZSB7CisgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgICAgICB3aWR0aDog
MTB2dzsKKyAgICAgICAgICAgIGhlaWdodDogMTB2aDsKKyAgICAgICAgICAgIGJvcmRlcjogMnB4
IHNvbGlkIGJsYWNrOworICAgICAgICB9CisKKyAgICAgICAgI291dHB1dCB7CisgICAgICAgICAg
ICB3aWR0aDogMTAwJTsKKyAgICAgICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgICAgIG92
ZXJmbG93OiBzY3JvbGw7CisgICAgICAgIH0KKworICAgICAgICBib2R5IHsKKyAgICAgICAgICAg
IG1hcmdpbjogMDsKKyAgICAgICAgICAgIHdpZHRoOiAxMDAlOworICAgICAgICAgICAgaGVpZ2h0
OiAxMDAlOworICAgICAgICB9CisgICAgPC9zdHlsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CisgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgIH0KKworICAgIGFzeW5j
IGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgICAgIGNvbnN0IGFwcGVuZE91dHB1dCA9IG1lc3Nh
Z2UgPT4geworICAgICAgICAgICAgb3V0cHV0LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRl
eHROb2RlKG1lc3NhZ2UpKTsKKyAgICAgICAgICAgIG91dHB1dC5hcHBlbmRDaGlsZChkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCJiciIpKTsKKyAgICAgICAgfTsKKworICAgICAgICBmb3IgKGxldCB0
YXJnZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGggb2YgWzY0MCwgNzY4LCA4MzQsIDk4MCwgMTAyNCwg
MTExMiwgMTI4MCwgMTMzNl0pIHsKKyAgICAgICAgICAgIGFwcGVuZE91dHB1dChgc2V0TWluaW11
bUVmZmVjdGl2ZVdpZHRoKCR7dGFyZ2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoLnRvRml4ZWQoMil9
KWApOworCisgICAgICAgICAgICBhd2FpdCBVSUhlbHBlci5zZXRNaW5pbXVtRWZmZWN0aXZlV2lk
dGgodGFyZ2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKTsKKyAgICAgICAgICAgIGF3YWl0IFByb21p
c2UuYWxsKFtVSUhlbHBlci5lbnN1cmVWaXNpYmxlQ29udGVudFJlY3RVcGRhdGUoKSwgVUlIZWxw
ZXIuZW5zdXJlUHJlc2VudGF0aW9uVXBkYXRlKCldKTsKKyAgICAgICAgICAgIGFwcGVuZE91dHB1
dChgd2luZG93IHNpemU6IFske2lubmVyV2lkdGh9LCAke2lubmVySGVpZ2h0fV1gKTsKKyAgICAg
ICAgICAgIGFwcGVuZE91dHB1dChgc3F1YXJlIHNpemU6IFske3NxdWFyZS5jbGllbnRXaWR0aH0s
ICR7c3F1YXJlLmNsaWVudEhlaWdodH1dYCk7CisgICAgICAgICAgICBhcHBlbmRPdXRwdXQoYHpv
b20gc2NhbGU6ICR7KGF3YWl0IFVJSGVscGVyLnpvb21TY2FsZSgpKS50b0ZpeGVkKDIpfWApOwor
ICAgICAgICAgICAgYXBwZW5kT3V0cHV0KCIiKTsKKyAgICAgICAgfQorCisgICAgICAgIHRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0KKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKworPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InNxdWFyZSI+PC9kaXY+CisgICAg
PHByZSBpZD0ib3V0cHV0Ij48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQvaW9zL3VzZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3It
cGFnZS13aXRob3V0LXZpZXdwb3J0LW1ldGEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFz
dC92aWV3cG9ydC9pb3MvdXNlLW1pbmltdW0tZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdpdGhvdXQt
dmlld3BvcnQtbWV0YS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAuLjA2ZDkxMGUxMDUwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC92aWV3cG9ydC9pb3MvdXNlLW1pbmltdW0tZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdpdGhvdXQt
dmlld3BvcnQtbWV0YS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0MSBAQAorc2V0TWluaW11bUVm
ZmVjdGl2ZVdpZHRoKDY0MC4wMCkKK3dpbmRvdyBzaXplOiBbNjQwLCAxMDk2XQorc3F1YXJlIHNp
emU6IFs2NCwgMTEwXQorem9vbSBzY2FsZTogMC41MAorCitzZXRNaW5pbXVtRWZmZWN0aXZlV2lk
dGgoNzY4LjAwKQord2luZG93IHNpemU6IFs3NjgsIDEzMTVdCitzcXVhcmUgc2l6ZTogWzc3LCAx
MzJdCit6b29tIHNjYWxlOiAwLjQyCisKK3NldE1pbmltdW1FZmZlY3RpdmVXaWR0aCg4MzQuMDAp
Cit3aW5kb3cgc2l6ZTogWzgzNCwgMTQyOF0KK3NxdWFyZSBzaXplOiBbODMsIDE0M10KK3pvb20g
c2NhbGU6IDAuMzgKKworc2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKDk4MC4wMCkKK3dpbmRvdyBz
aXplOiBbOTgwLCAxNjc4XQorc3F1YXJlIHNpemU6IFs5OCwgMTY4XQorem9vbSBzY2FsZTogMC4z
MworCitzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoMTAyNC4wMCkKK3dpbmRvdyBzaXplOiBbMTAy
NCwgMTc1NF0KK3NxdWFyZSBzaXplOiBbMTAyLCAxNzVdCit6b29tIHNjYWxlOiAwLjMxCisKK3Nl
dE1pbmltdW1FZmZlY3RpdmVXaWR0aCgxMTEyLjAwKQord2luZG93IHNpemU6IFsxMTEyLCAxOTA0
XQorc3F1YXJlIHNpemU6IFsxMTEsIDE5MF0KK3pvb20gc2NhbGU6IDAuMjkKKworc2V0TWluaW11
bUVmZmVjdGl2ZVdpZHRoKDEyODAuMDApCit3aW5kb3cgc2l6ZTogWzEyODAsIDIxOTJdCitzcXVh
cmUgc2l6ZTogWzEyOCwgMjE5XQorem9vbSBzY2FsZTogMC4yNQorCitzZXRNaW5pbXVtRWZmZWN0
aXZlV2lkdGgoMTMzNi4wMCkKK3dpbmRvdyBzaXplOiBbMTMzNiwgMjI4OF0KK3NxdWFyZSBzaXpl
OiBbMTM0LCAyMjldCit6b29tIHNjYWxlOiAwLjI0CisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC92aWV3cG9ydC9pb3MvdXNlLW1pbmltdW0tZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdp
dGhvdXQtdmlld3BvcnQtbWV0YS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC92aWV3cG9ydC9pb3Mv
dXNlLW1pbmltdW0tZGV2aWNlLXdpZHRoLWZvci1wYWdlLXdpdGhvdXQtdmlld3BvcnQtbWV0YS5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5mMjA0M2Q0ZDNjZQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvdmlld3BvcnQvaW9zL3VzZS1taW5p
bXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRob3V0LXZpZXdwb3J0LW1ldGEuaHRtbApAQCAt
MCwwICsxLDU3IEBACis8IURPQ1RZUEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBz
aG91bGRJZ25vcmVNZXRhVmlld3BvcnQ9dHJ1ZSBdIC0tPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8
c3R5bGU+CisgICAgICAgICNzcXVhcmUgeworICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRl
OworICAgICAgICAgICAgd2lkdGg6IDEwdnc7CisgICAgICAgICAgICBoZWlnaHQ6IDEwdmg7Cisg
ICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjazsKKyAgICAgICAgfQorCisgICAgICAg
ICNvdXRwdXQgeworICAgICAgICAgICAgd2lkdGg6IDEwMCU7CisgICAgICAgICAgICBoZWlnaHQ6
IDEwMCU7CisgICAgICAgICAgICBvdmVyZmxvdzogc2Nyb2xsOworICAgICAgICB9CisKKyAgICAg
ICAgYm9keSB7CisgICAgICAgICAgICBtYXJnaW46IDA7CisgICAgICAgICAgICB3aWR0aDogMTAw
JTsKKyAgICAgICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+Cisg
ICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0
PgorICAgIDxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUo
KTsKKyAgICB9CisKKyAgICBhc3luYyBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgICBjb25z
dCBhcHBlbmRPdXRwdXQgPSBtZXNzYWdlID0+IHsKKyAgICAgICAgICAgIG91dHB1dC5hcHBlbmRD
aGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShtZXNzYWdlKSk7CisgICAgICAgICAgICBvdXRw
dXQuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnIiKSk7CisgICAgICAgIH07
CisKKyAgICAgICAgZm9yIChsZXQgdGFyZ2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoIG9mIFs2NDAs
IDc2OCwgODM0LCA5ODAsIDEwMjQsIDExMTIsIDEyODAsIDEzMzZdKSB7CisgICAgICAgICAgICBh
cHBlbmRPdXRwdXQoYHNldE1pbmltdW1FZmZlY3RpdmVXaWR0aCgke3RhcmdldE1pbmltdW1FZmZl
Y3RpdmVXaWR0aC50b0ZpeGVkKDIpfSlgKTsKKworICAgICAgICAgICAgYXdhaXQgVUlIZWxwZXIu
c2V0TWluaW11bUVmZmVjdGl2ZVdpZHRoKHRhcmdldE1pbmltdW1FZmZlY3RpdmVXaWR0aCk7Cisg
ICAgICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChbVUlIZWxwZXIuZW5zdXJlVmlzaWJsZUNvbnRl
bnRSZWN0VXBkYXRlKCksIFVJSGVscGVyLmVuc3VyZVByZXNlbnRhdGlvblVwZGF0ZSgpXSk7Cisg
ICAgICAgICAgICBhcHBlbmRPdXRwdXQoYHdpbmRvdyBzaXplOiBbJHtpbm5lcldpZHRofSwgJHtp
bm5lckhlaWdodH1dYCk7CisgICAgICAgICAgICBhcHBlbmRPdXRwdXQoYHNxdWFyZSBzaXplOiBb
JHtzcXVhcmUuY2xpZW50V2lkdGh9LCAke3NxdWFyZS5jbGllbnRIZWlnaHR9XWApOworICAgICAg
ICAgICAgYXBwZW5kT3V0cHV0KGB6b29tIHNjYWxlOiAkeyhhd2FpdCBVSUhlbHBlci56b29tU2Nh
bGUoKSkudG9GaXhlZCgyKX1gKTsKKyAgICAgICAgICAgIGFwcGVuZE91dHB1dCgiIik7CisgICAg
ICAgIH0KKworICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9CisgICAgPC9z
Y3JpcHQ+Cis8L2hlYWQ+CisKKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlk
PSJzcXVhcmUiPjwvZGl2PgorICAgIDxwcmUgaWQ9Im91dHB1dCI+PC9wcmU+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKaW5kZXggZTZlZTllZDQ3OTEuLjBiNmFkZTgwZDdjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsNDQgQEAKKzIwMTgtMTItMDQgIFlvbmdqdW4gWmhhbmcgIDx5b25nanVuX3po
YW5nQGFwcGxlLmNvbT4KKworICAgICAgICBXZSBzaG91bGQgaWdub3JlIG1pbmltdW1FZmZlY3Rp
dmVEZXZpY2VXaWR0aCBpZiB0aGUgcGFnZSBzcGVjaWZpZXMgZGV2aWNlLXdpZHRoIGluIHZpZXdw
b3J0IG1ldGEtdGFnLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTkyMzc3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NjM2NDIwNj4KKworICAgICAg
ICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorCisgICAgICAgIElmIHRoZSBwYWdlIHNwZWNpZmll
cyB3aWR0aD1kZXZpY2Utd2lkdGggb3IgaW5pdGlhbC1zY2FsZT0xIGluIHRoZSB2aWV3cG9ydCBt
ZXRhIHRhZywgd2Ugc2hvdWxkIHVzZSB0aGUKKyAgICAgICAgbmF0aXZlIGRldmljZSB3aWR0aCBh
bmQgaWdub3JlIHRoZSBtaW5pbXVtIGVmZmVjdGl2ZSBkZXZpY2Ugd2lkdGggaW4gVmlld3BvcnRD
b25maWd1cmF0aW9uLiBUaGUgcGF0Y2gKKyAgICAgICAgYWxzbyBpbnRyb2R1Y2VzIHNjYWxhYmxl
TmF0aXZlV2VicGFnZVBhcmFtZXRlcnMoKSB3aGljaCB1c2VzIHRoZSBkZXZpY2Ugd2lkdGggYXMg
ZGVmYXVsdCBhbmQgYWxzbyBhbGxvd3MgdGhlIHBhZ2UKKyAgICAgICAgdG8gc2hyaW5rLXRvLWZp
dC4gSWYgYSBwYWdlIGRvZXNuJ3QgaGF2ZSB2aWV3cG9ydCBtZXRhIHRhZywgb3IgaWYgdGhlIHdp
ZHRoIGFyZ3VtZW50IGlzbid0IGRldmljZS13aWR0aAorICAgICAgICBhbmQgdGhlIGluaXRpYWwg
c2NhbGUgaXNuJ3QgMSwgd2Ugd2lsbCB1c2Ugc2NhbGFibGVOYXRpdmVXZWJwYWdlUGFyYW1ldGVy
cygpIGFzIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24uCisKKyAgICAgICAgVGVzdHM6IGZhc3Qv
dmlld3BvcnQvaW9zL2lnbm9yZS1taW5pbXVtLWRldmljZS13aWR0aC1mb3ItcGFnZS13aXRoLXZp
ZXdwb3J0LWRldmljZS13aWR0aC5odG1sCisgICAgICAgICAgICAgICBmYXN0L3ZpZXdwb3J0L2lv
cy91c2UtbWluaW11bS1kZXZpY2Utd2lkdGgtZm9yLXBhZ2Utd2l0aG91dC12aWV3cG9ydC1tZXRh
Lmh0bWwKKworICAgICAgICAqIHBhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9uLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlZpZXdwb3J0Q29uZmlndXJhdGlvbjo6dXBkYXRlRGVmYXVsdENvbmZpZ3Vy
YXRpb24pOiBwaWNrIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gYmFzZWQgb24KKyAgICAgICAg
ICAgIHRoZSBwYWdlJ3Mgdmlld3BvcnQgYXJndW1lbnRzLiBBbHNvLCB3ZSB3aWxsIGFsd2F5cyBm
YWxsIGJhY2sgdG8gc2NhbGFibGVOYXRpdmVXZWJwYWdlUGFyYW1ldGVycygpIGlmIHdlCisgICAg
ICAgICAgICBjYW4gaWdub3JlIHNjYWxpbmcgY29uc3RyYWludHMuCisgICAgICAgIChXZWJDb3Jl
OjpWaWV3cG9ydENvbmZpZ3VyYXRpb246OnNldFZpZXdwb3J0QXJndW1lbnRzKTogV2hlbiBwYWdl
IHNlbmRzIHVzIG5ldyBWaWV3cG9ydEFyZ3VtZW50cywgcGljaworICAgICAgICAgICAgdXAgdGhl
IGNvcnJlcG9uc2RpbmcgZGVmYXVsdCBjb25maWd1cmF0aW9uIGJlZm9yZSB1cGRhdGluZyB0aGUg
Y29uZmlndXJhdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OlZpZXdwb3J0Q29uZmlndXJhdGlvbjo6
c2V0Q2FuSWdub3JlU2NhbGluZ0NvbnN0cmFpbnRzKTogV2hlbiBtX2Nhbklnbm9yZVNjYWxpbmdD
b25zdHJhaW50cyBpcworICAgICAgICAgICAgY2hhbmdlZCwgdHJ5IHRvIHBpY2sgdXAgdGhlIGNv
cnJlcG9uc2RpbmcgZGVmYXVsdCBjb25maWd1cmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6Vmll
d3BvcnRDb25maWd1cmF0aW9uOjpzY2FsYWJsZU5hdGl2ZVdlYnBhZ2VQYXJhbWV0ZXJzKTogQWRk
IGEgbmV3IGRlZmF1bHQgc2V0IG9mIHZpZXdwb3J0IFBhcmFtZXRlcnMKKyAgICAgICAgICAgIHRo
aXMgaXMgdmVyeSBjbG9zZSB0byBuYXRpdmVXZWJwYWdlUGFyYW1ldGVycygpIGV4Y3BldCB0aGF0
IGl0IGFsbG93cyBzaHJpbmsgdG8gZml0IGFuZCBpdHMgbWluaW11bSBzY2FsZQorICAgICAgICAg
ICAgaXMgMC4yNS4gV2Ugd2lsbCB1c2UgdGhpcyBQYXJhbWV0ZXJzIGZvciBwYWdlcyB0aGF0IGRv
ZXNuJ3QgaGF2ZSB2aWV3cG9ydCBtZXRhIHRhZzsgb3IgdGhlIHdpZHRoIGlzCisgICAgICAgICAg
ICBub3QgZGV2aWNlLXdpZHRoIGFuZCBpbml0aWFsIHNjYWxlIGlzIG5vdCAxLgorICAgICAgICAo
V2ViQ29yZTo6Vmlld3BvcnRDb25maWd1cmF0aW9uOjp1cGRhdGVDb25maWd1cmF0aW9uKTogSWYg
dGhlIHBhZ2UncyB2aWV3cG9ydCBhcmd1bWVudCBkb2Vzbid0IG92ZXJyaWRlCisgICAgICAgICAg
ICB0aGUgZGVmYXVsdCB3aWR0aCwgdXNlIHRoZSBtX21pbmltdW1MYXlvdXRTaXplLndpZHRoKCku
CisgICAgICAgICogcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uaDoKKyAgICAgICAgKFdlYkNv
cmU6OlZpZXdwb3J0Q29uZmlndXJhdGlvbjo6c2hvdWxkSWdub3JlTWluaW11bUVmZmVjdGl2ZURl
dmljZVdpZHRoIGNvbnN0KTogQSBoZWxwZXIgbWV0aG9kIHRvIHRlbGwKKyAgICAgICAgICAgIGlm
IHdlIHNob3VsZCBhdm9pZCB1c2luZyBtaW5pbXVtIGVmZmVjdGl2ZSBkZXZpY2Ugd2lkdGguCisg
ICAgICAgIChXZWJDb3JlOjpWaWV3cG9ydENvbmZpZ3VyYXRpb246OmNhbk92ZXJyaWRlQ29uZmln
dXJhdGlvblBhcmFtZXRlcnMgY29uc3QpOiBJZiB3ZSBhcmUgdXNpbmcgYSBkZWZhdWx0CisgICAg
ICAgICAgICBjb25maWd1cmF0aW9uIHRoYXQgaXMgbmVpdGhlciBuYXRpdmVXZWJwYWdlUGFyYW1l
dGVycygpIG5vciBzY2FsYWJsZU5hdGl2ZVdlYnBhZ2VQYXJhbWV0ZXJzKCksIGRvbid0IG92ZXJy
aWRlCisgICAgICAgICAgICBpdC4KKyAgICAgICAgKFdlYkNvcmU6OlZpZXdwb3J0Q29uZmlndXJh
dGlvbjo6bWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoIGNvbnN0KTogQWRkIGEgaGVscGVyIG1l
dGhvZCB0byByZXR1cm4gbWluaW11bQorICAgICAgICAgICAgZWZmZWN0aXZlIGRldmljZSB3aWR0
aCBiYXNlZCBvbiBzaG91bGRJZ25vcmVNaW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGgoKS4KKyAg
ICAgICAgKFdlYkNvcmU6OlZpZXdwb3J0Q29uZmlndXJhdGlvbjo6ZWZmZWN0aXZlTGF5b3V0U2l6
ZVNjYWxlRmFjdG9yIGNvbnN0KTogVXNlIG1pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0aCgpLgor
CiAyMDE4LTEyLTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAg
UmVncmVzc2lvbihyMjM4ODE3KSBQU09OIFBhZ2UgQ2FjaGUgQVBJIHRlc3RzIGFyZSBmYWlsaW5n
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5jcHAKaW5kZXgg
NWNjODE0MDg3YjYuLmQ0YmY2YzJiY2Y5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9WaWV3
cG9ydENvbmZpZ3VyYXRpb24uY3BwCkBAIC0xNDMsNiArMTQzLDI3IEBAIGJvb2wgVmlld3BvcnRD
b25maWd1cmF0aW9uOjpzZXREaXNhYmxlZEFkYXB0YXRpb25zKGNvbnN0IE9wdGlvblNldDxEaXNh
YmxlZEFkYXB0CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgVmlld3BvcnRDb25maWd1cmF0
aW9uOjpjYW5PdmVycmlkZUNvbmZpZ3VyYXRpb25QYXJhbWV0ZXJzKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9kZWZhdWx0Q29uZmlndXJhdGlvbiA9PSBWaWV3cG9ydENvbmZpZ3VyYXRpb246Om5h
dGl2ZVdlYnBhZ2VQYXJhbWV0ZXJzKCkgfHwgbV9kZWZhdWx0Q29uZmlndXJhdGlvbiA9PSBWaWV3
cG9ydENvbmZpZ3VyYXRpb246OnNjYWxhYmxlTmF0aXZlV2VicGFnZVBhcmFtZXRlcnMoKTsKK30K
Kwordm9pZCBWaWV3cG9ydENvbmZpZ3VyYXRpb246OnVwZGF0ZURlZmF1bHRDb25maWd1cmF0aW9u
KCkKK3sKKyAgICBpZiAoIWNhbk92ZXJyaWRlQ29uZmlndXJhdGlvblBhcmFtZXRlcnMoKSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgaWYgKG1fY2FuSWdub3JlU2NhbGluZ0NvbnN0cmFpbnRzKSB7
CisgICAgICAgIG1fZGVmYXVsdENvbmZpZ3VyYXRpb24gPSBWaWV3cG9ydENvbmZpZ3VyYXRpb246
OnNjYWxhYmxlTmF0aXZlV2VicGFnZVBhcmFtZXRlcnMoKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKworICAgIGlmIChzaG91bGRJZ25vcmVNaW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGgoKSkK
KyAgICAgICAgbV9kZWZhdWx0Q29uZmlndXJhdGlvbiA9IFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6
bmF0aXZlV2VicGFnZVBhcmFtZXRlcnMoKTsKKyAgICBlbHNlCisgICAgICAgIG1fZGVmYXVsdENv
bmZpZ3VyYXRpb24gPSBWaWV3cG9ydENvbmZpZ3VyYXRpb246OnNjYWxhYmxlTmF0aXZlV2VicGFn
ZVBhcmFtZXRlcnMoKTsKK30KKwogYm9vbCBWaWV3cG9ydENvbmZpZ3VyYXRpb246OnNldFZpZXdw
b3J0QXJndW1lbnRzKGNvbnN0IFZpZXdwb3J0QXJndW1lbnRzJiB2aWV3cG9ydEFyZ3VtZW50cykK
IHsKICAgICBpZiAobV92aWV3cG9ydEFyZ3VtZW50cyA9PSB2aWV3cG9ydEFyZ3VtZW50cykKQEAg
LTE1MSw2ICsxNzIsNyBAQCBib29sIFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6c2V0Vmlld3BvcnRB
cmd1bWVudHMoY29uc3QgVmlld3BvcnRBcmd1bWVudHMmIHZpZXdwbwogICAgIExPR19XSVRIX1NU
UkVBTShWaWV3cG9ydHMsIHN0cmVhbSA8PCAiVmlld3BvcnRDb25maWd1cmF0aW9uOjpzZXRWaWV3
cG9ydEFyZ3VtZW50cyAiIDw8IHZpZXdwb3J0QXJndW1lbnRzKTsKICAgICBtX3ZpZXdwb3J0QXJn
dW1lbnRzID0gdmlld3BvcnRBcmd1bWVudHM7CiAKKyAgICB1cGRhdGVEZWZhdWx0Q29uZmlndXJh
dGlvbigpOwogICAgIHVwZGF0ZU1pbmltdW1MYXlvdXRTaXplKCk7CiAgICAgdXBkYXRlQ29uZmln
dXJhdGlvbigpOwogICAgIHJldHVybiB0cnVlOwpAQCAtMTYyLDYgKzE4NCw3IEBAIGJvb2wgVmll
d3BvcnRDb25maWd1cmF0aW9uOjpzZXRDYW5JZ25vcmVTY2FsaW5nQ29uc3RyYWludHMoYm9vbCBj
YW5JZ25vcmVTY2FsaW5nCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKICAgICBtX2Nhbkln
bm9yZVNjYWxpbmdDb25zdHJhaW50cyA9IGNhbklnbm9yZVNjYWxpbmdDb25zdHJhaW50czsKKyAg
ICB1cGRhdGVEZWZhdWx0Q29uZmlndXJhdGlvbigpOwogICAgIHVwZGF0ZUNvbmZpZ3VyYXRpb24o
KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KQEAgLTMyNSw2ICszNDgsMTQgQEAgVmlld3BvcnRDb25m
aWd1cmF0aW9uOjpQYXJhbWV0ZXJzIFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6bmF0aXZlV2VicGFn
ZVBhcmFtZXRlcnMKICAgICByZXR1cm4gcGFyYW1ldGVyczsKIH0KIAorVmlld3BvcnRDb25maWd1
cmF0aW9uOjpQYXJhbWV0ZXJzIFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6c2NhbGFibGVOYXRpdmVX
ZWJwYWdlUGFyYW1ldGVycygpCit7CisgICAgUGFyYW1ldGVycyBwYXJhbWV0ZXJzID0gVmlld3Bv
cnRDb25maWd1cmF0aW9uOjpuYXRpdmVXZWJwYWdlUGFyYW1ldGVycygpOworICAgIHBhcmFtZXRl
cnMuYWxsb3dzU2hyaW5rVG9GaXQgPSB0cnVlOworICAgIHBhcmFtZXRlcnMubWluaW11bVNjYWxl
ID0gMC4yNTsKKyAgICByZXR1cm4gcGFyYW1ldGVyczsKK30KKwogVmlld3BvcnRDb25maWd1cmF0
aW9uOjpQYXJhbWV0ZXJzIFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6d2VicGFnZVBhcmFtZXRlcnMo
KQogewogICAgIFBhcmFtZXRlcnMgcGFyYW1ldGVyczsKQEAgLTQ0OCw2ICs0NzksOSBAQCB2b2lk
IFZpZXdwb3J0Q29uZmlndXJhdGlvbjo6dXBkYXRlQ29uZmlndXJhdGlvbigpCiAgICAgZWxzZSBp
ZiAoYm9vbGVhblZpZXdwb3J0QXJndW1lbnRJc1NldChtX3ZpZXdwb3J0QXJndW1lbnRzLnNocmlu
a1RvRml0KSkKICAgICAgICAgbV9jb25maWd1cmF0aW9uLmFsbG93c1Nocmlua1RvRml0ID0gbV92
aWV3cG9ydEFyZ3VtZW50cy5zaHJpbmtUb0ZpdCAhPSAwLjsKIAorICAgIGlmIChjYW5PdmVycmlk
ZUNvbmZpZ3VyYXRpb25QYXJhbWV0ZXJzKCkgJiYgIXZpZXdwb3J0QXJndW1lbnRzT3ZlcnJpZGVz
V2lkdGgpCisgICAgICAgIG1fY29uZmlndXJhdGlvbi53aWR0aCA9IG1fbWluaW11bUxheW91dFNp
emUud2lkdGgoKTsKKwogICAgIG1fY29uZmlndXJhdGlvbi5hdm9pZHNVbnNhZmVBcmVhID0gbV92
aWV3cG9ydEFyZ3VtZW50cy52aWV3cG9ydEZpdCAhPSBWaWV3cG9ydEZpdDo6Q292ZXI7CiAgICAg
bV9jb25maWd1cmF0aW9uLmluaXRpYWxTY2FsZUlnbm9yaW5nTGF5b3V0U2NhbGVGYWN0b3IgPSBt
X2NvbmZpZ3VyYXRpb24uaW5pdGlhbFNjYWxlOwogICAgIGZsb2F0IGVmZmVjdGl2ZUxheW91dFNj
YWxlID0gZWZmZWN0aXZlTGF5b3V0U2l6ZVNjYWxlRmFjdG9yKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1ZpZXdwb3J0Q29uZmlndXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uaAppbmRleCA0OTg3YmUyYzY0NS4uNGRhNzY1YWYy
MGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVmlld3BvcnRDb25maWd1cmF0aW9u
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9WaWV3cG9ydENvbmZpZ3VyYXRpb24uaApAQCAt
MTAzLDYgKzEwMyw3IEBAIHB1YmxpYzoKIAogICAgIC8vIE1hdGNoZXMgYSB3aWR0aD1kZXZpY2Ut
d2lkdGgsIGluaXRpYWwtc2NhbGU9MSB2aWV3cG9ydC4KICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0
aWMgUGFyYW1ldGVycyBuYXRpdmVXZWJwYWdlUGFyYW1ldGVycygpOworICAgIHN0YXRpYyBQYXJh
bWV0ZXJzIHNjYWxhYmxlTmF0aXZlV2VicGFnZVBhcmFtZXRlcnMoKTsKICAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUGFyYW1ldGVycyB3ZWJwYWdlUGFyYW1ldGVycygpOwogICAgIFdFQkNPUkVf
RVhQT1JUIHN0YXRpYyBQYXJhbWV0ZXJzIHRleHREb2N1bWVudFBhcmFtZXRlcnMoKTsKICAgICBX
RUJDT1JFX0VYUE9SVCBzdGF0aWMgUGFyYW1ldGVycyBpbWFnZURvY3VtZW50UGFyYW1ldGVycygp
OwpAQCAtMTI2LDYgKzEyNywyOSBAQCBwcml2YXRlOgogICAgIGJvb2wgc2hvdWxkSWdub3JlU2Nh
bGluZ0NvbnN0cmFpbnRzKCkgY29uc3Q7CiAgICAgYm9vbCBzaG91bGRJZ25vcmVWZXJ0aWNhbFNj
YWxpbmdDb25zdHJhaW50cygpIGNvbnN0OwogICAgIGJvb2wgc2hvdWxkSWdub3JlSG9yaXpvbnRh
bFNjYWxpbmdDb25zdHJhaW50cygpIGNvbnN0OworICAgIHZvaWQgdXBkYXRlRGVmYXVsdENvbmZp
Z3VyYXRpb24oKTsKKyAgICBib29sIGNhbk92ZXJyaWRlQ29uZmlndXJhdGlvblBhcmFtZXRlcnMo
KSBjb25zdDsKKworICAgIGNvbnN0ZXhwciBib29sIHNob3VsZElnbm9yZU1pbmltdW1FZmZlY3Rp
dmVEZXZpY2VXaWR0aCgpIGNvbnN0CisgICAgeworICAgICAgICBpZiAobV9jYW5JZ25vcmVTY2Fs
aW5nQ29uc3RyYWludHMpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgICAgICBpZiAo
bV92aWV3cG9ydEFyZ3VtZW50cyA9PSBWaWV3cG9ydEFyZ3VtZW50cygpKQorICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOworCisgICAgICAgIGlmIChtX3ZpZXdwb3J0QXJndW1lbnRzLndpZHRoID09
IFZpZXdwb3J0QXJndW1lbnRzOjpWYWx1ZURldmljZVdpZHRoIHx8IG1fdmlld3BvcnRBcmd1bWVu
dHMuem9vbSA9PSAxLikKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworCisgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICB9CisKKyAgICBjb25zdGV4cHIgZG91YmxlIG1pbmltdW1FZmZlY3RpdmVE
ZXZpY2VXaWR0aCgpIGNvbnN0CisgICAgeworICAgICAgICBpZiAoc2hvdWxkSWdub3JlTWluaW11
bUVmZmVjdGl2ZURldmljZVdpZHRoKCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAg
cmV0dXJuIG1fbWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoOworICAgIH0KIAogICAgIGNvbnN0
ZXhwciBkb3VibGUgZm9yY2VBbHdheXNVc2VyU2NhbGFibGVNYXhpbXVtU2NhbGUoKSBjb25zdAog
ICAgIHsKQEAgLTE0MSw5ICsxNjUsOSBAQCBwcml2YXRlOgogCiAgICAgY29uc3RleHByIGRvdWJs
ZSBlZmZlY3RpdmVMYXlvdXRTaXplU2NhbGVGYWN0b3IoKSBjb25zdAogICAgIHsKLSAgICAgICAg
aWYgKCFtX3ZpZXdMYXlvdXRTaXplLndpZHRoKCkgfHwgIW1fbWluaW11bUVmZmVjdGl2ZURldmlj
ZVdpZHRoKQorICAgICAgICBpZiAoIW1fdmlld0xheW91dFNpemUud2lkdGgoKSB8fCAhbWluaW11
bUVmZmVjdGl2ZURldmljZVdpZHRoKCkpCiAgICAgICAgICAgICByZXR1cm4gbV9sYXlvdXRTaXpl
U2NhbGVGYWN0b3I7Ci0gICAgICAgIHJldHVybiBtX2xheW91dFNpemVTY2FsZUZhY3RvciAqIG1f
dmlld0xheW91dFNpemUud2lkdGgoKSAvIHN0ZDo6bWF4PGRvdWJsZT4obV9taW5pbXVtRWZmZWN0
aXZlRGV2aWNlV2lkdGgsIG1fdmlld0xheW91dFNpemUud2lkdGgoKSk7CisgICAgICAgIHJldHVy
biBtX2xheW91dFNpemVTY2FsZUZhY3RvciAqIG1fdmlld0xheW91dFNpemUud2lkdGgoKSAvIHN0
ZDo6bWF4PGRvdWJsZT4obWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoKCksIG1fdmlld0xheW91
dFNpemUud2lkdGgoKSk7CiAgICAgfQogCiAgICAgdm9pZCB1cGRhdGVNaW5pbXVtTGF5b3V0U2l6
ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwppbmRleCA1NWRmZjFjMDE5YS4uYWYwMTY3OTZmOGUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTkgQEAKKzIwMTgtMTItMDQgIFlvbmdqdW4gWmhhbmcgIDx5b25nanVuX3poYW5nQGFw
cGxlLmNvbT4KKworICAgICAgICBXZSBzaG91bGQgaWdub3JlIG1pbmltdW1FZmZlY3RpdmVEZXZp
Y2VXaWR0aCBpZiB0aGUgcGFnZSBzcGVjaWZpZXMgZGV2aWNlLXdpZHRoIGluIHZpZXdwb3J0IG1l
dGEtdGFnLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTkyMzc3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NjM2NDIwNj4KKworICAgICAgICBSZXZp
ZXdlZCBieSBUaW0gSG9ydG9uLgorCisgICAgICAgIFNpbmNlIHdlIGFyZSB1c2luZyBwYWdlJ3Mg
dmlld3BvcnQgYXJndW1lbnRzIHRvIGRlY2lkZSB0aGUgZGVmYXVsdCB2aWV3cG9ydCBwYXJhbWV0
ZXJzIGFuZAorICAgICAgICB3aGV0aGVyIHdlIGNhbiB1c2UgbWluaW51bSBlZmZlY3RpdmUgZGV2
aWNlIHdpZHRoLCB3ZSBzaG91bGQgYWx3YXlzIGNhbGwgc2V0Vmlld3BvcnRBcmd1bWVudHMoKQor
ICAgICAgICByZWdhcmRsZXNzIG9mIHNob3VsZElnbm9yZU1ldGFWaWV3cG9ydCBzZXR0aW5ncy4K
KworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZTo6dmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKTogQWx3YXlzIGNhbGwg
c2V0Vmlld3BvcnRBcmd1bWVudHMoKS4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZGlkQ29t
bWl0TG9hZCk6IERpdHRvLgorCiAyMDE4LTEyLTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBs
ZS5jb20+CiAKICAgICAgICAgUmVncmVzc2lvbihyMjM4ODE3KSBQU09OIFBhZ2UgQ2FjaGUgQVBJ
IHRlc3RzIGFyZSBmYWlsaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCmluZGV4IGFjNDc1MTUyZDc0Li42ZjJjYTFmNTA5MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTE5MjYsNyArMTkyNiw3IEBA
IHZvaWQgV2ViUGFnZTo6ZGlzYWJsZWRBZGFwdGF0aW9uc0RpZENoYW5nZShjb25zdCBPcHRpb25T
ZXQ8RGlzYWJsZWRBZGFwdGF0aW9ucz4mCiB2b2lkIFdlYlBhZ2U6OnZpZXdwb3J0UHJvcGVydGll
c0RpZENoYW5nZShjb25zdCBWaWV3cG9ydEFyZ3VtZW50cyYgdmlld3BvcnRBcmd1bWVudHMpCiB7
CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBpZiAoIW1fcGFnZS0+c2V0dGluZ3MoKS5z
aG91bGRJZ25vcmVNZXRhVmlld3BvcnQoKSAmJiBtX3ZpZXdwb3J0Q29uZmlndXJhdGlvbi5zZXRW
aWV3cG9ydEFyZ3VtZW50cyh2aWV3cG9ydEFyZ3VtZW50cykpCisgICAgaWYgKG1fdmlld3BvcnRD
b25maWd1cmF0aW9uLnNldFZpZXdwb3J0QXJndW1lbnRzKHZpZXdwb3J0QXJndW1lbnRzKSkKICAg
ICAgICAgdmlld3BvcnRDb25maWd1cmF0aW9uQ2hhbmdlZCgpOwogI2VuZGlmCiAKQEAgLTU1NDEs
NyArNTU0MSw3IEBAIHZvaWQgV2ViUGFnZTo6ZGlkQ29tbWl0TG9hZChXZWJGcmFtZSogZnJhbWUp
CiAgICAgaWYgKG1fdmlld3BvcnRDb25maWd1cmF0aW9uLnNldENvbnRlbnRzU2l6ZShjb3JlRnJh
bWUtPnZpZXcoKS0+Y29udGVudHNTaXplKCkpKQogICAgICAgICB2aWV3cG9ydENoYW5nZWQgPSB0
cnVlOwogCi0gICAgaWYgKCFtX3BhZ2UtPnNldHRpbmdzKCkuc2hvdWxkSWdub3JlTWV0YVZpZXdw
b3J0KCkgJiYgbV92aWV3cG9ydENvbmZpZ3VyYXRpb24uc2V0Vmlld3BvcnRBcmd1bWVudHMoY29y
ZUZyYW1lLT5kb2N1bWVudCgpLT52aWV3cG9ydEFyZ3VtZW50cygpKSkKKyAgICBpZiAobV92aWV3
cG9ydENvbmZpZ3VyYXRpb24uc2V0Vmlld3BvcnRBcmd1bWVudHMoY29yZUZyYW1lLT5kb2N1bWVu
dCgpLT52aWV3cG9ydEFyZ3VtZW50cygpKSkKICAgICAgICAgdmlld3BvcnRDaGFuZ2VkID0gdHJ1
ZTsKIAogICAgIGlmICh2aWV3cG9ydENoYW5nZWQpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>