# Below is a list of people and organizations that have contributed
# to the Dart project. Names should be added to the list like so:
#
#   Name/Organization <email address>

Google Inc.

Ola Martin Bini <ola.bini@gmail.com>
Michael Haubenwallner <michael.haubenwallner@gmail.com>
Ladislav Thon <ladicek@gmail.com>
John Evans <prujohn@gmail.com>
Lajos Koszti <ajnasz@ajnasz.hu>
Kevin Moore <kevmoo@j832.com>
Austin Cummings <austincummings95@gmail.com>
Alexander Aprelev <aprelev@gmail.com>
Christopher Stone <chris.stone@gmail.com>
Kevin Kellogg <kelloggk@gmail.com>
Matthew Butler <butler.matthew@gmail.com>
Andy Trevorah <a.trevorah@gmail.com>
Jingwen Ou <jingweno@gmail.com>
Chris Strom <chris.eee@gmail.com>
Adam Singer <financeCoding@gmail.com>
Chris Buckett <chrisbuckett@gmail.com>
Thiago Farina <tfarina@chromium.org>
Sami Ylönen <sami.ylonen@gmail.com>
David Gomez <irisindigo@gmail.com>
Nikolaus Graf <nik@blossom.io>
Alexandre Ardhuin <alexandre.ardhuin@gmail.com>
Victor Berchet <victor.berchet@gmail.com>
Roel Spilker <r.spilker@gmail.com>
Martin Charles <martincharles07@gmail.com>
Anders Holmgren <andersmholmgren@gmail.com>
K. Alex Gann <k.alexgann@gmail.com>
Kenneth Endfinger <kaendfinger@gmail.com>
Cristian Almstrand <cristian.almstrand@gmail.com>
