The Performance and Preference of Different Fingers and Chords for Pointing,
Dragging, and Object Transformation
Fingers and Technology
/
Goguey, Alix
/
Nancel, Mathieu
/
Casiez, Géry
/
Vogel, Daniel
Proceedings of the ACM CHI'16 Conference on Human Factors in Computing
Systems
2016-05-07
v.1
p.4250-4261
© Copyright 2016 ACM
Summary: The development of robust methods to identify which finger is causing each
touch point, called "finger identification," will open up a new input space
where interaction designers can associate system actions to different fingers.
However, relatively little is known about the performance of specific fingers
as single touch points or when used together in a "chord." We present empirical
results for accuracy, throughput, and subjective preference gathered in five
experiments with 48 participants exploring all 10 fingers and 7 two-finger
chords. Based on these results, we develop design guidelines for reasonable
target sizes for specific fingers and two-finger chords, and a relative ranking
of the suitability of fingers and two-finger chords for common multi-touch
tasks. Our work contributes new knowledge regarding specific finger and chord
performance and can inform the design of future interaction techniques and
interfaces utilizing finger identification.
Looking through the Eye of the Mouse: A Simple Method for Measuring
End-to-end Latency using an Optical Mouse
Session 9B: Pens, Mice and Sensor Strips
/
Casiez, Géry
/
Conversy, Stéphane
/
Falce, Matthieu
/
Huot, Stéphane
/
Roussel, Nicolas
Proceedings of the 2015 ACM Symposium on User Interface Software and
Technology
2015-11-05
v.1
p.629-636
© Copyright 2015 ACM
Summary: We present a simple method for measuring end-to-end latency in graphical
user interfaces. The method works with most optical mice and allows accurate
and real time latency measures up to 5 times per second. In addition, the
technique allows easy insertion of probes at different places in the system
I.e. mouse events listeners -- to investigate the sources of latency. After
presenting the measurement method and our methodology, we detail the measures
we performed on different systems, toolkits and applications. Results show that
latency is affected by the operating system and system load. Substantial
differences are found between C++/GLUT and C++/Qt or Java/Swing
implementations, as well as between web browsers.
Quantifying Object- and Command-Oriented Interaction
User and Task Modelling
/
Goguey, Alix
/
Wagner, Julie
/
Casiez, Géry
Proceedings of IFIP INTERACT'15: Human-Computer Interaction, Part IV
2015-09-14
v.4
p.231-239
Keywords: Interaction sequence; Task strategy; Metric; Theory; Finger identification;
Finger specific
© Copyright 2015 Springer International Publishing Switzerland
Summary: In spite of previous work showing the importance of understanding users'
strategies when performing tasks, i.e. the order in which users perform actions
on objects using commands, HCI researchers evaluating and comparing interaction
techniques remain mainly focused on performance (e.g. time, error rate). This
can be explained to some extent by the difficulty to characterize such
strategies. We propose metrics to quantify if an interaction technique
introduces a rather object- or command-oriented task strategy, depending if
users favor completing the actions on an object before moving to the next one
or in contrast if they are reluctant to switch between commands. On an
interactive surface, we compared Fixed Palette and Toolglass with two novel
techniques that take advantage of finger identification technology, Fixed
Palette using Finger Identification and Finger Palette. We evaluated our
metrics with previous results on both existing techniques. With the novel
techniques we found that (1) minimizing the required physical movement to
switch tools does not necessarily lead to more object-oriented strategies and
(2) increased cognitive load to access commands can lead to command-oriented
strategies.
THING: Introducing a Tablet-based Interaction Technique for Controlling 3D
Hand Models
Interaction in 3D Space
/
Achibet, Merwan
/
Casiez, Géry
/
Lécuyer, Anatole
/
Marchal, Maud
Proceedings of the ACM CHI'15 Conference on Human Factors in Computing
Systems
2015-04-18
v.1
p.317-326
© Copyright 2015 ACM
Summary: The hands of virtual characters are highly complex 3D models that can be
tedious and time-consuming to animate with current methods. This paper
introduces THING, a novel tablet-based approach that leverages multi-touch
interaction for a quick and precise control of a 3D hand's pose. The
flexion/extension and abduction/adduction of the virtual fingers can be
controlled for each finger individually or for several fingers in parallel
through sliding motions on the tablet's surface. We designed two variants of
THING: (1) MobileTHING, which maps the spatial location and orientation of the
tablet to that of the virtual hand, and (2) DesktopTHING, which combines
multi-touch controls of fingers with traditional mouse controls for the hand's
global position and orientation. We compared the usability of THING against
mouse-only controls and a data glove in two controlled experiments. Results
show that DesktopTHING was significantly preferred by users while providing
performance similar to data gloves. Together, these results could pave the way
to the introduction of novel hybrid user interfaces based on tablets and mice
in future animation pipelines.
Push-Edge and Slide-Edge: Scrolling by Pushing Against the Viewport Edge
GUI Size, Resolution & Layout
/
Malacria, Sylvain
/
Aceituno, Jonathan
/
Quinn, Philip
/
Casiez, Géry
/
Cockburn, Andy
/
Roussel, Nicolas
Proceedings of the ACM CHI'15 Conference on Human Factors in Computing
Systems
2015-04-18
v.1
p.2773-2776
© Copyright 2015 ACM
Summary: Edge-scrolling allows users to scroll a viewport while simultaneously
dragging near or beyond a window's edge. Common implementations rely on rate
control, mapping the distance between the pointer and the edge of the viewport
to the scrolling velocity. While ubiquitous in operating systems,
edge-scrolling has received little attention, even though previous works
suggest that (1) rate control may be suboptimal for isotonic pointing devices
like mice and trackpads and (2) space beyond the window's edge might be scarce,
limiting scrolling control. To address these problems, we developed Push-edge
scrolling (and Slide-edge scrolling, its inertial variant), two novel
position-based techniques that allow scrolling by "pushing" against the
viewport edge. A controlled experiment shows that our techniques reduce
overshoots and offer performance improvements by up to 13% over traditional
edge-scrolling.
Adoiraccourcix: multi-touch command selection using finger identification
Techniques d'interaction: Commandes et Gestes
/
Goguey, Alix
/
Casiez, Géry
/
Pietrzak, Thomas
/
Vogel, Daniel
/
Roussel, Nicolas
Proceedings of the 2014 Conference of the Association Francophone
d'Interaction Homme-Machine
2014-10-28
p.28-37
© Copyright 2014 ACM
Summary: Hotkeys are a critical factor of performance for expert users in WIMP
interfaces. Multi-touch interfaces, by contrast, do not provide such efficient
command shortcuts. We propose Adoiraccourcix, which leverage finger
identification to introduce quick command invocation integrated with direct
manipulation in this context. After presenting the concept behind, we
illustrated Adoiraccourcix in a vectorial drawing application and ran
preliminary user studies comparing Adoiraccourcix to classical user interfaces.
Results suggest that once mastered, Adoiraccourcix provides very powerful means
of interaction.
Direct and indirect multi-touch interaction on a wall display
Interactions en situation spécifique
/
Gilliot, Jérémie
/
Casiez, Géry
/
Roussel, Nicolas
Proceedings of the 2014 Conference of the Association Francophone
d'Interaction Homme-Machine
2014-10-28
p.147-152
© Copyright 2014 ACM
Summary: Multi-touch wall displays allow to take advantage of co-located interaction
(direct interaction) on very large surfaces. However interacting with content
beyond arms' reach requires body movements, introducing fatigue and impacting
performance. Interacting with distant content using a pointer can alleviate
these problems but introduces legibility issues and loses the benefits of
multi-touch interaction. We introduce WallPad, a widget designed to quickly
access remote content on wall displays while addressing legibility issues and
supporting direct multi-touch interaction. After briefly describing how we
supported multi-touch interaction on a wall display, we present the WallPad
widget and explain how it supports direct, indirect and de-localized direct
interaction.
A three-step interaction pattern for improving discoverability in finger
identification techniques
Demonstrations
/
Goguey, Alix
/
Casiez, Géry
/
Vogel, Daniel
/
Chevalier, Fanny
/
Pietrzak, Thomas
/
Roussel, Nicolas
Adjunct Proceedings of the 2014 ACM Symposium on User Interface Software and
Technology
2014-10-05
v.2
p.33-34
© Copyright 2014 ACM
Summary: Identifying which fingers are in contact with a multi-touch surface provides
a very large input space that can be leveraged for command selection. However,
the numerous possibilities enabled by such vast space come at the cost of
discoverability. To alleviate this problem, we introduce a three-step
interaction pattern inspired by hotkeys that also supports feed-forward. We
illustrate this interaction with three applications allowing us to explore and
adapt it in different contexts.
Impact of form factors and input conditions on absolute indirect-touch
pointing tasks
Pointing and cursors
/
Gilliot, Jérémie
/
Casiez, Géry
/
Roussel, Nicolas
Proceedings of ACM CHI 2014 Conference on Human Factors in Computing Systems
2014-04-26
v.1
p.723-732
© Copyright 2014 ACM
Summary: Absolute indirect interaction maps the absolute position of a device's
end-effector to the absolute position of a remote on-screen object. Despite its
long-time use with graphics tablets and growing use in research prototypes,
little is known on the influence of form factors and input conditions on
pointing performance with such a mapping. The input and display can have
different sizes and aspect ratios, for example. The on-screen targets can vary
in size. Users can look solely at the display or at the input device as well.
They can also hold the input device in certain cases, or let it rest on a
table. This paper reports on two experiments designed to investigate the
influence of all these factors on absolute indirect-touch pointing performance.
We also provide design guidelines for interaction in these situations based on
the observed impacting factors.
Small, medium, or large?: estimating the user-perceived scale of stroke
gestures
Papers: multitouch and gesture
/
Vatavu, Radu-Daniel
/
Casiez, Géry
/
Grisoni, Laurent
Proceedings of ACM CHI 2013 Conference on Human Factors in Computing Systems
2013-04-27
v.1
p.277-280
© Copyright 2013 ACM
Summary: We show that large consensus exists among users in the way they articulate
stroke gestures at various scales (i.e., small, medium, and large), and
formulate a simple rule that estimates the user-intended scale of input
gestures with 87% accuracy. Our estimator can enhance current gestural
interfaces by leveraging scale as a natural parameter for gesture input,
reflective of user perception (i.e., no training required). Gesture scale can
simplify gesture set design, improve gesture-to-function mappings, and reduce
the need for users to learn and for recognizers to discriminate unnecessary
symbols.
How low can you go?: human limits in small unidirectional mouse movements
Papers: pointing and Fitts Law
/
Aceituno, Jonathan
/
Casiez, Géry
/
Roussel, Nicolas
Proceedings of ACM CHI 2013 Conference on Human Factors in Computing Systems
2013-04-27
v.1
p.1383-1386
© Copyright 2013 ACM
Summary: Computer mouse sensors keep increasing in resolution. The smallest
displacement they can detect gets smaller, but little is known on our ability
to control such small movements. Small target acquisition has been previously
tackled, but the findings do not apply to the problem of finding the useful
resolution of a user with a mouse, which corresponds to the smallest
displacement (s)he can reliably produce with that device. We detail this
definition and provide an associated experimental protocol to measure it. We
then report on the results of a study suggesting that high-end mice are not
likely to be used to their full potential. We further comment on the different
strategies used by participants to achieve best performance, and derive
implications for user interfaces.
Designing Intuitive Multi-touch 3D Navigation Techniques
3D Navigation
/
Marchal, Damien
/
Moerman, Clément
/
Casiez, Géry
/
Roussel, Nicolas
Proceedings of IFIP INTERACT'13: Human-Computer Interaction-1
2013
v.1
p.19-36
Keywords: 3D navigation; multi-touch; interaction technique; design rationale
© Copyright 2013 IFIP
Summary: Multi-touch displays have become commonplace over recent years. Numerous
applications take advantage of this to support interactions that build on
users' knowledge and correspond to daily practices within the real world. 3D
applications are also becoming more common on these platforms, but the
multi-touch techniques for 3D operations often lag behind 2D ones in terms of
intuitiveness and ease of use. Intuitive navigation techniques are particularly
needed to make multi-touch 3D applications more useful, and systematic
approaches are direly needed to inform their design: existing techniques are
still too often designed in ad-hoc ways. In this paper, we propose a
methodology based on cognitive principles to address this problem. The
methodology combines standard user-centered design practices with optical flow
analysis to determine the mappings between navigation controls and multi-touch
input. It was used to design the navigation technique of a specific
application. This technique proved to be more efficient and preferred by users
when compared to existing ones, which provides a first validation of the
approach.
Méthodologie de conception de textures pour les interfaces tactiles
à frottement programmable
Interactions gestuelles, tactiles, tangibles, multimodales
/
Potier, Ludovic
/
Pietrzak, Thomas
/
Casiez, Géry
/
Roussel, Nicolas
Proceedings of the 2012 Conference on Ergonomie et Interaction Homme-Machine
2012-10-16
p.121
© Copyright 2012 ACM
Summary: The design of textures for so-called variable friction technologies requires
multiple perspectives, which this paper aims to outline and discuss. We first
propose a definition of texture and describe the current state of knowledge on
their perception. After presenting two technologies for variable friction and
comparing them to other tactile interfaces, we describe several particular uses
for these devices. We then discuss psychophysical methods for signal perception
evaluation and finally discuss methodologies for creating multidimensional
tactile content.
Technique multi-points indirecte relative pour l'interaction avec des
écrans de grandes dimensions
Nouvelles techniques d'interaction
/
Gilliot, Jérémie
/
Casiez, Géry
/
Roussel, Nicolas
Proceedings of the 2012 Conference on Ergonomie et Interaction Homme-Machine
2012-10-16
p.229
© Copyright 2012 ACM
Summary: Multitouch interaction shows its limits with large display surfaces.
Indirect interaction allows to use control surfaces that are much smaller than
display surfaces. Absolute indirect interaction raises accuracy problems and
relative indirect interaction only allows to interact with a single cursor. We
present a relative indirect multitouch interaction technique allowing to
create, control, delete several cursors without sacrificing precision for
interacting with small objects.
Exposing and understanding scrolling transfer functions
Interactions II
/
Quinn, Philip
/
Cockburn, Andy
/
Casiez, Géry
/
Roussel, Nicolas
/
Gutwin, Carl
Proceedings of the 2012 ACM Symposium on User Interface Software and
Technology
2012-10-07
v.1
p.341-350
© Copyright 2012 ACM
Summary: Scrolling is controlled through many forms of input devices, such as mouse
wheels, trackpad gestures, arrow keys, and joysticks. Performance with these
devices can be adjusted by introducing variable transfer functions to alter the
range of expressible speed, precision, and sensitivity. However, existing
transfer functions are typically "black boxes" bundled into proprietary
operating systems and drivers. This presents three problems for researchers:
(1) a lack of knowledge about the current state of the field; (2) a difficulty
in replicating research that uses scrolling devices; and (3) a potential
experimental confound when evaluating scrolling devices and techniques. These
three problems are caused by gaps in researchers' knowledge about what device
and movement factors are important for scrolling transfer functions, and about
how existing devices and drivers use these factors. We fill these knowledge
gaps with a framework of transfer function factors for scrolling, and a method
for analysing proprietary transfer functions -- demonstrating how state of the
art commercial devices accommodate some of the human control phenomena observed
in prior studies.
Giving a hand to the eyes: leveraging input accuracy for subpixel
interaction
Interactions II
/
Roussel, Nicolas
/
Casiez, Géry
/
Aceituno, Jonathan
/
Vogel, Daniel
Proceedings of the 2012 ACM Symposium on User Interface Software and
Technology
2012-10-07
v.1
p.351-358
© Copyright 2012 ACM
Summary: We argue that the current practice of using integer positions for pointing
events artificially constrains human precision capabilities. The high
sensitivity of current input devices can be harnessed to enable precise direct
manipulation ""in between"" pixels, called subpixel interaction. We provide
detailed analysis of subpixel theory and implementation, including the critical
component of revised control-display gain transfer functions. A prototype
implementation is described with several illustrative examples. Guidelines for
subpixel domain applicability are provided and an overview of required changes
to operating systems and graphical user interface frameworks are discussed.
Mockup builder: direct 3D modeling on and above the surface in a continuous
interaction space
3D manipulation
/
De Araùjo, Bruno R.
/
Casiez, Géry
/
Jorge, Joaquim A.
Proceedings of the 2012 Conference on Graphics Interface
2012-05-28
p.173-180
© Copyright 2012 Authors
Summary: Our work introduces a semi-immersive environment for conceptual design where
virtual mockups are obtained from gestures we aim to get closer to the way
people conceive, create and manipulate three-dimensional shapes. We present
on-and-above-the-surface interaction techniques following Guiard's asymmetric
bimanual model to take advantage of the continuous interaction space for
creating and editing 3D models in a stereoscopic environment. To allow for more
expressive interactions, our approach continuously combines hand and finger
tracking in the space above the table with multi-touch on its surface. This
combination brings forth an alternative design environment where users can
seamlessly switch between interacting on the surface or in the space above it
depending on the task. Our approach integrates continuous space usage with
bimanual interaction to provide an expressive set of 3D modeling operations.
Preliminary trials with our experimental setup show this as a very promising
avenue for further work.
Hand occlusion on a multi-touch tabletop
Triple t: touch, tables, tablets
/
Vogel, Daniel
/
Casiez, Géry
Proceedings of ACM CHI 2012 Conference on Human Factors in Computing Systems
2012-05-05
v.1
p.2307-2316
© Copyright 2012 ACM
Summary: We examine the shape of hand and forearm occlusion on a multi-touch table
for different touch contact types and tasks. Individuals have characteristic
occlusion shapes, but with commonalities across tasks, postures, and
handedness. Based on this, we create templates for designers to justify
occlusion-related decisions and we propose geometric models capturing the shape
of occlusion. A model using diffused illumination captures performed well when
augmented with a forearm rectangle, as did a modified circle and rectangle
model with ellipse "fingers" suitable when only X-Y contact positions are
available. Finally, we describe the corpus of detailed multi-touch input data
we generated which is available to the community.
1 € filter: a simple speed-based low-pass filter for noisy input in
interactive systems
Interactions beyond the desktop
/
Casiez, Géry
/
Roussel, Nicolas
/
Vogel, Daniel
Proceedings of ACM CHI 2012 Conference on Human Factors in Computing Systems
2012-05-05
v.1
p.2527-2530
© Copyright 2012 ACM
Summary: The 1 € filter ("one Euro filter") is a simple algorithm to filter
noisy signals for high precision and responsiveness. It uses a first order
low-pass filter with an adaptive cutoff frequency: at low speeds, a low cutoff
stabilizes the signal by reducing jitter, but as speed increases, the cutoff is
increased to reduce lag. The algorithm is easy to implement, uses very few
resources, and with two easily understood parameters, it is easy to tune. In a
comparison with other filters, the 1 € filter has less lag using a
reference amount of jitter reduction.
Conté: multimodal input inspired by an artist's crayon
Tangible
/
Vogel, Daniel
/
Casiez, Géry
Proceedings of the 201 ACM Symposium on User Interface Software and
Technology1
2011-10-16
v.1
p.357-366
© Copyright 2011 ACM
Summary: Conté is a small input device inspired by the way artists manipulate
a real Conté crayon. By changing which corner, edge, end, or side is
contacting the display, the operator can switch interaction modes using a
single hand. Conté's rectangular prism shape enables both precise
pen-like input and tangible handle interaction. Conté also has a natural
compatibility with multi-touch input: it can be tucked in the palm to
interleave same-hand touch input, or used to expand the vocabulary of bimanual
touch. Inspired by informal interviews with artists, we catalogue
Conté's characteristics, and use these to outline a design space. We
describe a prototype device using common materials and simple electronics. With
this device, we demonstrate interaction techniques in a test-bed drawing
application. Finally, we discuss alternate hardware designs and future human
factors research to study this new class of input.
No more bricolage!: methods and tools to characterize, replicate and compare
pointing transfer functions
Pointing
/
Casiez, Géry
/
Roussel, Nicolas
Proceedings of the 201 ACM Symposium on User Interface Software and
Technology1
2011-10-16
v.1
p.603-614
© Copyright 2011 ACM
Summary: Transfer functions are the only pointing facilitation technique actually
used in modern graphical interfaces involving the indirect control of an
on-screen cursor. But despite their general use, very little is known about
them. We present EchoMouse, a device we created to characterize the transfer
functions of any system, and libpointing, a toolkit that we developed to
replicate and compare the ones used by Windows, OS X and Xorg. We describe
these functions and report on an experiment that compared the default one of
the three systems. Our results show that these default functions improve
performance up to 24% compared to a unitless constant CD gain. We also found
significant differences between them, with the one from OS X improving
performance for small target widths but reducing its performance up to 9% for
larger ones compared to Windows and Xorg. These results notably suggest
replacing the constant CD gain function commonly used by HCI researchers by the
default function of the considered systems.
STIMTAC: a tactile input device with programmable friction
Demonstration
/
Amberg, Michel
/
Giraud, Frédéric
/
Semail, Betty
/
Olivo, Paolo
/
Casiez, Géry
/
Roussel, Nicolas
Proceedings of the 2011 ACM Symposium on User Interface Software and
Technology
2011-10-16
v.2
p.7-8
© Copyright 2011 ACM
Summary: We present the STIMTAC, a touchpad device that supports friction reduction.
Contrary to traditional vibrotactile approaches, the STIMTAC provides
information passively, acting as a texture display. It does not transfer energy
to the user but modifies how energy is dissipated within the contact area by a
user-initiated friction process. We report on the iterative process that led to
the current hardware design and briefly describe the software framework that we
are developing to illustrate its potential.
Estimating the Perceived Difficulty of Pen Gestures
Human Factors I
/
Vatavu, Radu-Daniel
/
Vogel, Daniel
/
Casiez, Géry
/
Grisoni, Laurent
Proceedings of IFIP INTERACT'11: Human-Computer Interaction
2011-09-05
v.2
p.89-106
Keywords: gesture-based interfaces; pen input; gesture descriptors
© Copyright 2011 IFIP
Summary: Our empirical results show that users perceive the execution difficulty of
single stroke gestures consistently, and execution difficulty is highly
correlated with gesture production time. We use these results to design two
simple rules for estimating execution difficulty: establishing the relative
ranking of difficulty among multiple gestures; and classifying a single gesture
into five levels of difficulty. We confirm that the CLC model does not provide
an accurate prediction of production time magnitude, and instead show that a
reasonably accurate estimate can be calculated using only a few gesture
execution samples from a few people. Using this estimated production time, our
rules, on average, rank gesture difficulty with 90% accuracy and rate gesture
difficulty with 75% accuracy. Designers can use our results to choose
application gestures, and researchers can build on our analysis in other
gesture domains and for modeling gesture performance.
Surfpad: riding towards targets on a squeeze film effect
Touch 2: tactile & targets
/
Casiez, Géry
/
Roussel, Nicolas
/
Vanbelleghem, Romuald
/
Giraud, Frédéric
Proceedings of ACM CHI 2011 Conference on Human Factors in Computing Systems
2011-05-07
v.1
p.2491-2500
© Copyright 2011 ACM
Summary: We present Surfpad, a pointing facilitation technique that does not decrease
target distance or increase target width in either control or display space.
This new technique operates instead in the tactile domain by taking advantage
of the ability to alter a touchpad's coefficient of friction by means of a
squeeze film effect. We report on three experiments comparing Surfpad to the
Semantic Pointing technique and constant control-display gain with and without
distractor targets. Our results clearly show the limits of traditional
target-aware control-display gain adaptation in the latter case, and the
benefits of our tactile approach in both cases. Surfpad leads to a performance
improvement close to 9% compared to unassisted pointing at small targets with
no distractor. It is also robust to high distractor densities, keeping an
average performance improvement of nearly 10% while Semantic Pointing can
degrade up to 100%. Our results also suggest the performance improvement is
caused by tactile information feedback rather than mechanical causes, and that
the feedback is more effective when friction is increased on targets using a
simple step function.
The effect of DOF separation in 3D manipulation tasks with multi-touch
displays
Interactions
/
Martinet, Anthony
/
Casiez, Géry
/
Grisoni, Laurent
Proceedings of the 2010 ACM Symposium on Virtual Reality Software and
Technology
2010-11-22
p.111-118
© Copyright 2010 ACM
Summary: Multi-touch displays represent a promising technology for the display and
manipulation of data. While the manipulation of 2D data has been widely
explored, 3D manipulation with multi-touch displays remains largely uncovered.
Based on an analysis of the integration and separation of degrees of freedom,
we propose a taxonomy for 3D manipulation techniques with multi-touch displays.
Using that taxonomy, we introduce DS3 (Depth-Separated Screen Space), a new 3D
manipulation technique based on the separation of translation and rotation. In
a controlled experiment, we compare DS3 with Sticky Tools and Screen-Space.
Results show that separating the control of translation and rotation
significantly affects performance for 3D manipulation, with DS3 being at least
22% faster.