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

Nikolas Rimikis <rimikis.nikolas@gmail.com>
Google Inc.
