# This file is reserved for temporary suppressions needed while importing
# tests from the W3C until they can be moved to
# src/third_party/WebKit/LayoutTests/TestExpectations and dealt with.
#

#
# Expectations to delete on the next W3C roll.
#


#
# Expectations to upstream into blink after the next W3C roll has rolled into Blink.
# 

