# Use these reviewers by default.
hseog@google.com
johnchoi@google.com
kwaky@google.com
priyanksingh@google.com
stenning@google.com
ericberglund@google.com
jianyliu@google.com

# People who can originally approve code for Settings.
edgarwang@google.com
emilychuang@google.com
tmfang@google.com

# Emergency approvers in case the above are not available

# Exempt resource files (because they are in a flat directory and too hard to manage via OWNERS)
per-file *.xml=*
