# This is the list of Fuchsia Authors.

# Names should be added to this file as one of
#     Organization's name
#     Individual's name <submission email address>

Google Inc.
