# Authoritative list of Dr. No reviewers to approve changes on GKI release
# branches, such as android12-5.10.
#
# This file has no effect in this branch, but is referred to from release
# branches. So, please do not move or rename.
#
# See the GKI release documentation (go/gki-dr-no) for further details.

# Main reviewers
adelva@google.com
joneslee@google.com
maennich@google.com
saravanak@google.com
vmartensson@google.com
tkjos@google.com
willdeacon@google.com

# GKI Release Team
howardsoc@google.com #{LAST_RESORT_SUGGESTION}
szuweilin@google.com #{LAST_RESORT_SUGGESTION}

# Backup
sspatil@google.com #{LAST_RESORT_SUGGESTION}
malchev@google.com #{LAST_RESORT_SUGGESTION}
