diff --git a/components/autofill/core/browser/address_normalizer_impl.cc b/components/autofill/core/browser/address_normalizer_impl.cc
index 75848ef1..bd14618 100644
--- a/components/autofill/core/browser/address_normalizer_impl.cc
+++ b/components/autofill/core/browser/address_normalizer_impl.cc
@@ -13,7 +13,6 @@
 #include "base/location.h"
 #include "base/logging.h"
 #include "base/strings/utf_string_conversions.h"
-#include "base/task_scheduler/post_task.h"
 #include "base/threading/sequenced_task_runner_handle.h"
 #include "base/time/time.h"
 #include "components/autofill/core/browser/address_i18n.h"
@@ -69,48 +68,40 @@
                       base::UTF8ToUTF16(formatted_number));
 }
 
-std::unique_ptr<AddressValidator> CreateAddressValidator(
-    std::unique_ptr<::i18n::addressinput::Source> source,
-    std::unique_ptr<::i18n::addressinput::Storage> storage,
-    LoadRulesListener* load_rules_listener) {
-  return std::make_unique<AddressValidator>(
-      std::move(source), std::move(storage), load_rules_listener);
-}
-
 }  // namespace
 
 class AddressNormalizerImpl::NormalizationRequest {
  public:
+  // |address_validator| needs to outlive this Request.
   NormalizationRequest(const AutofillProfile& profile,
                        const std::string& app_locale,
                        int timeout_seconds,
-                       AddressNormalizer::NormalizationCallback callback)
+                       AddressNormalizer::NormalizationCallback callback,
+                       AddressValidator* address_validator)
       : profile_(profile),
         app_locale_(app_locale),
         callback_(std::move(callback)),
-        weak_ptr_factory_(this) {
-    // OnRulesLoaded will be called in |timeout_seconds| if the rules are not
-    // loaded in time.
+        address_validator_(address_validator),
+        has_responded_(false),
+        on_timeout_(base::Bind(&NormalizationRequest::OnRulesLoaded,
+                               base::Unretained(this),
+                               false)) {
     base::SequencedTaskRunnerHandle::Get()->PostDelayedTask(
-        FROM_HERE,
-        base::BindOnce(&NormalizationRequest::OnRulesLoaded,
-                       weak_ptr_factory_.GetWeakPtr(),
-                       /*success=*/false,
-                       /*address_validator=*/nullptr),
+        FROM_HERE, on_timeout_.callback(),
         base::TimeDelta::FromSeconds(timeout_seconds));
   }
 
   ~NormalizationRequest() {}
 
-  void OnRulesLoaded(bool success, AddressValidator* address_validator) {
+  void OnRulesLoaded(bool success) {
+    on_timeout_.Cancel();
+
     // Check if the timeout happened before the rules were loaded.
     if (has_responded_)
       return;
     has_responded_ = true;
 
-    // The phone number formatting doesn't require the rules to have been
-    // successfully loaded. Therefore it is done for every request regardless of
-    // |success|.
+    // In either case, format the phone number.
     const std::string region_code =
         data_util::GetCountryCodeWithFallback(profile_, app_locale_);
     FormatPhoneNumberToE164(&profile_, region_code, app_locale_);
@@ -121,10 +112,10 @@
     }
 
     // The rules should be loaded.
-    DCHECK(address_validator->AreRulesLoadedForRegion(region_code));
+    DCHECK(address_validator_->AreRulesLoadedForRegion(region_code));
 
     bool normalization_success = NormalizeProfileWithValidator(
-        &profile_, app_locale_, address_validator);
+        &profile_, app_locale_, address_validator_);
 
     std::move(callback_).Run(/*success=*/normalization_success, profile_);
   }
@@ -133,9 +124,10 @@
   AutofillProfile profile_;
   const std::string app_locale_;
   AddressNormalizer::NormalizationCallback callback_;
+  AddressValidator* address_validator_;
 
-  bool has_responded_ = false;
-  base::WeakPtrFactory<NormalizationRequest> weak_ptr_factory_;
+  bool has_responded_;
+  base::CancelableCallback<void()> on_timeout_;
 
   DISALLOW_COPY_AND_ASSIGN(NormalizationRequest);
 };
@@ -143,146 +135,89 @@
 AddressNormalizerImpl::AddressNormalizerImpl(std::unique_ptr<Source> source,
                                              std::unique_ptr<Storage> storage,
                                              const std::string& app_locale)
-    : app_locale_(app_locale), weak_ptr_factory_(this) {
-  // |address_validator_| is created in the background. Once initialized, it
-  // will run any pending normalization.
-  base::PostTaskWithTraitsAndReplyWithResult(
-      FROM_HERE, {base::MayBlock(), base::TaskPriority::BACKGROUND},
-      base::BindOnce(&CreateAddressValidator, std::move(source),
-                     std::move(storage), this),
-      base::BindOnce(&AddressNormalizerImpl::OnAddressValidatorCreated,
-                     weak_ptr_factory_.GetWeakPtr()));
-}
+    : address_validator_(std::move(source), std::move(storage), this),
+      app_locale_(app_locale) {}
 
-AddressNormalizerImpl::~AddressNormalizerImpl() {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-}
+AddressNormalizerImpl::~AddressNormalizerImpl() {}
 
 void AddressNormalizerImpl::LoadRulesForRegion(const std::string& region_code) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-
-  // The |address_validator_| is initialized in a background task. It may not
-  // be available yet.
-  if (!address_validator_)
-    return;
-
-  address_validator_->LoadRules(region_code);
+  address_validator_.LoadRules(region_code);
 }
 
 void AddressNormalizerImpl::NormalizeAddressAsync(
     const AutofillProfile& profile,
     int timeout_seconds,
     AddressNormalizer::NormalizationCallback callback) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
   DCHECK_GE(timeout_seconds, 0);
 
   std::unique_ptr<NormalizationRequest> request =
       std::make_unique<NormalizationRequest>(
-          profile, app_locale_, timeout_seconds, std::move(callback));
+          profile, app_locale_, timeout_seconds, std::move(callback),
+          &address_validator_);
 
-  // If the rules are already loaded for |region_code| and the validator is
-  // initialized, the |request| will callback synchronously.
+  // If the rules are already loaded for |region_code|, the |request| will
+  // callback synchronously.
   const std::string region_code =
       data_util::GetCountryCodeWithFallback(profile, app_locale_);
-  if (address_validator_ && AreRulesLoadedForRegion(region_code)) {
-    request->OnRulesLoaded(/*success=*/true, address_validator_.get());
+  if (AreRulesLoadedForRegion(region_code)) {
+    request->OnRulesLoaded(true);
     return;
   }
 
-  // Otherwise, the request is added to the queue for |region_code|.
-  AddNormalizationRequestForRegion(std::move(request), region_code);
+  // Setup the variables so the profile gets normalized when the rules have
+  // finished loading.
+  auto it = pending_normalization_.find(region_code);
+  if (it == pending_normalization_.end()) {
+    // If no entry exists yet, create the entry and assign it to |it|.
+    it = pending_normalization_
+             .insert(std::make_pair(
+                 region_code,
+                 std::vector<std::unique_ptr<NormalizationRequest>>()))
+             .first;
+  }
+
+  it->second.push_back(std::move(request));
 
   // Start loading the rules for that region. If the rules were already in the
-  // process of being loaded or |address_validator_| is not yet initialized,
-  // this call will do nothing.
+  // process of being loaded, this call will do nothing.
   LoadRulesForRegion(region_code);
 }
 
 bool AddressNormalizerImpl::NormalizeAddressSync(AutofillProfile* profile) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-
   // Phone number is always formatted, regardless of whether the address rules
   // are loaded for |region_code|.
   const std::string region_code =
       data_util::GetCountryCodeWithFallback(*profile, app_locale_);
   FormatPhoneNumberToE164(profile, region_code, app_locale_);
-  if (!address_validator_) {
-    // Can't normalize the address synchronously. Add an empty
-    // NormalizationRequest so that the rules are loaded when the validator is
-    // initialized (See OnAddressValidatorCreated).
-    AddNormalizationRequestForRegion(nullptr, region_code);
-    return false;
-  }
-
   if (!AreRulesLoadedForRegion(region_code)) {
-    // Ensure that the rules are being loaded for that region.
+    // Start loading the rules for that region so that they are available next
+    // time.
     LoadRulesForRegion(region_code);
     return false;
   }
 
   return NormalizeProfileWithValidator(profile, app_locale_,
-                                       address_validator_.get());
+                                       &address_validator_);
 }
 
 bool AddressNormalizerImpl::AreRulesLoadedForRegion(
     const std::string& region_code) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-
-  return address_validator_->AreRulesLoadedForRegion(region_code);
+  return address_validator_.AreRulesLoadedForRegion(region_code);
 }
 
 void AddressNormalizerImpl::OnAddressValidationRulesLoaded(
     const std::string& region_code,
     bool success) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-
-  // |address_validator_| is logically loaded at this point, but DCHECK anyway.
-  DCHECK(address_validator_);
-
-  // Check if an address normalization is pending for |region_code|.
+  // Check if an address normalization is pending.
   auto it = pending_normalization_.find(region_code);
   if (it != pending_normalization_.end()) {
     for (size_t i = 0; i < it->second.size(); ++i) {
-      // Some NormalizationRequest are null, and served only to load the rules.
-      if (it->second[i]) {
-        // TODO(crbug.com/777417): |success| appears to be true even when the
-        // key was not actually found.
-        it->second[i]->OnRulesLoaded(AreRulesLoadedForRegion(region_code),
-                                     address_validator_.get());
-      }
+      // TODO(crbug.com/777417): |success| appears to be true even when the
+      // key was not actually found.
+      it->second[i]->OnRulesLoaded(AreRulesLoadedForRegion(region_code));
     }
     pending_normalization_.erase(it);
   }
 }
 
-void AddressNormalizerImpl::OnAddressValidatorCreated(
-    std::unique_ptr<AddressValidator> validator) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  DCHECK(!address_validator_);
-
-  address_validator_ = std::move(validator);
-
-  // Make a copy of region keys before calling LoadRulesForRegion on them,
-  // because LoadRulesForRegion may synchronously modify
-  // |pending_normalization_|.
-  std::vector<std::string> region_keys;
-  region_keys.reserve(pending_normalization_.size());
-  for (const auto& entry : pending_normalization_)
-    region_keys.push_back(entry.first);
-
-  // Load rules for regions with pending normalization requests.
-  for (const std::string& region : region_keys)
-    LoadRulesForRegion(region);
-}
-
-void AddressNormalizerImpl::AddNormalizationRequestForRegion(
-    std::unique_ptr<NormalizationRequest> request,
-    const std::string& region_code) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-
-  // Setup the variables so the profile gets normalized when the rules have
-  // finished loading.
-  pending_normalization_[region_code].push_back(std::move(request));
-}
-
 }  // namespace autofill
diff --git a/components/autofill/core/browser/address_normalizer_impl.h b/components/autofill/core/browser/address_normalizer_impl.h
index 8fd0dd1..f90eb24 100644
--- a/components/autofill/core/browser/address_normalizer_impl.h
+++ b/components/autofill/core/browser/address_normalizer_impl.h
@@ -11,8 +11,6 @@
 #include <vector>
 
 #include "base/macros.h"
-#include "base/memory/weak_ptr.h"
-#include "base/sequence_checker.h"
 #include "components/autofill/core/browser/address_normalizer.h"
 
 namespace i18n {
@@ -24,7 +22,6 @@
 
 namespace autofill {
 
-class AddressValidator;
 class AutofillProfile;
 
 // A class used to normalize addresses.
@@ -52,26 +49,15 @@
   void OnAddressValidationRulesLoaded(const std::string& region_code,
                                       bool success) override;
 
-  // Callback for when the AddressValidator's initialization comes back from the
-  // background task.
-  void OnAddressValidatorCreated(std::unique_ptr<AddressValidator> validator);
-
-  // Associating a region code to pending normalizations.
+  // Map associating a region code to pending normalizations.
   class NormalizationRequest;
-  void AddNormalizationRequestForRegion(
-      std::unique_ptr<NormalizationRequest> request,
-      const std::string& region_code);
   std::map<std::string, std::vector<std::unique_ptr<NormalizationRequest>>>
       pending_normalization_;
 
   // The address validator used to normalize addresses.
-  std::unique_ptr<AddressValidator> address_validator_;
+  AddressValidator address_validator_;
   const std::string app_locale_;
 
-  SEQUENCE_CHECKER(sequence_checker_);
-
-  base::WeakPtrFactory<AddressNormalizerImpl> weak_ptr_factory_;
-
   DISALLOW_COPY_AND_ASSIGN(AddressNormalizerImpl);
 };
 
diff --git a/components/autofill/core/browser/address_normalizer_impl_unittest.cc b/components/autofill/core/browser/address_normalizer_impl_unittest.cc
index bf96e4e..15b3472 100644
--- a/components/autofill/core/browser/address_normalizer_impl_unittest.cc
+++ b/components/autofill/core/browser/address_normalizer_impl_unittest.cc
@@ -93,10 +93,6 @@
 
   ~AddressNormalizerTest() override {}
 
-  void WaitForAddressValidatorInitialization() {
-    scoped_task_environment_.RunUntilIdle();
-  }
-
   bool normalization_successful() const { return success_; }
 
   const AutofillProfile& result_profile() const { return profile_; }
@@ -119,8 +115,6 @@
 
 // Tests that the rules are loaded correctly for regions that are available.
 TEST_F(AddressNormalizerTest, AreRulesLoadedForRegion_Loaded) {
-  WaitForAddressValidatorInitialization();
-
   EXPECT_FALSE(AreRulesLoadedForRegion("US"));
 
   normalizer()->LoadRulesForRegion("US");
@@ -130,8 +124,6 @@
 
 // Tests that the rules are not loaded for regions that are not available.
 TEST_F(AddressNormalizerTest, AreRulesLoadedForRegion_NotAvailable) {
-  WaitForAddressValidatorInitialization();
-
   EXPECT_FALSE(AreRulesLoadedForRegion("CA"));
 
   normalizer()->LoadRulesForRegion("CA");
@@ -142,8 +134,6 @@
 // Tests that if the rules are loaded before the normalization is started, the
 // normalized profile will be returned synchronously.
 TEST_F(AddressNormalizerTest, NormalizeAddressAsync_RulesLoaded) {
-  WaitForAddressValidatorInitialization();
-
   AutofillProfile profile = autofill::test::GetFullProfile();
   profile.SetRawInfo(ADDRESS_HOME_STATE, base::ASCIIToUTF16("California"));
   const std::string kCountryCode =
@@ -155,7 +145,7 @@
 
   // Do the normalization.
   normalizer()->NormalizeAddressAsync(
-      profile, /*timeout_seconds=*/5,
+      profile, 0,
       base::BindOnce(&AddressNormalizerTest::OnAddressNormalized,
                      base::Unretained(this)));
 
@@ -171,8 +161,6 @@
 // notified.
 TEST_F(AddressNormalizerTest,
        NormalizeAddressAsync_RulesNotLoaded_WillNotLoad) {
-  WaitForAddressValidatorInitialization();
-
   AutofillProfile profile = autofill::test::GetFullProfile();
   profile.SetRawInfo(ADDRESS_HOME_STATE, base::ASCIIToUTF16("California"));
 
@@ -182,7 +170,7 @@
 
   // Do the normalization.
   normalizer()->NormalizeAddressAsync(
-      profile, /*timeout_seconds=*/0,
+      profile, 0,
       base::BindOnce(&AddressNormalizerTest::OnAddressNormalized,
                      base::Unretained(this)));
 
@@ -199,8 +187,6 @@
 // Tests that if the rules are not available for a given profile's region,
 // the address is not normalized.
 TEST_F(AddressNormalizerTest, NormalizeAddressAsync_RulesNotAvailable) {
-  WaitForAddressValidatorInitialization();
-
   // Rules are not available for Canada.
   AutofillProfile profile = autofill::test::GetFullCanadianProfile();
   // Verify the pre-condition.
@@ -209,7 +195,7 @@
 
   // Do the normalization.
   normalizer()->NormalizeAddressAsync(
-      profile, /*timeout_seconds=*/5,
+      profile, 0,
       base::BindOnce(&AddressNormalizerTest::OnAddressNormalized,
                      base::Unretained(this)));
 
@@ -231,14 +217,12 @@
 // Tests that if the rules are not loaded before the call to
 // NormalizeAddressAsync, they will be loaded in the call.
 TEST_F(AddressNormalizerTest, NormalizeAddressAsync_RulesNotLoaded_WillLoad) {
-  WaitForAddressValidatorInitialization();
-
   AutofillProfile profile = autofill::test::GetFullProfile();
   profile.SetRawInfo(ADDRESS_HOME_STATE, base::ASCIIToUTF16("California"));
 
   // Do the normalization.
   normalizer()->NormalizeAddressAsync(
-      profile, /*timeout_seconds=*/5,
+      profile, 0,
       base::BindOnce(&AddressNormalizerTest::OnAddressNormalized,
                      base::Unretained(this)));
 
@@ -256,8 +240,6 @@
 
 // Tests that the phone number is formatted when the address is normalized.
 TEST_F(AddressNormalizerTest, FormatPhone_AddressNormalizedAsync) {
-  WaitForAddressValidatorInitialization();
-
   AutofillProfile profile = autofill::test::GetFullProfile();
   profile.SetRawInfo(PHONE_HOME_WHOLE_NUMBER,
                      base::UTF8ToUTF16("(515) 123-1234"));
@@ -271,7 +253,7 @@
 
   // Do the normalization.
   normalizer()->NormalizeAddressAsync(
-      profile, /*timeout_seconds=*/5,
+      profile, 0,
       base::BindOnce(&AddressNormalizerTest::OnAddressNormalized,
                      base::Unretained(this)));
 
@@ -287,8 +269,6 @@
 // Tests that the phone number is formatted even when the address is not
 // normalized.
 TEST_F(AddressNormalizerTest, FormatPhone_AddressNotNormalizedAsync) {
-  WaitForAddressValidatorInitialization();
-
   AutofillProfile profile = autofill::test::GetFullProfile();
   profile.SetRawInfo(ADDRESS_HOME_STATE, base::ASCIIToUTF16("California"));
   profile.SetRawInfo(PHONE_HOME_WHOLE_NUMBER,
@@ -300,7 +280,7 @@
 
   // Do the normalization.
   normalizer()->NormalizeAddressAsync(
-      profile, /*timeout_seconds=*/0,
+      profile, 0,
       base::BindOnce(&AddressNormalizerTest::OnAddressNormalized,
                      base::Unretained(this)));
 
@@ -321,8 +301,6 @@
 // Tests that if the rules are not loaded before the call to
 // NormalizeAddressSync, normalization will fail.
 TEST_F(AddressNormalizerTest, NormalizeAddressSync_RulesNotLoaded) {
-  WaitForAddressValidatorInitialization();
-
   AutofillProfile profile = autofill::test::GetFullProfile();
   profile.SetRawInfo(ADDRESS_HOME_STATE, base::ASCIIToUTF16("California"));
   profile.SetRawInfo(PHONE_HOME_WHOLE_NUMBER,
@@ -343,8 +321,6 @@
 // Tests that if the rules are not loaded before the call to
 // NormalizeAddressSync, normalization will fail.
 TEST_F(AddressNormalizerTest, NormalizeAddressSync_RulesLoaded) {
-  WaitForAddressValidatorInitialization();
-
   AutofillProfile profile = autofill::test::GetFullProfile();
   profile.SetRawInfo(ADDRESS_HOME_STATE, base::ASCIIToUTF16("California"));
   profile.SetRawInfo(PHONE_HOME_WHOLE_NUMBER,
@@ -366,56 +342,4 @@
             base::UTF16ToUTF8(profile.GetRawInfo(PHONE_HOME_WHOLE_NUMBER)));
 }
 
-// Tests that if the validator is not initialized before the call to
-// NormalizeAddressSync, normalization will fail but rules will be loaded after
-// the validator is initialized.
-TEST_F(AddressNormalizerTest, NormalizeAddressSync_UninitializedValidator) {
-  AutofillProfile profile = autofill::test::GetFullProfile();
-  profile.SetRawInfo(ADDRESS_HOME_STATE, base::ASCIIToUTF16("California"));
-  profile.SetRawInfo(PHONE_HOME_WHOLE_NUMBER,
-                     base::UTF8ToUTF16("515-123-1234"));
-  const std::string kCountryCode =
-      base::UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_COUNTRY));
-
-  // Normalization will fail because the validator is not initialized.
-  EXPECT_FALSE(normalizer()->NormalizeAddressSync(&profile));
-
-  // Once the validator is initialized, it should load the rules for the region.
-  WaitForAddressValidatorInitialization();
-  EXPECT_TRUE(AreRulesLoadedForRegion(kCountryCode));
-
-  // Normalization will succeed the next time.
-  EXPECT_TRUE(normalizer()->NormalizeAddressSync(&profile));
-  EXPECT_EQ("CA", base::UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_STATE)));
-  EXPECT_EQ("+15151231234",
-            base::UTF16ToUTF8(profile.GetRawInfo(PHONE_HOME_WHOLE_NUMBER)));
-}
-
-// Tests that if the validator is not initialized before the call to
-// NormalizeAddressAsync, normalization will succeed once the validator is
-// initialized.
-TEST_F(AddressNormalizerTest, NormalizeAddressAsync_UninitializedValidator) {
-  AutofillProfile profile = autofill::test::GetFullProfile();
-  profile.SetRawInfo(ADDRESS_HOME_STATE, base::ASCIIToUTF16("California"));
-
-  // Do the normalization.
-  normalizer()->NormalizeAddressAsync(
-      profile, /*timeout_seconds=*/5,
-      base::BindOnce(&AddressNormalizerTest::OnAddressNormalized,
-                     base::Unretained(this)));
-
-  // Even if the rules are not loaded before the call to
-  // NormalizeAddressAsync, they should get loaded once the validator is
-  // initialized.
-  EXPECT_FALSE(normalization_successful());
-
-  WaitForAddressValidatorInitialization();
-  const std::string kCountryCode =
-      base::UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_COUNTRY));
-  EXPECT_TRUE(AreRulesLoadedForRegion(kCountryCode));
-  EXPECT_TRUE(normalization_successful());
-  EXPECT_EQ("CA",
-            base::UTF16ToUTF8(result_profile().GetRawInfo(ADDRESS_HOME_STATE)));
-}
-
 }  // namespace autofill
diff --git a/components/autofill/core/browser/field_filler_unittest.cc b/components/autofill/core/browser/field_filler_unittest.cc
index aa89109b..0c2da9f 100644
--- a/components/autofill/core/browser/field_filler_unittest.cc
+++ b/components/autofill/core/browser/field_filler_unittest.cc
@@ -16,7 +16,6 @@
 #include "base/strings/string_util.h"
 #include "base/strings/utf_string_conversions.h"
 #include "base/test/scoped_feature_list.h"
-#include "base/test/scoped_task_environment.h"
 #include "components/autofill/core/browser/address_normalizer.h"
 #include "components/autofill/core/browser/address_normalizer_impl.h"
 #include "components/autofill/core/browser/autofill_experiments.h"
@@ -637,16 +636,12 @@
         std::unique_ptr<Source>(
             new TestdataSource(true, file_path.AsUTF8Unsafe())),
         std::unique_ptr<Storage>(new NullStorage), "en-US");
-    // Make sure the normalizer is done initializing its member(s) in
-    // background task(s).
-    scoped_task_environment_.RunUntilIdle();
   }
 
  protected:
   AddressNormalizer* normalizer() { return normalizer_.get(); }
 
  private:
-  base::test::ScopedTaskEnvironment scoped_task_environment_;
   std::unique_ptr<AddressNormalizerImpl> normalizer_;
 
   DISALLOW_COPY_AND_ASSIGN(AutofillSelectWithStatesTest);
diff --git a/content/browser/renderer_host/text_input_client_mac.mm b/content/browser/renderer_host/text_input_client_mac.mm
index 999adaf..46553df 100644
--- a/content/browser/renderer_host/text_input_client_mac.mm
+++ b/content/browser/renderer_host/text_input_client_mac.mm
@@ -99,14 +99,16 @@
 
 NSUInteger TextInputClientMac::GetCharacterIndexAtPoint(RenderWidgetHost* rwh,
     gfx::Point point) {
-  base::TimeTicks start = base::TimeTicks::Now();
-
-  BeforeRequest();
   RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(rwh);
   if (!SendMessageToRenderWidget(rwhi,
                                  new TextInputClientMsg_CharacterIndexForPoint(
-                                     rwhi->GetRoutingID(), point)))
+                                     rwhi->GetRoutingID(), point))) {
     return NSNotFound;
+  }
+
+  base::TimeTicks start = base::TimeTicks::Now();
+
+  BeforeRequest();
 
   // http://crbug.com/121917
   base::ThreadRestrictions::ScopedAllowWait allow_wait;
@@ -122,14 +124,16 @@
 
 NSRect TextInputClientMac::GetFirstRectForRange(RenderWidgetHost* rwh,
     NSRange range) {
-  base::TimeTicks start = base::TimeTicks::Now();
-
-  BeforeRequest();
   RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(rwh);
   if (!SendMessageToRenderWidget(
           rwhi, new TextInputClientMsg_FirstRectForCharacterRange(
-                    rwhi->GetRoutingID(), gfx::Range(range))))
+                    rwhi->GetRoutingID(), gfx::Range(range)))) {
     return NSRect();
+  }
+
+  base::TimeTicks start = base::TimeTicks::Now();
+
+  BeforeRequest();
 
   // http://crbug.com/121917
   base::ThreadRestrictions::ScopedAllowWait allow_wait;
diff --git a/third_party/WebKit/LayoutTests/TestExpectations b/third_party/WebKit/LayoutTests/TestExpectations
index 2e2cb51..3085a66 100644
--- a/third_party/WebKit/LayoutTests/TestExpectations
+++ b/third_party/WebKit/LayoutTests/TestExpectations
@@ -345,25 +345,6 @@
 # ====== LayoutNG-only failures from here ======
 # LayoutNG - is a new layout system for Blink.
 
-### Platfom-specific tests cannot be generated automatically
-
-### virtual/layout Mac color palette/font failures
-crbug.com/704961 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/normal-flow/width-inherit-001.xht [ Failure ]
-crbug.com/704961 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-027.xht [ Failure ]
-
-### virtual/layout_ng virtual/layout_ng 1px glyph difference.
-crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/basic/003.html [ Failure ]
-crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/float/editable-text-overlapping-float.html [ Failure ]
-crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/float/multiple-float-positioning.html [ Failure ]
-crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/float/nestedAnonymousBlocks2.html [ Failure ]
-crbug.com/714962 [ Win ] virtual/layout_ng/fast/block/margin-collapse/001.html [ Failure ]
-crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/margin-collapse/006.html [ Failure ]
-crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/margin-collapse/100.html [ Failure ]
-crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/margin-collapse/101.html [ Failure ]
-crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/margin-collapse/102.html [ Failure ]
-crbug.com/714962 [ Win ] virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/001.html [ Failure ]
-crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/006.html [ Failure ]
-
 ### virtual/layout_ng/external/wpt/css/CSS2/floats
 crbug.com/711704 virtual/layout_ng/external/wpt/css/CSS2/floats/floats-rule3-outside-left-002.xht [ Failure ]
 crbug.com/711704 virtual/layout_ng/external/wpt/css/CSS2/floats/floats-rule3-outside-right-002.xht [ Failure ]
@@ -380,29 +361,12 @@
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/float-applies-to-008.xht [ Failure ]
 crbug.com/635619 [ Linux ] virtual/layout_ng/external/wpt/css/CSS2/floats-clear/clear-applies-to-012.xht [ Failure ]
 crbug.com/635619 [ Linux ] virtual/layout_ng/external/wpt/css/CSS2/floats-clear/float-applies-to-012.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floating-replaced-height-008.xht [ Skip ]
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-028.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-036.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-108.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-109.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-110.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-126.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-127.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-128.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-129.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-130.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-131.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-137.xht [ Skip ]
 
 ### virtual/layout_ng/external/wpt/css/CSS2/linebox
 
-# 1px glyph position diff at box boundary. Check if they need fix.
-crbug.com/636993 virtual/layout_ng/external/wpt/css/CSS2/linebox/inline-formatting-context-001.xht [ Failure ]
-crbug.com/636993 virtual/layout_ng/external/wpt/css/CSS2/linebox/inline-formatting-context-023.xht [ Failure ]
-crbug.com/636993 [ Linux ] virtual/layout_ng/external/wpt/css/CSS2/linebox/vertical-align-sub-001.xht [ Failure ]
-crbug.com/636993 [ Linux ] virtual/layout_ng/external/wpt/css/CSS2/linebox/vertical-align-super-001.xht [ Failure ]
-
 ### virtual/layout_ng/external/wpt/css/CSS2/normal-flow
+crbug.com/704961 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/normal-flow/width-inherit-001.xht [ Failure ]
 
 # Block: percent height in continuations.
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/block-in-inline-percents-001.xht [ Failure ]
@@ -414,11 +378,6 @@
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/block-in-inline-insert-001f.xht [ Failure ]
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/block-in-inline-insert-002f.xht [ Failure ]
 
-# Inline: CopyFragmentDataToLayoutBox problems.
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/block-in-inline-remove-002.xht [ Failure Pass ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/block-in-inline-remove-004.xht [ Failure Pass ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/block-in-inline-remove-005.xht [ Failure Pass ]
-
 # Inline: Abspos should start new block layout to compute static position
 crbug.com/740993 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/block-non-replaced-width-001.xht [ Failure ]
 crbug.com/740993 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-replaced-height-004.xht [ Failure ]
@@ -431,16 +390,6 @@
 # Block: margin collapsing.
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/root-box-001.xht [ Failure ]
 
-# Missing refs, these are also skipped for existing layout.
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-002.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-003.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-004.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-005.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inlines-003.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inlines-004.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inlines-005.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inlines-006.xht [ Skip ]
-
 # Tables.
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/max-width-applies-to-005.xht [ Failure ]
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/max-width-applies-to-006.xht [ Failure ]
@@ -454,49 +403,24 @@
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/replaced-intrinsic-001.xht [ Failure ]
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/replaced-intrinsic-002.xht [ Failure ]
 
-# We currently write back whitespace-collapsed strings to LayoutText, causing
-# the following failures. Once we can paint inlines directly from fragment tree,
-# we can stop the writeback.
-crbug.com/714962 virtual/layout_ng/fast/block/float/overhanging-float-crashes-when-sibling-becomes-formatting-context.html [ Failure ]
-
 ### virtual/layout_ng/external/wpt/css/CSS2/positioning
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/absolute-replaced-height-001.xht [ Failure ]
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-007.xht [ Failure ]
-crbug.com/635619 [ Linux ] virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-011.xht [ Failure ]
-crbug.com/635619 [ Linux ] virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-012.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-001.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-002.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-003.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-004.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-005.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-006.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-paged-001.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-paged-002.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-004.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-fixed-003.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-fixed-004.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-fixed-005.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-020.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-021.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-022.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-027.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-028.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-029.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-030.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-031.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-034.xht [ Skip ]
+crbug.com/704961 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-027.xht [ Failure ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-027.xht [ Failure ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-028.xht [ Failure ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-029.xht [ Failure ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-030.xht [ Failure ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-031.xht [ Failure ]
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-035.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-036.xht [ Skip ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/positioning-float-001.xht [ Failure ]
-crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/positioning-float-002.xht [ Failure ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/positioning-float-001.xht [ Failure ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/positioning-float-002.xht [ Failure ]
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/relpos-calcs-004.xht [ Failure ]
 crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/relpos-calcs-005.xht [ Failure ]
 
 ### virtual/layout_ng/fast/block/basic
-crbug.com/635619 virtual/layout_ng/fast/block/basic/011.html [ Failure ]
-crbug.com/635619 virtual/layout_ng/fast/block/basic/014.html [ Failure ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/fast/block/basic/011.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/basic/018.html [ Failure ]
-crbug.com/635619 virtual/layout_ng/fast/block/basic/020.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/basic/quirk-height.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/basic/quirk-percent-height-grandchild.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/basic/quirk-percent-height-table-cell.html [ Failure ]
@@ -512,11 +436,8 @@
 crbug.com/635619 virtual/layout_ng/fast/block/float/022.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/assert-when-moving-float.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/assert-when-moving-float-2.html [ Failure ]
-crbug.com/635619 virtual/layout_ng/fast/block/float/block-with-negative-margin-clears-float.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/br-with-clear-2.html [ Failure ]
-crbug.com/635619 virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/clear-intruding-floats-when-moving-to-inline-parent-3.html [ Failure Crash Pass ]
-crbug.com/635619 virtual/layout_ng/fast/block/float/crash-replaced-display-block.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/element-clears-float-without-clearance.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/float-at-start-of-clean-lines-that-are-subsequently-dirtied-vertical-rl.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/float-at-start-of-clean-lines-that-are-subsequently-dirtied.html [ Failure ]
@@ -534,8 +455,6 @@
 crbug.com/635619 virtual/layout_ng/fast/block/float/floats-do-not-overhang-from-block-formatting-context.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/floats-offset-image-strict-line-height.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/floats-offset-inline-block-strict-line-height.html [ Failure ]
-
-crbug.com/635619 virtual/layout_ng/fast/block/float/independent-align-positioning.html [ Failure ]
 crbug.com/635619 [ Mac ] virtual/layout_ng/fast/block/float/intruding-painted-twice.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/line-break-after-white-space-crash.html [ Pass Crash Timeout ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/logical-bottom-exceeds-layoutunit-max.html [ Failure ]
@@ -547,14 +466,12 @@
 crbug.com/635619 virtual/layout_ng/fast/block/float/overhanging-float-remove-from-fixed-position-block2.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/overlapping-floats-paint-hittest-order-1.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/overlapping-floats-paint-hittest-order-2.html [ Failure ]
-crbug.com/635619 virtual/layout_ng/fast/block/float/overhanging-tall-block.html [ Failure ]
-crbug.com/635619 virtual/layout_ng/fast/block/float/rubybase-children-moved-crash-2.html [ Failure Crash ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/fast/block/float/overhanging-tall-block.html [ Failure ]
 crbug.com/635619 virtual/layout_ng/fast/block/float/rubybase-children-moved-crash.html [ Crash Pass ]
-crbug.com/635619 virtual/layout_ng/fast/block/float/trailing-float-with-columns.html [ Crash Failure ]
 crbug.com/635619 [ Mac ] virtual/layout_ng/fast/block/float/width-update-after-clear.html [ Failure ]
 
 ### virtual/layout_ng/fast/block/margin-collapse
-crbug.com/635619 virtual/layout_ng/fast/block/margin-collapse/103.html [ Failure ]
+crbug.com/635619 [ Mac ] virtual/layout_ng/fast/block/margin-collapse/103.html [ Failure ]
 
 ### virtual/layout_ng/fast/block/margin-collapse
 crbug.com/635619 virtual/layout_ng/fast/block/margin-collapse/clear-nested-float-more-than-one-previous-sibling-away.html [ Failure ]
@@ -589,7 +506,7 @@
 crbug.com/714962 virtual/layout_ng/fast/inline//continuation-outlines-with-layers-2.html [ Crash Failure ]
 
 ### Image/text failures only on LayoutNGPaintFragments
-crbug.com/714962 virtual/layout_ng/fast/inline/001.html [ Failure ]
+#crbug.com/714962 virtual/layout_ng/fast/inline/001.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/inline/br-text-decoration.html [ Crash Failure ]
 crbug.com/714962 virtual/layout_ng/fast/inline/continuation-outlines-with-layers-2.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/inline/drawStyledEmptyInlinesWithWS.html [ Failure ]
@@ -607,21 +524,6 @@
 crbug.com/714962 virtual/layout_ng/fast/inline/positioned-object-between-replaced-elements.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/inline/positionedLifetime.html [ Failure ]
 
-### Minor text/1px failures we can rebaseline
-crbug.com/714962 virtual/layout_ng/fast/inline/002.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/25277-2.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/25277.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/inline-destroy-dirty-lines-crash.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/inline-position-top-align.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/inline-text-quirk-bpm.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/inline-width-containing-collapsed-whitespace-and-image-in-float.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/long-wrapped-line.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/nested-top-alignment.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/percentage-margins.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/vertical-align-text-bottom.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts.html [ Failure ]
-
 ### Image/text failures also on LayoutNG
 crbug.com/714962 virtual/layout_ng/fast/inline/absolute-positioned-inline-in-centred-block.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/inline/br-client-rect.html [ Failure ]
@@ -645,13 +547,13 @@
 crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/linebox/vertical-align-baseline-005a.xht [ Failure ]
 
 ### virtual/layout_ng/external/wpt/css/CSS2/normal-flow/
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-valign-001.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-valign-002.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-valign-001.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-valign-002.xht [ Failure ]
 crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-zorder-001.xht [ Failure ]
 crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-zorder-002.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-table-002a.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-table-002b.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-table-valign-001.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-table-002a.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-table-002b.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-table-valign-001.xht [ Failure ]
 crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-table-zorder-001.xht [ Failure ]
 crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-table-zorder-002.xht [ Failure ]
 crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/max-width-105.xht [ Failure ]
@@ -661,51 +563,43 @@
 crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/min-height-106.xht [ Failure ]
 
 ### virtual/layout_ng/external/wpt/css/CSS2/positioning/
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/bottom-offset-001.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/bottom-offset-002.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/bottom-offset-003.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/left-offset-001.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/left-offset-002.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-032.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/right-offset-001.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/right-offset-002.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/right-offset-003.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/top-offset-001.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/top-offset-002.xht [ Failure ]
-crbug.com/714962 virtual/layout_ng/external/wpt/css/CSS2/positioning/top-offset-003.xht [ Failure ]
-
-### virtual/layout_ng/fast/block/basic/
-crbug.com/714962 virtual/layout_ng/fast/block/basic/015.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/block/basic/016.html [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/bottom-offset-001.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/bottom-offset-002.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/bottom-offset-003.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/left-offset-001.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/left-offset-002.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-032.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/right-offset-001.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/right-offset-002.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/right-offset-003.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/top-offset-001.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/top-offset-002.xht [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/external/wpt/css/CSS2/positioning/top-offset-003.xht [ Failure ]
 
 ### virtual/layout_ng/fast/block/float/
-crbug.com/714962 virtual/layout_ng/fast/block/float/002.html [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/float/002.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/015.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/block/float/017.html [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/float/017.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/021.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/025.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/026.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/027.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/028.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/block/float/avoidance-percent-width-strict.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/block/float/float-should-dirty-line-even-when-it-doesnt-intersect-it-3.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/block/float/float-should-dirty-line-when-adjacent-to-line-breaks-2.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/block/float/float-should-dirty-line-when-adjacent-to-line-breaks.html [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/float/float-should-dirty-line-even-when-it-doesnt-intersect-it-3.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/intruding-float-add-in-sibling-block-on-static-position.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/block/float/max-width-clear-float-with-overflow-hidden.html [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/float/max-width-clear-float-with-overflow-hidden.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/overhanging-after-height-decrease.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/overhanging-float-add-in-static-position-block.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/overhanging-float-add-in-static-position-block2.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/overhanging-float-remove-from-absolute-position-block.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/overhanging-float-remove-from-absolute-position-block2.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/block/float/relayout-nested-float-after-line.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/block/float/trailing-float-with-content.html [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/fast/block/float/trailing-float-with-content.html [ Failure ]
 
 ### virtual/layout_ng/fast/block/margin-collapse/
 crbug.com/714962 virtual/layout_ng/fast/block/margin-collapse/044.html [ Failure ]
@@ -746,8 +640,8 @@
 crbug.com/714962 virtual/layout_ng/fast/writing-mode/japanese-ruby-vertical-lr.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/writing-mode/japanese-ruby-vertical-rl.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/writing-mode/logical-height-after-clear.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/writing-mode/margins.html [ Failure ]
-crbug.com/714962 virtual/layout_ng/fast/writing-mode/orthogonal-inline-block.html [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/fast/writing-mode/margins.html [ Failure ]
+crbug.com/714962 [ Mac ] virtual/layout_ng/fast/writing-mode/orthogonal-inline-block.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/writing-mode/orthogonal-writing-modes-available-width-absolute-crash.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/writing-mode/orthogonal-writing-modes-in-layoutview-with-floats.html [ Crash ]
 crbug.com/714962 virtual/layout_ng/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html [ Failure ]
@@ -767,8 +661,51 @@
 crbug.com/714962 virtual/layout_ng/fast/writing-mode/vertical-lr-replaced-selection.html [ Failure ]
 crbug.com/714962 virtual/layout_ng/fast/writing-mode/vertical-rl-replaced-selection.html [ Failure ]
 
-### virtual/layout_ng/overflow/
-crbug.com/714962 virtual/layout_ng/overflow/overflow-transform-perspective.html [ Failure ]
+### 1px diff with ref files.
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/linebox/vertical-align-sub-001.xht [ Failure ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/linebox/vertical-align-super-001.xht [ Failure ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-011.xht [ Failure ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-012.xht [ Failure ]
+crbug.com/635619 virtual/layout_ng/fast/block/float/float-should-dirty-line-when-adjacent-to-line-breaks-2.html [ Failure ]
+crbug.com/635619 virtual/layout_ng/fast/block/float/float-should-dirty-line-when-adjacent-to-line-breaks.html [ Failure ]
+
+### Missing refs, these are also skipped for existing layout.
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floating-replaced-height-008.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-108.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-109.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-110.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-126.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-127.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-128.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-129.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-130.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-131.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/floats-clear/floats-137.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-002.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-003.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-004.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inline-block-005.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inlines-003.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inlines-004.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inlines-005.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/normal-flow/inlines-006.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-001.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-002.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-003.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-004.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-005.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-006.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-paged-001.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-paged-002.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-004.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-fixed-003.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-fixed-004.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-fixed-005.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-020.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-021.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-022.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-034.xht [ Skip ]
+crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/position-relative-036.xht [ Skip ]
 
 # ====== LayoutNG-only failures until here ======
 
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/011-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/011-expected.png
new file mode 100644
index 0000000..546ffbf
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/011-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/014-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/014-expected.png
new file mode 100644
index 0000000..c3a3bfa2
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/014-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/015-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/015-expected.png
new file mode 100644
index 0000000..6275fdd
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/015-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/016-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/016-expected.png
new file mode 100644
index 0000000..06ca48b
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/016-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/020-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/020-expected.png
new file mode 100644
index 0000000..c3d90be
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/basic/020-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/avoidance-percent-width-strict-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/avoidance-percent-width-strict-expected.png
new file mode 100644
index 0000000..e265b5831
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/avoidance-percent-width-strict-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity-expected.png
new file mode 100644
index 0000000..98a8a2e6
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/independent-align-positioning-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/independent-align-positioning-expected.png
new file mode 100644
index 0000000..78fd7083
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/independent-align-positioning-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png
new file mode 100644
index 0000000..d87a0e5
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/margin-collapse/103-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/margin-collapse/103-expected.png
new file mode 100644
index 0000000..d3d35c0
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/margin-collapse/103-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/001-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/001-expected.png
new file mode 100644
index 0000000..7c4ea62
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/001-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/001-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/001-expected.txt
new file mode 100644
index 0000000..f96047f
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/001-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x75
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x75
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x59
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x59 [border: (2px solid #FF0000)]
+        LayoutText {#text} at (0,0) size 158x19
+        LayoutImage {IMG} at (209.72,2) size 50x50 [bgcolor=#008000]
+        LayoutText {#text} at (0,0) size 37x19
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/002-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/002-expected.txt
new file mode 100644
index 0000000..d17187c
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/002-expected.txt
@@ -0,0 +1,12 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x38
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x37.50
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x21.50
+      LayoutText {#text} at (0,0) size 45x19
+      LayoutInline {SPAN} at (0,0) size 0x0
+        LayoutText {#text} at (0,0) size 0x0
+        LayoutInline {SPAN} at (0,0) size 0x0
+          LayoutText {#text} at (0,0) size 41x20
+        LayoutText {#text} at (0,0) size 4x19
+      LayoutText {#text} at (0,0) size 41x19
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/25277-2-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/25277-2-expected.txt
new file mode 100644
index 0000000..af290c5b
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/25277-2-expected.txt
@@ -0,0 +1,11 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x76
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x76
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x60
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x40
+        LayoutText {#text} at (0,0) size 767x39
+      LayoutBlockFlow {DIV} at (0,40) size 50x20
+        LayoutText {#text} at (0,0) size 263x19
+          text run at (0,0) width 263: "The caret should be at the end of this line."
+caret: position 44 of child 0 {#text} of child 2 {DIV} of body
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/25277-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/25277-expected.txt
new file mode 100644
index 0000000..af290c5b
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/25277-expected.txt
@@ -0,0 +1,11 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x76
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x76
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x60
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x40
+        LayoutText {#text} at (0,0) size 767x39
+      LayoutBlockFlow {DIV} at (0,40) size 50x20
+        LayoutText {#text} at (0,0) size 263x19
+          text run at (0,0) width 263: "The caret should be at the end of this line."
+caret: position 44 of child 0 {#text} of child 2 {DIV} of body
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt
new file mode 100644
index 0000000..cba2d4c
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x57
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x57
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x41
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19
+      LayoutNGBlockFlow {DIV} at (0,21) size 784x20
+        LayoutText {#text} at (0,0) size 286x19
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt
new file mode 100644
index 0000000..7593c87
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt
@@ -0,0 +1,57 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x388
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x388
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x372
+      LayoutNGBlockFlow (anonymous) at (0,0) size 784x20
+        LayoutText {#text} at (0,0) size 651x19
+      LayoutNGBlockFlow {DIV} at (0,20) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19
+      LayoutNGBlockFlow {DIV} at (0,41) size 784x20
+        LayoutText {#text} at (0,0) size 286x19
+      LayoutNGBlockFlow {DIV} at (0,61) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19
+      LayoutNGBlockFlow {DIV} at (0,82) size 784x20
+        LayoutText {#text} at (0,0) size 286x19
+      LayoutNGBlockFlow {DIV} at (0,102) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19 [border: none (1px solid #000000)]
+      LayoutNGBlockFlow {DIV} at (0,123) size 784x20
+        LayoutText {#text} at (0,0) size 286x19
+      LayoutNGBlockFlow {DIV} at (0,143) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19 [border: none (1px solid #000000) none]
+      LayoutNGBlockFlow {DIV} at (0,164) size 784x20
+        LayoutText {#text} at (0,0) size 286x19
+      LayoutNGBlockFlow (anonymous) at (0,184) size 784x20
+        LayoutText {#text} at (0,0) size 590x19
+      LayoutNGBlockFlow {DIV} at (0,204) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,205) size 784x20
+        LayoutText {#text} at (0,0) size 295x19
+      LayoutNGBlockFlow {DIV} at (0,225) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,226) size 784x20
+        LayoutText {#text} at (0,0) size 295x19
+      LayoutNGBlockFlow {DIV} at (0,246) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0 [border: (1px solid #000000) none]
+      LayoutNGBlockFlow {DIV} at (0,247) size 784x20
+        LayoutText {#text} at (0,0) size 295x19
+      LayoutNGBlockFlow {DIV} at (0,267) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0 [border: none (1px solid #000000) none]
+      LayoutNGBlockFlow {DIV} at (0,268) size 784x20
+        LayoutText {#text} at (0,0) size 295x19
+      LayoutNGBlockFlow {DIV} at (0,288) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,289) size 784x20
+        LayoutText {#text} at (0,0) size 295x19
+      LayoutNGBlockFlow {DIV} at (0,309) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,310) size 784x20
+        LayoutText {#text} at (0,0) size 295x19
+      LayoutNGBlockFlow {DIV} at (0,330) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,331) size 784x20
+        LayoutText {#text} at (0,0) size 295x19
+      LayoutNGBlockFlow {DIV} at (0,351) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,352) size 784x20
+        LayoutText {#text} at (0,0) size 295x19
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/long-wrapped-line-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/long-wrapped-line-expected.txt
new file mode 100644
index 0000000..f0ee9f0
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/long-wrapped-line-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x36
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x36
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x20
+      LayoutInline {SPAN} at (0,0) size 0x0
+        LayoutText {#text} at (0,0) size 1972x19
+      LayoutText {#text} at (0,0) size 0x0
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt
new file mode 100644
index 0000000..011a0b0
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt
@@ -0,0 +1,13 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x36
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x36
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x20
+      LayoutNGBlockFlow (floating) {DIV} at (0,0) size 56.86x28 [border: (1px solid #000000)]
+        LayoutNGBlockFlow {SPAN} at (1,1) size 54.86x26
+          LayoutNGBlockFlow {SPAN} at (0,0) size 54.86x26
+            LayoutText {#text} at (0,0) size 55x15
+          LayoutText {#text} at (0,0) size 0x0
+        LayoutText {#text} at (0,0) size 0x0
+      LayoutNGBlockFlow (anonymous) at (0,0) size 784x20
+        LayoutText {#text} at (0,0) size 468x19
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/percentage-margins-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/percentage-margins-expected.txt
new file mode 100644
index 0000000..4d48d65
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/percentage-margins-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x36
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x36
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x20
+      LayoutInline {SPAN} at (0,0) size 265x19
+        LayoutText {#text} at (0,0) size 265x19
+      LayoutText {#text} at (0,0) size 31x19
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/vertical-align-text-bottom-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/vertical-align-text-bottom-expected.txt
new file mode 100644
index 0000000..428957e
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/vertical-align-text-bottom-expected.txt
@@ -0,0 +1,26 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x301
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x301
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x285
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x36 [bgcolor=#CCCCCC]
+        LayoutInline {SPAN} at (0,0) size 33x17 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 33x17
+        LayoutText {#text} at (0,0) size 4x19
+        LayoutInline {SPAN} at (0,0) size 52x34 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 52x34
+        LayoutText {#text} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,40) size 784x141 [bgcolor=#CCCCCC]
+        LayoutInline {SPAN} at (0,0) size 33x17 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 33x17
+        LayoutText {#text} at (0,0) size 4x19
+        LayoutInline {SPAN} at (0,0) size 52x34 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 52x34
+        LayoutText {#text} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,185) size 784x100 [bgcolor=#CCCCCC]
+        LayoutInline {SPAN} at (0,0) size 33x17 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 33x17
+        LayoutText {#text} at (0,0) size 4x19
+        LayoutInline {SPAN} at (0,0) size 52x34 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 52x34
+        LayoutText {#text} at (0,0) size 0x0
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts-expected.txt
new file mode 100644
index 0000000..2741d81
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts-expected.txt
@@ -0,0 +1,19 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x210
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x210
+    LayoutNGBlockFlow {BODY} at (8,16) size 784x186
+      LayoutNGBlockFlow {P} at (0,0) size 784x20
+        LayoutText {#text} at (0,0) size 352x19
+      LayoutNGBlockFlow {DIV} at (0,36) size 784x50
+        LayoutText {#text} at (0,0) size 36x57
+        LayoutInline {SPAN} at (0,0) size 20x30 [border: (1px solid #000000)]
+          LayoutText {#text} at (0,0) size 18x28
+      LayoutNGBlockFlow {DIV} at (0,86) size 784x50
+        LayoutText {#text} at (0,0) size 36x57
+        LayoutInline {SPAN} at (0,0) size 19x30 [border: (1px solid #000000)]
+          LayoutText {#text} at (0,0) size 17x28
+      LayoutNGBlockFlow {DIV} at (0,136) size 784x50
+        LayoutText {#text} at (0,0) size 36x57
+        LayoutInline {SPAN} at (0,0) size 27x30 [border: (1px solid #000000)]
+          LayoutText {#text} at (0,0) size 25x28
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt
index 4e1aa4e..6f6fd86 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt
@@ -5,7 +5,6 @@
     LayoutNGBlockFlow {BODY} at (8,8) size 784x120
       LayoutNGBlockFlow (anonymous) at (0,0) size 784x20
         LayoutText {#text} at (0,0) size 355x19
-          text run at (0,0) width 355: "The result should have horizontal and vertical scrollbars."
 layer at (8,28) size 100x100 clip at (8,28) size 85x85 scrollWidth 89 scrollHeight 94
   LayoutNGBlockFlow {DIV} at (0,20) size 100x100
 layer at (8,28) size 90x80 backgroundClip at (8,28) size 85x85 clip at (8,28) size 85x85
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/virtual/layout_ng/fast/block/basic/015-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/virtual/layout_ng/fast/block/basic/015-expected.png
new file mode 100644
index 0000000..1d7f6d6
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/virtual/layout_ng/fast/block/basic/015-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png
new file mode 100644
index 0000000..083c05f3
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/003-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/003-expected.png
new file mode 100644
index 0000000..f48ba09e
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/003-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/015-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/015-expected.png
new file mode 100644
index 0000000..7a2dbaa
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/015-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/016-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/016-expected.png
index 5cff604..9134bfa 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/016-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/016-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/020-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/020-expected.png
new file mode 100644
index 0000000..16ae4d3
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/basic/020-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/avoidance-percent-width-strict-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/avoidance-percent-width-strict-expected.png
new file mode 100644
index 0000000..d29b831
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/avoidance-percent-width-strict-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity-expected.png
new file mode 100644
index 0000000..55e99d2
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/editable-text-overlapping-float-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/editable-text-overlapping-float-expected.png
new file mode 100644
index 0000000..90e9e752
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/editable-text-overlapping-float-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/independent-align-positioning-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/independent-align-positioning-expected.png
new file mode 100644
index 0000000..323a8a4
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/independent-align-positioning-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/multiple-float-positioning-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/multiple-float-positioning-expected.png
new file mode 100644
index 0000000..5a329b7
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/multiple-float-positioning-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/nestedAnonymousBlocks2-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/nestedAnonymousBlocks2-expected.png
new file mode 100644
index 0000000..59a2eb07
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/nestedAnonymousBlocks2-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png
new file mode 100644
index 0000000..8df58d12
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/001-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/001-expected.png
deleted file mode 100644
index 7437719..0000000
--- a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/001-expected.png
+++ /dev/null
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/006-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/006-expected.png
new file mode 100644
index 0000000..fb01fd6
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/006-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/100-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/100-expected.png
new file mode 100644
index 0000000..8246308
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/100-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/101-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/101-expected.png
new file mode 100644
index 0000000..d784682
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/101-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/102-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/102-expected.png
new file mode 100644
index 0000000..df942e0
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/102-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/006-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/006-expected.png
new file mode 100644
index 0000000..fb01fd6
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/006-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/001-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/001-expected.txt
new file mode 100644
index 0000000..fcc8a6e
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/001-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x74
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x74
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x58
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x58 [border: (2px solid #FF0000)]
+        LayoutText {#text} at (0,0) size 162x18
+        LayoutImage {IMG} at (213.02,2) size 50x50 [bgcolor=#008000]
+        LayoutText {#text} at (0,0) size 37x18
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/002-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/002-expected.png
new file mode 100644
index 0000000..c1173c0
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/002-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/002-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/002-expected.txt
new file mode 100644
index 0000000..df4f27496
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/002-expected.txt
@@ -0,0 +1,12 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x35
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x35.41
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x19.41
+      LayoutText {#text} at (0,0) size 46x18
+      LayoutInline {SPAN} at (0,0) size 0x0
+        LayoutText {#text} at (0,0) size 0x0
+        LayoutInline {SPAN} at (0,0) size 0x0
+          LayoutText {#text} at (0,0) size 42x19
+        LayoutText {#text} at (0,0) size 5x18
+      LayoutText {#text} at (0,0) size 42x18
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/25277-2-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/25277-2-expected.txt
new file mode 100644
index 0000000..d87bf74
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/25277-2-expected.txt
@@ -0,0 +1,11 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x70
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x70
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x54
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x36
+        LayoutText {#text} at (0,0) size 781x36
+      LayoutBlockFlow {DIV} at (0,36) size 50x18
+        LayoutText {#text} at (0,0) size 269x18
+          text run at (0,0) width 269: "The caret should be at the end of this line."
+caret: position 44 of child 0 {#text} of child 2 {DIV} of body
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/25277-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/25277-expected.txt
new file mode 100644
index 0000000..d87bf74
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/25277-expected.txt
@@ -0,0 +1,11 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x70
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x70
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x54
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x36
+        LayoutText {#text} at (0,0) size 781x36
+      LayoutBlockFlow {DIV} at (0,36) size 50x18
+        LayoutText {#text} at (0,0) size 269x18
+          text run at (0,0) width 269: "The caret should be at the end of this line."
+caret: position 44 of child 0 {#text} of child 2 {DIV} of body
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt
new file mode 100644
index 0000000..a5c4409e
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x53
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x53
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x37
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x19 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x18
+      LayoutNGBlockFlow {DIV} at (0,19) size 784x18
+        LayoutText {#text} at (0,0) size 291x18
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt
new file mode 100644
index 0000000..346938484
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt
@@ -0,0 +1,57 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x352
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x352
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x336
+      LayoutNGBlockFlow (anonymous) at (0,0) size 784x18
+        LayoutText {#text} at (0,0) size 664x18
+      LayoutNGBlockFlow {DIV} at (0,18) size 784x19 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x18
+      LayoutNGBlockFlow {DIV} at (0,37) size 784x18
+        LayoutText {#text} at (0,0) size 291x18
+      LayoutNGBlockFlow {DIV} at (0,55) size 784x19 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x18
+      LayoutNGBlockFlow {DIV} at (0,74) size 784x18
+        LayoutText {#text} at (0,0) size 291x18
+      LayoutNGBlockFlow {DIV} at (0,92) size 784x19 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x18 [border: none (1px solid #000000)]
+      LayoutNGBlockFlow {DIV} at (0,111) size 784x18
+        LayoutText {#text} at (0,0) size 291x18
+      LayoutNGBlockFlow {DIV} at (0,129) size 784x19 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x18 [border: none (1px solid #000000) none]
+      LayoutNGBlockFlow {DIV} at (0,148) size 784x18
+        LayoutText {#text} at (0,0) size 291x18
+      LayoutNGBlockFlow (anonymous) at (0,166) size 784x18
+        LayoutText {#text} at (0,0) size 603x18
+      LayoutNGBlockFlow {DIV} at (0,184) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,185) size 784x18
+        LayoutText {#text} at (0,0) size 300x18
+      LayoutNGBlockFlow {DIV} at (0,203) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,204) size 784x18
+        LayoutText {#text} at (0,0) size 300x18
+      LayoutNGBlockFlow {DIV} at (0,222) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0 [border: (1px solid #000000) none]
+      LayoutNGBlockFlow {DIV} at (0,223) size 784x18
+        LayoutText {#text} at (0,0) size 300x18
+      LayoutNGBlockFlow {DIV} at (0,241) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0 [border: none (1px solid #000000) none]
+      LayoutNGBlockFlow {DIV} at (0,242) size 784x18
+        LayoutText {#text} at (0,0) size 300x18
+      LayoutNGBlockFlow {DIV} at (0,260) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,261) size 784x18
+        LayoutText {#text} at (0,0) size 300x18
+      LayoutNGBlockFlow {DIV} at (0,279) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,280) size 784x18
+        LayoutText {#text} at (0,0) size 300x18
+      LayoutNGBlockFlow {DIV} at (0,298) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,299) size 784x18
+        LayoutText {#text} at (0,0) size 300x18
+      LayoutNGBlockFlow {DIV} at (0,317) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,318) size 784x18
+        LayoutText {#text} at (0,0) size 300x18
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/long-wrapped-line-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/long-wrapped-line-expected.txt
new file mode 100644
index 0000000..5264338
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/long-wrapped-line-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x34
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x34
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x18
+      LayoutInline {SPAN} at (0,0) size 0x0
+        LayoutText {#text} at (0,0) size 1998x18
+      LayoutText {#text} at (0,0) size 0x0
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/nested-top-alignment-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/nested-top-alignment-expected.png
new file mode 100644
index 0000000..8a5b2f60
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/nested-top-alignment-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt
new file mode 100644
index 0000000..6c03f11
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt
@@ -0,0 +1,13 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x36
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x36
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x18
+      LayoutNGBlockFlow (floating) {DIV} at (0,0) size 54.67x28 [border: (1px solid #000000)]
+        LayoutNGBlockFlow {SPAN} at (1,1) size 52.67x26
+          LayoutNGBlockFlow {SPAN} at (0,0) size 52.67x26
+            LayoutText {#text} at (0,0) size 53x15
+          LayoutText {#text} at (0,0) size 0x0
+        LayoutText {#text} at (0,0) size 0x0
+      LayoutNGBlockFlow (anonymous) at (0,0) size 784x18
+        LayoutText {#text} at (0,0) size 477x18
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/percentage-margins-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/percentage-margins-expected.txt
new file mode 100644
index 0000000..77beee8
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/percentage-margins-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x34
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x34
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x18
+      LayoutInline {SPAN} at (0,0) size 270x18
+        LayoutText {#text} at (0,0) size 270x18
+      LayoutText {#text} at (0,0) size 32x18
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/vertical-align-text-bottom-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/vertical-align-text-bottom-expected.txt
new file mode 100644
index 0000000..432a257
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/vertical-align-text-bottom-expected.txt
@@ -0,0 +1,26 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x306
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x306
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x290
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x42 [bgcolor=#CCCCCC]
+        LayoutInline {SPAN} at (0,0) size 46x19 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 46x19
+        LayoutText {#text} at (0,0) size 10x20
+        LayoutInline {SPAN} at (0,0) size 55x38 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 55x38
+        LayoutText {#text} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,46) size 784x140 [bgcolor=#CCCCCC]
+        LayoutInline {SPAN} at (0,0) size 46x19 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 46x19
+        LayoutText {#text} at (0,0) size 10x20
+        LayoutInline {SPAN} at (0,0) size 55x38 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 55x38
+        LayoutText {#text} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,190) size 784x100 [bgcolor=#CCCCCC]
+        LayoutInline {SPAN} at (0,0) size 46x19 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 46x19
+        LayoutText {#text} at (0,0) size 10x20
+        LayoutInline {SPAN} at (0,0) size 55x38 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 55x38
+        LayoutText {#text} at (0,0) size 0x0
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts-expected.txt
new file mode 100644
index 0000000..3e6a599
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts-expected.txt
@@ -0,0 +1,19 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x208
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x208
+    LayoutNGBlockFlow {BODY} at (8,16) size 784x184
+      LayoutNGBlockFlow {P} at (0,0) size 784x18
+        LayoutText {#text} at (0,0) size 361x18
+      LayoutNGBlockFlow {DIV} at (0,34) size 784x50
+        LayoutText {#text} at (0,0) size 37x58
+        LayoutInline {SPAN} at (0,0) size 21x31 [border: (1px solid #000000)]
+          LayoutText {#text} at (0,0) size 19x29
+      LayoutNGBlockFlow {DIV} at (0,84) size 784x50
+        LayoutText {#text} at (0,0) size 37x58
+        LayoutInline {SPAN} at (0,0) size 19x31 [border: (1px solid #000000)]
+          LayoutText {#text} at (0,0) size 17x29
+      LayoutNGBlockFlow {DIV} at (0,134) size 784x50
+        LayoutText {#text} at (0,0) size 37x58
+        LayoutInline {SPAN} at (0,0) size 28x31 [border: (1px solid #000000)]
+          LayoutText {#text} at (0,0) size 26x29
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt
index 3e4e0da5..baed2a7 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt
@@ -5,7 +5,6 @@
     LayoutNGBlockFlow {BODY} at (8,8) size 784x118
       LayoutNGBlockFlow (anonymous) at (0,0) size 784x18
         LayoutText {#text} at (0,0) size 364x18
-          text run at (0,0) width 364: "The result should have horizontal and vertical scrollbars."
 layer at (8,26) size 100x100 clip at (8,26) size 85x85 scrollWidth 89 scrollHeight 94
   LayoutNGBlockFlow {DIV} at (0,18) size 100x100
 layer at (8,26) size 90x80 backgroundClip at (8,26) size 85x85 clip at (8,26) size 85x85
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/basic/015-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/basic/015-expected.png
new file mode 100644
index 0000000..522cac9
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/basic/015-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/basic/016-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/basic/016-expected.png
new file mode 100644
index 0000000..68ba76d
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/basic/016-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/basic/020-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/basic/020-expected.png
new file mode 100644
index 0000000..f6821895
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/basic/020-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/avoidance-percent-width-strict-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/avoidance-percent-width-strict-expected.png
new file mode 100644
index 0000000..f6ef93d
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/avoidance-percent-width-strict-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity-expected.png
new file mode 100644
index 0000000..6ba6d2da
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/centered-float-avoidance-complexity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/independent-align-positioning-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/independent-align-positioning-expected.png
new file mode 100644
index 0000000..07859bc
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/independent-align-positioning-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/001-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/001-expected.png
index d829731..1d9389d 100644
--- a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/001-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/001-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/103-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/103-expected.png
new file mode 100644
index 0000000..b0c7b40
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/103-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/001-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/001-expected.png
new file mode 100644
index 0000000..1d9389d
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/001-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/001-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/001-expected.txt
new file mode 100644
index 0000000..5e6dad9
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/001-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x75
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x75
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x59
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x59 [border: (2px solid #FF0000)]
+        LayoutText {#text} at (0,0) size 147x19
+        LayoutImage {IMG} at (198.72,2) size 50x50 [bgcolor=#008000]
+        LayoutText {#text} at (0,0) size 35x19
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/002-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/002-expected.txt
new file mode 100644
index 0000000..08c95aa5
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/002-expected.txt
@@ -0,0 +1,12 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x38
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x37.50
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x21.50
+      LayoutText {#text} at (0,0) size 42x19
+      LayoutInline {SPAN} at (0,0) size 0x0
+        LayoutText {#text} at (0,0) size 0x0
+        LayoutInline {SPAN} at (0,0) size 0x0
+          LayoutText {#text} at (0,0) size 38x20
+        LayoutText {#text} at (0,0) size 4x19
+      LayoutText {#text} at (0,0) size 38x19
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/25277-2-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/25277-2-expected.txt
new file mode 100644
index 0000000..c232221
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/25277-2-expected.txt
@@ -0,0 +1,11 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x76
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x76
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x60
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x40
+        LayoutText {#text} at (0,0) size 783x39
+      LayoutBlockFlow {DIV} at (0,40) size 50x20
+        LayoutText {#text} at (0,0) size 250x19
+          text run at (0,0) width 250: "The caret should be at the end of this line."
+caret: position 44 of child 0 {#text} of child 2 {DIV} of body
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/25277-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/25277-expected.txt
new file mode 100644
index 0000000..c232221
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/25277-expected.txt
@@ -0,0 +1,11 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x76
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x76
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x60
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x40
+        LayoutText {#text} at (0,0) size 783x39
+      LayoutBlockFlow {DIV} at (0,40) size 50x20
+        LayoutText {#text} at (0,0) size 250x19
+          text run at (0,0) width 250: "The caret should be at the end of this line."
+caret: position 44 of child 0 {#text} of child 2 {DIV} of body
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt
new file mode 100644
index 0000000..a5279c2
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x57
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x57
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x41
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19
+      LayoutNGBlockFlow {DIV} at (0,21) size 784x20
+        LayoutText {#text} at (0,0) size 274x19
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt
new file mode 100644
index 0000000..4f7f728
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt
@@ -0,0 +1,57 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x388
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x388
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x372
+      LayoutNGBlockFlow (anonymous) at (0,0) size 784x20
+        LayoutText {#text} at (0,0) size 623x19
+      LayoutNGBlockFlow {DIV} at (0,20) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19
+      LayoutNGBlockFlow {DIV} at (0,41) size 784x20
+        LayoutText {#text} at (0,0) size 274x19
+      LayoutNGBlockFlow {DIV} at (0,61) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19
+      LayoutNGBlockFlow {DIV} at (0,82) size 784x20
+        LayoutText {#text} at (0,0) size 274x19
+      LayoutNGBlockFlow {DIV} at (0,102) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19 [border: none (1px solid #000000)]
+      LayoutNGBlockFlow {DIV} at (0,123) size 784x20
+        LayoutText {#text} at (0,0) size 274x19
+      LayoutNGBlockFlow {DIV} at (0,143) size 784x21 [bgcolor=#008000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 1x19 [border: none (1px solid #000000) none]
+      LayoutNGBlockFlow {DIV} at (0,164) size 784x20
+        LayoutText {#text} at (0,0) size 274x19
+      LayoutNGBlockFlow (anonymous) at (0,184) size 784x20
+        LayoutText {#text} at (0,0) size 563x19
+      LayoutNGBlockFlow {DIV} at (0,204) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,205) size 784x20
+        LayoutText {#text} at (0,0) size 284x19
+      LayoutNGBlockFlow {DIV} at (0,225) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,226) size 784x20
+        LayoutText {#text} at (0,0) size 284x19
+      LayoutNGBlockFlow {DIV} at (0,246) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0 [border: (1px solid #000000) none]
+      LayoutNGBlockFlow {DIV} at (0,247) size 784x20
+        LayoutText {#text} at (0,0) size 284x19
+      LayoutNGBlockFlow {DIV} at (0,267) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0 [border: none (1px solid #000000) none]
+      LayoutNGBlockFlow {DIV} at (0,268) size 784x20
+        LayoutText {#text} at (0,0) size 284x19
+      LayoutNGBlockFlow {DIV} at (0,288) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,289) size 784x20
+        LayoutText {#text} at (0,0) size 284x19
+      LayoutNGBlockFlow {DIV} at (0,309) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,310) size 784x20
+        LayoutText {#text} at (0,0) size 284x19
+      LayoutNGBlockFlow {DIV} at (0,330) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,331) size 784x20
+        LayoutText {#text} at (0,0) size 284x19
+      LayoutNGBlockFlow {DIV} at (0,351) size 784x1 [bgcolor=#FF0000] [border: none (1px solid #000000) none]
+        LayoutInline {SPAN} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,352) size 784x20
+        LayoutText {#text} at (0,0) size 284x19
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/long-wrapped-line-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/long-wrapped-line-expected.txt
new file mode 100644
index 0000000..f6df612e
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/long-wrapped-line-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x36
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x36
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x20
+      LayoutInline {SPAN} at (0,0) size 0x0
+        LayoutText {#text} at (0,0) size 1893x19
+      LayoutText {#text} at (0,0) size 0x0
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt
new file mode 100644
index 0000000..653f0b0
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt
@@ -0,0 +1,13 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x36
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x36
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x20
+      LayoutNGBlockFlow (floating) {DIV} at (0,0) size 53.86x28 [border: (1px solid #000000)]
+        LayoutNGBlockFlow {SPAN} at (1,1) size 51.86x26
+          LayoutNGBlockFlow {SPAN} at (0,0) size 51.86x26
+            LayoutText {#text} at (0,0) size 52x15
+          LayoutText {#text} at (0,0) size 0x0
+        LayoutText {#text} at (0,0) size 0x0
+      LayoutNGBlockFlow (anonymous) at (0,0) size 784x20
+        LayoutText {#text} at (0,0) size 445x19
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/percentage-margins-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/percentage-margins-expected.txt
new file mode 100644
index 0000000..60f47a95
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/percentage-margins-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x36
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x36
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x20
+      LayoutInline {SPAN} at (0,0) size 252x19
+        LayoutText {#text} at (0,0) size 252x19
+      LayoutText {#text} at (0,0) size 31x19
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/vertical-align-text-bottom-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/vertical-align-text-bottom-expected.txt
new file mode 100644
index 0000000..aace8996
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/vertical-align-text-bottom-expected.txt
@@ -0,0 +1,26 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x301
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x301
+    LayoutNGBlockFlow {BODY} at (8,8) size 784x285
+      LayoutNGBlockFlow {DIV} at (0,0) size 784x36 [bgcolor=#CCCCCC]
+        LayoutInline {SPAN} at (0,0) size 30x17 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 30x17
+        LayoutText {#text} at (0,0) size 4x19
+        LayoutInline {SPAN} at (0,0) size 51x34 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 51x34
+        LayoutText {#text} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,40) size 784x141 [bgcolor=#CCCCCC]
+        LayoutInline {SPAN} at (0,0) size 30x17 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 30x17
+        LayoutText {#text} at (0,0) size 4x19
+        LayoutInline {SPAN} at (0,0) size 51x34 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 51x34
+        LayoutText {#text} at (0,0) size 0x0
+      LayoutNGBlockFlow {DIV} at (0,185) size 784x100 [bgcolor=#CCCCCC]
+        LayoutInline {SPAN} at (0,0) size 30x17 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 30x17
+        LayoutText {#text} at (0,0) size 4x19
+        LayoutInline {SPAN} at (0,0) size 51x34 [bgcolor=#FF0000]
+          LayoutText {#text} at (0,0) size 51x34
+        LayoutText {#text} at (0,0) size 0x0
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts-expected.txt
new file mode 100644
index 0000000..574ceb2e
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/vertical-align-with-fallback-fonts-expected.txt
@@ -0,0 +1,19 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x210
+  LayoutNGBlockFlow {HTML} at (0,0) size 800x210
+    LayoutNGBlockFlow {BODY} at (8,16) size 784x186
+      LayoutNGBlockFlow {P} at (0,0) size 784x20
+        LayoutText {#text} at (0,0) size 335x19
+      LayoutNGBlockFlow {DIV} at (0,36) size 784x50
+        LayoutText {#text} at (0,0) size 35x57
+        LayoutInline {SPAN} at (0,0) size 20x30 [border: (1px solid #000000)]
+          LayoutText {#text} at (0,0) size 18x28
+      LayoutNGBlockFlow {DIV} at (0,86) size 784x50
+        LayoutText {#text} at (0,0) size 35x57
+        LayoutInline {SPAN} at (0,0) size 19x30 [border: (1px solid #000000)]
+          LayoutText {#text} at (0,0) size 17x28
+      LayoutNGBlockFlow {DIV} at (0,136) size 784x50
+        LayoutText {#text} at (0,0) size 35x57
+        LayoutInline {SPAN} at (0,0) size 27x30 [border: (1px solid #000000)]
+          LayoutText {#text} at (0,0) size 25x28
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt
index cc43b82..709ef790 100644
--- a/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/overflow/overflow-transform-perspective-expected.txt
@@ -5,7 +5,6 @@
     LayoutNGBlockFlow {BODY} at (8,8) size 784x120
       LayoutNGBlockFlow (anonymous) at (0,0) size 784x20
         LayoutText {#text} at (0,0) size 335x19
-          text run at (0,0) width 335: "The result should have horizontal and vertical scrollbars."
 layer at (8,28) size 100x100 clip at (8,28) size 85x85 scrollWidth 89 scrollHeight 94
   LayoutNGBlockFlow {DIV} at (0,20) size 100x100
 layer at (8,28) size 90x80 backgroundClip at (8,28) size 85x85 clip at (8,28) size 85x85
diff --git a/third_party/WebKit/LayoutTests/platform/win7/virtual/layout_ng/fast/block/margin-collapse/103-expected.png b/third_party/WebKit/LayoutTests/platform/win7/virtual/layout_ng/fast/block/margin-collapse/103-expected.png
new file mode 100644
index 0000000..f74d408e
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win7/virtual/layout_ng/fast/block/margin-collapse/103-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/block-with-negative-margin-clears-float-expected.txt b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/block-with-negative-margin-clears-float-expected.txt
new file mode 100644
index 0000000..c37a72d8
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/block-with-negative-margin-clears-float-expected.txt
@@ -0,0 +1,3 @@
+crbug.com/591243: Clear floats when we have negative margin and are separated from the float by a div that doesn't track it.
+
+PASS
diff --git a/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/crash-replaced-display-block-expected.txt b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/crash-replaced-display-block-expected.txt
new file mode 100644
index 0000000..6e0e86c
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/crash-replaced-display-block-expected.txt
@@ -0,0 +1,3 @@
+This tests rdar://problem/6545095 ASSERTION FAILED: LayoutBlockFlow.h:519: !o || o->isLayoutBlockFlow()
+
+
diff --git a/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/overhanging-float-crashes-when-sibling-becomes-formatting-context-expected.txt b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/overhanging-float-crashes-when-sibling-becomes-formatting-context-expected.txt
deleted file mode 100644
index f04680a..0000000
--- a/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/overhanging-float-crashes-when-sibling-becomes-formatting-context-expected.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-crbug.com/459533: Don't crash when changing an element to one that interacts with other floats to one that can't.
-
diff --git a/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/rubybase-children-moved-crash-2-expected.txt b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/rubybase-children-moved-crash-2-expected.txt
new file mode 100644
index 0000000..6c350ea5
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/rubybase-children-moved-crash-2-expected.txt
@@ -0,0 +1,3 @@
+crbug.com/683104: Passes if it does not crash.
+
+Text 
diff --git a/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/trailing-float-with-columns-expected.txt b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/trailing-float-with-columns-expected.txt
new file mode 100644
index 0000000..5492dea
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/block/float/trailing-float-with-columns-expected.txt
@@ -0,0 +1,4 @@
+crbug.com/487775: PASS if no crash or assertion failure.
+
+ 
+
diff --git a/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/inline/inline-position-top-align-expected.txt b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/inline/inline-position-top-align-expected.txt
index 125c084..e163eca 100644
--- a/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/inline/inline-position-top-align-expected.txt
+++ b/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/inline/inline-position-top-align-expected.txt
@@ -1,4 +1,4 @@
-pre-text after-text	Something
+pre-text  after-text	Something
 Tests for hitTest of element
 bug 45164: REGRESSION:  Clickable area too large