<?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>200668</bug_id>
          
          <creation_ts>2019-08-13 06:44:12 -0700</creation_ts>
          <short_desc>Event region collection should take clipping into account</short_desc>
          <delta_ts>2019-08-13 12:26:29 -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>Scrolling</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="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1560765</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2019-08-13 06:44:12 -0700</bug_when>
    <thetext>Similar to paint.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560766</commentid>
    <comment_count>1</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2019-08-13 06:44:29 -0700</bug_when>
    <thetext>&lt;rdar://problem/53826561&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560771</commentid>
    <comment_count>2</comment_count>
      <attachid>376161</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2019-08-13 06:58:42 -0700</bug_when>
    <thetext>Created attachment 376161
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560850</commentid>
    <comment_count>3</comment_count>
      <attachid>376161</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-08-13 10:49:07 -0700</bug_when>
    <thetext>Comment on attachment 376161
patch

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

&gt; Source/WebCore/rendering/EventRegion.cpp:63
&gt; +    m_clipStack.removeLast();

If we have mismatched push/pop, this will do shrink(size() - 1); which will underflow and create a huge vector and probably crash. I think we should be defensive here and check for m_clipStack not being empty.

This is especially true since we don&apos;t have save/restore, so you&apos;re doing manual push/pop.

&gt; Source/WebCore/rendering/RenderBox.cpp:1821
&gt; +    if (paintInfo.phase == PaintPhase::EventRegion)
&gt; +        paintInfo.eventRegionContext-&gt;popClip();
&gt; +
&gt;      paintInfo.context().restore();

This is a manual pop, but the painting code is doing a save/restore. Maybe in future it would be better to implement save/restore for the event region context.

If I&apos;m changing painting code in future, it&apos;s going to be really hard to know how to change the event region code.

Also, there may be other code paths that save/clip/restore that need to also do something with the event region.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560871</commentid>
    <comment_count>4</comment_count>
      <attachid>376185</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2019-08-13 11:31:12 -0700</bug_when>
    <thetext>Created attachment 376185
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560897</commentid>
    <comment_count>5</comment_count>
      <attachid>376185</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-13 12:26:28 -0700</bug_when>
    <thetext>Comment on attachment 376185
patch

Clearing flags on attachment: 376185

Committed r248604: &lt;https://trac.webkit.org/changeset/248604&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560898</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-13 12:26:29 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376161</attachid>
            <date>2019-08-13 06:58:42 -0700</date>
            <delta_ts>2019-08-13 11:31:12 -0700</delta_ts>
            <desc>patch</desc>
            <filename>touch-action-clip-2.patch</filename>
            <type>text/plain</type>
            <size>12014</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0ODU5MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDE5LTA4LTEzICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBFdmVudCByZWdpb24gY29sbGVj
dGlvbiBzaG91bGQgdGFrZSBjbGlwcGluZyBpbnRvIGFjY291bnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMDY2OAorICAgICAgICA8cmRhcjovL3By
b2JsZW0vNTM4MjY1NjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGVzdDogcG9pbnRlcmV2ZW50cy9pb3MvdG91Y2gtYWN0aW9uLXJlZ2lvbi1jbGlw
LWFuZC10cmFuc2Zvcm0uaHRtbAorCisgICAgICAgICogcmVuZGVyaW5nL0V2ZW50UmVnaW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50UmVnaW9uQ29udGV4dDo6cHVzaENsaXApOgorICAg
ICAgICAoV2ViQ29yZTo6RXZlbnRSZWdpb25Db250ZXh0Ojpwb3BDbGlwKToKKworICAgICAgICBN
YWludGFpbiBjbGlwIHJlY3Qgc3RhY2suCisKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50UmVnaW9u
Q29udGV4dDo6dW5pdGUpOgorCisgICAgICAgIEFwcGx5IGJvdGggdHJhbnNmb3JtcyBhbmQgY2xp
cHBpbmcuCisKKyAgICAgICAgKiByZW5kZXJpbmcvRXZlbnRSZWdpb24uaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCb3gu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpwdXNoQ29udGVudHNDbGlwKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6cG9wQ29udGVudHNDbGlwKToKKworICAgICAgICBV
cGRhdGUgY2xpcCBmb3Igbm9uLXNlbGYtcGFpbnRpbmcgbGF5ZXJzLgorCisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlckxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjpj
bGlwVG9SZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjpyZXN0b3JlQ2xpcCk6
CisKKyAgICAgICAgVXBkYXRlIGNsaXAgZm9yIHNlbGYtcGFpbnRpbmcgbGF5ZXJzLgorCiAyMDE5
LTA4LTEzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBCbG9i
IHJlZ2lzdHJpZXMgc2hvdWxkIGJlIGtleWVkIGJ5IHNlc3Npb24gSURzCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvRXZlbnRSZWdpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9FdmVudFJlZ2lvbi5jcHAJKHJldmlzaW9uIDI0ODU5MSkKKysrIFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9FdmVudFJlZ2lvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTQ4LDEyICs0OCwzNCBAQCB2b2lkIEV2ZW50UmVnaW9uQ29udGV4dDo6cG9wVHJhbnNmb3JtKCkK
ICAgICBtX3RyYW5zZm9ybVN0YWNrLnJlbW92ZUxhc3QoKTsKIH0KIAordm9pZCBFdmVudFJlZ2lv
bkNvbnRleHQ6OnB1c2hDbGlwKGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KQoreworICAgIGF1dG8g
dHJhbnNmb3JtZWRDbGlwID0gbV90cmFuc2Zvcm1TdGFjay5pc0VtcHR5KCkgPyBjbGlwUmVjdCA6
IG1fdHJhbnNmb3JtU3RhY2subGFzdCgpLm1hcFJlY3QoY2xpcFJlY3QpOworCisgICAgaWYgKG1f
Y2xpcFN0YWNrLmlzRW1wdHkoKSkKKyAgICAgICAgbV9jbGlwU3RhY2suYXBwZW5kKHRyYW5zZm9y
bWVkQ2xpcCk7CisgICAgZWxzZQorICAgICAgICBtX2NsaXBTdGFjay5hcHBlbmQoaW50ZXJzZWN0
aW9uKG1fY2xpcFN0YWNrLmxhc3QoKSwgdHJhbnNmb3JtZWRDbGlwKSk7Cit9CisKK3ZvaWQgRXZl
bnRSZWdpb25Db250ZXh0Ojpwb3BDbGlwKCkKK3sKKyAgICBtX2NsaXBTdGFjay5yZW1vdmVMYXN0
KCk7Cit9CisKIHZvaWQgRXZlbnRSZWdpb25Db250ZXh0Ojp1bml0ZShjb25zdCBSZWdpb24mIHJl
Z2lvbiwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQogewotICAgIGlmIChtX3RyYW5zZm9ybVN0
YWNrLmlzRW1wdHkoKSkKKyAgICBpZiAobV90cmFuc2Zvcm1TdGFjay5pc0VtcHR5KCkgJiYgbV9j
bGlwU3RhY2suaXNFbXB0eSgpKSB7CiAgICAgICAgIG1fZXZlbnRSZWdpb24udW5pdGUocmVnaW9u
LCBzdHlsZSk7Ci0gICAgZWxzZQotICAgICAgICBtX2V2ZW50UmVnaW9uLnVuaXRlKG1fdHJhbnNm
b3JtU3RhY2subGFzdCgpLm1hcFJlZ2lvbihyZWdpb24pLCBzdHlsZSk7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKKyAgICBhdXRvIHRyYW5zZm9ybWVkQW5kQ2xpcHBlZFJlZ2lvbiA9IG1fdHJh
bnNmb3JtU3RhY2suaXNFbXB0eSgpID8gcmVnaW9uIDogbV90cmFuc2Zvcm1TdGFjay5sYXN0KCku
bWFwUmVnaW9uKHJlZ2lvbik7CisKKyAgICBpZiAoIW1fY2xpcFN0YWNrLmlzRW1wdHkoKSkKKyAg
ICAgICAgdHJhbnNmb3JtZWRBbmRDbGlwcGVkUmVnaW9uLmludGVyc2VjdChtX2NsaXBTdGFjay5s
YXN0KCkpOworCisgICAgbV9ldmVudFJlZ2lvbi51bml0ZSh0cmFuc2Zvcm1lZEFuZENsaXBwZWRS
ZWdpb24sIHN0eWxlKTsKIH0KIAogYm9vbCBFdmVudFJlZ2lvbkNvbnRleHQ6OmNvbnRhaW5zKGNv
bnN0IEludFJlY3QmIHJlY3QpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
RXZlbnRSZWdpb24uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRXZl
bnRSZWdpb24uaAkocmV2aXNpb24gMjQ4NTkxKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L0V2ZW50UmVnaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTQzLDEyICs0MywxNiBAQCBwdWJsaWM6
CiAgICAgdm9pZCBwdXNoVHJhbnNmb3JtKGNvbnN0IEFmZmluZVRyYW5zZm9ybSYpOwogICAgIHZv
aWQgcG9wVHJhbnNmb3JtKCk7CiAKKyAgICB2b2lkIHB1c2hDbGlwKGNvbnN0IEludFJlY3QmKTsK
KyAgICB2b2lkIHBvcENsaXAoKTsKKwogICAgIHZvaWQgdW5pdGUoY29uc3QgUmVnaW9uJiwgY29u
c3QgUmVuZGVyU3R5bGUmKTsKICAgICBib29sIGNvbnRhaW5zKGNvbnN0IEludFJlY3QmKSBjb25z
dDsKIAogcHJpdmF0ZToKICAgICBFdmVudFJlZ2lvbiYgbV9ldmVudFJlZ2lvbjsKICAgICBWZWN0
b3I8QWZmaW5lVHJhbnNmb3JtPiBtX3RyYW5zZm9ybVN0YWNrOworICAgIFZlY3RvcjxJbnRSZWN0
PiBtX2NsaXBTdGFjazsKIH07CiAKIGNsYXNzIEV2ZW50UmVnaW9uIHsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCShyZXZpc2lvbiAyNDg1OTEpCisrKyBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTgwNCw2
ICsxODA0LDEwIEBAIGJvb2wgUmVuZGVyQm94OjpwdXNoQ29udGVudHNDbGlwKFBhaW50SW4KICAg
ICBpZiAoc3R5bGUoKS5oYXNCb3JkZXJSYWRpdXMoKSkKICAgICAgICAgcGFpbnRJbmZvLmNvbnRl
eHQoKS5jbGlwUm91bmRlZFJlY3Qoc3R5bGUoKS5nZXRSb3VuZGVkSW5uZXJCb3JkZXJGb3IoTGF5
b3V0UmVjdChhY2N1bXVsYXRlZE9mZnNldCwgc2l6ZSgpKSkucGl4ZWxTbmFwcGVkUm91bmRlZFJl
Y3RGb3JQYWludGluZyhkZXZpY2VTY2FsZUZhY3RvcikpOwogICAgIHBhaW50SW5mby5jb250ZXh0
KCkuY2xpcChjbGlwUmVjdCk7CisKKyAgICBpZiAocGFpbnRJbmZvLnBoYXNlID09IFBhaW50UGhh
c2U6OkV2ZW50UmVnaW9uKQorICAgICAgICBwYWludEluZm8uZXZlbnRSZWdpb25Db250ZXh0LT5w
dXNoQ2xpcChlbmNsb3NpbmdJbnRSZWN0KGNsaXBSZWN0KSk7CisKICAgICByZXR1cm4gdHJ1ZTsK
IH0KIApAQCAtMTgxMSw2ICsxODE1LDkgQEAgdm9pZCBSZW5kZXJCb3g6OnBvcENvbnRlbnRzQ2xp
cChQYWludEluZgogewogICAgIEFTU0VSVChoYXNDb250cm9sQ2xpcCgpIHx8IChoYXNPdmVyZmxv
d0NsaXAoKSAmJiAhbGF5ZXIoKS0+aXNTZWxmUGFpbnRpbmdMYXllcigpKSk7CiAKKyAgICBpZiAo
cGFpbnRJbmZvLnBoYXNlID09IFBhaW50UGhhc2U6OkV2ZW50UmVnaW9uKQorICAgICAgICBwYWlu
dEluZm8uZXZlbnRSZWdpb25Db250ZXh0LT5wb3BDbGlwKCk7CisKICAgICBwYWludEluZm8uY29u
dGV4dCgpLnJlc3RvcmUoKTsKICAgICBpZiAob3JpZ2luYWxQaGFzZSA9PSBQYWludFBoYXNlOjpP
dXRsaW5lKSB7CiAgICAgICAgIHBhaW50SW5mby5waGFzZSA9IFBhaW50UGhhc2U6OlNlbGZPdXRs
aW5lOwpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCShyZXZp
c2lvbiAyNDg1OTEpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC00MDEwLDcgKzQwMTAsMTEgQEAgdm9pZCBSZW5kZXJMYXllcjo6
Y2xpcFRvUmVjdChHcmFwaGljc0NvbgogICAgIGlmIChuZWVkc0NsaXBwaW5nKSB7CiAgICAgICAg
IExheW91dFJlY3QgYWRqdXN0ZWRDbGlwUmVjdCA9IGNsaXBSZWN0LnJlY3QoKTsKICAgICAgICAg
YWRqdXN0ZWRDbGlwUmVjdC5tb3ZlKHBhaW50aW5nSW5mby5zdWJwaXhlbE9mZnNldCk7Ci0gICAg
ICAgIGNvbnRleHQuY2xpcChzbmFwUmVjdFRvRGV2aWNlUGl4ZWxzKGFkanVzdGVkQ2xpcFJlY3Qs
IGRldmljZVNjYWxlRmFjdG9yKSk7CisgICAgICAgIGF1dG8gc25hcHBlZENsaXBSZWN0ID0gc25h
cFJlY3RUb0RldmljZVBpeGVscyhhZGp1c3RlZENsaXBSZWN0LCBkZXZpY2VTY2FsZUZhY3Rvcik7
CisgICAgICAgIGNvbnRleHQuY2xpcChzbmFwcGVkQ2xpcFJlY3QpOworCisgICAgICAgIGlmIChw
YWludGluZ0luZm8uZXZlbnRSZWdpb25Db250ZXh0KQorICAgICAgICAgICAgcGFpbnRpbmdJbmZv
LmV2ZW50UmVnaW9uQ29udGV4dC0+cHVzaENsaXAoZW5jbG9zaW5nSW50UmVjdChzbmFwcGVkQ2xp
cFJlY3QpKTsKICAgICB9CiAKICAgICBpZiAoY2xpcFJlY3QuYWZmZWN0ZWRCeVJhZGl1cygpKSB7
CkBAIC00MDM2LDggKzQwNDAsMTIgQEAgdm9pZCBSZW5kZXJMYXllcjo6Y2xpcFRvUmVjdChHcmFw
aGljc0NvbgogCiB2b2lkIFJlbmRlckxheWVyOjpyZXN0b3JlQ2xpcChHcmFwaGljc0NvbnRleHQm
IGNvbnRleHQsIGNvbnN0IExheWVyUGFpbnRpbmdJbmZvJiBwYWludGluZ0luZm8sIGNvbnN0IENs
aXBSZWN0JiBjbGlwUmVjdCkKIHsKLSAgICBpZiAoKCFjbGlwUmVjdC5pc0luZmluaXRlKCkgJiYg
Y2xpcFJlY3QucmVjdCgpICE9IHBhaW50aW5nSW5mby5wYWludERpcnR5UmVjdCkgfHwgY2xpcFJl
Y3QuYWZmZWN0ZWRCeVJhZGl1cygpKQorICAgIGlmICgoIWNsaXBSZWN0LmlzSW5maW5pdGUoKSAm
JiBjbGlwUmVjdC5yZWN0KCkgIT0gcGFpbnRpbmdJbmZvLnBhaW50RGlydHlSZWN0KSB8fCBjbGlw
UmVjdC5hZmZlY3RlZEJ5UmFkaXVzKCkpIHsKICAgICAgICAgY29udGV4dC5yZXN0b3JlKCk7CisK
KyAgICAgICAgaWYgKHBhaW50aW5nSW5mby5ldmVudFJlZ2lvbkNvbnRleHQpCisgICAgICAgICAg
ICBwYWludGluZ0luZm8uZXZlbnRSZWdpb25Db250ZXh0LT5wb3BDbGlwKCk7CisgICAgfQogfQog
CiBzdGF0aWMgdm9pZCBwZXJmb3JtT3ZlcmxhcFRlc3RzKE92ZXJsYXBUZXN0UmVxdWVzdE1hcCYg
b3ZlcmxhcFRlc3RSZXF1ZXN0cywgY29uc3QgUmVuZGVyTGF5ZXIqIHJvb3RMYXllciwgY29uc3Qg
UmVuZGVyTGF5ZXIqIGxheWVyKQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjQ4NTkxKQorKysgTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTktMDgt
MTMgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgorCisgICAgICAgIEV2ZW50IHJl
Z2lvbnMgY29sbGVjdGlvbiBzaG91bGQgdGFrZSBjbGlwcGluZyBpbnRvIGFjY291bnQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMDY2OAorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNTM4MjY1NjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBwb2ludGVyZXZlbnRzL2lvcy90b3VjaC1hY3Rpb24tcmVn
aW9uLWNsaXAtYW5kLXRyYW5zZm9ybS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBv
aW50ZXJldmVudHMvaW9zL3RvdWNoLWFjdGlvbi1yZWdpb24tY2xpcC1hbmQtdHJhbnNmb3JtLmh0
bWw6IEFkZGVkLgorCiAyMDE5LTA4LTEyICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3Jn
PgogCiAgICAgICAgIEZyYW1lTG9hZGVyOjpvcGVuIGNhbiBleGVjdXRlIHNjcml0cHMgdmlhIHN0
eWxlIHJlY2FsYyBpbiBGcmFtZTo6c2V0RG9jdW1lbnQKSW5kZXg6IExheW91dFRlc3RzL3BvaW50
ZXJldmVudHMvaW9zL3RvdWNoLWFjdGlvbi1yZWdpb24tY2xpcC1hbmQtdHJhbnNmb3JtLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wb2ludGVyZXZlbnRzL2lvcy90b3Vj
aC1hY3Rpb24tcmVnaW9uLWNsaXAtYW5kLXRyYW5zZm9ybS1leHBlY3RlZC50eHQJKG5vbmV4aXN0
ZW50KQorKysgTGF5b3V0VGVzdHMvcG9pbnRlcmV2ZW50cy9pb3MvdG91Y2gtYWN0aW9uLXJlZ2lv
bi1jbGlwLWFuZC10cmFuc2Zvcm0tZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAg
KzEsMTAxIEBACisoR3JhcGhpY3NMYXllcgorICAoYW5jaG9yIDAuMDAgMC4wMCkKKyAgKGJvdW5k
cyA4MDAuMDAgMjQwOC4wMCkKKyAgKGNoaWxkcmVuIDEKKyAgICAoR3JhcGhpY3NMYXllcgorICAg
ICAgKGJvdW5kcyA4MDAuMDAgMjQwOC4wMCkKKyAgICAgIChjb250ZW50c09wYXF1ZSAxKQorICAg
ICAgKGV2ZW50IHJlZ2lvbgorICAgICAgICAocmVjdCAoMCwwKSB3aWR0aD04MDAgaGVpZ2h0PTI0
MDgpCisgICAgICApCisgICAgICAoY2hpbGRyZW4gNgorICAgICAgICAoR3JhcGhpY3NMYXllcgor
ICAgICAgICAgIChwb3NpdGlvbiA4LjAwIDguMDApCisgICAgICAgICAgKGJvdW5kcyAzNTAuMDAg
MzUwLjAwKQorICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAoZXZlbnQgcmVn
aW9uCisgICAgICAgICAgICAocmVjdCAoMCwwKSB3aWR0aD0yMDAgaGVpZ2h0PTIwMCkKKyAgICAg
ICAgICAgICh0b3VjaC1hY3Rpb24KKyAgICAgICAgICAgICAgKG5vbmUgICAgICAgICAgICAgIAor
ICAgICAgICAgICAgICAgIChyZWN0ICgxNTAsMTUwKSB3aWR0aD01MCBoZWlnaHQ9NTApCisgICAg
ICAgICAgICAgICkKKyAgICAgICAgICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAg
ICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24gOC4wMCA0MDguMDApCisgICAg
ICAgICAgKGJvdW5kcyAzNTAuMDAgMzUwLjAwKQorICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkK
KyAgICAgICAgICAoZXZlbnQgcmVnaW9uCisgICAgICAgICAgICAocmVjdCAoMCwwKSB3aWR0aD0y
MDAgaGVpZ2h0PTIwMCkKKyAgICAgICAgICAgICh0b3VjaC1hY3Rpb24KKyAgICAgICAgICAgICAg
KG5vbmUgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIChyZWN0ICgxNTAsMTUwKSB3aWR0
aD01MCBoZWlnaHQ9NTApCisgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICkKKyAgICAgICAg
ICApCisgICAgICAgICkKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRp
b24gOC4wMCA4MDguMDApCisgICAgICAgICAgKGJvdW5kcyAzNTAuMDAgMzUwLjAwKQorICAgICAg
ICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAoZXZlbnQgcmVnaW9uCisgICAgICAgICAg
ICAocmVjdCAoMCwwKSB3aWR0aD0yMDAgaGVpZ2h0PTIwMCkKKyAgICAgICAgICAgICh0b3VjaC1h
Y3Rpb24KKyAgICAgICAgICAgICAgKG5vbmUgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAg
IChyZWN0ICgxNTAsMTUwKSB3aWR0aD01MCBoZWlnaHQ9NTApCisgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICAgKEdyYXBoaWNzTGF5
ZXIKKyAgICAgICAgICAocG9zaXRpb24gOC4wMCAxMjA4LjAwKQorICAgICAgICAgIChib3VuZHMg
MzUwLjAwIDM1MC4wMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgKGV2
ZW50IHJlZ2lvbgorICAgICAgICAgICAgKHJlY3QgKDAsMCkgd2lkdGg9MjAwIGhlaWdodD0xNTAp
CisgICAgICAgICAgICAocmVjdCAoMCwxNTApIHdpZHRoPTM1MCBoZWlnaHQ9NTApCisgICAgICAg
ICAgICAocmVjdCAoMTUwLDIwMCkgd2lkdGg9MjAwIGhlaWdodD0xNTApCisgICAgICAgICAgICAo
dG91Y2gtYWN0aW9uCisgICAgICAgICAgICAgIChub25lICAgICAgICAgICAgICAKKyAgICAgICAg
ICAgICAgICAocmVjdCAoMTUwLDE1MCkgd2lkdGg9NTAgaGVpZ2h0PTUwKQorICAgICAgICAgICAg
ICApCisgICAgICAgICAgICApCisgICAgICAgICAgKQorICAgICAgICApCisgICAgICAgIChHcmFw
aGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDguMDAgMTYwOC4wMCkKKyAgICAgICAgICAo
Ym91bmRzIDM1MC4wMCAzNTAuMDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAg
ICAgIChldmVudCByZWdpb24KKyAgICAgICAgICAgIChyZWN0ICgwLDApIHdpZHRoPTIwMCBoZWln
aHQ9MTUwKQorICAgICAgICAgICAgKHJlY3QgKDAsMTUwKSB3aWR0aD0zNTAgaGVpZ2h0PTUwKQor
ICAgICAgICAgICAgKHJlY3QgKDE1MCwyMDApIHdpZHRoPTIwMCBoZWlnaHQ9MTUwKQorICAgICAg
ICAgICAgKHRvdWNoLWFjdGlvbgorICAgICAgICAgICAgICAobm9uZSAgICAgICAgICAgICAgCisg
ICAgICAgICAgICAgICAgKHJlY3QgKDE1MCwxNTApIHdpZHRoPTUwIGhlaWdodD01MCkKKyAgICAg
ICAgICAgICAgKQorICAgICAgICAgICAgKQorICAgICAgICAgICkKKyAgICAgICAgKQorICAgICAg
ICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgIChwb3NpdGlvbiA4LjAwIDIwMDguMDApCisgICAg
ICAgICAgKGJvdW5kcyAyMDAuMDAgMjAwLjAwKQorICAgICAgICAgIChjb250ZW50c09wYXF1ZSAx
KQorICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAoZXZlbnQgcmVnaW9uCisg
ICAgICAgICAgICAocmVjdCAoMCwwKSB3aWR0aD0yMDAgaGVpZ2h0PTE1MCkKKyAgICAgICAgICAg
IChyZWN0ICgwLDE1MCkgd2lkdGg9MzUwIGhlaWdodD01MCkKKyAgICAgICAgICAgIChyZWN0ICgx
NTAsMjAwKSB3aWR0aD0yMDAgaGVpZ2h0PTE1MCkKKyAgICAgICAgICAgICh0b3VjaC1hY3Rpb24K
KyAgICAgICAgICAgICAgKG5vbmUgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIChyZWN0
ICgxNTAsMTUwKSB3aWR0aD01MCBoZWlnaHQ9NTApCisgICAgICAgICAgICAgICkKKyAgICAgICAg
ICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisgICkKKykKKwpJ
bmRleDogTGF5b3V0VGVzdHMvcG9pbnRlcmV2ZW50cy9pb3MvdG91Y2gtYWN0aW9uLXJlZ2lvbi1j
bGlwLWFuZC10cmFuc2Zvcm0uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wb2ludGVy
ZXZlbnRzL2lvcy90b3VjaC1hY3Rpb24tcmVnaW9uLWNsaXAtYW5kLXRyYW5zZm9ybS5odG1sCShu
b25leGlzdGVudCkKKysrIExheW91dFRlc3RzL3BvaW50ZXJldmVudHMvaW9zL3RvdWNoLWFjdGlv
bi1yZWdpb24tY2xpcC1hbmQtdHJhbnNmb3JtLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCAr
MSw1MiBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgaW50ZXJu
YWw6QXN5bmNPdmVyZmxvd1Njcm9sbGluZ0VuYWJsZWQ9dHJ1ZSBdIC0tPgorPGh0bWw+Cis8c3R5
bGU+Cisucm9vdCB7IHBvc2l0aW9uOnJlbGF0aXZlOyB3aWR0aDoyMDBweDsgaGVpZ2h0OjIwMHB4
OyB3aWxsLWNoYW5nZTp0cmFuc2Zvcm07IGJhY2tncm91bmQ6Z3JlZW47IG1hcmdpbi1ib3R0b206
MjAwcHg7IH0KKy5jb250YWluZXIgeyB3aWR0aDoyMDBweDsgaGVpZ2h0OjIwMHB4OyBiYWNrZ3Jv
dW5kOnJlZDsgfQorLmxhcmdlciB7IHdpZHRoOjMwMHB4OyBoZWlnaHQ6MzAwcHg7IH0KKy5yZWxh
dGl2ZSB7IHBvc2l0aW9uOnJlbGF0aXZlIH0KKy5ub25lIHsgd2lkdGg6MTAwcHg7IGhlaWdodDox
MDBweDsgYmFja2dyb3VuZDpibHVlOyB0b3VjaC1hY3Rpb246IG5vbmU7IH0KKy5jbGlwIHsgb3Zl
cmZsb3c6aGlkZGVuOyB9CisudHJhbnNmb3JtIHsgdHJhbnNmb3JtOnRyYW5zbGF0ZSgxNTBweCwg
MTUwcHgpOyB9CisubmVndHJhbnNmb3JtIHsgdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTBweCwgLTUw
cHgpOyB9Cis8L3N0eWxlPgorPGJvZHk+Cis8ZGl2IGNsYXNzPSJyb290Ij4KKyAgICA8ZGl2IGNs
YXNzPSJjb250YWluZXIgY2xpcCI+CisgICAgICAgIDxkaXYgY2xhc3M9Im5vbmUgdHJhbnNmb3Jt
Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorPGRpdiBjbGFzcz0icm9vdCI+CisgICAgPGRp
diBjbGFzcz0iY29udGFpbmVyIHJlbGF0aXZlIGNsaXAiPgorICAgICAgICA8ZGl2IGNsYXNzPSJu
b25lIHRyYW5zZm9ybSI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKzxkaXYgY2xhc3M9InJv
b3QiPgorICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciByZWxhdGl2ZSBjbGlwIj4KKyAgICAgICAg
PGRpdiBjbGFzcz0ibm9uZSB0cmFuc2Zvcm0gcmVsYXRpdmUiPjwvZGl2PgorICAgIDwvZGl2Pgor
PC9kaXY+Cis8ZGl2IGNsYXNzPSJyb290Ij4KKyAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIgY2xp
cCB0cmFuc2Zvcm0iPgorICAgICAgICA8ZGl2IGNsYXNzPSJub25lIG5lZ3RyYW5zZm9ybSI+PC9k
aXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKzxkaXYgY2xhc3M9InJvb3QiPgorICAgIDxkaXYgY2xh
c3M9ImNvbnRhaW5lciByZWxhdGl2ZSBjbGlwIHRyYW5zZm9ybSI+CisgICAgICAgIDxkaXYgY2xh
c3M9Im5vbmUgbmVndHJhbnNmb3JtIj48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorPGRpdiBj
bGFzcz0icm9vdCBjbGlwIj4KKyAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIgcmVsYXRpdmUgY2xp
cCB0cmFuc2Zvcm0iPgorICAgICAgICA8ZGl2IGNsYXNzPSJub25lIG5lZ3RyYW5zZm9ybSI+PC9k
aXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKzxwcmUgaWQ9InJlc3VsdHMiPjwvcHJlPgorPHNjcmlw
dD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
K2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIHJlc3VsdHMuaW5uZXJUZXh0ID0gaW50ZXJuYWxz
LmxheWVyVHJlZUFzVGV4dChkb2N1bWVudCwgaW50ZXJuYWxzLkxBWUVSX1RSRUVfSU5DTFVERVNf
RVZFTlRfUkVHSU9OKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="391930"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376185</attachid>
            <date>2019-08-13 11:31:12 -0700</date>
            <delta_ts>2019-08-13 12:26:28 -0700</delta_ts>
            <desc>patch</desc>
            <filename>touch-action-clip-3.patch</filename>
            <type>text/plain</type>
            <size>12240</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0ODU5MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDE5LTA4LTEzICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBFdmVudCByZWdpb24gY29sbGVj
dGlvbiBzaG91bGQgdGFrZSBjbGlwcGluZyBpbnRvIGFjY291bnQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMDY2OAorICAgICAgICA8cmRhcjovL3By
b2JsZW0vNTM4MjY1NjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisg
ICAgICAgIFRlc3Q6IHBvaW50ZXJldmVudHMvaW9zL3RvdWNoLWFjdGlvbi1yZWdpb24tY2xpcC1h
bmQtdHJhbnNmb3JtLmh0bWwKKworICAgICAgICAqIHJlbmRlcmluZy9FdmVudFJlZ2lvbi5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpFdmVudFJlZ2lvbkNvbnRleHQ6OnB1c2hDbGlwKToKKyAgICAg
ICAgKFdlYkNvcmU6OkV2ZW50UmVnaW9uQ29udGV4dDo6cG9wQ2xpcCk6CisKKyAgICAgICAgTWFp
bnRhaW4gY2xpcCByZWN0IHN0YWNrLgorCisgICAgICAgIChXZWJDb3JlOjpFdmVudFJlZ2lvbkNv
bnRleHQ6OnVuaXRlKToKKworICAgICAgICBBcHBseSBib3RoIHRyYW5zZm9ybXMgYW5kIGNsaXBw
aW5nLgorCisgICAgICAgICogcmVuZGVyaW5nL0V2ZW50UmVnaW9uLmg6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlckJsb2NrLmNwcDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6cHVzaENvbnRlbnRzQ2xpcCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OnBvcENvbnRlbnRzQ2xpcCk6CisKKyAgICAgICAgVXBk
YXRlIGNsaXAgZm9yIG5vbi1zZWxmLXBhaW50aW5nIGxheWVycy4KKworICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJMYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6Y2xp
cFRvUmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6cmVzdG9yZUNsaXApOgor
CisgICAgICAgIFVwZGF0ZSBjbGlwIGZvciBzZWxmLXBhaW50aW5nIGxheWVycy4KKwogMjAxOS0w
OC0xMyAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgQmxvYiBy
ZWdpc3RyaWVzIHNob3VsZCBiZSBrZXllZCBieSBzZXNzaW9uIElEcwpJbmRleDogU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL0V2ZW50UmVnaW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvRXZlbnRSZWdpb24uY3BwCShyZXZpc2lvbiAyNDg1OTEpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvRXZlbnRSZWdpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00
NSwxNSArNDUsNDUgQEAgdm9pZCBFdmVudFJlZ2lvbkNvbnRleHQ6OnB1c2hUcmFuc2Zvcm0oYwog
CiB2b2lkIEV2ZW50UmVnaW9uQ29udGV4dDo6cG9wVHJhbnNmb3JtKCkKIHsKKyAgICBpZiAobV90
cmFuc2Zvcm1TdGFjay5pc0VtcHR5KCkpIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CiAgICAgbV90cmFuc2Zvcm1TdGFjay5yZW1vdmVMYXN0
KCk7CiB9CiAKK3ZvaWQgRXZlbnRSZWdpb25Db250ZXh0OjpwdXNoQ2xpcChjb25zdCBJbnRSZWN0
JiBjbGlwUmVjdCkKK3sKKyAgICBhdXRvIHRyYW5zZm9ybWVkQ2xpcCA9IG1fdHJhbnNmb3JtU3Rh
Y2suaXNFbXB0eSgpID8gY2xpcFJlY3QgOiBtX3RyYW5zZm9ybVN0YWNrLmxhc3QoKS5tYXBSZWN0
KGNsaXBSZWN0KTsKKworICAgIGlmIChtX2NsaXBTdGFjay5pc0VtcHR5KCkpCisgICAgICAgIG1f
Y2xpcFN0YWNrLmFwcGVuZCh0cmFuc2Zvcm1lZENsaXApOworICAgIGVsc2UKKyAgICAgICAgbV9j
bGlwU3RhY2suYXBwZW5kKGludGVyc2VjdGlvbihtX2NsaXBTdGFjay5sYXN0KCksIHRyYW5zZm9y
bWVkQ2xpcCkpOworfQorCit2b2lkIEV2ZW50UmVnaW9uQ29udGV4dDo6cG9wQ2xpcCgpCit7Cisg
ICAgaWYgKG1fY2xpcFN0YWNrLmlzRW1wdHkoKSkgeworICAgICAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBtX2NsaXBTdGFjay5yZW1vdmVMYXN0
KCk7Cit9CisKIHZvaWQgRXZlbnRSZWdpb25Db250ZXh0Ojp1bml0ZShjb25zdCBSZWdpb24mIHJl
Z2lvbiwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQogewotICAgIGlmIChtX3RyYW5zZm9ybVN0
YWNrLmlzRW1wdHkoKSkKKyAgICBpZiAobV90cmFuc2Zvcm1TdGFjay5pc0VtcHR5KCkgJiYgbV9j
bGlwU3RhY2suaXNFbXB0eSgpKSB7CiAgICAgICAgIG1fZXZlbnRSZWdpb24udW5pdGUocmVnaW9u
LCBzdHlsZSk7Ci0gICAgZWxzZQotICAgICAgICBtX2V2ZW50UmVnaW9uLnVuaXRlKG1fdHJhbnNm
b3JtU3RhY2subGFzdCgpLm1hcFJlZ2lvbihyZWdpb24pLCBzdHlsZSk7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKKyAgICBhdXRvIHRyYW5zZm9ybWVkQW5kQ2xpcHBlZFJlZ2lvbiA9IG1fdHJh
bnNmb3JtU3RhY2suaXNFbXB0eSgpID8gcmVnaW9uIDogbV90cmFuc2Zvcm1TdGFjay5sYXN0KCku
bWFwUmVnaW9uKHJlZ2lvbik7CisKKyAgICBpZiAoIW1fY2xpcFN0YWNrLmlzRW1wdHkoKSkKKyAg
ICAgICAgdHJhbnNmb3JtZWRBbmRDbGlwcGVkUmVnaW9uLmludGVyc2VjdChtX2NsaXBTdGFjay5s
YXN0KCkpOworCisgICAgbV9ldmVudFJlZ2lvbi51bml0ZSh0cmFuc2Zvcm1lZEFuZENsaXBwZWRS
ZWdpb24sIHN0eWxlKTsKIH0KIAogYm9vbCBFdmVudFJlZ2lvbkNvbnRleHQ6OmNvbnRhaW5zKGNv
bnN0IEludFJlY3QmIHJlY3QpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
RXZlbnRSZWdpb24uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRXZl
bnRSZWdpb24uaAkocmV2aXNpb24gMjQ4NTkxKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L0V2ZW50UmVnaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTQzLDEyICs0MywxNiBAQCBwdWJsaWM6
CiAgICAgdm9pZCBwdXNoVHJhbnNmb3JtKGNvbnN0IEFmZmluZVRyYW5zZm9ybSYpOwogICAgIHZv
aWQgcG9wVHJhbnNmb3JtKCk7CiAKKyAgICB2b2lkIHB1c2hDbGlwKGNvbnN0IEludFJlY3QmKTsK
KyAgICB2b2lkIHBvcENsaXAoKTsKKwogICAgIHZvaWQgdW5pdGUoY29uc3QgUmVnaW9uJiwgY29u
c3QgUmVuZGVyU3R5bGUmKTsKICAgICBib29sIGNvbnRhaW5zKGNvbnN0IEludFJlY3QmKSBjb25z
dDsKIAogcHJpdmF0ZToKICAgICBFdmVudFJlZ2lvbiYgbV9ldmVudFJlZ2lvbjsKICAgICBWZWN0
b3I8QWZmaW5lVHJhbnNmb3JtPiBtX3RyYW5zZm9ybVN0YWNrOworICAgIFZlY3RvcjxJbnRSZWN0
PiBtX2NsaXBTdGFjazsKIH07CiAKIGNsYXNzIEV2ZW50UmVnaW9uIHsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCShyZXZpc2lvbiAyNDg1OTEpCisrKyBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTgwNCw2
ICsxODA0LDEwIEBAIGJvb2wgUmVuZGVyQm94OjpwdXNoQ29udGVudHNDbGlwKFBhaW50SW4KICAg
ICBpZiAoc3R5bGUoKS5oYXNCb3JkZXJSYWRpdXMoKSkKICAgICAgICAgcGFpbnRJbmZvLmNvbnRl
eHQoKS5jbGlwUm91bmRlZFJlY3Qoc3R5bGUoKS5nZXRSb3VuZGVkSW5uZXJCb3JkZXJGb3IoTGF5
b3V0UmVjdChhY2N1bXVsYXRlZE9mZnNldCwgc2l6ZSgpKSkucGl4ZWxTbmFwcGVkUm91bmRlZFJl
Y3RGb3JQYWludGluZyhkZXZpY2VTY2FsZUZhY3RvcikpOwogICAgIHBhaW50SW5mby5jb250ZXh0
KCkuY2xpcChjbGlwUmVjdCk7CisKKyAgICBpZiAocGFpbnRJbmZvLnBoYXNlID09IFBhaW50UGhh
c2U6OkV2ZW50UmVnaW9uKQorICAgICAgICBwYWludEluZm8uZXZlbnRSZWdpb25Db250ZXh0LT5w
dXNoQ2xpcChlbmNsb3NpbmdJbnRSZWN0KGNsaXBSZWN0KSk7CisKICAgICByZXR1cm4gdHJ1ZTsK
IH0KIApAQCAtMTgxMSw2ICsxODE1LDkgQEAgdm9pZCBSZW5kZXJCb3g6OnBvcENvbnRlbnRzQ2xp
cChQYWludEluZgogewogICAgIEFTU0VSVChoYXNDb250cm9sQ2xpcCgpIHx8IChoYXNPdmVyZmxv
d0NsaXAoKSAmJiAhbGF5ZXIoKS0+aXNTZWxmUGFpbnRpbmdMYXllcigpKSk7CiAKKyAgICBpZiAo
cGFpbnRJbmZvLnBoYXNlID09IFBhaW50UGhhc2U6OkV2ZW50UmVnaW9uKQorICAgICAgICBwYWlu
dEluZm8uZXZlbnRSZWdpb25Db250ZXh0LT5wb3BDbGlwKCk7CisKICAgICBwYWludEluZm8uY29u
dGV4dCgpLnJlc3RvcmUoKTsKICAgICBpZiAob3JpZ2luYWxQaGFzZSA9PSBQYWludFBoYXNlOjpP
dXRsaW5lKSB7CiAgICAgICAgIHBhaW50SW5mby5waGFzZSA9IFBhaW50UGhhc2U6OlNlbGZPdXRs
aW5lOwpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCShyZXZp
c2lvbiAyNDg1OTEpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC00MDEwLDcgKzQwMTAsMTEgQEAgdm9pZCBSZW5kZXJMYXllcjo6
Y2xpcFRvUmVjdChHcmFwaGljc0NvbgogICAgIGlmIChuZWVkc0NsaXBwaW5nKSB7CiAgICAgICAg
IExheW91dFJlY3QgYWRqdXN0ZWRDbGlwUmVjdCA9IGNsaXBSZWN0LnJlY3QoKTsKICAgICAgICAg
YWRqdXN0ZWRDbGlwUmVjdC5tb3ZlKHBhaW50aW5nSW5mby5zdWJwaXhlbE9mZnNldCk7Ci0gICAg
ICAgIGNvbnRleHQuY2xpcChzbmFwUmVjdFRvRGV2aWNlUGl4ZWxzKGFkanVzdGVkQ2xpcFJlY3Qs
IGRldmljZVNjYWxlRmFjdG9yKSk7CisgICAgICAgIGF1dG8gc25hcHBlZENsaXBSZWN0ID0gc25h
cFJlY3RUb0RldmljZVBpeGVscyhhZGp1c3RlZENsaXBSZWN0LCBkZXZpY2VTY2FsZUZhY3Rvcik7
CisgICAgICAgIGNvbnRleHQuY2xpcChzbmFwcGVkQ2xpcFJlY3QpOworCisgICAgICAgIGlmIChw
YWludGluZ0luZm8uZXZlbnRSZWdpb25Db250ZXh0KQorICAgICAgICAgICAgcGFpbnRpbmdJbmZv
LmV2ZW50UmVnaW9uQ29udGV4dC0+cHVzaENsaXAoZW5jbG9zaW5nSW50UmVjdChzbmFwcGVkQ2xp
cFJlY3QpKTsKICAgICB9CiAKICAgICBpZiAoY2xpcFJlY3QuYWZmZWN0ZWRCeVJhZGl1cygpKSB7
CkBAIC00MDM2LDggKzQwNDAsMTIgQEAgdm9pZCBSZW5kZXJMYXllcjo6Y2xpcFRvUmVjdChHcmFw
aGljc0NvbgogCiB2b2lkIFJlbmRlckxheWVyOjpyZXN0b3JlQ2xpcChHcmFwaGljc0NvbnRleHQm
IGNvbnRleHQsIGNvbnN0IExheWVyUGFpbnRpbmdJbmZvJiBwYWludGluZ0luZm8sIGNvbnN0IENs
aXBSZWN0JiBjbGlwUmVjdCkKIHsKLSAgICBpZiAoKCFjbGlwUmVjdC5pc0luZmluaXRlKCkgJiYg
Y2xpcFJlY3QucmVjdCgpICE9IHBhaW50aW5nSW5mby5wYWludERpcnR5UmVjdCkgfHwgY2xpcFJl
Y3QuYWZmZWN0ZWRCeVJhZGl1cygpKQorICAgIGlmICgoIWNsaXBSZWN0LmlzSW5maW5pdGUoKSAm
JiBjbGlwUmVjdC5yZWN0KCkgIT0gcGFpbnRpbmdJbmZvLnBhaW50RGlydHlSZWN0KSB8fCBjbGlw
UmVjdC5hZmZlY3RlZEJ5UmFkaXVzKCkpIHsKICAgICAgICAgY29udGV4dC5yZXN0b3JlKCk7CisK
KyAgICAgICAgaWYgKHBhaW50aW5nSW5mby5ldmVudFJlZ2lvbkNvbnRleHQpCisgICAgICAgICAg
ICBwYWludGluZ0luZm8uZXZlbnRSZWdpb25Db250ZXh0LT5wb3BDbGlwKCk7CisgICAgfQogfQog
CiBzdGF0aWMgdm9pZCBwZXJmb3JtT3ZlcmxhcFRlc3RzKE92ZXJsYXBUZXN0UmVxdWVzdE1hcCYg
b3ZlcmxhcFRlc3RSZXF1ZXN0cywgY29uc3QgUmVuZGVyTGF5ZXIqIHJvb3RMYXllciwgY29uc3Qg
UmVuZGVyTGF5ZXIqIGxheWVyKQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjQ4NTkxKQorKysgTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTktMDgt
MTMgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgorCisgICAgICAgIEV2ZW50IHJl
Z2lvbnMgY29sbGVjdGlvbiBzaG91bGQgdGFrZSBjbGlwcGluZyBpbnRvIGFjY291bnQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMDY2OAorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNTM4MjY1NjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24g
RnJhc2VyLgorCisgICAgICAgICogcG9pbnRlcmV2ZW50cy9pb3MvdG91Y2gtYWN0aW9uLXJlZ2lv
bi1jbGlwLWFuZC10cmFuc2Zvcm0tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwb2lu
dGVyZXZlbnRzL2lvcy90b3VjaC1hY3Rpb24tcmVnaW9uLWNsaXAtYW5kLXRyYW5zZm9ybS5odG1s
OiBBZGRlZC4KKwogMjAxOS0wOC0xMiAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4K
IAogICAgICAgICBGcmFtZUxvYWRlcjo6b3BlbiBjYW4gZXhlY3V0ZSBzY3JpdHBzIHZpYSBzdHls
ZSByZWNhbGMgaW4gRnJhbWU6OnNldERvY3VtZW50CkluZGV4OiBMYXlvdXRUZXN0cy9wb2ludGVy
ZXZlbnRzL2lvcy90b3VjaC1hY3Rpb24tcmVnaW9uLWNsaXAtYW5kLXRyYW5zZm9ybS1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcG9pbnRlcmV2ZW50cy9pb3MvdG91Y2gt
YWN0aW9uLXJlZ2lvbi1jbGlwLWFuZC10cmFuc2Zvcm0tZXhwZWN0ZWQudHh0CShub25leGlzdGVu
dCkKKysrIExheW91dFRlc3RzL3BvaW50ZXJldmVudHMvaW9zL3RvdWNoLWFjdGlvbi1yZWdpb24t
Y2xpcC1hbmQtdHJhbnNmb3JtLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDEwMSBAQAorKEdyYXBoaWNzTGF5ZXIKKyAgKGFuY2hvciAwLjAwIDAuMDApCisgIChib3VuZHMg
ODAwLjAwIDI0MDguMDApCisgIChjaGlsZHJlbiAxCisgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAg
IChib3VuZHMgODAwLjAwIDI0MDguMDApCisgICAgICAoY29udGVudHNPcGFxdWUgMSkKKyAgICAg
IChldmVudCByZWdpb24KKyAgICAgICAgKHJlY3QgKDAsMCkgd2lkdGg9ODAwIGhlaWdodD0yNDA4
KQorICAgICAgKQorICAgICAgKGNoaWxkcmVuIDYKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAg
ICAgICAgICAocG9zaXRpb24gOC4wMCA4LjAwKQorICAgICAgICAgIChib3VuZHMgMzUwLjAwIDM1
MC4wMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgKGV2ZW50IHJlZ2lv
bgorICAgICAgICAgICAgKHJlY3QgKDAsMCkgd2lkdGg9MjAwIGhlaWdodD0yMDApCisgICAgICAg
ICAgICAodG91Y2gtYWN0aW9uCisgICAgICAgICAgICAgIChub25lICAgICAgICAgICAgICAKKyAg
ICAgICAgICAgICAgICAocmVjdCAoMTUwLDE1MCkgd2lkdGg9NTAgaGVpZ2h0PTUwKQorICAgICAg
ICAgICAgICApCisgICAgICAgICAgICApCisgICAgICAgICAgKQorICAgICAgICApCisgICAgICAg
IChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDguMDAgNDA4LjAwKQorICAgICAg
ICAgIChib3VuZHMgMzUwLjAwIDM1MC4wMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisg
ICAgICAgICAgKGV2ZW50IHJlZ2lvbgorICAgICAgICAgICAgKHJlY3QgKDAsMCkgd2lkdGg9MjAw
IGhlaWdodD0yMDApCisgICAgICAgICAgICAodG91Y2gtYWN0aW9uCisgICAgICAgICAgICAgIChu
b25lICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAocmVjdCAoMTUwLDE1MCkgd2lkdGg9
NTAgaGVpZ2h0PTUwKQorICAgICAgICAgICAgICApCisgICAgICAgICAgICApCisgICAgICAgICAg
KQorICAgICAgICApCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9u
IDguMDAgODA4LjAwKQorICAgICAgICAgIChib3VuZHMgMzUwLjAwIDM1MC4wMCkKKyAgICAgICAg
ICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgKGV2ZW50IHJlZ2lvbgorICAgICAgICAgICAg
KHJlY3QgKDAsMCkgd2lkdGg9MjAwIGhlaWdodD0yMDApCisgICAgICAgICAgICAodG91Y2gtYWN0
aW9uCisgICAgICAgICAgICAgIChub25lICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAo
cmVjdCAoMTUwLDE1MCkgd2lkdGg9NTAgaGVpZ2h0PTUwKQorICAgICAgICAgICAgICApCisgICAg
ICAgICAgICApCisgICAgICAgICAgKQorICAgICAgICApCisgICAgICAgIChHcmFwaGljc0xheWVy
CisgICAgICAgICAgKHBvc2l0aW9uIDguMDAgMTIwOC4wMCkKKyAgICAgICAgICAoYm91bmRzIDM1
MC4wMCAzNTAuMDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChldmVu
dCByZWdpb24KKyAgICAgICAgICAgIChyZWN0ICgwLDApIHdpZHRoPTIwMCBoZWlnaHQ9MTUwKQor
ICAgICAgICAgICAgKHJlY3QgKDAsMTUwKSB3aWR0aD0zNTAgaGVpZ2h0PTUwKQorICAgICAgICAg
ICAgKHJlY3QgKDE1MCwyMDApIHdpZHRoPTIwMCBoZWlnaHQ9MTUwKQorICAgICAgICAgICAgKHRv
dWNoLWFjdGlvbgorICAgICAgICAgICAgICAobm9uZSAgICAgICAgICAgICAgCisgICAgICAgICAg
ICAgICAgKHJlY3QgKDE1MCwxNTApIHdpZHRoPTUwIGhlaWdodD01MCkKKyAgICAgICAgICAgICAg
KQorICAgICAgICAgICAgKQorICAgICAgICAgICkKKyAgICAgICAgKQorICAgICAgICAoR3JhcGhp
Y3NMYXllcgorICAgICAgICAgIChwb3NpdGlvbiA4LjAwIDE2MDguMDApCisgICAgICAgICAgKGJv
dW5kcyAzNTAuMDAgMzUwLjAwKQorICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAg
ICAoZXZlbnQgcmVnaW9uCisgICAgICAgICAgICAocmVjdCAoMCwwKSB3aWR0aD0yMDAgaGVpZ2h0
PTE1MCkKKyAgICAgICAgICAgIChyZWN0ICgwLDE1MCkgd2lkdGg9MzUwIGhlaWdodD01MCkKKyAg
ICAgICAgICAgIChyZWN0ICgxNTAsMjAwKSB3aWR0aD0yMDAgaGVpZ2h0PTE1MCkKKyAgICAgICAg
ICAgICh0b3VjaC1hY3Rpb24KKyAgICAgICAgICAgICAgKG5vbmUgICAgICAgICAgICAgIAorICAg
ICAgICAgICAgICAgIChyZWN0ICgxNTAsMTUwKSB3aWR0aD01MCBoZWlnaHQ9NTApCisgICAgICAg
ICAgICAgICkKKyAgICAgICAgICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICAg
KEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24gOC4wMCAyMDA4LjAwKQorICAgICAg
ICAgIChib3VuZHMgMjAwLjAwIDIwMC4wMCkKKyAgICAgICAgICAoY29udGVudHNPcGFxdWUgMSkK
KyAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgKGV2ZW50IHJlZ2lvbgorICAg
ICAgICAgICAgKHJlY3QgKDAsMCkgd2lkdGg9MjAwIGhlaWdodD0xNTApCisgICAgICAgICAgICAo
cmVjdCAoMCwxNTApIHdpZHRoPTM1MCBoZWlnaHQ9NTApCisgICAgICAgICAgICAocmVjdCAoMTUw
LDIwMCkgd2lkdGg9MjAwIGhlaWdodD0xNTApCisgICAgICAgICAgICAodG91Y2gtYWN0aW9uCisg
ICAgICAgICAgICAgIChub25lICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAocmVjdCAo
MTUwLDE1MCkgd2lkdGg9NTAgaGVpZ2h0PTUwKQorICAgICAgICAgICAgICApCisgICAgICAgICAg
ICApCisgICAgICAgICAgKQorICAgICAgICApCisgICAgICApCisgICAgKQorICApCispCisKSW5k
ZXg6IExheW91dFRlc3RzL3BvaW50ZXJldmVudHMvaW9zL3RvdWNoLWFjdGlvbi1yZWdpb24tY2xp
cC1hbmQtdHJhbnNmb3JtLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcG9pbnRlcmV2
ZW50cy9pb3MvdG91Y2gtYWN0aW9uLXJlZ2lvbi1jbGlwLWFuZC10cmFuc2Zvcm0uaHRtbAkobm9u
ZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9wb2ludGVyZXZlbnRzL2lvcy90b3VjaC1hY3Rpb24t
cmVnaW9uLWNsaXAtYW5kLXRyYW5zZm9ybS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEs
NTIgQEAKKzwhRE9DVFlQRSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIGludGVybmFs
OkFzeW5jT3ZlcmZsb3dTY3JvbGxpbmdFbmFibGVkPXRydWUgXSAtLT4KKzxodG1sPgorPHN0eWxl
PgorLnJvb3QgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgd2lkdGg6MjAwcHg7IGhlaWdodDoyMDBweDsg
d2lsbC1jaGFuZ2U6dHJhbnNmb3JtOyBiYWNrZ3JvdW5kOmdyZWVuOyBtYXJnaW4tYm90dG9tOjIw
MHB4OyB9CisuY29udGFpbmVyIHsgd2lkdGg6MjAwcHg7IGhlaWdodDoyMDBweDsgYmFja2dyb3Vu
ZDpyZWQ7IH0KKy5sYXJnZXIgeyB3aWR0aDozMDBweDsgaGVpZ2h0OjMwMHB4OyB9CisucmVsYXRp
dmUgeyBwb3NpdGlvbjpyZWxhdGl2ZSB9Cisubm9uZSB7IHdpZHRoOjEwMHB4OyBoZWlnaHQ6MTAw
cHg7IGJhY2tncm91bmQ6Ymx1ZTsgdG91Y2gtYWN0aW9uOiBub25lOyB9CisuY2xpcCB7IG92ZXJm
bG93OmhpZGRlbjsgfQorLnRyYW5zZm9ybSB7IHRyYW5zZm9ybTp0cmFuc2xhdGUoMTUwcHgsIDE1
MHB4KTsgfQorLm5lZ3RyYW5zZm9ybSB7IHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwcHgsIC01MHB4
KTsgfQorPC9zdHlsZT4KKzxib2R5PgorPGRpdiBjbGFzcz0icm9vdCI+CisgICAgPGRpdiBjbGFz
cz0iY29udGFpbmVyIGNsaXAiPgorICAgICAgICA8ZGl2IGNsYXNzPSJub25lIHRyYW5zZm9ybSI+
PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKzxkaXYgY2xhc3M9InJvb3QiPgorICAgIDxkaXYg
Y2xhc3M9ImNvbnRhaW5lciByZWxhdGl2ZSBjbGlwIj4KKyAgICAgICAgPGRpdiBjbGFzcz0ibm9u
ZSB0cmFuc2Zvcm0iPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+Cis8ZGl2IGNsYXNzPSJyb290
Ij4KKyAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIgcmVsYXRpdmUgY2xpcCI+CisgICAgICAgIDxk
aXYgY2xhc3M9Im5vbmUgdHJhbnNmb3JtIHJlbGF0aXZlIj48L2Rpdj4KKyAgICA8L2Rpdj4KKzwv
ZGl2PgorPGRpdiBjbGFzcz0icm9vdCI+CisgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIGNsaXAg
dHJhbnNmb3JtIj4KKyAgICAgICAgPGRpdiBjbGFzcz0ibm9uZSBuZWd0cmFuc2Zvcm0iPjwvZGl2
PgorICAgIDwvZGl2PgorPC9kaXY+Cis8ZGl2IGNsYXNzPSJyb290Ij4KKyAgICA8ZGl2IGNsYXNz
PSJjb250YWluZXIgcmVsYXRpdmUgY2xpcCB0cmFuc2Zvcm0iPgorICAgICAgICA8ZGl2IGNsYXNz
PSJub25lIG5lZ3RyYW5zZm9ybSI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKzxkaXYgY2xh
c3M9InJvb3QgY2xpcCI+CisgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIHJlbGF0aXZlIGNsaXAg
dHJhbnNmb3JtIj4KKyAgICAgICAgPGRpdiBjbGFzcz0ibm9uZSBuZWd0cmFuc2Zvcm0iPjwvZGl2
PgorICAgIDwvZGl2PgorPC9kaXY+Cis8cHJlIGlkPSJyZXN1bHRzIj48L3ByZT4KKzxzY3JpcHQ+
CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Citp
ZiAod2luZG93LmludGVybmFscykKKyAgICByZXN1bHRzLmlubmVyVGV4dCA9IGludGVybmFscy5s
YXllclRyZWVBc1RleHQoZG9jdW1lbnQsIGludGVybmFscy5MQVlFUl9UUkVFX0lOQ0xVREVTX0VW
RU5UX1JFR0lPTik7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>