# Names should be added to this file with this pattern:
#
# For individuals:
#   Name <email address>
#
# For organizations:
#   Organization <fnmatch pattern>
#

Google Inc. <*@google.com>

Alexandre Ardhuin <alexandre.ardhuin@gmail.com>
Honza Bittner <git@honzabittner.cz>
Patrice Chalin <pchalin@gmail.com>
Maxim Dikun <dikmax@gmail.com>
Xavier Hainaux <xavier.hainaux@gmail.com>
Alexey Knyazev <lexa.knyazev@gmail.com>
Jawahar <jawahars_16@live.in>
Keisuke Kishida <kishidak@tcd.ie>
Benjamin Li <benjamin.voila@gmail.com>
Guillermo López-Anglada <guillermo.lopez@outlook.com>
Parker Lougheed <parlough@gmail.com>
Juan Pablo Paulsen <juanpablo.paulsen@gmail.com>
Luke Pighetti <git@lukepighetti.com>
Sem van Rij <sem@lekkerplakjekaas.nl>
Muhammed Salih Guler <muhammedsalihguler@gmail.com>
Nolan Scobie <nolan.scobie@gmail.com>
Cameron Steffen <cam.steffen94@gmail.com>
Danny Tuppeny <danny@tuppeny.com>
Ivan Tugay <listepo@gmail.com>
Rohan Vanheusden <rohan.vanheusden@gmail.com>
