# Don't inherit "*" from the //docs/OWNERS file for this directory.
set noparent

# Allow global approvers.
include /OWNERS

# Fuchsia Eng Council

abarth@google.com         # Adam Barth (Chair)
cpu@google.com            # Carlos Pizano
davemoore@google.com      # David Moore
hjfreyer@google.com       # Hunter Freyer
jamesr@google.com         # James Robinson
leannogasawara@google.com # Leann Ogasawara
neelsa@google.com         # Alice Neels

# Tech writers
mkearney@google.com   # Meggin Kearney (Tech writing lead)
nickvander@google.com # Nick Van der Auwermeulen (fuchsia.dev infrastructure)
