# Please prefer to use more specific OWNERS if possible.
# For example, core/rendering/OWNERS for rendering changes.

# Reviewers (comments indicate areas of expertise):
# alancutter reviews changes in core/animation, core/css and core/style.
alancutter@chromium.org
alexis.menard@intel.com
# bokan reviews changes around viewport behavior, scrolling, cc/blink interaction, co-ordinate spaces and input events
bokan@chromium.org
cbiesinger@chromium.org
chrishtr@chromium.org
clamy@chromium.org
dcheng@chromium.org
# dtapuska reviews input-related changes
dtapuska@chromium.org
dgozman@chromium.org
# drott reviews font specific changes.
drott@chromium.org
dsinclair@chromium.org
dstockwell@chromium.org
enne@chromium.org
# flackr reviews animation- and scrolling-related changes.
flackr@chromium.org
fmalita@chromium.org
# foolip reviews <video>, <track>, WebVTT and Fullscreen.
foolip@chromium.org
fs@opera.com
fserb@chromium.org
futhark@chromium.org
haraken@chromium.org
hayato@chromium.org
hiroshige@chromium.org
ikilpatrick@chromium.org
inferno@chromium.org
japhet@chromium.org
jbroman@chromium.org
jfernandez@igalia.com
jianli@chromium.org
jochen@chromium.org
kbr@chromium.org
keishi@chromium.org
kenneth.r.christiansen@intel.com
kinuko@chromium.org
kojii@chromium.org
kouhei@chromium.org
masonfreed@chromium.org
mkwst@chromium.org
mstensho@chromium.org
# nainar reviews changes in core/css,core/style
# and related code in core/dom and core/layout.
nainar@chromium.org
nhiroki@chromium.org
obrufau@igalia.com
# pdr reviews many svg and text autosizing patches.
pdr@chromium.org
pfeldman@chromium.org
pkasting@chromium.org
rego@igalia.com
rbyers@chromium.org
rbuis@igalia.com
robhogan@gmail.com
schenney@chromium.org
senorblanco@chromium.org
skobes@chromium.org
svillar@igalia.com
szager@chromium.org
thakis@chromium.org
timloh@chromium.org
tkent@chromium.org
tonyg@chromium.org
vmpstr@chromium.org
vollick@chromium.org
wangxianzhu@chromium.org
yhirano@chromium.org
yoavweiss@chromium.org
yutak@chromium.org

# TEAM: blink-dev@chromium.org
# COMPONENT: Blink
