<?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>181996</bug_id>
          
          <creation_ts>2018-01-23 11:12:23 -0800</creation_ts>
          <short_desc>[GTK] Page crash after swipe gesture running GNOME3 under wayland</short_desc>
          <delta_ts>2018-01-28 14:20:15 -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>WebKitGTK</component>
          <version>Other</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugzilla.gnome.org/show_bug.cgi?id=792799</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=182224</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jan-Michael Brummer">jan.brummer</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>carlosg</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
    
    <cc>mcatanzaro</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1392137</commentid>
    <comment_count>0</comment_count>
    <who name="Jan-Michael Brummer">jan.brummer</who>
    <bug_when>2018-01-23 11:12:23 -0800</bug_when>
    <thetext>Leaving epiphany with a gesture (swipe from left to open shell overview, swipe from bottom to open OSK) and re-entering causes a crash of the current page.

Page is terminate due to a SIGKILL caused by: Received an invalid message &quot;WebPageProxy.DidReceiveEvent&quot; from the web process.
Due to SIGKILL no backtrace can be generated.

Always reproducible.

Notes:
 - Tablet running Fedora with GNOME 3 under Wayland.
 - Does not occure running GNOME 3 under X.

Versions:
 - Fedora 27
 - GNOME 3.26
 - WebkitGTK 2.18.5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392241</commentid>
    <comment_count>1</comment_count>
    <who name="Jan-Michael Brummer">jan.brummer</who>
    <bug_when>2018-01-23 14:13:14 -0800</bug_when>
    <thetext>Additional information: Window must be maximized.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392254</commentid>
    <comment_count>2</comment_count>
      <attachid>332075</attachid>
    <who name="Jan-Michael Brummer">jan.brummer</who>
    <bug_when>2018-01-23 14:29:38 -0800</bug_when>
    <thetext>Created attachment 332075
GDB log of minibrowser

Compiled webkit on my tablet including minibrowser. Using this app i can reproduce the issue and could create a gdb log. See attachment.

(gdb) bt full
#0  0x00007fffecbeda71 in WTFCrash () at /home/jbrummer/Downloads/webkitgtk-2.18.5/lib/libjavascriptcoregtk-4.0.so.18
#1  0x00007ffff141202a in WebKit::WebEventFactory::createWebTouchEvent(_GdkEvent const*, WTF::Vector&lt;WebKit::WebPlatformTouchPoint, 0ul, WTF::CrashOnOverflow, 16ul&gt;&amp;&amp;) ()
    at /home/jbrummer/Downloads/webkitgtk-2.18.5/lib/libwebkit2gtk-4.0.so.37
#2  0x00007ffff1410fa1 in WebKit::NativeWebTouchEvent::NativeWebTouchEvent(_GdkEvent*, WTF::Vector&lt;WebKit::WebPlatformTouchPoint, 0ul, WTF::CrashOnOverflow, 16ul&gt;&amp;&amp;) ()
    at /home/jbrummer/Downloads/webkitgtk-2.18.5/lib/libwebkit2gtk-4.0.so.37
#3  0x00007ffff14daa1a in webkitWebViewBaseTouchEvent(_GtkWidget*, _GdkEventTouch*) () at /home/jbrummer/Downloads/webkitgtk-2.18.5/lib/libwebkit2gtk-4.0.so.37
#4  0x00007ffff0173b77 in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x48b450, return_value=0x7fffffffd920, instance=&lt;optimized out&gt;, args=&lt;optimized out&gt;, marshal_data=&lt;optimized out&gt;, n_params=&lt;optimized out&gt;,</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392270</commentid>
    <comment_count>3</comment_count>
    <who name="Jan-Michael Brummer">jan.brummer</who>
    <bug_when>2018-01-23 14:53:57 -0800</bug_when>
    <thetext>Update: createWebTouchEvent () receives GDK_TOUCH_CANCEL which is currently not handled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392287</commentid>
    <comment_count>4</comment_count>
    <who name="Jan-Michael Brummer">jan.brummer</who>
    <bug_when>2018-01-23 15:16:16 -0800</bug_when>
    <thetext>I&apos;ve successfully added support for GDK_TOUCH_CANCEL which fixes the crash. As i&apos;ve created it on the release version i will checkout the git version of webkitgtk and provide a proper patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392386</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-23 17:47:20 -0800</bug_when>
    <thetext>Oh wow, thanks! You might want to review https://webkit.org/contributing-code/ before attaching your patch. Key steps are (a) run the prepare-ChangeLog script, and (b) set the r? and cq? flags on the Bugzilla attachment.

I notice that in webkitWebViewBaseTouchEvent() (in WebKitWebViewBase.cpp) also needs fixed. There a NativeWebTouchEvent is created from the received GdkEventTouch* regardless of its GdkEventType. But that is illegal unless the GdkEventType is GDK_TOUCH_BEGIN, GDK_TOUCH_UPDATE, or GDK_TOUCH_END, according to the switch case you already found in createWebTouchEvent(). So webkitWebViewBaseTouchEvent() needs to be updated as well, to not create a new NativeWebTouchEvent in this case. So in the default case, webkitWebViewBaseTouchEvent() ought to return FALSE instead of continuing on. That way, if some new GdkEventType for GdkEventTouch* were to be added in the future (not likely for GTK+ 3, but it could happen in future major versions) WebKit will at least not crash like this.

Now, according to the GTK+ documentation, the only other valid GdkEventType for a GdkEventTouch* is GDK_TOUCH_CANCEL, so fortunately you&apos;re right that that&apos;s the only additional GdkEventType we need to support. I&apos;m going to blindly guess that should be handled exactly the same as GDK_TOUCH_END in webkitWebViewBaseTouchEvent...? So that switch case in webkitWebViewBaseTouchEvent() should *probably* just fall through:

    case GDK_TOUCH_END:
    case GDK_TOUCH_CANCEL:
        ASSERT(priv-&gt;touchEvents.contains(sequence));
        priv-&gt;touchEvents.remove(sequence);
        break;

At least, that *seems* like it would be the right thing to do....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392392</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-23 18:00:50 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #5)
&gt; So in the default case,
&gt; webkitWebViewBaseTouchEvent() ought to return FALSE instead of continuing
&gt; on.

Actually, I&apos;ve just filed bug #182031 to convert these functions to return GDK_EVENT_STOP and GDK_EVENT_PROPAGATE, so it would be better to go ahead and use GDK_EVENT_PROPAGATE instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392494</commentid>
    <comment_count>7</comment_count>
    <who name="Jan-Michael Brummer">jan.brummer</who>
    <bug_when>2018-01-24 01:56:13 -0800</bug_when>
    <thetext>Yes, i had to adjust three different places to get it working. And yes, i implemented it as an alias for GDK_TOUCH_END.

Patch will take a couple of hours. It is still compiling the libraries on my tablet...

Hopefully it will be integrated soon as i do not want to compile it on my smartphone :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392537</commentid>
    <comment_count>8</comment_count>
      <attachid>332155</attachid>
    <who name="Jan-Michael Brummer">jan.brummer</who>
    <bug_when>2018-01-24 07:00:27 -0800</bug_when>
    <thetext>Created attachment 332155
Add GDK_TOUCH_CANCEL support

Added support for GDK_TOUCH_CANCEL:
 - to fix the gesture bug
 - updated other code paths to respect also GDK_TOUCH_CANCEL where only GDK_TOUCH_END has been checked.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392539</commentid>
    <comment_count>9</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-01-24 07:03:43 -0800</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392569</commentid>
    <comment_count>10</comment_count>
      <attachid>332155</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-24 07:55:49 -0800</bug_when>
    <thetext>Comment on attachment 332155
Add GDK_TOUCH_CANCEL support

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

This looks right, thanks! I&apos;m just going to request just minor changes:

&gt; Source/WebKit/ChangeLog:3
&gt; +        Add missing GDK_TOUCH_CANCEL support which fixes page crashes due to cancelled gestures.

We prefer to use the title of the bug for the first line here:

&quot;[GTK] Page crash after swipe gesture running GNOME3 under wayland&quot;

Then you can move this description down after the Reviewed by line.

&gt; Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp:376
&gt; +            // Fall-through

That reminds me, we actually have a macro for this that uses attribute [[fallthrough]] or __attribute__ ((fallthrough)) or one of the compiler-specific variants. We should use it here! #include &lt;wtf/Compiler.h&gt; and then:

  case GDK_TOUCH_CANCEL:
      FALLTHROUGH;
  case GDK_TOUCH_END:
      // ...

&gt; Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:944
&gt; +        // Fall-through

Use FALLTHROUGH here, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392577</commentid>
    <comment_count>11</comment_count>
      <attachid>332167</attachid>
    <who name="Jan-Michael Brummer">jan.brummer</who>
    <bug_when>2018-01-24 08:08:54 -0800</bug_when>
    <thetext>Created attachment 332167
Add GDK_TOUCH_CANCEL support - V2

Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392584</commentid>
    <comment_count>12</comment_count>
      <attachid>332167</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-24 08:26:17 -0800</bug_when>
    <thetext>Comment on attachment 332167
Add GDK_TOUCH_CANCEL support - V2

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

Remaining nits:

&gt; Source/WebKit/ChangeLog:2
&gt; +2018-01-24  Jan-Michael Brummer  &lt;jan.brummer@tabos.org&gt;
&gt; +        [GTK] Page crash after swipe gesture running GNOME3 under wayland

There should be a blank line here.

&gt; Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:71
&gt;  #include &lt;wtf/text/CString.h&gt;
&gt; +#include &lt;wtf/Compiler.h&gt;

I&apos;m surprised &apos;webkit-patch upload&apos; didn&apos;t spit warnings at you about this... uppercase letters sort before lowercase letters, so if you used that command you would have gotten an alphabetization warning here. Normally Bugzilla complains too, but maybe it only looks at the patch if you set the r? flag.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392585</commentid>
    <comment_count>13</comment_count>
      <attachid>332168</attachid>
    <who name="Jan-Michael Brummer">jan.brummer</who>
    <bug_when>2018-01-24 08:33:01 -0800</bug_when>
    <thetext>Created attachment 332168
Add GDK_TOUCH_CANCEL support - V3

Removed remaining nitpicks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392660</commentid>
    <comment_count>14</comment_count>
      <attachid>332168</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-24 12:02:00 -0800</bug_when>
    <thetext>Comment on attachment 332168
Add GDK_TOUCH_CANCEL support - V3

OK, let&apos;s try!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392665</commentid>
    <comment_count>15</comment_count>
      <attachid>332168</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-01-24 12:26:04 -0800</bug_when>
    <thetext>Comment on attachment 332168
Add GDK_TOUCH_CANCEL support - V3

Clearing flags on attachment: 332168

Committed r227544: &lt;https://trac.webkit.org/changeset/227544&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392666</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-01-24 12:26:06 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392670</commentid>
    <comment_count>17</comment_count>
      <attachid>332168</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-24 12:45:04 -0800</bug_when>
    <thetext>Comment on attachment 332168
Add GDK_TOUCH_CANCEL support - V3

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

&gt; Source/WebKit/ChangeLog:4
&gt; +2018-01-24  Jan-Michael Brummer  &lt;jan.brummer@tabos.org&gt;
&gt; +        [GTK] Page crash after swipe gesture running GNOME3 under wayland
&gt; +
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=181996

I didn&apos;t notice in time, but the format I had been hoping for was:

2018-01-24  Jan-Michael Brummer  &lt;jan.brummer@tabos.org&gt;

        [GTK] Page crash after swipe gesture running GNOME3 under wayland
        https://bugs.webkit.org/show_bug.cgi?id=181996

Like all the other entries in the ChangeLog. Ah well. :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392675</commentid>
    <comment_count>18</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-24 12:47:41 -0800</bug_when>
    <thetext>Ah, I also failed to notice: that belongs in Source/WebKit/ChangeLog, not the toplevel ChangeLog. I&apos;ll push a fixup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392677</commentid>
    <comment_count>19</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-24 12:48:30 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #18)
&gt; Ah, I also failed to notice: that belongs in Source/WebKit/ChangeLog, not
&gt; the toplevel ChangeLog. I&apos;ll push a fixup.

Wait, no, you got it right, I just confused myself by looking in the wrong file! I can do this.... I&apos;ll just change the line spacing, then.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392697</commentid>
    <comment_count>20</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-24 13:00:52 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/227549/webkit</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>332075</attachid>
            <date>2018-01-23 14:29:38 -0800</date>
            <delta_ts>2018-01-23 14:29:38 -0800</delta_ts>
            <desc>GDB log of minibrowser</desc>
            <filename>gdb.log</filename>
            <type>text/x-log</type>
            <size>12472</size>
            <attacher name="Jan-Michael Brummer">jan.brummer</attacher>
            
              <data encoding="base64">W2picnVtbWVyQGJ1enotZmVkbGV0IGJpbl0kIC4vTWluaUJyb3dzZXIKU0hPVUxEIE5FVkVSIEJF
IFJFQUNIRUQKL2hvbWUvamJydW1tZXIvRG93bmxvYWRzL3dlYmtpdGd0ay0yLjE4LjUvU291cmNl
L1dlYktpdC9TaGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAoMjQ5KSA6IHN0YXRpYyBXZWJL
aXQ6OldlYlRvdWNoRXZlbnQgV2ViS2l0OjpXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYlRvdWNo
RXZlbnQoY29uc3QgR2RrRXZlbnQqLCBXVEY6OlZlY3RvcjxXZWJLaXQ6OldlYlBsYXRmb3JtVG91
Y2hQb2ludD4mJikKMSAgIDB4N2YwODk2ZTM0YTZjIC9ob21lL2picnVtbWVyL0Rvd25sb2Fkcy93
ZWJraXRndGstMi4xOC41L2xpYi9saWJqYXZhc2NyaXB0Y29yZWd0ay00LjAuc28uMTgoV1RGQ3Jh
c2grMHgxZSkgWzB4N2YwODk2ZTM0YTZjXQoyICAgMHg3ZjA4OWI2NTkwMmEgL2hvbWUvamJydW1t
ZXIvRG93bmxvYWRzL3dlYmtpdGd0ay0yLjE4LjUvbGliL2xpYndlYmtpdDJndGstNC4wLnNvLjM3
KCsweGJjMzAyYSkgWzB4N2YwODliNjU5MDJhXQozICAgMHg3ZjA4OWI2NTdmYTEgL2hvbWUvamJy
dW1tZXIvRG93bmxvYWRzL3dlYmtpdGd0ay0yLjE4LjUvbGliL2xpYndlYmtpdDJndGstNC4wLnNv
LjM3KCsweGJjMWZhMSkgWzB4N2YwODliNjU3ZmExXQo0ICAgMHg3ZjA4OWI3MjFhMWEgL2hvbWUv
amJydW1tZXIvRG93bmxvYWRzL3dlYmtpdGd0ay0yLjE4LjUvbGliL2xpYndlYmtpdDJndGstNC4w
LnNvLjM3KCsweGM4YmExYSkgWzB4N2YwODliNzIxYTFhXQo1ICAgMHg3ZjA4OWEzYmFiNzcgL2xp
YjY0L2xpYmd0ay0zLnNvLjAoKzB4MjMzYjc3KSBbMHg3ZjA4OWEzYmFiNzddCjYgICAweDdmMDg5
OGFlMjk3NiAvbGliNjQvbGliZ29iamVjdC0yLjAuc28uMCgrMHhmOTc2KSBbMHg3ZjA4OThhZTI5
NzZdCjcgICAweDdmMDg5OGFmZDljOSAvbGliNjQvbGliZ29iamVjdC0yLjAuc28uMChnX3NpZ25h
bF9lbWl0X3ZhbGlzdCsweDczOSkgWzB4N2YwODk4YWZkOWM5XQo4ICAgMHg3ZjA4OThhZmU2NmYg
L2xpYjY0L2xpYmdvYmplY3QtMi4wLnNvLjAoZ19zaWduYWxfZW1pdCsweDhmKSBbMHg3ZjA4OThh
ZmU2NmZdCjkgICAweDdmMDg5YTUwNWNkNCAvbGliNjQvbGliZ3RrLTMuc28uMCgrMHgzN2VjZDQp
IFsweDdmMDg5YTUwNWNkNF0KMTAgIDB4N2YwODlhM2I3YTRlIC9saWI2NC9saWJndGstMy5zby4w
KCsweDIzMGE0ZSkgWzB4N2YwODlhM2I3YTRlXQoxMSAgMHg3ZjA4OWEzYjliNzAgL2xpYjY0L2xp
Ymd0ay0zLnNvLjAoZ3RrX21haW5fZG9fZXZlbnQrMHg4MDApIFsweDdmMDg5YTNiOWI3MF0KMTIg
IDB4N2YwODk5ZWM3MzA1IC9saWI2NC9saWJnZGstMy5zby4wKCsweDM3MzA1KSBbMHg3ZjA4OTll
YzczMDVdCjEzICAweDdmMDg5OWYyM2RmMiAvbGliNjQvbGliZ2RrLTMuc28uMCgrMHg5M2RmMikg
WzB4N2YwODk5ZjIzZGYyXQoxNCAgMHg3ZjA4OTg4MDliYjcgL2xpYjY0L2xpYmdsaWItMi4wLnNv
LjAoZ19tYWluX2NvbnRleHRfZGlzcGF0Y2grMHgxNTcpIFsweDdmMDg5ODgwOWJiN10KMTUgIDB4
N2YwODk4ODA5ZjYwIC9saWI2NC9saWJnbGliLTIuMC5zby4wKCsweDRhZjYwKSBbMHg3ZjA4OTg4
MDlmNjBdCjE2ICAweDdmMDg5ODgwYTI3MiAvbGliNjQvbGliZ2xpYi0yLjAuc28uMChnX21haW5f
bG9vcF9ydW4rMHhjMikgWzB4N2YwODk4ODBhMjcyXQoxNyAgMHg3ZjA4OWEzYjhjYTUgL2xpYjY0
L2xpYmd0ay0zLnNvLjAoZ3RrX21haW4rMHg4NSkgWzB4N2YwODlhM2I4Y2E1XQoxOCAgMHg0MGNi
M2UgLi9NaW5pQnJvd3NlcihtYWluKzB4NTNlKSBbMHg0MGNiM2VdCjE5ICAweDdmMDg4YmYzMzAw
YSAvbGliNjQvbGliYy5zby42KF9fbGliY19zdGFydF9tYWluKzB4ZWEpIFsweDdmMDg4YmYzMzAw
YV0KMjAgIDB4NDBjYzNhIC4vTWluaUJyb3dzZXIoX3N0YXJ0KzB4MmEpIFsweDQwY2MzYV0KU2Vn
bWVudGF0aW9uIGZhdWx0IChTcGVpY2hlcmFienVnIGdlc2NocmllYmVuKQoKW2picnVtbWVyQGJ1
enotZmVkbGV0IGJpbl0kIGdkYiAuL01pbmlCcm93c2VyIApHTlUgZ2RiIChHREIpIEZlZG9yYSA4
LjAuMS0zMy5mYzI3CkNvcHlyaWdodCAoQykgMjAxNyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s
IEluYy4KTGljZW5zZSBHUEx2Mys6IEdOVSBHUEwgdmVyc2lvbiAzIG9yIGxhdGVyIDxodHRwOi8v
Z251Lm9yZy9saWNlbnNlcy9ncGwuaHRtbD4KVGhpcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgYXJl
IGZyZWUgdG8gY2hhbmdlIGFuZCByZWRpc3RyaWJ1dGUgaXQuClRoZXJlIGlzIE5PIFdBUlJBTlRZ
LCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXcuICBUeXBlICJzaG93IGNvcHlpbmciCmFu
ZCAic2hvdyB3YXJyYW50eSIgZm9yIGRldGFpbHMuClRoaXMgR0RCIHdhcyBjb25maWd1cmVkIGFz
ICJ4ODZfNjQtcmVkaGF0LWxpbnV4LWdudSIuClR5cGUgInNob3cgY29uZmlndXJhdGlvbiIgZm9y
IGNvbmZpZ3VyYXRpb24gZGV0YWlscy4KRm9yIGJ1ZyByZXBvcnRpbmcgaW5zdHJ1Y3Rpb25zLCBw
bGVhc2Ugc2VlOgo8aHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2dkYi9idWdzLz4uCkZpbmQg
dGhlIEdEQiBtYW51YWwgYW5kIG90aGVyIGRvY3VtZW50YXRpb24gcmVzb3VyY2VzIG9ubGluZSBh
dDoKPGh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9nZGIvZG9jdW1lbnRhdGlvbi8+LgpGb3Ig
aGVscCwgdHlwZSAiaGVscCIuClR5cGUgImFwcm9wb3Mgd29yZCIgdG8gc2VhcmNoIGZvciBjb21t
YW5kcyByZWxhdGVkIHRvICJ3b3JkIi4uLgpSZWFkaW5nIHN5bWJvbHMgZnJvbSAuL01pbmlCcm93
c2VyLi4uZG9uZS4KKGdkYikgcgpTdGFydGluZyBwcm9ncmFtOiAvaG9tZS9qYnJ1bW1lci9Eb3du
bG9hZHMvd2Via2l0Z3RrLTIuMTguNS9iaW4vTWluaUJyb3dzZXIgCltUaHJlYWQgZGVidWdnaW5n
IHVzaW5nIGxpYnRocmVhZF9kYiBlbmFibGVkXQpVc2luZyBob3N0IGxpYnRocmVhZF9kYiBsaWJy
YXJ5ICIvbGliNjQvbGlidGhyZWFkX2RiLnNvLjEiLgpbTmV3IFRocmVhZCAweDdmZmZkYjE1ZDcw
MCAoTFdQIDY3NzYpXQpbTmV3IFRocmVhZCAweDdmZmZkM2EyMjcwMCAoTFdQIDY3NzcpXQpbTmV3
IFRocmVhZCAweDdmZmZkMzIyMTcwMCAoTFdQIDY3NzgpXQpbTmV3IFRocmVhZCAweDdmZmZkMmEy
MDcwMCAoTFdQIDY3NzkpXQpbTmV3IFRocmVhZCAweDdmZmY4MGNmZjcwMCAoTFdQIDY3ODApXQpb
TmV3IFRocmVhZCAweDdmZmY3YmZmZjcwMCAoTFdQIDY3ODEpXQpbTmV3IFRocmVhZCAweDdmZmY3
YjdmZTcwMCAoTFdQIDY3ODIpXQpEZXRhY2hpbmcgYWZ0ZXIgZm9yayBmcm9tIGNoaWxkIHByb2Nl
c3MgNjc4My4KW05ldyBUaHJlYWQgMHg3ZmZmN2FkZmE3MDAgKExXUCA2Nzg1KV0KRGV0YWNoaW5n
IGFmdGVyIGZvcmsgZnJvbSBjaGlsZCBwcm9jZXNzIDY3ODYuCltOZXcgVGhyZWFkIDB4N2ZmZjdh
NWY5NzAwIChMV1AgNjc4OCldCltOZXcgVGhyZWFkIDB4N2ZmZjc5ZGY4NzAwIChMV1AgNjc4OSld
CltOZXcgVGhyZWFkIDB4N2ZmZjc5NWY3NzAwIChMV1AgNjc5MCldCltOZXcgVGhyZWFkIDB4N2Zm
Zjc4ZGY2NzAwIChMV1AgNjc5MSldCltUaHJlYWQgMHg3ZmZmNzlkZjg3MDAgKExXUCA2Nzg5KSBl
eGl0ZWRdClNIT1VMRCBORVZFUiBCRSBSRUFDSEVECi9ob21lL2picnVtbWVyL0Rvd25sb2Fkcy93
ZWJraXRndGstMi4xOC41L1NvdXJjZS9XZWJLaXQvU2hhcmVkL2d0ay9XZWJFdmVudEZhY3Rvcnku
Y3BwKDI0OSkgOiBzdGF0aWMgV2ViS2l0OjpXZWJUb3VjaEV2ZW50IFdlYktpdDo6V2ViRXZlbnRG
YWN0b3J5OjpjcmVhdGVXZWJUb3VjaEV2ZW50KGNvbnN0IEdka0V2ZW50KiwgV1RGOjpWZWN0b3I8
V2ViS2l0OjpXZWJQbGF0Zm9ybVRvdWNoUG9pbnQ+JiYpCjEgICAweDdmZmZlY2JlZGE2YyAvaG9t
ZS9qYnJ1bW1lci9Eb3dubG9hZHMvd2Via2l0Z3RrLTIuMTguNS9saWIvbGliamF2YXNjcmlwdGNv
cmVndGstNC4wLnNvLjE4KFdURkNyYXNoKzB4MWUpIFsweDdmZmZlY2JlZGE2Y10KMiAgIDB4N2Zm
ZmYxNDEyMDJhIC9ob21lL2picnVtbWVyL0Rvd25sb2Fkcy93ZWJraXRndGstMi4xOC41L2xpYi9s
aWJ3ZWJraXQyZ3RrLTQuMC5zby4zNygrMHhiYzMwMmEpIFsweDdmZmZmMTQxMjAyYV0KMyAgIDB4
N2ZmZmYxNDEwZmExIC9ob21lL2picnVtbWVyL0Rvd25sb2Fkcy93ZWJraXRndGstMi4xOC41L2xp
Yi9saWJ3ZWJraXQyZ3RrLTQuMC5zby4zNygrMHhiYzFmYTEpIFsweDdmZmZmMTQxMGZhMV0KNCAg
IDB4N2ZmZmYxNGRhYTFhIC9ob21lL2picnVtbWVyL0Rvd25sb2Fkcy93ZWJraXRndGstMi4xOC41
L2xpYi9saWJ3ZWJraXQyZ3RrLTQuMC5zby4zNygrMHhjOGJhMWEpIFsweDdmZmZmMTRkYWExYV0K
NSAgIDB4N2ZmZmYwMTczYjc3IC9saWI2NC9saWJndGstMy5zby4wKCsweDIzM2I3NykgWzB4N2Zm
ZmYwMTczYjc3XQo2ICAgMHg3ZmZmZWU4OWI5NzYgL2xpYjY0L2xpYmdvYmplY3QtMi4wLnNvLjAo
KzB4Zjk3NikgWzB4N2ZmZmVlODliOTc2XQo3ICAgMHg3ZmZmZWU4YjY5YzkgL2xpYjY0L2xpYmdv
YmplY3QtMi4wLnNvLjAoZ19zaWduYWxfZW1pdF92YWxpc3QrMHg3MzkpIFsweDdmZmZlZThiNjlj
OV0KOCAgIDB4N2ZmZmVlOGI3NjZmIC9saWI2NC9saWJnb2JqZWN0LTIuMC5zby4wKGdfc2lnbmFs
X2VtaXQrMHg4ZikgWzB4N2ZmZmVlOGI3NjZmXQo5ICAgMHg3ZmZmZjAyYmVjZDQgL2xpYjY0L2xp
Ymd0ay0zLnNvLjAoKzB4MzdlY2Q0KSBbMHg3ZmZmZjAyYmVjZDRdCjEwICAweDdmZmZmMDE3MGE0
ZSAvbGliNjQvbGliZ3RrLTMuc28uMCgrMHgyMzBhNGUpIFsweDdmZmZmMDE3MGE0ZV0KMTEgIDB4
N2ZmZmYwMTcyYjcwIC9saWI2NC9saWJndGstMy5zby4wKGd0a19tYWluX2RvX2V2ZW50KzB4ODAw
KSBbMHg3ZmZmZjAxNzJiNzBdCjEyICAweDdmZmZlZmM4MDMwNSAvbGliNjQvbGliZ2RrLTMuc28u
MCgrMHgzNzMwNSkgWzB4N2ZmZmVmYzgwMzA1XQoxMyAgMHg3ZmZmZWZjZGNkZjIgL2xpYjY0L2xp
Ymdkay0zLnNvLjAoKzB4OTNkZjIpIFsweDdmZmZlZmNkY2RmMl0KMTQgIDB4N2ZmZmVlNWMyYmI3
IC9saWI2NC9saWJnbGliLTIuMC5zby4wKGdfbWFpbl9jb250ZXh0X2Rpc3BhdGNoKzB4MTU3KSBb
MHg3ZmZmZWU1YzJiYjddCjE1ICAweDdmZmZlZTVjMmY2MCAvbGliNjQvbGliZ2xpYi0yLjAuc28u
MCgrMHg0YWY2MCkgWzB4N2ZmZmVlNWMyZjYwXQoxNiAgMHg3ZmZmZWU1YzMyNzIgL2xpYjY0L2xp
YmdsaWItMi4wLnNvLjAoZ19tYWluX2xvb3BfcnVuKzB4YzIpIFsweDdmZmZlZTVjMzI3Ml0KMTcg
IDB4N2ZmZmYwMTcxY2E1IC9saWI2NC9saWJndGstMy5zby4wKGd0a19tYWluKzB4ODUpIFsweDdm
ZmZmMDE3MWNhNV0KMTggIDB4NDBjYjNlIC9ob21lL2picnVtbWVyL0Rvd25sb2Fkcy93ZWJraXRn
dGstMi4xOC41L2Jpbi9NaW5pQnJvd3NlcihtYWluKzB4NTNlKSBbMHg0MGNiM2VdCjE5ICAweDdm
ZmZlMWNlYzAwYSAvbGliNjQvbGliYy5zby42KF9fbGliY19zdGFydF9tYWluKzB4ZWEpIFsweDdm
ZmZlMWNlYzAwYV0KMjAgIDB4NDBjYzNhIC9ob21lL2picnVtbWVyL0Rvd25sb2Fkcy93ZWJraXRn
dGstMi4xOC41L2Jpbi9NaW5pQnJvd3Nlcihfc3RhcnQrMHgyYSkgWzB4NDBjYzNhXQoKVGhyZWFk
IDEgIk1pbmlCcm93c2VyIiByZWNlaXZlZCBzaWduYWwgU0lHU0VHViwgU2VnbWVudGF0aW9uIGZh
dWx0LgoweDAwMDA3ZmZmZWNiZWRhNzEgaW4gV1RGQ3Jhc2ggKCkgZnJvbSAvaG9tZS9qYnJ1bW1l
ci9Eb3dubG9hZHMvd2Via2l0Z3RrLTIuMTguNS9saWIvbGliamF2YXNjcmlwdGNvcmVndGstNC4w
LnNvLjE4Ck1pc3Npbmcgc2VwYXJhdGUgZGVidWdpbmZvcywgdXNlOiBkbmYgZGVidWdpbmZvLWlu
c3RhbGwgR0NvbmYyLTMuMi42LTE5LmZjMjcueDg2XzY0IGRidXMtZ2xpYi0wLjEwOC00LmZjMjcu
eDg2XzY0CihnZGIpIGJ0IGZ1bGwKIzAgIDB4MDAwMDdmZmZlY2JlZGE3MSBpbiBXVEZDcmFzaCAo
KSBhdCAvaG9tZS9qYnJ1bW1lci9Eb3dubG9hZHMvd2Via2l0Z3RrLTIuMTguNS9saWIvbGliamF2
YXNjcmlwdGNvcmVndGstNC4wLnNvLjE4CiMxICAweDAwMDA3ZmZmZjE0MTIwMmEgaW4gV2ViS2l0
OjpXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYlRvdWNoRXZlbnQoX0dka0V2ZW50IGNvbnN0Kiwg
V1RGOjpWZWN0b3I8V2ViS2l0OjpXZWJQbGF0Zm9ybVRvdWNoUG9pbnQsIDB1bCwgV1RGOjpDcmFz
aE9uT3ZlcmZsb3csIDE2dWw+JiYpICgpCiAgICBhdCAvaG9tZS9qYnJ1bW1lci9Eb3dubG9hZHMv
d2Via2l0Z3RrLTIuMTguNS9saWIvbGlid2Via2l0Mmd0ay00LjAuc28uMzcKIzIgIDB4MDAwMDdm
ZmZmMTQxMGZhMSBpbiBXZWJLaXQ6Ok5hdGl2ZVdlYlRvdWNoRXZlbnQ6Ok5hdGl2ZVdlYlRvdWNo
RXZlbnQoX0dka0V2ZW50KiwgV1RGOjpWZWN0b3I8V2ViS2l0OjpXZWJQbGF0Zm9ybVRvdWNoUG9p
bnQsIDB1bCwgV1RGOjpDcmFzaE9uT3ZlcmZsb3csIDE2dWw+JiYpICgpCiAgICBhdCAvaG9tZS9q
YnJ1bW1lci9Eb3dubG9hZHMvd2Via2l0Z3RrLTIuMTguNS9saWIvbGlid2Via2l0Mmd0ay00LjAu
c28uMzcKIzMgIDB4MDAwMDdmZmZmMTRkYWExYSBpbiB3ZWJraXRXZWJWaWV3QmFzZVRvdWNoRXZl
bnQoX0d0a1dpZGdldCosIF9HZGtFdmVudFRvdWNoKikgKCkgYXQgL2hvbWUvamJydW1tZXIvRG93
bmxvYWRzL3dlYmtpdGd0ay0yLjE4LjUvbGliL2xpYndlYmtpdDJndGstNC4wLnNvLjM3CiM0ICAw
eDAwMDA3ZmZmZjAxNzNiNzcgaW4gX2d0a19tYXJzaGFsX0JPT0xFQU5fX0JPWEVEdiAoY2xvc3Vy
ZT0weDQ4YjQ1MCwgcmV0dXJuX3ZhbHVlPTB4N2ZmZmZmZmZkOTIwLCBpbnN0YW5jZT08b3B0aW1p
emVkIG91dD4sIGFyZ3M9PG9wdGltaXplZCBvdXQ+LCBtYXJzaGFsX2RhdGE9PG9wdGltaXplZCBv
dXQ+LCBuX3BhcmFtcz08b3B0aW1pemVkIG91dD4sIHBhcmFtX3R5cGVzPTB4NGFiYzIwKSBhdCBn
dGttYXJzaGFsZXJzLmM6MTI4CiAgICAgICAgY2MgPSAweDQ4YjQ1MAogICAgICAgIGRhdGExID0g
PG9wdGltaXplZCBvdXQ+CiAgICAgICAgZGF0YTIgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBj
YWxsYmFjayA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHZfcmV0dXJuID0gPG9wdGltaXplZCBv
dXQ+CiAgICAgICAgYXJnMCA9IDB4NDY5MmIwCiAgICAgICAgYXJnc19jb3B5ID0ge3tncF9vZmZz
ZXQgPSAzMiwgZnBfb2Zmc2V0ID0gNDgsIG92ZXJmbG93X2FyZ19hcmVhID0gMHg3ZmZmZmZmZmRh
ZDAsIHJlZ19zYXZlX2FyZWEgPSAweDdmZmZmZmZmZGExMH19CiAgICAgICAgX19mdW5jX18gPSAi
X2d0a19tYXJzaGFsX0JPT0xFQU5fX0JPWEVEdiIKIzUgIDB4MDAwMDdmZmZlZTg5Yjk3NiBpbiBf
Z19jbG9zdXJlX2ludm9rZV92YSAoY2xvc3VyZT0weDQ4YjQ1MCwgcmV0dXJuX3ZhbHVlPTB4N2Zm
ZmZmZmZkOTIwLCBpbnN0YW5jZT0weGExMGExMCwgYXJncz0weDdmZmZmZmZmZDlmMCwgbl9wYXJh
bXM9MSwgcGFyYW1fdHlwZXM9MHg0YWJjMjApIGF0IGdjbG9zdXJlLmM6ODY3CiAgICAgICAgbWFy
c2hhbCA9IDB4N2ZmZmVlODk5YmQwIDxnX3R5cGVfY2xhc3NfbWV0YV9tYXJzaGFsdj4KICAgICAg
ICBtYXJzaGFsX2RhdGEgPSAweDJmOAogICAgICAgIGluX21hcnNoYWwgPSAwCiAgICAgICAgcmVh
bF9jbG9zdXJlID0gMHg0OGI0MzAKICAgICAgICBfX2Z1bmNfXyA9ICJfZ19jbG9zdXJlX2ludm9r
ZV92YSIKIzYgIDB4MDAwMDdmZmZlZThiNjljOSBpbiBnX3NpZ25hbF9lbWl0X3ZhbGlzdCAoaW5z
dGFuY2U9MHhhMTBhMTAsIHNpZ25hbF9pZD08b3B0aW1pemVkIG91dD4sIGRldGFpbD0wLCB2YXJf
YXJncz12YXJfYXJnc0BlbnRyeT0weDdmZmZmZmZmZDlmMCkgYXQgZ3NpZ25hbC5jOjMzMDAKICAg
ICAgICByZXR1cm5fYWNjdSA9IDB4N2ZmZmZmZmZkOTIwCiAgICAgICAgYWNjdSA9IAogICAgICAg
ICAgICAgIHtnX3R5cGUgPSAyMCwgZGF0YSA9IHt7dl9pbnQgPSAwLCB2X3VpbnQgPSAwLCB2X2xv
bmcgPSAwLCB2X3Vsb25nID0gMCwgdl9pbnQ2NCA9IDAsIHZfdWludDY0ID0gMCwgdl9mbG9hdCA9
IDAsIHZfZG91YmxlID0gMCwgdl9wb2ludGVyID0gMHgwfSwge3ZfaW50ID0gMCwgdl91aW50ID0g
MCwgdl9sb25nID0gMCwgdl91bG9uZyA9IDAsIHZfaW50NjQgPSAwLCB2X3VpbnQ2NCA9IDAsIHZf
ZmxvYXQgPSAwLCB2X2RvdWJsZSA9IDAsIHZfcG9pbnRlciA9IDB4MH19fQogICAgICAgIGFjY3Vt
dWxhdG9yID0gMHg0YTBjMTAKICAgICAgICBlbWlzc2lvbiA9IHtuZXh0ID0gMHgwLCBpbnN0YW5j
ZSA9IDB4YTEwYTEwLCBpaGludCA9IHtzaWduYWxfaWQgPSA4MCwgZGV0YWlsID0gMCwgcnVuX3R5
cGUgPSBHX1NJR05BTF9SVU5fTEFTVH0sIHN0YXRlID0gRU1JU1NJT05fUlVOLCBjaGFpbl90eXBl
ID0gMTE0MzEwODh9CiAgICAgICAgc2lnbmFsX2lkID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAg
aW5zdGFuY2VfdHlwZSA9IDExNDMxMDg4CiAgICAgICAgZW1pc3Npb25fcmV0dXJuID0gCiAgICAg
ICAgICAgICAge2dfdHlwZSA9IDIwLCBkYXRhID0ge3t2X2ludCA9IDAsIHZfdWludCA9IDAsIHZf
bG9uZyA9IDAsIHZfdWxvbmcgPSAwLCB2X2ludDY0ID0gMCwgdl91aW50NjQgPSAwLCB2X2Zsb2F0
ID0gMCwgdl9kb3VibGUgPSAwLCB2X3BvaW50ZXIgPSAweDB9LCB7dl9pbnQgPSAwLCB2X3VpbnQg
PSAwLCB2X2xvbmcgPSAwLCB2X3Vsb25nID0gMCwgdl9pbnQ2NCA9IDAsIHZfdWludDY0ID0gMCwg
dl9mbG9hdCA9IDAsIHZfZG91YmxlID0gMCwgdl9wb2ludGVyID0gMHgwfX19CiAgICAgICAgcnR5
cGUgPSAyMAogICAgICAgIHN0YXRpY19zY29wZSA9IDAKICAgICAgICBmYXN0cGF0aF9oYW5kbGVy
ID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgY2xvc3VyZSA9IDxvcHRpbWl6ZWQgb3V0PgogICAg
ICAgIHJ1bl90eXBlID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgbCA9IDxvcHRpbWl6ZWQgb3V0
PgogICAgICAgIGZhc3RwYXRoID0gMQogICAgICAgIGluc3RhbmNlX2FuZF9wYXJhbXMgPSA8b3B0
aW1pemVkIG91dD4KICAgICAgICBzaWduYWxfcmV0dXJuX3R5cGUgPSA8b3B0aW1pemVkIG91dD4K
ICAgICAgICBwYXJhbV92YWx1ZXMgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBub2RlID0gPG9w
dGltaXplZCBvdXQ+CiAgICAgICAgaSA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIG5fcGFyYW1z
ID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgX19mdW5jX18gPSAiZ19zaWduYWxfZW1pdF92YWxp
c3QiCiM3ICAweDAwMDA3ZmZmZWU4Yjc2NmYgaW4gZ19zaWduYWxfZW1pdCAoaW5zdGFuY2U9aW5z
dGFuY2VAZW50cnk9MHhhMTBhMTAsIHNpZ25hbF9pZD08b3B0aW1pemVkIG91dD4sIGRldGFpbD1k
ZXRhaWxAZW50cnk9MCkgYXQgZ3NpZ25hbC5jOjM0NDcKICAgICAgICB2YXJfYXJncyA9IHt7Z3Bf
b2Zmc2V0ID0gMjQsIGZwX29mZnNldCA9IDQ4LCBvdmVyZmxvd19hcmdfYXJlYSA9IDB4N2ZmZmZm
ZmZkYWQwLCByZWdfc2F2ZV9hcmVhID0gMHg3ZmZmZmZmZmRhMTB9fQojOCAgMHgwMDAwN2ZmZmYw
MmJlY2Q0IGluIGd0a193aWRnZXRfZXZlbnRfaW50ZXJuYWwgKHdpZGdldD13aWRnZXRAZW50cnk9
MHhhMTBhMTAgW1dlYktpdFdlYlZpZXddLCBldmVudD1ldmVudEBlbnRyeT0weDQ2OTJiMCkgYXQg
Z3Rrd2lkZ2V0LmM6NzczMgogICAgICAgIHNpZ25hbF9udW0gPSA8b3B0aW1pemVkIG91dD4KICAg
ICAgICByZXR1cm5fdmFsID0gPG9wdGltaXplZCBvdXQ+Ci0tLVR5cGUgPHJldHVybj4gdG8gY29u
dGludWUsIG9yIHEgPHJldHVybj4gdG8gcXVpdC0tLQogICAgICAgIGhhbmRsZWQgPSAwCiAgICAg
ICAgX19mdW5jX18gPSAiZ3RrX3dpZGdldF9ldmVudF9pbnRlcm5hbCIKIzkgIDB4MDAwMDdmZmZm
MDJjMGUwYSBpbiBndGtfd2lkZ2V0X2V2ZW50ICh3aWRnZXQ9d2lkZ2V0QGVudHJ5PTB4YTEwYTEw
IFtXZWJLaXRXZWJWaWV3XSwgZXZlbnQ9ZXZlbnRAZW50cnk9MHg0NjkyYjApIGF0IGd0a3dpZGdl
dC5jOjczMDIKICAgICAgICBfX2Z1bmNfXyA9ICJndGtfd2lkZ2V0X2V2ZW50IgojMTAgMHgwMDAw
N2ZmZmYwMTcwYTRlIGluIHByb3BhZ2F0ZV9ldmVudF91cCAodG9wbW9zdD08b3B0aW1pemVkIG91
dD4sIGV2ZW50PTxvcHRpbWl6ZWQgb3V0Piwgd2lkZ2V0PTB4YTEwYTEwIFtXZWJLaXRXZWJWaWV3
XSkgYXQgZ3RrbWFpbi5jOjI1NzgKICAgICAgICB0bXAgPSA8b3B0aW1pemVkIG91dD4KICAgICAg
ICBoYW5kbGVkX2V2ZW50ID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgaGFuZGxlZF9ldmVudCA9
IDAKIzExIDB4MDAwMDdmZmZmMDE3MGE0ZSBpbiBwcm9wYWdhdGVfZXZlbnQgKHdpZGdldD08b3B0
aW1pemVkIG91dD4sIGV2ZW50PTB4NDY5MmIwLCBjYXB0dXJlZD08b3B0aW1pemVkIG91dD4sIHRv
cG1vc3Q9MHgwKSBhdCBndGttYWluLmM6MjY4MAogICAgICAgIGhhbmRsZWRfZXZlbnQgPSAwCiMx
MiAweDAwMDA3ZmZmZjAxNzJiNzAgaW4gZ3RrX21haW5fZG9fZXZlbnQgKGV2ZW50PTxvcHRpbWl6
ZWQgb3V0PikgYXQgZ3RrbWFpbi5jOjE5MTEKICAgICAgICB3aW5kb3dfZ3JvdXAgPSA8b3B0aW1p
emVkIG91dD4KICAgICAgICBkZXZpY2UgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICB0bXBfbGlz
dCA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIGV2ZW50X3dpZGdldCA9IDxvcHRpbWl6ZWQgb3V0
PgogICAgICAgIGV2ZW50ID0gMHg0NjkyYjAKIzEzIDB4MDAwMDdmZmZlZmM4MDMwNSBpbiBfZ2Rr
X2V2ZW50X2VtaXQgKGV2ZW50PWV2ZW50QGVudHJ5PTB4NDY5MmIwKSBhdCBnZGtldmVudHMuYzo3
MwojMTQgMHgwMDAwN2ZmZmVmY2RjZGYyIGluIGdka19ldmVudF9zb3VyY2VfZGlzcGF0Y2ggKGJh
c2U9PG9wdGltaXplZCBvdXQ+LCBjYWxsYmFjaz08b3B0aW1pemVkIG91dD4sIGRhdGE9PG9wdGlt
aXplZCBvdXQ+KSBhdCBnZGtldmVudHNvdXJjZS5jOjEyNAogICAgICAgIHNvdXJjZSA9IDxvcHRp
bWl6ZWQgb3V0PgogICAgICAgIGRpc3BsYXkgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBldmVu
dCA9IDB4NDY5MmIwCiMxNSAweDAwMDA3ZmZmZWU1YzJiYjcgaW4gZ19tYWluX2Rpc3BhdGNoIChj
b250ZXh0PTB4NDVjNDIwKSBhdCBnbWFpbi5jOjMxNDgKICAgICAgICBkaXNwYXRjaCA9IDB4N2Zm
ZmVmY2RjZGQwIDxnZGtfZXZlbnRfc291cmNlX2Rpc3BhdGNoPgogICAgICAgIHByZXZfc291cmNl
ID0gMHgwCiAgICAgICAgd2FzX2luX2NhbGwgPSAwCiAgICAgICAgdXNlcl9kYXRhID0gMHgwCiAg
ICAgICAgY2FsbGJhY2sgPSAweDAKICAgICAgICBjYl9mdW5jcyA9IDB4MAogICAgICAgIGNiX2Rh
dGEgPSAweDAKICAgICAgICBuZWVkX2Rlc3Ryb3kgPSA8b3B0aW1pemVkIG91dD4KICAgICAgICBz
b3VyY2UgPSAweDQ2OTgyMAogICAgICAgIGN1cnJlbnQgPSAweDk3N2JiMAogICAgICAgIGkgPSAw
CiMxNiAweDAwMDA3ZmZmZWU1YzJiYjcgaW4gZ19tYWluX2NvbnRleHRfZGlzcGF0Y2ggKGNvbnRl
eHQ9Y29udGV4dEBlbnRyeT0weDQ1YzQyMCkgYXQgZ21haW4uYzozODEzCiMxNyAweDAwMDA3ZmZm
ZWU1YzJmNjAgaW4gZ19tYWluX2NvbnRleHRfaXRlcmF0ZSAoY29udGV4dD0weDQ1YzQyMCwgYmxv
Y2s9YmxvY2tAZW50cnk9MSwgZGlzcGF0Y2g9ZGlzcGF0Y2hAZW50cnk9MSwgc2VsZj08b3B0aW1p
emVkIG91dD4pIGF0IGdtYWluLmM6Mzg4NgogICAgICAgIG1heF9wcmlvcml0eSA9IDAKICAgICAg
ICB0aW1lb3V0ID0gMAogICAgICAgIHNvbWVfcmVhZHkgPSAxCiAgICAgICAgbmZkcyA9IDxvcHRp
bWl6ZWQgb3V0PgogICAgICAgIGFsbG9jYXRlZF9uZmRzID0gNgogICAgICAgIGZkcyA9IDB4Y2Mz
NTYwCiMxOCAweDAwMDA3ZmZmZWU1YzMyNzIgaW4gZ19tYWluX2xvb3BfcnVuIChsb29wPTB4YzQy
NTIwKSBhdCBnbWFpbi5jOjQwODIKICAgICAgICBfX2Z1bmNfXyA9ICJnX21haW5fbG9vcF9ydW4i
CiMxOSAweDAwMDA3ZmZmZjAxNzFjYTUgaW4gZ3RrX21haW4gKCkgYXQgZ3RrbWFpbi5jOjEzMjIK
ICAgICAgICBsb29wID0gMHhjNDI1MjAKIzIwIDB4MDAwMDAwMDAwMDQwY2IzZSBpbiBtYWluIChh
cmdjPTxvcHRpbWl6ZWQgb3V0PiwgYXJndj08b3B0aW1pemVkIG91dD4pIGF0IC9ob21lL2picnVt
bWVyL0Rvd25sb2Fkcy93ZWJraXRndGstMi4xOC41L1Rvb2xzL01pbmlCcm93c2VyL2d0ay9tYWlu
LmM6NTU2CiAgICAgICAgY29udGV4dCA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHdlYmtpdFNl
dHRpbmdzID0gPG9wdGltaXplZCBvdXQ+CiAgICAgICAgZXJyb3IgPSAweDAKICAgICAgICB3ZWJD
b250ZXh0ID0gMHg5NzUxMDAgW1dlYktpdFdlYkNvbnRleHRdCiAgICAgICAgc2luZ2xlcHJvY2Vz
cyA9IDxvcHRpbWl6ZWQgb3V0PgogICAgICAgIHVzZXJDb250ZW50TWFuYWdlciA9IDxvcHRpbWl6
ZWQgb3V0PgoKICAgICAgICBtYWluV2luZG93ID0gMHg5NzgzMzAgW0Jyb3dzZXJXaW5kb3ddCi0t
LVR5cGUgPHJldHVybj4gdG8gY29udGludWUsIG9yIHEgPHJldHVybj4gdG8gcXVpdC0tLQogICAg
ICAgIGZpcnN0VGFiID0gPG9wdGltaXplZCBvdXQ+CihnZGIpIAooZ2RiKSAKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>332155</attachid>
            <date>2018-01-24 07:00:27 -0800</date>
            <delta_ts>2018-01-24 08:08:54 -0800</delta_ts>
            <desc>Add GDK_TOUCH_CANCEL support</desc>
            <filename>0001-Add-GDK_TOUCH_CANCEL-support.patch</filename>
            <type>text/plain</type>
            <size>5965</size>
            <attacher name="Jan-Michael Brummer">jan.brummer</attacher>
            
              <data encoding="base64">RnJvbSAwM2Y4N2FkNjliMjVlMzFjZDY0OTUyYWY3OTgwYzMwNzk5NDdkMjdmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKYW4tTWljaGFlbCBCcnVtbWVyIDxqYW4uYnJ1bW1lckB0YWJv
cy5vcmc+CkRhdGU6IFdlZCwgMjQgSmFuIDIwMTggMTU6NTc6MjMgKzAxMDAKU3ViamVjdDogW1BB
VENIIHhzZXJ2ZXJdIEFkZCBHREtfVE9VQ0hfQ0FOQ0VMIHN1cHBvcnQKCmh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5OTYKLS0tCiBTb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE4ICsrKysrKysrKysrKysrKysr
KwogU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAgICAgICAgICAg
fCAgMyArKysKIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwu
Y3BwICAgIHwgIDIgKysKIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlld0Jhc2UuY3BwIHwgIDkgKysrKysrKy0tCiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9ndGsv
R2VzdHVyZUNvbnRyb2xsZXIuY3BwICAgICB8ICA0ICsrKy0KIDUgZmlsZXMgY2hhbmdlZCwgMzMg
aW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYzOTM4OTBiODNhLi4w
YzUyMDlkMzhlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxOC0wMS0yNCAgSmFuLU1p
Y2hhZWwgQnJ1bW1lciAgPGphbi5icnVtbWVyQHRhYm9zLm9yZz4KKworICAgICAgICBBZGQgbWlz
c2luZyBHREtfVE9VQ0hfQ0FOQ0VMIHN1cHBvcnQgd2hpY2ggZml4ZXMgcGFnZSBjcmFzaGVzIGR1
ZSB0byBjYW5jZWxsZWQgZ2VzdHVyZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODE5OTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIFNoYXJlZC9ndGsvV2ViRXZlbnRGYWN0b3J5LmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJUb3VjaEV2ZW50KToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9QYWdlQ2xpZW50SW1wbC5jcHA6CisgICAgICAgIChXZWJL
aXQ6OlBhZ2VDbGllbnRJbXBsOjpkb25lV2l0aFRvdWNoRXZlbnQpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlLmNwcDoKKyAgICAgICAgKHRvdWNoUG9pbnRT
dGF0ZUZvckV2ZW50cyk6CisgICAgICAgICh3ZWJraXRXZWJWaWV3QmFzZUdldFRvdWNoUG9pbnRz
Rm9yRXZlbnQpOgorICAgICAgICAod2Via2l0V2ViVmlld0Jhc2VUb3VjaEV2ZW50KToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvZ3RrL0dlc3R1cmVDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6R2VzdHVyZUNvbnRyb2xsZXI6OmhhbmRsZUV2ZW50KToKKwogMjAxOC0wMS0yMyAgRXJpYyBD
YXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXNpZ24gTm93UGxh
eWluZyBzdGF0dXMgd2hlbiBubyBtZWRpYSBlbGVtZW50IGlzIGVsaWdpYmxlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvV2ViRXZlbnRGYWN0b3J5LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL2d0ay9XZWJFdmVudEZhY3RvcnkuY3BwCmluZGV4IDdjMzY2MzQxZDhiLi4w
Mzk1ZjM5NTY1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL1dlYkV2ZW50
RmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9y
eS5jcHAKQEAgLTI0Nyw2ICsyNDcsOSBAQCBXZWJUb3VjaEV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6
Y3JlYXRlV2ViVG91Y2hFdmVudChjb25zdCBHZGtFdmVudCogZXZlbnQsIFZlY3RvcgogICAgIGNh
c2UgR0RLX1RPVUNIX0VORDoKICAgICAgICAgdHlwZSA9IFdlYkV2ZW50OjpUb3VjaEVuZDsKICAg
ICAgICAgYnJlYWs7CisgICAgY2FzZSBHREtfVE9VQ0hfQ0FOQ0VMOgorICAgICAgICB0eXBlID0g
V2ViRXZlbnQ6OlRvdWNoQ2FuY2VsOworICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwuY3BwCmluZGV4IGVkOGE5MTA4MWRlLi4z
YTg2NDZjNzkwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9Q
YWdlQ2xpZW50SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9Q
YWdlQ2xpZW50SW1wbC5jcHAKQEAgLTM3Miw2ICszNzIsOCBAQCB2b2lkIFBhZ2VDbGllbnRJbXBs
Ojpkb25lV2l0aFRvdWNoRXZlbnQoY29uc3QgTmF0aXZlV2ViVG91Y2hFdmVudCYgZXZlbnQsIGJv
b2wgdwogICAgICAgICBwb2ludGVyRXZlbnQtPm1vdGlvbi5zdGF0ZSA9IHRvdWNoRXZlbnQtPnRv
dWNoLnN0YXRlIHwgR0RLX0JVVFRPTjFfTUFTSzsKICAgICB9IGVsc2UgewogICAgICAgICBzd2l0
Y2ggKHRvdWNoRXZlbnQtPnR5cGUpIHsKKyAgICAgICAgY2FzZSBHREtfVE9VQ0hfQ0FOQ0VMOgor
ICAgICAgICAgICAgLy8gRmFsbC10aHJvdWdoCiAgICAgICAgIGNhc2UgR0RLX1RPVUNIX0VORDoK
ICAgICAgICAgICAgIHBvaW50ZXJFdmVudC5yZXNldChnZGtfZXZlbnRfbmV3KEdES19CVVRUT05f
UkVMRUFTRSkpOwogICAgICAgICAgICAgcG9pbnRlckV2ZW50LT5idXR0b24uc3RhdGUgPSB0b3Vj
aEV2ZW50LT50b3VjaC5zdGF0ZSB8IEdES19CVVRUT04xX01BU0s7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCmluZGV4IGNh
NmNhODllNjFjLi4zOGE1YmUxZjIyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKQEAgLTg5NSw2ICs4OTUsOCBAQCBz
dGF0aWMgaW5saW5lIFdlYlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hQb2ludFN0YXRlIHRvdWNo
UG9pbnRTdGF0ZUZvckV2ZW50cyhjbwogICAgICAgICByZXR1cm4gV2ViUGxhdGZvcm1Ub3VjaFBv
aW50OjpUb3VjaFByZXNzZWQ7CiAgICAgY2FzZSBHREtfVE9VQ0hfRU5EOgogICAgICAgICByZXR1
cm4gV2ViUGxhdGZvcm1Ub3VjaFBvaW50OjpUb3VjaFJlbGVhc2VkOworICAgIGNhc2UgR0RLX1RP
VUNIX0NBTkNFTDoKKyAgICAgICAgcmV0dXJuIFdlYlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hD
YW5jZWxsZWQ7CiAgICAgZGVmYXVsdDoKICAgICAgICAgcmV0dXJuIFdlYlBsYXRmb3JtVG91Y2hQ
b2ludDo6VG91Y2hTdGF0aW9uYXJ5OwogICAgIH0KQEAgLTkwMywxMyArOTA1LDE0IEBAIHN0YXRp
YyBpbmxpbmUgV2ViUGxhdGZvcm1Ub3VjaFBvaW50OjpUb3VjaFBvaW50U3RhdGUgdG91Y2hQb2lu
dFN0YXRlRm9yRXZlbnRzKGNvCiBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZUdldFRvdWNo
UG9pbnRzRm9yRXZlbnQoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBHZGtFdmVudCog
ZXZlbnQsIFZlY3RvcjxXZWJQbGF0Zm9ybVRvdWNoUG9pbnQ+JiB0b3VjaFBvaW50cykKIHsKICAg
ICBXZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUqIHByaXYgPSB3ZWJWaWV3QmFzZS0+cHJpdjsKLSAg
ICB0b3VjaFBvaW50cy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KGV2ZW50LT50eXBlID09IEdES19U
T1VDSF9FTkQgPyBwcml2LT50b3VjaEV2ZW50cy5zaXplKCkgKyAxIDogcHJpdi0+dG91Y2hFdmVu
dHMuc2l6ZSgpKTsKKyAgICBib29sIHRvdWNoRW5kID0gKGV2ZW50LT50eXBlID09IEdES19UT1VD
SF9FTkQpIHx8IChldmVudC0+dHlwZSA9PSBHREtfVE9VQ0hfQ0FOQ0VMKTsKKyAgICB0b3VjaFBv
aW50cy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KHRvdWNoRW5kID8gcHJpdi0+dG91Y2hFdmVudHMu
c2l6ZSgpICsgMSA6IHByaXYtPnRvdWNoRXZlbnRzLnNpemUoKSk7CiAKICAgICBmb3IgKGNvbnN0
IGF1dG8mIGl0IDogcHJpdi0+dG91Y2hFdmVudHMpCiAgICAgICAgIGFwcGVuZFRvdWNoRXZlbnQo
dG91Y2hQb2ludHMsIGl0LnZhbHVlLmdldCgpLCB0b3VjaFBvaW50U3RhdGVGb3JFdmVudHMoaXQu
dmFsdWUuZ2V0KCksIGV2ZW50KSk7CiAKICAgICAvLyBUb3VjaCB3YXMgYWxyZWFkeSByZW1vdmVk
IGZyb20gdGhlIFRvdWNoRXZlbnRzTWFwLCBhZGQgaXQgaGVyZS4KLSAgICBpZiAoZXZlbnQtPnR5
cGUgPT0gR0RLX1RPVUNIX0VORCkKKyAgICBpZiAodG91Y2hFbmQpCiAgICAgICAgIGFwcGVuZFRv
dWNoRXZlbnQodG91Y2hQb2ludHMsIGV2ZW50LCBXZWJQbGF0Zm9ybVRvdWNoUG9pbnQ6OlRvdWNo
UmVsZWFzZWQpOwogfQogCkBAIC05MzcsNiArOTQwLDggQEAgc3RhdGljIGdib29sZWFuIHdlYmtp
dFdlYlZpZXdCYXNlVG91Y2hFdmVudChHdGtXaWRnZXQqIHdpZGdldCwgR2RrRXZlbnRUb3VjaCog
ZXYKICAgICAgICAgaXQtPnZhbHVlLnJlc2V0KGdka19ldmVudF9jb3B5KHRvdWNoRXZlbnQpKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgfQorICAgIGNhc2UgR0RLX1RPVUNIX0NBTkNFTDoKKyAgICAg
ICAgLy8gRmFsbC10aHJvdWdoCiAgICAgY2FzZSBHREtfVE9VQ0hfRU5EOgogICAgICAgICBBU1NF
UlQocHJpdi0+dG91Y2hFdmVudHMuY29udGFpbnMoc2VxdWVuY2UpKTsKICAgICAgICAgcHJpdi0+
dG91Y2hFdmVudHMucmVtb3ZlKHNlcXVlbmNlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL2d0ay9HZXN0dXJlQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9ndGsvR2VzdHVyZUNvbnRyb2xsZXIuY3BwCmluZGV4IGQ3ODNiMmZiMjJjLi5mNTFjNjQw
MTNkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvZ3RrL0dlc3R1cmVDb250
cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9ndGsvR2VzdHVyZUNvbnRy
b2xsZXIuY3BwCkBAIC00OSwxMCArNDksMTIgQEAgR2VzdHVyZUNvbnRyb2xsZXI6Okdlc3R1cmVD
b250cm9sbGVyKFdlYlBhZ2VQcm94eSYgcGFnZSkKIGJvb2wgR2VzdHVyZUNvbnRyb2xsZXI6Omhh
bmRsZUV2ZW50KGNvbnN0IEdka0V2ZW50KiBldmVudCkKIHsKICAgICBib29sIHdhc1Byb2Nlc3Np
bmdHZXN0dXJlcyA9IGlzUHJvY2Vzc2luZ0dlc3R1cmVzKCk7CisgICAgYm9vbCB0b3VjaEVuZDsK
ICAgICBtX2RyYWdHZXN0dXJlLmhhbmRsZUV2ZW50KGV2ZW50KTsKICAgICBtX3N3aXBlR2VzdHVy
ZS5oYW5kbGVFdmVudChldmVudCk7CiAgICAgbV96b29tR2VzdHVyZS5oYW5kbGVFdmVudChldmVu
dCk7Ci0gICAgcmV0dXJuIGV2ZW50LT50eXBlID09IEdES19UT1VDSF9FTkQgPyB3YXNQcm9jZXNz
aW5nR2VzdHVyZXMgOiBpc1Byb2Nlc3NpbmdHZXN0dXJlcygpOworICAgIHRvdWNoRW5kID0gKGV2
ZW50LT50eXBlID09IEdES19UT1VDSF9FTkQpIHx8IChldmVudC0+dHlwZSA9PSBHREtfVE9VQ0hf
Q0FOQ0VMKTsKKyAgICByZXR1cm4gdG91Y2hFbmQgPyB3YXNQcm9jZXNzaW5nR2VzdHVyZXMgOiBp
c1Byb2Nlc3NpbmdHZXN0dXJlcygpOwogfQogCiBib29sIEdlc3R1cmVDb250cm9sbGVyOjppc1By
b2Nlc3NpbmdHZXN0dXJlcygpIGNvbnN0Ci0tIAoyLjE0LjMKCg==
</data>
<flag name="review"
          id="351113"
          type_id="1"
          status="+"
          setter="mcatanzaro"
    />
    <flag name="commit-queue"
          id="351124"
          type_id="3"
          status="-"
          setter="mcatanzaro"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>332167</attachid>
            <date>2018-01-24 08:08:54 -0800</date>
            <delta_ts>2018-01-24 08:33:01 -0800</delta_ts>
            <desc>Add GDK_TOUCH_CANCEL support - V2</desc>
            <filename>0001-Add-GDK_TOUCH_CANCEL-support.patch</filename>
            <type>text/plain</type>
            <size>6416</size>
            <attacher name="Jan-Michael Brummer">jan.brummer</attacher>
            
              <data encoding="base64">RnJvbSBhYzJkMjJlOGRmZTBmN2FlNWNjMjU2OGIzMzE1NzQ4YWI4ZGE4OTU2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKYW4tTWljaGFlbCBCcnVtbWVyIDxqYW4uYnJ1bW1lckB0YWJv
cy5vcmc+CkRhdGU6IFdlZCwgMjQgSmFuIDIwMTggMTU6NTc6MjMgKzAxMDAKU3ViamVjdDogW1BB
VENIIHhzZXJ2ZXJdIEFkZCBHREtfVE9VQ0hfQ0FOQ0VMIHN1cHBvcnQKCmh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5OTYKLS0tCiBTb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE4ICsrKysrKysrKysrKysrKysr
KwogU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAgICAgICAgICAg
fCAgMyArKysKIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwu
Y3BwICAgIHwgIDMgKysrCiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdl
YlZpZXdCYXNlLmNwcCB8IDEwICsrKysrKysrLS0KIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2d0
ay9HZXN0dXJlQ29udHJvbGxlci5jcHAgICAgIHwgIDQgKysrLQogNSBmaWxlcyBjaGFuZ2VkLCAz
NSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZjM5Mzg5MGI4M2Eu
LjkzMmRjYmY0YjliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTAxLTI0ICBKYW4t
TWljaGFlbCBCcnVtbWVyICA8amFuLmJydW1tZXJAdGFib3Mub3JnPgorICAgICAgICBbR1RLXSBQ
YWdlIGNyYXNoIGFmdGVyIHN3aXBlIGdlc3R1cmUgcnVubmluZyBHTk9NRTMgdW5kZXIgd2F5bGFu
ZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTk2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIG1p
c3NpbmcgR0RLX1RPVUNIX0NBTkNFTCBzdXBwb3J0IHdoaWNoIGZpeGVzIHBhZ2UgY3Jhc2hlcyBk
dWUgdG8gY2FuY2VsbGVkIGdlc3R1cmVzLgorICAgICAgICAqIFNoYXJlZC9ndGsvV2ViRXZlbnRG
YWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJU
b3VjaEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9QYWdlQ2xpZW50SW1wbC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRJbXBsOjpkb25lV2l0aFRvdWNoRXZlbnQp
OgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlLmNwcDoKKyAg
ICAgICAgKHRvdWNoUG9pbnRTdGF0ZUZvckV2ZW50cyk6CisgICAgICAgICh3ZWJraXRXZWJWaWV3
QmFzZUdldFRvdWNoUG9pbnRzRm9yRXZlbnQpOgorICAgICAgICAod2Via2l0V2ViVmlld0Jhc2VU
b3VjaEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvZ3RrL0dlc3R1cmVDb250cm9sbGVyLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6R2VzdHVyZUNvbnRyb2xsZXI6OmhhbmRsZUV2ZW50KToKKwog
MjAxOC0wMS0yMyAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSZXNpZ24gTm93UGxheWluZyBzdGF0dXMgd2hlbiBubyBtZWRpYSBlbGVtZW50IGlzIGVs
aWdpYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvV2ViRXZlbnRGYWN0
b3J5LmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2d0ay9XZWJFdmVudEZhY3RvcnkuY3BwCmlu
ZGV4IDdjMzY2MzQxZDhiLi4wMzk1ZjM5NTY1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
aGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQv
Z3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAKQEAgLTI0Nyw2ICsyNDcsOSBAQCBXZWJUb3VjaEV2ZW50
IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViVG91Y2hFdmVudChjb25zdCBHZGtFdmVudCogZXZl
bnQsIFZlY3RvcgogICAgIGNhc2UgR0RLX1RPVUNIX0VORDoKICAgICAgICAgdHlwZSA9IFdlYkV2
ZW50OjpUb3VjaEVuZDsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBHREtfVE9VQ0hfQ0FOQ0VM
OgorICAgICAgICB0eXBlID0gV2ViRXZlbnQ6OlRvdWNoQ2FuY2VsOworICAgICAgICBicmVhazsK
ICAgICBkZWZhdWx0OgogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNw
cCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwuY3BwCmlu
ZGV4IGVkOGE5MTA4MWRlLi45MTQ4Yzc1ZjYzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL2d0ay9QYWdlQ2xpZW50SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL2d0ay9QYWdlQ2xpZW50SW1wbC5jcHAKQEAgLTQ5LDYgKzQ5LDcgQEAKICNp
bmNsdWRlIDxXZWJDb3JlL1JlZlB0ckNhaXJvLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmlu
Zy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9Db21w
aWxlci5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIApAQCAtMzcyLDYgKzM3Myw4IEBA
IHZvaWQgUGFnZUNsaWVudEltcGw6OmRvbmVXaXRoVG91Y2hFdmVudChjb25zdCBOYXRpdmVXZWJU
b3VjaEV2ZW50JiBldmVudCwgYm9vbCB3CiAgICAgICAgIHBvaW50ZXJFdmVudC0+bW90aW9uLnN0
YXRlID0gdG91Y2hFdmVudC0+dG91Y2guc3RhdGUgfCBHREtfQlVUVE9OMV9NQVNLOwogICAgIH0g
ZWxzZSB7CiAgICAgICAgIHN3aXRjaCAodG91Y2hFdmVudC0+dHlwZSkgeworICAgICAgICBjYXNl
IEdES19UT1VDSF9DQU5DRUw6CisgICAgICAgICAgICBGQUxMVEhST1VHSDsKICAgICAgICAgY2Fz
ZSBHREtfVE9VQ0hfRU5EOgogICAgICAgICAgICAgcG9pbnRlckV2ZW50LnJlc2V0KGdka19ldmVu
dF9uZXcoR0RLX0JVVFRPTl9SRUxFQVNFKSk7CiAgICAgICAgICAgICBwb2ludGVyRXZlbnQtPmJ1
dHRvbi5zdGF0ZSA9IHRvdWNoRXZlbnQtPnRvdWNoLnN0YXRlIHwgR0RLX0JVVFRPTjFfTUFTSzsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmll
d0Jhc2UuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3
QmFzZS5jcHAKaW5kZXggY2E2Y2E4OWU2MWMuLjQ3YjdkNjg5ZjY5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlLmNwcApAQCAt
NjgsNiArNjgsNyBAQAogI2luY2x1ZGUgPHd0Zi9nbGliL0dSZWZQdHIuaD4KICNpbmNsdWRlIDx3
dGYvZ2xpYi9XVEZHVHlwZS5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KKyNpbmNs
dWRlIDx3dGYvQ29tcGlsZXIuaD4KIAogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKICNpbmNs
dWRlICJXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5LmgiCkBAIC04OTUsNiArODk2LDggQEAgc3Rh
dGljIGlubGluZSBXZWJQbGF0Zm9ybVRvdWNoUG9pbnQ6OlRvdWNoUG9pbnRTdGF0ZSB0b3VjaFBv
aW50U3RhdGVGb3JFdmVudHMoY28KICAgICAgICAgcmV0dXJuIFdlYlBsYXRmb3JtVG91Y2hQb2lu
dDo6VG91Y2hQcmVzc2VkOwogICAgIGNhc2UgR0RLX1RPVUNIX0VORDoKICAgICAgICAgcmV0dXJu
IFdlYlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hSZWxlYXNlZDsKKyAgICBjYXNlIEdES19UT1VD
SF9DQU5DRUw6CisgICAgICAgIHJldHVybiBXZWJQbGF0Zm9ybVRvdWNoUG9pbnQ6OlRvdWNoQ2Fu
Y2VsbGVkOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIHJldHVybiBXZWJQbGF0Zm9ybVRvdWNoUG9p
bnQ6OlRvdWNoU3RhdGlvbmFyeTsKICAgICB9CkBAIC05MDMsMTMgKzkwNiwxNCBAQCBzdGF0aWMg
aW5saW5lIFdlYlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hQb2ludFN0YXRlIHRvdWNoUG9pbnRT
dGF0ZUZvckV2ZW50cyhjbwogc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VHZXRUb3VjaFBv
aW50c0ZvckV2ZW50KFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgR2RrRXZlbnQqIGV2
ZW50LCBWZWN0b3I8V2ViUGxhdGZvcm1Ub3VjaFBvaW50PiYgdG91Y2hQb2ludHMpCiB7CiAgICAg
V2ViS2l0V2ViVmlld0Jhc2VQcml2YXRlKiBwcml2ID0gd2ViVmlld0Jhc2UtPnByaXY7Ci0gICAg
dG91Y2hQb2ludHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShldmVudC0+dHlwZSA9PSBHREtfVE9V
Q0hfRU5EID8gcHJpdi0+dG91Y2hFdmVudHMuc2l6ZSgpICsgMSA6IHByaXYtPnRvdWNoRXZlbnRz
LnNpemUoKSk7CisgICAgYm9vbCB0b3VjaEVuZCA9IChldmVudC0+dHlwZSA9PSBHREtfVE9VQ0hf
RU5EKSB8fCAoZXZlbnQtPnR5cGUgPT0gR0RLX1RPVUNIX0NBTkNFTCk7CisgICAgdG91Y2hQb2lu
dHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eSh0b3VjaEVuZCA/IHByaXYtPnRvdWNoRXZlbnRzLnNp
emUoKSArIDEgOiBwcml2LT50b3VjaEV2ZW50cy5zaXplKCkpOwogCiAgICAgZm9yIChjb25zdCBh
dXRvJiBpdCA6IHByaXYtPnRvdWNoRXZlbnRzKQogICAgICAgICBhcHBlbmRUb3VjaEV2ZW50KHRv
dWNoUG9pbnRzLCBpdC52YWx1ZS5nZXQoKSwgdG91Y2hQb2ludFN0YXRlRm9yRXZlbnRzKGl0LnZh
bHVlLmdldCgpLCBldmVudCkpOwogCiAgICAgLy8gVG91Y2ggd2FzIGFscmVhZHkgcmVtb3ZlZCBm
cm9tIHRoZSBUb3VjaEV2ZW50c01hcCwgYWRkIGl0IGhlcmUuCi0gICAgaWYgKGV2ZW50LT50eXBl
ID09IEdES19UT1VDSF9FTkQpCisgICAgaWYgKHRvdWNoRW5kKQogICAgICAgICBhcHBlbmRUb3Vj
aEV2ZW50KHRvdWNoUG9pbnRzLCBldmVudCwgV2ViUGxhdGZvcm1Ub3VjaFBvaW50OjpUb3VjaFJl
bGVhc2VkKTsKIH0KIApAQCAtOTM3LDYgKzk0MSw4IEBAIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRX
ZWJWaWV3QmFzZVRvdWNoRXZlbnQoR3RrV2lkZ2V0KiB3aWRnZXQsIEdka0V2ZW50VG91Y2gqIGV2
CiAgICAgICAgIGl0LT52YWx1ZS5yZXNldChnZGtfZXZlbnRfY29weSh0b3VjaEV2ZW50KSk7CiAg
ICAgICAgIGJyZWFrOwogICAgIH0KKyAgICBjYXNlIEdES19UT1VDSF9DQU5DRUw6CisgICAgICAg
IEZBTExUSFJPVUdIOwogICAgIGNhc2UgR0RLX1RPVUNIX0VORDoKICAgICAgICAgQVNTRVJUKHBy
aXYtPnRvdWNoRXZlbnRzLmNvbnRhaW5zKHNlcXVlbmNlKSk7CiAgICAgICAgIHByaXYtPnRvdWNo
RXZlbnRzLnJlbW92ZShzZXF1ZW5jZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9ndGsvR2VzdHVyZUNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Z3RrL0dlc3R1cmVDb250cm9sbGVyLmNwcAppbmRleCBkNzgzYjJmYjIyYy4uZjUxYzY0MDEzZDEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2d0ay9HZXN0dXJlQ29udHJvbGxl
ci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvZ3RrL0dlc3R1cmVDb250cm9sbGVy
LmNwcApAQCAtNDksMTAgKzQ5LDEyIEBAIEdlc3R1cmVDb250cm9sbGVyOjpHZXN0dXJlQ29udHJv
bGxlcihXZWJQYWdlUHJveHkmIHBhZ2UpCiBib29sIEdlc3R1cmVDb250cm9sbGVyOjpoYW5kbGVF
dmVudChjb25zdCBHZGtFdmVudCogZXZlbnQpCiB7CiAgICAgYm9vbCB3YXNQcm9jZXNzaW5nR2Vz
dHVyZXMgPSBpc1Byb2Nlc3NpbmdHZXN0dXJlcygpOworICAgIGJvb2wgdG91Y2hFbmQ7CiAgICAg
bV9kcmFnR2VzdHVyZS5oYW5kbGVFdmVudChldmVudCk7CiAgICAgbV9zd2lwZUdlc3R1cmUuaGFu
ZGxlRXZlbnQoZXZlbnQpOwogICAgIG1fem9vbUdlc3R1cmUuaGFuZGxlRXZlbnQoZXZlbnQpOwot
ICAgIHJldHVybiBldmVudC0+dHlwZSA9PSBHREtfVE9VQ0hfRU5EID8gd2FzUHJvY2Vzc2luZ0dl
c3R1cmVzIDogaXNQcm9jZXNzaW5nR2VzdHVyZXMoKTsKKyAgICB0b3VjaEVuZCA9IChldmVudC0+
dHlwZSA9PSBHREtfVE9VQ0hfRU5EKSB8fCAoZXZlbnQtPnR5cGUgPT0gR0RLX1RPVUNIX0NBTkNF
TCk7CisgICAgcmV0dXJuIHRvdWNoRW5kID8gd2FzUHJvY2Vzc2luZ0dlc3R1cmVzIDogaXNQcm9j
ZXNzaW5nR2VzdHVyZXMoKTsKIH0KIAogYm9vbCBHZXN0dXJlQ29udHJvbGxlcjo6aXNQcm9jZXNz
aW5nR2VzdHVyZXMoKSBjb25zdAotLSAKMi4xNC4zCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>332168</attachid>
            <date>2018-01-24 08:33:01 -0800</date>
            <delta_ts>2018-01-24 12:26:04 -0800</delta_ts>
            <desc>Add GDK_TOUCH_CANCEL support - V3</desc>
            <filename>0001-Add-GDK_TOUCH_CANCEL-support.patch</filename>
            <type>text/plain</type>
            <size>6471</size>
            <attacher name="Jan-Michael Brummer">jan.brummer</attacher>
            
              <data encoding="base64">RnJvbSAzOTYxMWRlODJjNGQzMmI4YTZiNjZhNjNiNWI3ODFmN2I1ZGI2MjJmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKYW4tTWljaGFlbCBCcnVtbWVyIDxqYW4uYnJ1bW1lckB0YWJv
cy5vcmc+CkRhdGU6IFdlZCwgMjQgSmFuIDIwMTggMTU6NTc6MjMgKzAxMDAKU3ViamVjdDogW1BB
VENIIHhzZXJ2ZXJdIEFkZCBHREtfVE9VQ0hfQ0FOQ0VMIHN1cHBvcnQKCmh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE5OTYKLS0tCiBTb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE5ICsrKysrKysrKysrKysrKysr
KysKIFNvdXJjZS9XZWJLaXQvU2hhcmVkL2d0ay9XZWJFdmVudEZhY3RvcnkuY3BwICAgICAgICAg
IHwgIDMgKysrCiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBs
LmNwcCAgICB8ICAzICsrKwogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRX
ZWJWaWV3QmFzZS5jcHAgfCAxMCArKysrKysrKy0tCiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9n
dGsvR2VzdHVyZUNvbnRyb2xsZXIuY3BwICAgICB8ICA0ICsrKy0KIDUgZmlsZXMgY2hhbmdlZCwg
MzYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYzOTM4OTBiODNh
Li4yN2E4NDI0ZjQ4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxOC0wMS0yNCAgSmFu
LU1pY2hhZWwgQnJ1bW1lciAgPGphbi5icnVtbWVyQHRhYm9zLm9yZz4KKyAgICAgICAgW0dUS10g
UGFnZSBjcmFzaCBhZnRlciBzd2lwZSBnZXN0dXJlIHJ1bm5pbmcgR05PTUUzIHVuZGVyIHdheWxh
bmQKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgx
OTk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRk
IG1pc3NpbmcgR0RLX1RPVUNIX0NBTkNFTCBzdXBwb3J0IHdoaWNoIGZpeGVzIHBhZ2UgY3Jhc2hl
cyBkdWUgdG8gY2FuY2VsbGVkIGdlc3R1cmVzLgorICAgICAgICAqIFNoYXJlZC9ndGsvV2ViRXZl
bnRGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVX
ZWJUb3VjaEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9QYWdlQ2xpZW50SW1w
bC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRJbXBsOjpkb25lV2l0aFRvdWNoRXZl
bnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlLmNwcDoK
KyAgICAgICAgKHRvdWNoUG9pbnRTdGF0ZUZvckV2ZW50cyk6CisgICAgICAgICh3ZWJraXRXZWJW
aWV3QmFzZUdldFRvdWNoUG9pbnRzRm9yRXZlbnQpOgorICAgICAgICAod2Via2l0V2ViVmlld0Jh
c2VUb3VjaEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvZ3RrL0dlc3R1cmVDb250cm9sbGVy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6R2VzdHVyZUNvbnRyb2xsZXI6OmhhbmRsZUV2ZW50KToK
KwogMjAxOC0wMS0yMyAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSZXNpZ24gTm93UGxheWluZyBzdGF0dXMgd2hlbiBubyBtZWRpYSBlbGVtZW50IGlz
IGVsaWdpYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvV2ViRXZlbnRG
YWN0b3J5LmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2d0ay9XZWJFdmVudEZhY3RvcnkuY3Bw
CmluZGV4IDdjMzY2MzQxZDhiLi4wMzk1ZjM5NTY1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9TaGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAKQEAgLTI0Nyw2ICsyNDcsOSBAQCBXZWJUb3VjaEV2
ZW50IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViVG91Y2hFdmVudChjb25zdCBHZGtFdmVudCog
ZXZlbnQsIFZlY3RvcgogICAgIGNhc2UgR0RLX1RPVUNIX0VORDoKICAgICAgICAgdHlwZSA9IFdl
YkV2ZW50OjpUb3VjaEVuZDsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBHREtfVE9VQ0hfQ0FO
Q0VMOgorICAgICAgICB0eXBlID0gV2ViRXZlbnQ6OlRvdWNoQ2FuY2VsOworICAgICAgICBicmVh
azsKICAgICBkZWZhdWx0OgogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBs
LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwuY3Bw
CmluZGV4IGVkOGE5MTA4MWRlLi4xMjY3Njk2MTIxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL2d0ay9QYWdlQ2xpZW50SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL2d0ay9QYWdlQ2xpZW50SW1wbC5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAK
ICNpbmNsdWRlIDxXZWJDb3JlL0V2ZW50TmFtZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0d0a1V0
aWxpdGllcy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVmUHRyQ2Fpcm8uaD4KKyNpbmNsdWRlIDx3
dGYvQ29tcGlsZXIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjaW5jbHVkZSA8
d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTM3Miw2ICszNzMsOCBAQCB2b2lkIFBhZ2VDbGll
bnRJbXBsOjpkb25lV2l0aFRvdWNoRXZlbnQoY29uc3QgTmF0aXZlV2ViVG91Y2hFdmVudCYgZXZl
bnQsIGJvb2wgdwogICAgICAgICBwb2ludGVyRXZlbnQtPm1vdGlvbi5zdGF0ZSA9IHRvdWNoRXZl
bnQtPnRvdWNoLnN0YXRlIHwgR0RLX0JVVFRPTjFfTUFTSzsKICAgICB9IGVsc2UgewogICAgICAg
ICBzd2l0Y2ggKHRvdWNoRXZlbnQtPnR5cGUpIHsKKyAgICAgICAgY2FzZSBHREtfVE9VQ0hfQ0FO
Q0VMOgorICAgICAgICAgICAgRkFMTFRIUk9VR0g7CiAgICAgICAgIGNhc2UgR0RLX1RPVUNIX0VO
RDoKICAgICAgICAgICAgIHBvaW50ZXJFdmVudC5yZXNldChnZGtfZXZlbnRfbmV3KEdES19CVVRU
T05fUkVMRUFTRSkpOwogICAgICAgICAgICAgcG9pbnRlckV2ZW50LT5idXR0b24uc3RhdGUgPSB0
b3VjaEV2ZW50LT50b3VjaC5zdGF0ZSB8IEdES19CVVRUT04xX01BU0s7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCmluZGV4
IGNhNmNhODllNjFjLi4wZjE2NzNhNDFkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKQEAgLTY0LDYgKzY0LDcgQEAK
ICNpbmNsdWRlIDxnbGliL2dpMThuLWxpYi5oPgogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRl
IDxwYWwvc3lzdGVtL1NsZWVwRGlzYWJsZXIuaD4KKyNpbmNsdWRlIDx3dGYvQ29tcGlsZXIuaD4K
ICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9nbGliL0dSZWZQdHIuaD4K
ICNpbmNsdWRlIDx3dGYvZ2xpYi9XVEZHVHlwZS5oPgpAQCAtODk1LDYgKzg5Niw4IEBAIHN0YXRp
YyBpbmxpbmUgV2ViUGxhdGZvcm1Ub3VjaFBvaW50OjpUb3VjaFBvaW50U3RhdGUgdG91Y2hQb2lu
dFN0YXRlRm9yRXZlbnRzKGNvCiAgICAgICAgIHJldHVybiBXZWJQbGF0Zm9ybVRvdWNoUG9pbnQ6
OlRvdWNoUHJlc3NlZDsKICAgICBjYXNlIEdES19UT1VDSF9FTkQ6CiAgICAgICAgIHJldHVybiBX
ZWJQbGF0Zm9ybVRvdWNoUG9pbnQ6OlRvdWNoUmVsZWFzZWQ7CisgICAgY2FzZSBHREtfVE9VQ0hf
Q0FOQ0VMOgorICAgICAgICByZXR1cm4gV2ViUGxhdGZvcm1Ub3VjaFBvaW50OjpUb3VjaENhbmNl
bGxlZDsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gV2ViUGxhdGZvcm1Ub3VjaFBvaW50
OjpUb3VjaFN0YXRpb25hcnk7CiAgICAgfQpAQCAtOTAzLDEzICs5MDYsMTQgQEAgc3RhdGljIGlu
bGluZSBXZWJQbGF0Zm9ybVRvdWNoUG9pbnQ6OlRvdWNoUG9pbnRTdGF0ZSB0b3VjaFBvaW50U3Rh
dGVGb3JFdmVudHMoY28KIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlR2V0VG91Y2hQb2lu
dHNGb3JFdmVudChXZWJLaXRXZWJWaWV3QmFzZSogd2ViVmlld0Jhc2UsIEdka0V2ZW50KiBldmVu
dCwgVmVjdG9yPFdlYlBsYXRmb3JtVG91Y2hQb2ludD4mIHRvdWNoUG9pbnRzKQogewogICAgIFdl
YktpdFdlYlZpZXdCYXNlUHJpdmF0ZSogcHJpdiA9IHdlYlZpZXdCYXNlLT5wcml2OwotICAgIHRv
dWNoUG9pbnRzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkoZXZlbnQtPnR5cGUgPT0gR0RLX1RPVUNI
X0VORCA/IHByaXYtPnRvdWNoRXZlbnRzLnNpemUoKSArIDEgOiBwcml2LT50b3VjaEV2ZW50cy5z
aXplKCkpOworICAgIGJvb2wgdG91Y2hFbmQgPSAoZXZlbnQtPnR5cGUgPT0gR0RLX1RPVUNIX0VO
RCkgfHwgKGV2ZW50LT50eXBlID09IEdES19UT1VDSF9DQU5DRUwpOworICAgIHRvdWNoUG9pbnRz
LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkodG91Y2hFbmQgPyBwcml2LT50b3VjaEV2ZW50cy5zaXpl
KCkgKyAxIDogcHJpdi0+dG91Y2hFdmVudHMuc2l6ZSgpKTsKIAogICAgIGZvciAoY29uc3QgYXV0
byYgaXQgOiBwcml2LT50b3VjaEV2ZW50cykKICAgICAgICAgYXBwZW5kVG91Y2hFdmVudCh0b3Vj
aFBvaW50cywgaXQudmFsdWUuZ2V0KCksIHRvdWNoUG9pbnRTdGF0ZUZvckV2ZW50cyhpdC52YWx1
ZS5nZXQoKSwgZXZlbnQpKTsKIAogICAgIC8vIFRvdWNoIHdhcyBhbHJlYWR5IHJlbW92ZWQgZnJv
bSB0aGUgVG91Y2hFdmVudHNNYXAsIGFkZCBpdCBoZXJlLgotICAgIGlmIChldmVudC0+dHlwZSA9
PSBHREtfVE9VQ0hfRU5EKQorICAgIGlmICh0b3VjaEVuZCkKICAgICAgICAgYXBwZW5kVG91Y2hF
dmVudCh0b3VjaFBvaW50cywgZXZlbnQsIFdlYlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hSZWxl
YXNlZCk7CiB9CiAKQEAgLTkzNyw2ICs5NDEsOCBAQCBzdGF0aWMgZ2Jvb2xlYW4gd2Via2l0V2Vi
Vmlld0Jhc2VUb3VjaEV2ZW50KEd0a1dpZGdldCogd2lkZ2V0LCBHZGtFdmVudFRvdWNoKiBldgog
ICAgICAgICBpdC0+dmFsdWUucmVzZXQoZ2RrX2V2ZW50X2NvcHkodG91Y2hFdmVudCkpOwogICAg
ICAgICBicmVhazsKICAgICB9CisgICAgY2FzZSBHREtfVE9VQ0hfQ0FOQ0VMOgorICAgICAgICBG
QUxMVEhST1VHSDsKICAgICBjYXNlIEdES19UT1VDSF9FTkQ6CiAgICAgICAgIEFTU0VSVChwcml2
LT50b3VjaEV2ZW50cy5jb250YWlucyhzZXF1ZW5jZSkpOwogICAgICAgICBwcml2LT50b3VjaEV2
ZW50cy5yZW1vdmUoc2VxdWVuY2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvZ3RrL0dlc3R1cmVDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2d0
ay9HZXN0dXJlQ29udHJvbGxlci5jcHAKaW5kZXggZDc4M2IyZmIyMmMuLmY1MWM2NDAxM2QxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9ndGsvR2VzdHVyZUNvbnRyb2xsZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2d0ay9HZXN0dXJlQ29udHJvbGxlci5j
cHAKQEAgLTQ5LDEwICs0OSwxMiBAQCBHZXN0dXJlQ29udHJvbGxlcjo6R2VzdHVyZUNvbnRyb2xs
ZXIoV2ViUGFnZVByb3h5JiBwYWdlKQogYm9vbCBHZXN0dXJlQ29udHJvbGxlcjo6aGFuZGxlRXZl
bnQoY29uc3QgR2RrRXZlbnQqIGV2ZW50KQogewogICAgIGJvb2wgd2FzUHJvY2Vzc2luZ0dlc3R1
cmVzID0gaXNQcm9jZXNzaW5nR2VzdHVyZXMoKTsKKyAgICBib29sIHRvdWNoRW5kOwogICAgIG1f
ZHJhZ0dlc3R1cmUuaGFuZGxlRXZlbnQoZXZlbnQpOwogICAgIG1fc3dpcGVHZXN0dXJlLmhhbmRs
ZUV2ZW50KGV2ZW50KTsKICAgICBtX3pvb21HZXN0dXJlLmhhbmRsZUV2ZW50KGV2ZW50KTsKLSAg
ICByZXR1cm4gZXZlbnQtPnR5cGUgPT0gR0RLX1RPVUNIX0VORCA/IHdhc1Byb2Nlc3NpbmdHZXN0
dXJlcyA6IGlzUHJvY2Vzc2luZ0dlc3R1cmVzKCk7CisgICAgdG91Y2hFbmQgPSAoZXZlbnQtPnR5
cGUgPT0gR0RLX1RPVUNIX0VORCkgfHwgKGV2ZW50LT50eXBlID09IEdES19UT1VDSF9DQU5DRUwp
OworICAgIHJldHVybiB0b3VjaEVuZCA/IHdhc1Byb2Nlc3NpbmdHZXN0dXJlcyA6IGlzUHJvY2Vz
c2luZ0dlc3R1cmVzKCk7CiB9CiAKIGJvb2wgR2VzdHVyZUNvbnRyb2xsZXI6OmlzUHJvY2Vzc2lu
Z0dlc3R1cmVzKCkgY29uc3QKLS0gCjIuMTQuMwoK
</data>

          </attachment>
      

    </bug>

</bugzilla>