<?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>66105</bug_id>
          
          <creation_ts>2011-08-11 15:27:54 -0700</creation_ts>
          <short_desc>[chromium] Add support for gesture events in the DRT</short_desc>
          <delta_ts>2011-08-12 15:50:01 -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>WebKit Misc.</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Sadrul Habib Chowdhury">sadrul</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>fishd</cc>
    
    <cc>rjkroege</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>450083</commentid>
    <comment_count>0</comment_count>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2011-08-11 15:27:54 -0700</bug_when>
    <thetext>This patch adds support for gesture events in the DumpRenderTree. This will allow testing gesture recognition code and gesture handling code separately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450094</commentid>
    <comment_count>1</comment_count>
      <attachid>103687</attachid>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2011-08-11 15:32:43 -0700</bug_when>
    <thetext>Created attachment 103687
patch

There aren&apos;t any gesture-handling code at the moment. So there are not layout tests with this patch. Gesture-handling code with layout tests are forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450422</commentid>
    <comment_count>2</comment_count>
    <who name="Robert Kroeger">rjkroege</who>
    <bug_when>2011-08-12 07:36:38 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=103687) [details]
&gt; patch
&gt; 
&gt; There aren&apos;t any gesture-handling code at the moment. So there are not layout tests with this patch. Gesture-handling code with layout tests are forthcoming.

I don&apos;t think this is strictly true. You could add a layout test to invoke the PlatformGestureEvent for tap and scroll as results from touch events in touch-gesture-click.html and touch-gesture-scroll.html but I would hope that this could happen in a subsequent patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450508</commentid>
    <comment_count>3</comment_count>
      <attachid>103782</attachid>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2011-08-12 10:52:42 -0700</bug_when>
    <thetext>Created attachment 103782
patch

Ah, indeed. I have added a layout-test for the scenario you explain for tap (and added WebInputEvent::GestureTap corresponding to PlatforGestureEvent::TapType).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450520</commentid>
    <comment_count>4</comment_count>
    <who name="Robert Kroeger">rjkroege</who>
    <bug_when>2011-08-12 11:21:49 -0700</bug_when>
    <thetext>Looks reasonable to me. (Though it will probably have to change to track changes to PlatformGestureEvent.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450560</commentid>
    <comment_count>5</comment_count>
      <attachid>103782</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-12 12:26:04 -0700</bug_when>
    <thetext>Comment on attachment 103782
patch

Technically we need fishd to approve the WebKit API change, but I think this is probably ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450561</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-12 12:27:01 -0700</bug_when>
    <thetext>+fishd for (extremely minor) WebKit API change.

fishd, I marked the patch R+ because the change looked fine, but I wanted you to see the patch.  Let me know if you&apos;d prefer to give the official R+ for these sorts of changes in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450571</commentid>
    <comment_count>7</comment_count>
      <attachid>103782</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-08-12 12:34:19 -0700</bug_when>
    <thetext>Comment on attachment 103782
patch

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450582</commentid>
    <comment_count>8</comment_count>
      <attachid>103782</attachid>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2011-08-12 12:47:04 -0700</bug_when>
    <thetext>Comment on attachment 103782
patch

Thanks! I will CC all of you guys (rjkroege, abarth, fishd) for future CLs.

cq?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450635</commentid>
    <comment_count>9</comment_count>
      <attachid>103782</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-12 13:47:57 -0700</bug_when>
    <thetext>Comment on attachment 103782
patch

Rejecting attachment 103782 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=ec2-cq-03&apos;, &apos;--port...&quot; exit_code: 1

Last 500 characters of output:
1cbc174e811bc674267f4a234e3e0ffc8e6c9bb4
r92989 = 0febe8e5f0a9cdc55493f526abf986a430f43783
Done rebuilding .git/svn/refs/remotes/origin/master/.rev_map.268f45cc-cd09-0410-ab3c-d52691b4dbfc
First, rewinding head to replay your work on top of it...
Fast-forwarded master to refs/remotes/origin/master.
Updating chromium port dependencies using gclient...

________ running &apos;/usr/bin/python gyp_webkit&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
Updating webkit projects from gyp files...

Full output: http://queues.webkit.org/results/9351724</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450642</commentid>
    <comment_count>10</comment_count>
      <attachid>103812</attachid>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2011-08-12 13:56:30 -0700</bug_when>
    <thetext>Created attachment 103812
patch

Looks like the error was caused by a missing &apos;Reviewed by&apos; line in Tools/ChangeLog? My bad, it got removed when I was editing the changelog file. I have added back that line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450668</commentid>
    <comment_count>11</comment_count>
      <attachid>103812</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-12 14:28:50 -0700</bug_when>
    <thetext>Comment on attachment 103812
patch

Clearing flags on attachment: 103812

Committed r92997: &lt;http://trac.webkit.org/changeset/92997&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450669</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-12 14:28:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450708</commentid>
    <comment_count>13</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-08-12 15:33:26 -0700</bug_when>
    <thetext>The test added by this patch is failing on Qt:
http://build.webkit.org/results/Qt%20Linux%20Release/r93002%20(36451)/fast/events/touch/gesture/gesture-click-pretty-diff.html

Why are we adding this test to fast/events/touch if it were to fail on all other platforms but chromium?  Are there bugs filed for each port to implement this DRT feature?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450723</commentid>
    <comment_count>14</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-12 15:50:01 -0700</bug_when>
    <thetext>&gt; Why are we adding this test to fast/events/touch if it were to fail on all other platforms but chromium?

The tests are not Chromium-specific.  The fact that they fail on other platforms currently doesn&apos;t make them Chromium-specific.

&gt; Are there bugs filed for each port to implement this DRT feature?

The fast/events/touch should be skipped on ports that don&apos;t implement Touch events.  If the ports implement Touch events but don&apos;t have this DRT feature, then we should file bugs to implement the DRT feature (or just note it in the Skipped list).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103687</attachid>
            <date>2011-08-11 15:32:43 -0700</date>
            <delta_ts>2011-08-12 10:52:42 -0700</delta_ts>
            <desc>patch</desc>
            <filename>drt-gesture.patch</filename>
            <type>text/plain</type>
            <size>3525</size>
            <attacher name="Sadrul Habib Chowdhury">sadrul</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4Y2M5
YTJjLi4yZTQwMWUzIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMDgtMTEgIFNhZHJ1bCBIYWJpYiBDaG93ZGh1
cnkgIDxzYWRydWxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBnZXN0
dXJlIGV2ZW50cy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY2MTA1CisKKyAgICAgICAgVGhpcyB3aWxsIGFsbG93IHRlc3RpbmcgZ2VzdHVyZS1oYW5k
bGluZyBjb2RlIHNlcGFyYXRlcmx5IGZyb20KKyAgICAgICAgZ2VzdHVyZS1yZWNvZ25pdGlvbiBj
b2RlLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuY3BwOgorICAgICAgICAoRXZlbnRT
ZW5kZXI6OkV2ZW50U2VuZGVyKToKKyAgICAgICAgKEV2ZW50U2VuZGVyOjpnZXN0dXJlU2Nyb2xs
QmVnaW4pOgorICAgICAgICAoRXZlbnRTZW5kZXI6Omdlc3R1cmVTY3JvbGxFbmQpOgorICAgICAg
ICAoRXZlbnRTZW5kZXI6Omdlc3R1cmVTY3JvbGxFdmVudCk6CisgICAgICAgICogRHVtcFJlbmRl
clRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuaDoKKwogMjAxMS0wOC0xMCAgQWRhbSBCYXJ0aCAg
PGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFRoZSBVUkwgd2Ugd2VyZSBjb21wdXRpbmcg
Zm9yIHJldHJpZXZpbmcgYmFzZWxpbmVzIHdhcyBtaXNzaW5nIGEgc2xhc2gKZGlmZiAtLWdpdCBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0V2ZW50U2VuZGVyLmNwcCBiL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2Nocm9taXVtL0V2ZW50U2VuZGVyLmNwcAppbmRleCA4N2ZiNTI0Li5lYWU3
YWQwIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNlbmRl
ci5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuY3Bw
CkBAIC0yNzgsNiArMjc4LDggQEAgRXZlbnRTZW5kZXI6OkV2ZW50U2VuZGVyKFRlc3RTaGVsbCog
c2hlbGwpCiAgICAgYmluZE1ldGhvZCgidG91Y2hNb3ZlIiwgJkV2ZW50U2VuZGVyOjp0b3VjaE1v
dmUpOwogICAgIGJpbmRNZXRob2QoInRvdWNoU3RhcnQiLCAmRXZlbnRTZW5kZXI6OnRvdWNoU3Rh
cnQpOwogICAgIGJpbmRNZXRob2QoInVwZGF0ZVRvdWNoUG9pbnQiLCAmRXZlbnRTZW5kZXI6OnVw
ZGF0ZVRvdWNoUG9pbnQpOworICAgIGJpbmRNZXRob2QoImdlc3R1cmVTY3JvbGxCZWdpbiIsICZF
dmVudFNlbmRlcjo6Z2VzdHVyZVNjcm9sbEJlZ2luKTsKKyAgICBiaW5kTWV0aG9kKCJnZXN0dXJl
U2Nyb2xsRW5kIiwgJkV2ZW50U2VuZGVyOjpnZXN0dXJlU2Nyb2xsRW5kKTsKICAgICBiaW5kTWV0
aG9kKCJ6b29tUGFnZUluIiwgJkV2ZW50U2VuZGVyOjp6b29tUGFnZUluKTsKICAgICBiaW5kTWV0
aG9kKCJ6b29tUGFnZU91dCIsICZFdmVudFNlbmRlcjo6em9vbVBhZ2VPdXQpOwogICAgIGJpbmRN
ZXRob2QoInNjYWxlUGFnZUJ5IiwgJkV2ZW50U2VuZGVyOjpzY2FsZVBhZ2VCeSk7CkBAIC0xMDE4
LDYgKzEwMjAsMzUgQEAgdm9pZCBFdmVudFNlbmRlcjo6dG91Y2hDYW5jZWwoY29uc3QgQ3BwQXJn
dW1lbnRMaXN0JiwgQ3BwVmFyaWFudCogcmVzdWx0KQogICAgIHNlbmRDdXJyZW50VG91Y2hFdmVu
dChXZWJJbnB1dEV2ZW50OjpUb3VjaENhbmNlbCk7CiB9CiAKK3ZvaWQgRXZlbnRTZW5kZXI6Omdl
c3R1cmVTY3JvbGxCZWdpbihjb25zdCBDcHBBcmd1bWVudExpc3QmIGFyZ3VtZW50cywgQ3BwVmFy
aWFudCogcmVzdWx0KQoreworICAgIHJlc3VsdC0+c2V0TnVsbCgpOworICAgIGdlc3R1cmVTY3Jv
bGxFdmVudChXZWJJbnB1dEV2ZW50OjpHZXN0dXJlU2Nyb2xsQmVnaW4sIGFyZ3VtZW50cyk7Cit9
CisKK3ZvaWQgRXZlbnRTZW5kZXI6Omdlc3R1cmVTY3JvbGxFbmQoY29uc3QgQ3BwQXJndW1lbnRM
aXN0JiBhcmd1bWVudHMsIENwcFZhcmlhbnQqIHJlc3VsdCkKK3sKKyAgICByZXN1bHQtPnNldE51
bGwoKTsKKyAgICBnZXN0dXJlU2Nyb2xsRXZlbnQoV2ViSW5wdXRFdmVudDo6R2VzdHVyZVNjcm9s
bEVuZCwgYXJndW1lbnRzKTsKK30KKwordm9pZCBFdmVudFNlbmRlcjo6Z2VzdHVyZVNjcm9sbEV2
ZW50KFdlYklucHV0RXZlbnQ6OlR5cGUgdHlwZSwgY29uc3QgQ3BwQXJndW1lbnRMaXN0JiBhcmd1
bWVudHMpCit7CisgICAgaWYgKGFyZ3VtZW50cy5zaXplKCkgPCAyIHx8ICFhcmd1bWVudHNbMF0u
aXNOdW1iZXIoKSB8fCAhYXJndW1lbnRzWzFdLmlzTnVtYmVyKCkpCisgICAgICAgIHJldHVybjsK
KworICAgIFdlYlBvaW50IHBvaW50KGFyZ3VtZW50c1swXS50b0ludDMyKCksIGFyZ3VtZW50c1sx
XS50b0ludDMyKCkpOworCisgICAgV2ViR2VzdHVyZUV2ZW50IGV2ZW50OworICAgIGV2ZW50LnR5
cGUgPSB0eXBlOworICAgIGV2ZW50LnggPSBwb2ludC54OworICAgIGV2ZW50LnkgPSBwb2ludC55
OworICAgIGV2ZW50Lmdsb2JhbFggPSBwb2ludC54OworICAgIGV2ZW50Lmdsb2JhbFkgPSBwb2lu
dC55OworICAgIGV2ZW50LnRpbWVTdGFtcFNlY29uZHMgPSBnZXRDdXJyZW50RXZlbnRUaW1lU2Vj
KCk7CisgICAgd2VidmlldygpLT5oYW5kbGVJbnB1dEV2ZW50KGV2ZW50KTsKK30KKwogLy8KIC8v
IFVuaW1wbGVtZW50ZWQgc3R1YnMKIC8vCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9jaHJvbWl1bS9FdmVudFNlbmRlci5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
RXZlbnRTZW5kZXIuaAppbmRleCBiZTYyMjk0Li4yMjBhYzRiIDEwMDY0NAotLS0gYS9Ub29scy9E
dW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNlbmRlci5oCisrKyBiL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL0V2ZW50U2VuZGVyLmgKQEAgLTk0LDYgKzk0LDEwIEBAIHB1YmxpYzoK
ICAgICB2b2lkIHRvdWNoU3RhcnQoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCop
OwogICAgIHZvaWQgdXBkYXRlVG91Y2hQb2ludChjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBW
YXJpYW50Kik7CiAKKyAgICB2b2lkIGdlc3R1cmVTY3JvbGxCZWdpbihjb25zdCBDcHBBcmd1bWVu
dExpc3QmLCBDcHBWYXJpYW50Kik7CisgICAgdm9pZCBnZXN0dXJlU2Nyb2xsRW5kKGNvbnN0IENw
cEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKKyAgICB2b2lkIGdlc3R1cmVTY3JvbGxFdmVu
dChXZWJLaXQ6OldlYklucHV0RXZlbnQ6OlR5cGUsIGNvbnN0IENwcEFyZ3VtZW50TGlzdCYpOwor
CiAgICAgLy8gVW5pbXBsZW1lbnRlZCBzdHVicwogICAgIHZvaWQgY29udGV4dENsaWNrKGNvbnN0
IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKICAgICB2b2lkIGVuYWJsZURPTVVJRXZl
bnRMb2dnaW5nKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103782</attachid>
            <date>2011-08-12 10:52:42 -0700</date>
            <delta_ts>2011-08-12 13:56:30 -0700</delta_ts>
            <desc>patch</desc>
            <filename>drt-gesture.patch</filename>
            <type>text/plain</type>
            <size>11535</size>
            <attacher name="Sadrul Habib Chowdhury">sadrul</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0N2I3Y2RkLi4wMmNlYTc3ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDExLTA4
LTEyICBTYWRydWwgSGFiaWIgQ2hvd2RodXJ5ICA8c2FkcnVsQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBEUlQ6IEFkZCBzdXBwb3J0IGZvciBnZXN0dXJlIGV2ZW50cy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2MTA1CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3VjaC9nZXN0
dXJlL2dlc3R1cmUtY2xpY2stZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2
ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtY2xpY2suaHRtbDogQWRkZWQuCisgICAgICAgICog
cGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLWNsaWNr
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTEtMDgtMTEgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgU2hhcmUgY29kZSBiZXR3ZWVuIGlzU3R5bGVTcGFuT3JT
cGFuV2l0aE9ubHlTdHlsZUF0dHJpYnV0ZSwgaXNVbnN0eWxlZFN0eWxlU3BhbiwKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS1jbGljay1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1
cmUtY2xpY2stZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
Ljc3NWZhMWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3Vj
aC9nZXN0dXJlL2dlc3R1cmUtY2xpY2stZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1Ro
aXMgdGVzdHMgYmFzaWMgZ2VzdHVyZSBjYWxsYmFja3MuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitHZXN0dXJlIG1hbmFnZXIgbm90IGltcGxlbWVudGVkIG9uIHRoaXMgcGxhdGZv
cm0uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJl
LWNsaWNrLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1
cmUtY2xpY2suaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNWRjYzVh
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVy
ZS9nZXN0dXJlLWNsaWNrLmh0bWwKQEAgLTAsMCArMSw3NSBAQAorPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3Nz
Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qt
ZnVuY3Rpb24uanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCk7
Ij4KKzxkaXYgaWQ9Imdlc3R1cmUiPgorCis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgordmFyIGV4cGVjdGVkTW91c2VFdmVudHMg
PSA0OwordmFyIG1vdXNlRXZlbnRzUmVjZWl2ZWQgPSAwOwordmFyIGV2ZW50VHlwZXMgPSBbICdt
b3VzZW1vdmUnLCAnbW91c2Vkb3duJywgJ21vdXNldXAnLCAnY2xpY2snIF07CisKK2Z1bmN0aW9u
IGdlc3R1cmVFdmVudENhbGxiYWNrKGV2ZW50KQoreworICAgIGlmICh3aW5kb3cuZXZlbnRTZW5k
ZXIpIHsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdldmVudC50eXBlJywgZXZlbnRU
eXBlc1ttb3VzZUV2ZW50c1JlY2VpdmVkXSk7CisgICAgICAgIHNob3VsZEJlKCdldmVudC5jbGll
bnRYJywgJzEwJyk7CisgICAgICAgIHNob3VsZEJlKCdldmVudC5jbGllbnRZJywgJzEyJyk7Cisg
ICAgICAgIG1vdXNlRXZlbnRzUmVjZWl2ZWQrKzsKKyAgICB9IGVsc2UgeworICAgICAgICBkZWJ1
ZyhldmVudC50eXBlKTsKKyAgICAgICAgZGVidWcoZXZlbnQuY2xpZW50WCk7CisgICAgICAgIGRl
YnVnKGV2ZW50LmNsaWVudFkpOworICAgIH0KK30KKworLy8gQmVjYXVzZSB3ZSBtYXkgbm90IGhh
dmUgYSBnZXN0dXJlIHJlY29nbml6ZXIsIHdlIHNlbmQgYSBrZXkgcHJlc3MKKy8vIGV2ZW50IHRv
IGVuZCB0aGUgdGVzdCB3aXRob3V0IHRlbXBvcmFsIGZsYWtpbmVzcy4KK2Z1bmN0aW9uIHF1aXRL
ZXlUb0VuZFRlc3QoZXZlbnQpIHsKKyAgICBlbmRUZXN0KCk7Cit9CisKK2Z1bmN0aW9uIGVuZFRl
c3QoKQoreworICAgIGlmIChtb3VzZUV2ZW50c1JlY2VpdmVkIDwgZXhwZWN0ZWRNb3VzZUV2ZW50
cykgeworICAgICAgICBkZWJ1ZygnR2VzdHVyZSBtYW5hZ2VyIG5vdCBpbXBsZW1lbnRlZCBvbiB0
aGlzIHBsYXRmb3JtLicpOworICAgIH0KKyAgICAvLyBCYWlsLgorICAgIHN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7CisgICAgaXNTdWNjZXNzZnVsbHlQYXJzZWQoKTsKKyAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cit9CisKK2Z1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAg
dmFyIGRpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdnZXN0dXJlJyk7CisgICAgZGl2LmFk
ZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsIGdlc3R1cmVFdmVudENhbGxiYWNrLCBmYWxzZSk7
CisgICAgZGl2LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZ2VzdHVyZUV2ZW50Q2FsbGJhY2ss
IGZhbHNlKTsKKyAgICBkaXYuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsIGdlc3R1cmVFdmVu
dENhbGxiYWNrLCBmYWxzZSk7CisgICAgZGl2LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIs
IGdlc3R1cmVFdmVudENhbGxiYWNrLCBmYWxzZSk7CisgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0
ZW5lcigia2V5ZG93biIsIHF1aXRLZXlUb0VuZFRlc3QsIGZhbHNlKTsKKworICAgIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCgpOworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25l
KCk7CisgICAgfQorCisgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAgICBkZXNj
cmlwdGlvbigiVGhpcyB0ZXN0cyBiYXNpYyBnZXN0dXJlIGNhbGxiYWNrcy4iKTsKKyAgICAgICAg
Ly8gQSAndGFwJyBnZXN0dXJlIGV2ZW50IHNob3VsZCBnZW5lcmF0ZSBhIHNlcXVlbmNlIG9mIG1v
dXNlIGV2ZW50cy4KKyAgICAgICAgZXZlbnRTZW5kZXIuZ2VzdHVyZVRhcCgxMCwgMTIpOworICAg
ICAgICBldmVudFNlbmRlci5sZWFwRm9yd2FyZCgxMCk7CisgICAgICAgIGV2ZW50U2VuZGVyLmtl
eURvd24oJyAnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBkZWJ1ZygiVGhpcyB0ZXN0IHJlcXVp
cmVzIER1bXBSZW5kZXJUcmVlLiAgVGFwIG9uIHRoZSBibHVlIHJlY3QgdG8gbG9nLiIpCisgICAg
fQorfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtY2xp
Y2stZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVu
dHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLWNsaWNrLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi42MjIxZGQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJl
LWNsaWNrLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIxIEBACitUaGlzIHRlc3RzIGJhc2ljIGdl
c3R1cmUgY2FsbGJhY2tzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBl
dmVudC50eXBlIGlzICJtb3VzZW1vdmUiCitQQVNTIGV2ZW50LmNsaWVudFggaXMgMTAKK1BBU1Mg
ZXZlbnQuY2xpZW50WSBpcyAxMgorUEFTUyBldmVudC50eXBlIGlzICJtb3VzZWRvd24iCitQQVNT
IGV2ZW50LmNsaWVudFggaXMgMTAKK1BBU1MgZXZlbnQuY2xpZW50WSBpcyAxMgorUEFTUyBldmVu
dC50eXBlIGlzICJtb3VzZXVwIgorUEFTUyBldmVudC5jbGllbnRYIGlzIDEwCitQQVNTIGV2ZW50
LmNsaWVudFkgaXMgMTIKK1BBU1MgZXZlbnQudHlwZSBpcyAiY2xpY2siCitQQVNTIGV2ZW50LmNs
aWVudFggaXMgMTAKK1BBU1MgZXZlbnQuY2xpZW50WSBpcyAxMgorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
aW5kZXggM2Q0YzczZS4uZjNkYzZlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxMS0wOC0xMiAgU2FkcnVsIEhhYmliIENob3dkaHVyeSAgPHNhZHJ1bEBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2lyZSBnZXN0dXJlIHRhcCBldmVudHMsIGFkZCBzdXBw
b3J0IGZvciBnZXN0dXJlIGV2ZW50cyBpbiB0aGUgRFJUIGFuZCBhZGQgYSBsYXlvdXQgdGVzdCBm
b3IgaXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02
NjEwNQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
cHVibGljL1dlYklucHV0RXZlbnQuaDoKKyAgICAgICAgKiBzcmMvV2ViSW5wdXRFdmVudENvbnZl
cnNpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpQbGF0Zm9ybUdlc3R1cmVFdmVudEJ1aWxkZXI6
OlBsYXRmb3JtR2VzdHVyZUV2ZW50QnVpbGRlcik6CisgICAgICAgICogc3JjL1dlYlBvcHVwTWVu
dUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQb3B1cE1lbnVJbXBsOjpoYW5kbGVJbnB1
dEV2ZW50KToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3SW1wbDo6aGFuZGxlSW5wdXRFdmVudCk6CisKIDIwMTEtMDgtMDUgIE5hdCBEdWNh
ICA8bmR1Y2FAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtjaHJvbWl1bV0gTWFrZSBXZWJWaWV3
SW1wbCBwb2ludCBhdCBDQ0xheWVyVHJlZUhvc3QgYW5kIHJlbGF0ZWQgc2VwYXJhdGlvbgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRFdmVudC5oIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRFdmVudC5oCmluZGV4IDY4ZjQ3
YTAuLmM0OWFmNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dl
YklucHV0RXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1
dEV2ZW50LmgKQEAgLTEwMyw2ICsxMDMsNyBAQCBwdWJsaWM6CiAgICAgICAgIC8vIFdlYkdlc3R1
cmVFdmVudAogICAgICAgICBHZXN0dXJlU2Nyb2xsQmVnaW4sCiAgICAgICAgIEdlc3R1cmVTY3Jv
bGxFbmQsCisgICAgICAgIEdlc3R1cmVUYXAsCiAKICAgICAgICAgLy8gV2ViVG91Y2hFdmVudAog
ICAgICAgICBUb3VjaFN0YXJ0LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViSW5wdXRFdmVudENvbnZlcnNpb24uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViSW5wdXRFdmVudENvbnZlcnNpb24uY3BwCmluZGV4IDkwYzJjOGMuLjBkZGVhMDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklucHV0RXZlbnRDb252ZXJz
aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJbnB1dEV2ZW50Q29u
dmVyc2lvbi5jcHAKQEAgLTEyMCw2ICsxMjAsOSBAQCBQbGF0Zm9ybUdlc3R1cmVFdmVudEJ1aWxk
ZXI6OlBsYXRmb3JtR2VzdHVyZUV2ZW50QnVpbGRlcihXaWRnZXQqIHdpZGdldCwgY29uc3QgVwog
ICAgIGNhc2UgV2ViSW5wdXRFdmVudDo6R2VzdHVyZVNjcm9sbEVuZDoKICAgICAgICAgbV90eXBl
ID0gUGxhdGZvcm1HZXN0dXJlRXZlbnQ6OlNjcm9sbEVuZFR5cGU7CiAgICAgICAgIGJyZWFrOwor
ICAgIGNhc2UgV2ViSW5wdXRFdmVudDo6R2VzdHVyZVRhcDoKKyAgICAgICAgbV90eXBlID0gUGxh
dGZvcm1HZXN0dXJlRXZlbnQ6OlRhcFR5cGU7CisgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6
CiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBvcHVwTWVudUltcGwuY3BwIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViUG9wdXBNZW51SW1wbC5jcHAKaW5kZXggZTI2NjhiMS4uODM4MjM4
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUG9wdXBNZW51SW1w
bC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUG9wdXBNZW51SW1wbC5j
cHAKQEAgLTI3Myw2ICsyNzMsNyBAQCBib29sIFdlYlBvcHVwTWVudUltcGw6OmhhbmRsZUlucHV0
RXZlbnQoY29uc3QgV2ViSW5wdXRFdmVudCYgaW5wdXRFdmVudCkKIAogICAgIGNhc2UgV2ViSW5w
dXRFdmVudDo6R2VzdHVyZVNjcm9sbEJlZ2luOgogICAgIGNhc2UgV2ViSW5wdXRFdmVudDo6R2Vz
dHVyZVNjcm9sbEVuZDoKKyAgICBjYXNlIFdlYklucHV0RXZlbnQ6Okdlc3R1cmVUYXA6CiAgICAg
ICAgIHJldHVybiBHZXN0dXJlRXZlbnQoKnN0YXRpY19jYXN0PGNvbnN0IFdlYkdlc3R1cmVFdmVu
dCo+KCZpbnB1dEV2ZW50KSk7CiAKICAgICBjYXNlIFdlYklucHV0RXZlbnQ6OlVuZGVmaW5lZDoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcCBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCA4ZjgzODA4
Li5lMTVlYjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3
SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3Bw
CkBAIC0xMjcyLDYgKzEyNzIsNyBAQCBib29sIFdlYlZpZXdJbXBsOjpoYW5kbGVJbnB1dEV2ZW50
KGNvbnN0IFdlYklucHV0RXZlbnQmIGlucHV0RXZlbnQpCiAjaWYgRU5BQkxFKEdFU1RVUkVfRVZF
TlRTKQogICAgIGNhc2UgV2ViSW5wdXRFdmVudDo6R2VzdHVyZVNjcm9sbEJlZ2luOgogICAgIGNh
c2UgV2ViSW5wdXRFdmVudDo6R2VzdHVyZVNjcm9sbEVuZDoKKyAgICBjYXNlIFdlYklucHV0RXZl
bnQ6Okdlc3R1cmVUYXA6CiAgICAgICAgIGhhbmRsZWQgPSBnZXN0dXJlRXZlbnQoKnN0YXRpY19j
YXN0PGNvbnN0IFdlYkdlc3R1cmVFdmVudCo+KCZpbnB1dEV2ZW50KSk7CiAgICAgICAgIGJyZWFr
OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cK
aW5kZXggODRkMTA1Yi4uY2ExZmNjMyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBi
L1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDExLTA4LTEyICBTYWRydWwgSGFi
aWIgQ2hvd2RodXJ5ICA8c2FkcnVsQGNocm9taXVtLm9yZz4KKworICAgICAgICBEUlQ6IEFkZCBz
dXBwb3J0IGZvciBnZXN0dXJlIGV2ZW50cy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTY2MTA1CisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJv
bWl1bS9FdmVudFNlbmRlci5jcHA6CisgICAgICAgIChFdmVudFNlbmRlcjo6RXZlbnRTZW5kZXIp
OgorICAgICAgICAoRXZlbnRTZW5kZXI6Omdlc3R1cmVTY3JvbGxCZWdpbik6CisgICAgICAgIChF
dmVudFNlbmRlcjo6Z2VzdHVyZVNjcm9sbEVuZCk6CisgICAgICAgIChFdmVudFNlbmRlcjo6Z2Vz
dHVyZVRhcCk6CisgICAgICAgIChFdmVudFNlbmRlcjo6Z2VzdHVyZUV2ZW50KToKKyAgICAgICAg
KiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNlbmRlci5oOgorCiAyMDExLTA4LTExICBN
YXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV3b3JrIHNvbWUgTWFrZWZp
bGUgbG9naWMgdG8gcmVtb3ZlIGEgZG91YmxlLW5lZ2F0aXZlLgpkaWZmIC0tZ2l0IGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuY3BwIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuY3BwCmluZGV4IDg3ZmI1MjQuLjZkYWY2MTYgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0V2ZW50U2VuZGVyLmNwcAor
KysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNlbmRlci5jcHAKQEAgLTI3
OCw2ICsyNzgsOSBAQCBFdmVudFNlbmRlcjo6RXZlbnRTZW5kZXIoVGVzdFNoZWxsKiBzaGVsbCkK
ICAgICBiaW5kTWV0aG9kKCJ0b3VjaE1vdmUiLCAmRXZlbnRTZW5kZXI6OnRvdWNoTW92ZSk7CiAg
ICAgYmluZE1ldGhvZCgidG91Y2hTdGFydCIsICZFdmVudFNlbmRlcjo6dG91Y2hTdGFydCk7CiAg
ICAgYmluZE1ldGhvZCgidXBkYXRlVG91Y2hQb2ludCIsICZFdmVudFNlbmRlcjo6dXBkYXRlVG91
Y2hQb2ludCk7CisgICAgYmluZE1ldGhvZCgiZ2VzdHVyZVNjcm9sbEJlZ2luIiwgJkV2ZW50U2Vu
ZGVyOjpnZXN0dXJlU2Nyb2xsQmVnaW4pOworICAgIGJpbmRNZXRob2QoImdlc3R1cmVTY3JvbGxF
bmQiLCAmRXZlbnRTZW5kZXI6Omdlc3R1cmVTY3JvbGxFbmQpOworICAgIGJpbmRNZXRob2QoImdl
c3R1cmVUYXAiLCAmRXZlbnRTZW5kZXI6Omdlc3R1cmVUYXApOwogICAgIGJpbmRNZXRob2QoInpv
b21QYWdlSW4iLCAmRXZlbnRTZW5kZXI6Onpvb21QYWdlSW4pOwogICAgIGJpbmRNZXRob2QoInpv
b21QYWdlT3V0IiwgJkV2ZW50U2VuZGVyOjp6b29tUGFnZU91dCk7CiAgICAgYmluZE1ldGhvZCgi
c2NhbGVQYWdlQnkiLCAmRXZlbnRTZW5kZXI6OnNjYWxlUGFnZUJ5KTsKQEAgLTEwMTgsNiArMTAy
MSw0MSBAQCB2b2lkIEV2ZW50U2VuZGVyOjp0b3VjaENhbmNlbChjb25zdCBDcHBBcmd1bWVudExp
c3QmLCBDcHBWYXJpYW50KiByZXN1bHQpCiAgICAgc2VuZEN1cnJlbnRUb3VjaEV2ZW50KFdlYklu
cHV0RXZlbnQ6OlRvdWNoQ2FuY2VsKTsKIH0KIAordm9pZCBFdmVudFNlbmRlcjo6Z2VzdHVyZVNj
cm9sbEJlZ2luKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBWYXJpYW50KiBy
ZXN1bHQpCit7CisgICAgcmVzdWx0LT5zZXROdWxsKCk7CisgICAgZ2VzdHVyZUV2ZW50KFdlYklu
cHV0RXZlbnQ6Okdlc3R1cmVTY3JvbGxCZWdpbiwgYXJndW1lbnRzKTsKK30KKwordm9pZCBFdmVu
dFNlbmRlcjo6Z2VzdHVyZVNjcm9sbEVuZChjb25zdCBDcHBBcmd1bWVudExpc3QmIGFyZ3VtZW50
cywgQ3BwVmFyaWFudCogcmVzdWx0KQoreworICAgIHJlc3VsdC0+c2V0TnVsbCgpOworICAgIGdl
c3R1cmVFdmVudChXZWJJbnB1dEV2ZW50OjpHZXN0dXJlU2Nyb2xsRW5kLCBhcmd1bWVudHMpOwor
fQorCit2b2lkIEV2ZW50U2VuZGVyOjpnZXN0dXJlVGFwKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYg
YXJndW1lbnRzLCBDcHBWYXJpYW50KiByZXN1bHQpCit7CisgICAgcmVzdWx0LT5zZXROdWxsKCk7
CisgICAgZ2VzdHVyZUV2ZW50KFdlYklucHV0RXZlbnQ6Okdlc3R1cmVUYXAsIGFyZ3VtZW50cyk7
Cit9CisKK3ZvaWQgRXZlbnRTZW5kZXI6Omdlc3R1cmVFdmVudChXZWJJbnB1dEV2ZW50OjpUeXBl
IHR5cGUsIGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzKQoreworICAgIGlmIChhcmd1
bWVudHMuc2l6ZSgpIDwgMiB8fCAhYXJndW1lbnRzWzBdLmlzTnVtYmVyKCkgfHwgIWFyZ3VtZW50
c1sxXS5pc051bWJlcigpKQorICAgICAgICByZXR1cm47CisKKyAgICBXZWJQb2ludCBwb2ludChh
cmd1bWVudHNbMF0udG9JbnQzMigpLCBhcmd1bWVudHNbMV0udG9JbnQzMigpKTsKKworICAgIFdl
Ykdlc3R1cmVFdmVudCBldmVudDsKKyAgICBldmVudC50eXBlID0gdHlwZTsKKyAgICBldmVudC54
ID0gcG9pbnQueDsKKyAgICBldmVudC55ID0gcG9pbnQueTsKKyAgICBldmVudC5nbG9iYWxYID0g
cG9pbnQueDsKKyAgICBldmVudC5nbG9iYWxZID0gcG9pbnQueTsKKyAgICBldmVudC50aW1lU3Rh
bXBTZWNvbmRzID0gZ2V0Q3VycmVudEV2ZW50VGltZVNlYygpOworICAgIHdlYnZpZXcoKS0+aGFu
ZGxlSW5wdXRFdmVudChldmVudCk7Cit9CisKIC8vCiAvLyBVbmltcGxlbWVudGVkIHN0dWJzCiAv
LwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIu
aCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0V2ZW50U2VuZGVyLmgKaW5kZXggYmU2
MjI5NC4uMzg4ODg4YiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
RXZlbnRTZW5kZXIuaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNl
bmRlci5oCkBAIC05NCw2ICs5NCwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCB0b3VjaFN0YXJ0KGNv
bnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKICAgICB2b2lkIHVwZGF0ZVRvdWNo
UG9pbnQoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCopOwogCisgICAgdm9pZCBn
ZXN0dXJlU2Nyb2xsQmVnaW4oY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCopOwor
ICAgIHZvaWQgZ2VzdHVyZVNjcm9sbEVuZChjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJp
YW50Kik7CisgICAgdm9pZCBnZXN0dXJlVGFwKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZh
cmlhbnQqKTsKKyAgICB2b2lkIGdlc3R1cmVFdmVudChXZWJLaXQ6OldlYklucHV0RXZlbnQ6OlR5
cGUsIGNvbnN0IENwcEFyZ3VtZW50TGlzdCYpOworCiAgICAgLy8gVW5pbXBsZW1lbnRlZCBzdHVi
cwogICAgIHZvaWQgY29udGV4dENsaWNrKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlh
bnQqKTsKICAgICB2b2lkIGVuYWJsZURPTVVJRXZlbnRMb2dnaW5nKGNvbnN0IENwcEFyZ3VtZW50
TGlzdCYsIENwcFZhcmlhbnQqKTsK
</data>
<flag name="review"
          id="99486"
          type_id="1"
          status="+"
          setter="abarth"
    />
    <flag name="commit-queue"
          id="99503"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103812</attachid>
            <date>2011-08-12 13:56:30 -0700</date>
            <delta_ts>2011-08-12 14:28:50 -0700</delta_ts>
            <desc>patch</desc>
            <filename>drt-gesture.patch</filename>
            <type>text/plain</type>
            <size>11574</size>
            <attacher name="Sadrul Habib Chowdhury">sadrul</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0N2I3Y2RkLi4wMmNlYTc3ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDExLTA4
LTEyICBTYWRydWwgSGFiaWIgQ2hvd2RodXJ5ICA8c2FkcnVsQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBEUlQ6IEFkZCBzdXBwb3J0IGZvciBnZXN0dXJlIGV2ZW50cy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2MTA1CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3VjaC9nZXN0
dXJlL2dlc3R1cmUtY2xpY2stZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2
ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtY2xpY2suaHRtbDogQWRkZWQuCisgICAgICAgICog
cGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLWNsaWNr
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTEtMDgtMTEgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgU2hhcmUgY29kZSBiZXR3ZWVuIGlzU3R5bGVTcGFuT3JT
cGFuV2l0aE9ubHlTdHlsZUF0dHJpYnV0ZSwgaXNVbnN0eWxlZFN0eWxlU3BhbiwKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS1jbGljay1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1
cmUtY2xpY2stZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
Ljc3NWZhMWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3Vj
aC9nZXN0dXJlL2dlc3R1cmUtY2xpY2stZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1Ro
aXMgdGVzdHMgYmFzaWMgZ2VzdHVyZSBjYWxsYmFja3MuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitHZXN0dXJlIG1hbmFnZXIgbm90IGltcGxlbWVudGVkIG9uIHRoaXMgcGxhdGZv
cm0uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJl
LWNsaWNrLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1
cmUtY2xpY2suaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNWRjYzVh
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVy
ZS9nZXN0dXJlLWNsaWNrLmh0bWwKQEAgLTAsMCArMSw3NSBAQAorPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3Nz
Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qt
ZnVuY3Rpb24uanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCk7
Ij4KKzxkaXYgaWQ9Imdlc3R1cmUiPgorCis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgordmFyIGV4cGVjdGVkTW91c2VFdmVudHMg
PSA0OwordmFyIG1vdXNlRXZlbnRzUmVjZWl2ZWQgPSAwOwordmFyIGV2ZW50VHlwZXMgPSBbICdt
b3VzZW1vdmUnLCAnbW91c2Vkb3duJywgJ21vdXNldXAnLCAnY2xpY2snIF07CisKK2Z1bmN0aW9u
IGdlc3R1cmVFdmVudENhbGxiYWNrKGV2ZW50KQoreworICAgIGlmICh3aW5kb3cuZXZlbnRTZW5k
ZXIpIHsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdldmVudC50eXBlJywgZXZlbnRU
eXBlc1ttb3VzZUV2ZW50c1JlY2VpdmVkXSk7CisgICAgICAgIHNob3VsZEJlKCdldmVudC5jbGll
bnRYJywgJzEwJyk7CisgICAgICAgIHNob3VsZEJlKCdldmVudC5jbGllbnRZJywgJzEyJyk7Cisg
ICAgICAgIG1vdXNlRXZlbnRzUmVjZWl2ZWQrKzsKKyAgICB9IGVsc2UgeworICAgICAgICBkZWJ1
ZyhldmVudC50eXBlKTsKKyAgICAgICAgZGVidWcoZXZlbnQuY2xpZW50WCk7CisgICAgICAgIGRl
YnVnKGV2ZW50LmNsaWVudFkpOworICAgIH0KK30KKworLy8gQmVjYXVzZSB3ZSBtYXkgbm90IGhh
dmUgYSBnZXN0dXJlIHJlY29nbml6ZXIsIHdlIHNlbmQgYSBrZXkgcHJlc3MKKy8vIGV2ZW50IHRv
IGVuZCB0aGUgdGVzdCB3aXRob3V0IHRlbXBvcmFsIGZsYWtpbmVzcy4KK2Z1bmN0aW9uIHF1aXRL
ZXlUb0VuZFRlc3QoZXZlbnQpIHsKKyAgICBlbmRUZXN0KCk7Cit9CisKK2Z1bmN0aW9uIGVuZFRl
c3QoKQoreworICAgIGlmIChtb3VzZUV2ZW50c1JlY2VpdmVkIDwgZXhwZWN0ZWRNb3VzZUV2ZW50
cykgeworICAgICAgICBkZWJ1ZygnR2VzdHVyZSBtYW5hZ2VyIG5vdCBpbXBsZW1lbnRlZCBvbiB0
aGlzIHBsYXRmb3JtLicpOworICAgIH0KKyAgICAvLyBCYWlsLgorICAgIHN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7CisgICAgaXNTdWNjZXNzZnVsbHlQYXJzZWQoKTsKKyAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cit9CisKK2Z1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAg
dmFyIGRpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdnZXN0dXJlJyk7CisgICAgZGl2LmFk
ZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsIGdlc3R1cmVFdmVudENhbGxiYWNrLCBmYWxzZSk7
CisgICAgZGl2LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZ2VzdHVyZUV2ZW50Q2FsbGJhY2ss
IGZhbHNlKTsKKyAgICBkaXYuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsIGdlc3R1cmVFdmVu
dENhbGxiYWNrLCBmYWxzZSk7CisgICAgZGl2LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIs
IGdlc3R1cmVFdmVudENhbGxiYWNrLCBmYWxzZSk7CisgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0
ZW5lcigia2V5ZG93biIsIHF1aXRLZXlUb0VuZFRlc3QsIGZhbHNlKTsKKworICAgIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCgpOworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25l
KCk7CisgICAgfQorCisgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAgICBkZXNj
cmlwdGlvbigiVGhpcyB0ZXN0cyBiYXNpYyBnZXN0dXJlIGNhbGxiYWNrcy4iKTsKKyAgICAgICAg
Ly8gQSAndGFwJyBnZXN0dXJlIGV2ZW50IHNob3VsZCBnZW5lcmF0ZSBhIHNlcXVlbmNlIG9mIG1v
dXNlIGV2ZW50cy4KKyAgICAgICAgZXZlbnRTZW5kZXIuZ2VzdHVyZVRhcCgxMCwgMTIpOworICAg
ICAgICBldmVudFNlbmRlci5sZWFwRm9yd2FyZCgxMCk7CisgICAgICAgIGV2ZW50U2VuZGVyLmtl
eURvd24oJyAnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBkZWJ1ZygiVGhpcyB0ZXN0IHJlcXVp
cmVzIER1bXBSZW5kZXJUcmVlLiAgVGFwIG9uIHRoZSBibHVlIHJlY3QgdG8gbG9nLiIpCisgICAg
fQorfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtY2xp
Y2stZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVu
dHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLWNsaWNrLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi42MjIxZGQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJl
LWNsaWNrLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIxIEBACitUaGlzIHRlc3RzIGJhc2ljIGdl
c3R1cmUgY2FsbGJhY2tzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBl
dmVudC50eXBlIGlzICJtb3VzZW1vdmUiCitQQVNTIGV2ZW50LmNsaWVudFggaXMgMTAKK1BBU1Mg
ZXZlbnQuY2xpZW50WSBpcyAxMgorUEFTUyBldmVudC50eXBlIGlzICJtb3VzZWRvd24iCitQQVNT
IGV2ZW50LmNsaWVudFggaXMgMTAKK1BBU1MgZXZlbnQuY2xpZW50WSBpcyAxMgorUEFTUyBldmVu
dC50eXBlIGlzICJtb3VzZXVwIgorUEFTUyBldmVudC5jbGllbnRYIGlzIDEwCitQQVNTIGV2ZW50
LmNsaWVudFkgaXMgMTIKK1BBU1MgZXZlbnQudHlwZSBpcyAiY2xpY2siCitQQVNTIGV2ZW50LmNs
aWVudFggaXMgMTAKK1BBU1MgZXZlbnQuY2xpZW50WSBpcyAxMgorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
aW5kZXggM2Q0YzczZS4uZjNkYzZlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxMS0wOC0xMiAgU2FkcnVsIEhhYmliIENob3dkaHVyeSAgPHNhZHJ1bEBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2lyZSBnZXN0dXJlIHRhcCBldmVudHMsIGFkZCBzdXBw
b3J0IGZvciBnZXN0dXJlIGV2ZW50cyBpbiB0aGUgRFJUIGFuZCBhZGQgYSBsYXlvdXQgdGVzdCBm
b3IgaXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02
NjEwNQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
cHVibGljL1dlYklucHV0RXZlbnQuaDoKKyAgICAgICAgKiBzcmMvV2ViSW5wdXRFdmVudENvbnZl
cnNpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpQbGF0Zm9ybUdlc3R1cmVFdmVudEJ1aWxkZXI6
OlBsYXRmb3JtR2VzdHVyZUV2ZW50QnVpbGRlcik6CisgICAgICAgICogc3JjL1dlYlBvcHVwTWVu
dUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQb3B1cE1lbnVJbXBsOjpoYW5kbGVJbnB1
dEV2ZW50KToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3SW1wbDo6aGFuZGxlSW5wdXRFdmVudCk6CisKIDIwMTEtMDgtMDUgIE5hdCBEdWNh
ICA8bmR1Y2FAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtjaHJvbWl1bV0gTWFrZSBXZWJWaWV3
SW1wbCBwb2ludCBhdCBDQ0xheWVyVHJlZUhvc3QgYW5kIHJlbGF0ZWQgc2VwYXJhdGlvbgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRFdmVudC5oIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRFdmVudC5oCmluZGV4IDY4ZjQ3
YTAuLmM0OWFmNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dl
YklucHV0RXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1
dEV2ZW50LmgKQEAgLTEwMyw2ICsxMDMsNyBAQCBwdWJsaWM6CiAgICAgICAgIC8vIFdlYkdlc3R1
cmVFdmVudAogICAgICAgICBHZXN0dXJlU2Nyb2xsQmVnaW4sCiAgICAgICAgIEdlc3R1cmVTY3Jv
bGxFbmQsCisgICAgICAgIEdlc3R1cmVUYXAsCiAKICAgICAgICAgLy8gV2ViVG91Y2hFdmVudAog
ICAgICAgICBUb3VjaFN0YXJ0LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViSW5wdXRFdmVudENvbnZlcnNpb24uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViSW5wdXRFdmVudENvbnZlcnNpb24uY3BwCmluZGV4IDkwYzJjOGMuLjBkZGVhMDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklucHV0RXZlbnRDb252ZXJz
aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJbnB1dEV2ZW50Q29u
dmVyc2lvbi5jcHAKQEAgLTEyMCw2ICsxMjAsOSBAQCBQbGF0Zm9ybUdlc3R1cmVFdmVudEJ1aWxk
ZXI6OlBsYXRmb3JtR2VzdHVyZUV2ZW50QnVpbGRlcihXaWRnZXQqIHdpZGdldCwgY29uc3QgVwog
ICAgIGNhc2UgV2ViSW5wdXRFdmVudDo6R2VzdHVyZVNjcm9sbEVuZDoKICAgICAgICAgbV90eXBl
ID0gUGxhdGZvcm1HZXN0dXJlRXZlbnQ6OlNjcm9sbEVuZFR5cGU7CiAgICAgICAgIGJyZWFrOwor
ICAgIGNhc2UgV2ViSW5wdXRFdmVudDo6R2VzdHVyZVRhcDoKKyAgICAgICAgbV90eXBlID0gUGxh
dGZvcm1HZXN0dXJlRXZlbnQ6OlRhcFR5cGU7CisgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6
CiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBvcHVwTWVudUltcGwuY3BwIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViUG9wdXBNZW51SW1wbC5jcHAKaW5kZXggZTI2NjhiMS4uODM4MjM4
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUG9wdXBNZW51SW1w
bC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUG9wdXBNZW51SW1wbC5j
cHAKQEAgLTI3Myw2ICsyNzMsNyBAQCBib29sIFdlYlBvcHVwTWVudUltcGw6OmhhbmRsZUlucHV0
RXZlbnQoY29uc3QgV2ViSW5wdXRFdmVudCYgaW5wdXRFdmVudCkKIAogICAgIGNhc2UgV2ViSW5w
dXRFdmVudDo6R2VzdHVyZVNjcm9sbEJlZ2luOgogICAgIGNhc2UgV2ViSW5wdXRFdmVudDo6R2Vz
dHVyZVNjcm9sbEVuZDoKKyAgICBjYXNlIFdlYklucHV0RXZlbnQ6Okdlc3R1cmVUYXA6CiAgICAg
ICAgIHJldHVybiBHZXN0dXJlRXZlbnQoKnN0YXRpY19jYXN0PGNvbnN0IFdlYkdlc3R1cmVFdmVu
dCo+KCZpbnB1dEV2ZW50KSk7CiAKICAgICBjYXNlIFdlYklucHV0RXZlbnQ6OlVuZGVmaW5lZDoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcCBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCA4ZjgzODA4
Li5lMTVlYjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3
SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3Bw
CkBAIC0xMjcyLDYgKzEyNzIsNyBAQCBib29sIFdlYlZpZXdJbXBsOjpoYW5kbGVJbnB1dEV2ZW50
KGNvbnN0IFdlYklucHV0RXZlbnQmIGlucHV0RXZlbnQpCiAjaWYgRU5BQkxFKEdFU1RVUkVfRVZF
TlRTKQogICAgIGNhc2UgV2ViSW5wdXRFdmVudDo6R2VzdHVyZVNjcm9sbEJlZ2luOgogICAgIGNh
c2UgV2ViSW5wdXRFdmVudDo6R2VzdHVyZVNjcm9sbEVuZDoKKyAgICBjYXNlIFdlYklucHV0RXZl
bnQ6Okdlc3R1cmVUYXA6CiAgICAgICAgIGhhbmRsZWQgPSBnZXN0dXJlRXZlbnQoKnN0YXRpY19j
YXN0PGNvbnN0IFdlYkdlc3R1cmVFdmVudCo+KCZpbnB1dEV2ZW50KSk7CiAgICAgICAgIGJyZWFr
OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cK
aW5kZXggODRkMTA1Yi4uYmZmZDM1NyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBi
L1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDExLTA4LTEyICBTYWRydWwgSGFi
aWIgQ2hvd2RodXJ5ICA8c2FkcnVsQGNocm9taXVtLm9yZz4KKworICAgICAgICBEUlQ6IEFkZCBz
dXBwb3J0IGZvciBnZXN0dXJlIGV2ZW50cy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTY2MTA1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNlbmRlci5j
cHA6CisgICAgICAgIChFdmVudFNlbmRlcjo6RXZlbnRTZW5kZXIpOgorICAgICAgICAoRXZlbnRT
ZW5kZXI6Omdlc3R1cmVTY3JvbGxCZWdpbik6CisgICAgICAgIChFdmVudFNlbmRlcjo6Z2VzdHVy
ZVNjcm9sbEVuZCk6CisgICAgICAgIChFdmVudFNlbmRlcjo6Z2VzdHVyZVRhcCk6CisgICAgICAg
IChFdmVudFNlbmRlcjo6Z2VzdHVyZUV2ZW50KToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9j
aHJvbWl1bS9FdmVudFNlbmRlci5oOgorCiAyMDExLTA4LTExICBNYXJrIFJvd2UgIDxtcm93ZUBh
cHBsZS5jb20+CiAKICAgICAgICAgUmV3b3JrIHNvbWUgTWFrZWZpbGUgbG9naWMgdG8gcmVtb3Zl
IGEgZG91YmxlLW5lZ2F0aXZlLgpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hy
b21pdW0vRXZlbnRTZW5kZXIuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZl
bnRTZW5kZXIuY3BwCmluZGV4IDg3ZmI1MjQuLjZkYWY2MTYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2Nocm9taXVtL0V2ZW50U2VuZGVyLmNwcAorKysgYi9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNlbmRlci5jcHAKQEAgLTI3OCw2ICsyNzgsOSBAQCBFdmVu
dFNlbmRlcjo6RXZlbnRTZW5kZXIoVGVzdFNoZWxsKiBzaGVsbCkKICAgICBiaW5kTWV0aG9kKCJ0
b3VjaE1vdmUiLCAmRXZlbnRTZW5kZXI6OnRvdWNoTW92ZSk7CiAgICAgYmluZE1ldGhvZCgidG91
Y2hTdGFydCIsICZFdmVudFNlbmRlcjo6dG91Y2hTdGFydCk7CiAgICAgYmluZE1ldGhvZCgidXBk
YXRlVG91Y2hQb2ludCIsICZFdmVudFNlbmRlcjo6dXBkYXRlVG91Y2hQb2ludCk7CisgICAgYmlu
ZE1ldGhvZCgiZ2VzdHVyZVNjcm9sbEJlZ2luIiwgJkV2ZW50U2VuZGVyOjpnZXN0dXJlU2Nyb2xs
QmVnaW4pOworICAgIGJpbmRNZXRob2QoImdlc3R1cmVTY3JvbGxFbmQiLCAmRXZlbnRTZW5kZXI6
Omdlc3R1cmVTY3JvbGxFbmQpOworICAgIGJpbmRNZXRob2QoImdlc3R1cmVUYXAiLCAmRXZlbnRT
ZW5kZXI6Omdlc3R1cmVUYXApOwogICAgIGJpbmRNZXRob2QoInpvb21QYWdlSW4iLCAmRXZlbnRT
ZW5kZXI6Onpvb21QYWdlSW4pOwogICAgIGJpbmRNZXRob2QoInpvb21QYWdlT3V0IiwgJkV2ZW50
U2VuZGVyOjp6b29tUGFnZU91dCk7CiAgICAgYmluZE1ldGhvZCgic2NhbGVQYWdlQnkiLCAmRXZl
bnRTZW5kZXI6OnNjYWxlUGFnZUJ5KTsKQEAgLTEwMTgsNiArMTAyMSw0MSBAQCB2b2lkIEV2ZW50
U2VuZGVyOjp0b3VjaENhbmNlbChjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50KiBy
ZXN1bHQpCiAgICAgc2VuZEN1cnJlbnRUb3VjaEV2ZW50KFdlYklucHV0RXZlbnQ6OlRvdWNoQ2Fu
Y2VsKTsKIH0KIAordm9pZCBFdmVudFNlbmRlcjo6Z2VzdHVyZVNjcm9sbEJlZ2luKGNvbnN0IENw
cEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBWYXJpYW50KiByZXN1bHQpCit7CisgICAgcmVz
dWx0LT5zZXROdWxsKCk7CisgICAgZ2VzdHVyZUV2ZW50KFdlYklucHV0RXZlbnQ6Okdlc3R1cmVT
Y3JvbGxCZWdpbiwgYXJndW1lbnRzKTsKK30KKwordm9pZCBFdmVudFNlbmRlcjo6Z2VzdHVyZVNj
cm9sbEVuZChjb25zdCBDcHBBcmd1bWVudExpc3QmIGFyZ3VtZW50cywgQ3BwVmFyaWFudCogcmVz
dWx0KQoreworICAgIHJlc3VsdC0+c2V0TnVsbCgpOworICAgIGdlc3R1cmVFdmVudChXZWJJbnB1
dEV2ZW50OjpHZXN0dXJlU2Nyb2xsRW5kLCBhcmd1bWVudHMpOworfQorCit2b2lkIEV2ZW50U2Vu
ZGVyOjpnZXN0dXJlVGFwKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBWYXJp
YW50KiByZXN1bHQpCit7CisgICAgcmVzdWx0LT5zZXROdWxsKCk7CisgICAgZ2VzdHVyZUV2ZW50
KFdlYklucHV0RXZlbnQ6Okdlc3R1cmVUYXAsIGFyZ3VtZW50cyk7Cit9CisKK3ZvaWQgRXZlbnRT
ZW5kZXI6Omdlc3R1cmVFdmVudChXZWJJbnB1dEV2ZW50OjpUeXBlIHR5cGUsIGNvbnN0IENwcEFy
Z3VtZW50TGlzdCYgYXJndW1lbnRzKQoreworICAgIGlmIChhcmd1bWVudHMuc2l6ZSgpIDwgMiB8
fCAhYXJndW1lbnRzWzBdLmlzTnVtYmVyKCkgfHwgIWFyZ3VtZW50c1sxXS5pc051bWJlcigpKQor
ICAgICAgICByZXR1cm47CisKKyAgICBXZWJQb2ludCBwb2ludChhcmd1bWVudHNbMF0udG9JbnQz
MigpLCBhcmd1bWVudHNbMV0udG9JbnQzMigpKTsKKworICAgIFdlYkdlc3R1cmVFdmVudCBldmVu
dDsKKyAgICBldmVudC50eXBlID0gdHlwZTsKKyAgICBldmVudC54ID0gcG9pbnQueDsKKyAgICBl
dmVudC55ID0gcG9pbnQueTsKKyAgICBldmVudC5nbG9iYWxYID0gcG9pbnQueDsKKyAgICBldmVu
dC5nbG9iYWxZID0gcG9pbnQueTsKKyAgICBldmVudC50aW1lU3RhbXBTZWNvbmRzID0gZ2V0Q3Vy
cmVudEV2ZW50VGltZVNlYygpOworICAgIHdlYnZpZXcoKS0+aGFuZGxlSW5wdXRFdmVudChldmVu
dCk7Cit9CisKIC8vCiAvLyBVbmltcGxlbWVudGVkIHN0dWJzCiAvLwpkaWZmIC0tZ2l0IGEvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuaCBiL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL0V2ZW50U2VuZGVyLmgKaW5kZXggYmU2MjI5NC4uMzg4ODg4YiAxMDA2
NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuaAorKysg
Yi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNlbmRlci5oCkBAIC05NCw2ICs5
NCwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCB0b3VjaFN0YXJ0KGNvbnN0IENwcEFyZ3VtZW50TGlz
dCYsIENwcFZhcmlhbnQqKTsKICAgICB2b2lkIHVwZGF0ZVRvdWNoUG9pbnQoY29uc3QgQ3BwQXJn
dW1lbnRMaXN0JiwgQ3BwVmFyaWFudCopOwogCisgICAgdm9pZCBnZXN0dXJlU2Nyb2xsQmVnaW4o
Y29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCopOworICAgIHZvaWQgZ2VzdHVyZVNj
cm9sbEVuZChjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CisgICAgdm9pZCBn
ZXN0dXJlVGFwKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKKyAgICB2b2lk
IGdlc3R1cmVFdmVudChXZWJLaXQ6OldlYklucHV0RXZlbnQ6OlR5cGUsIGNvbnN0IENwcEFyZ3Vt
ZW50TGlzdCYpOworCiAgICAgLy8gVW5pbXBsZW1lbnRlZCBzdHVicwogICAgIHZvaWQgY29udGV4
dENsaWNrKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKICAgICB2b2lkIGVu
YWJsZURPTVVJRXZlbnRMb2dnaW5nKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQq
KTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>