# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# This file is generated by
# components/url_formatter/make_top_domain_skeletons.cc
# DO NOT MANUALLY EDIT!

# Each entry is the skeleton of a top domain for the confusability check
# in components/url_formatter/url_formatter.cc.

digklrno68.corn, digklmo68.com
digklrno68.co.uk, digklmo68.co.uk
islkpxl23.corn, islkpx123.com
isikpxl23.corn, isikpx123.com
os345.corn, os345.com
woder.corn, woder.com
wrnhtb.corn, wmhtb.com
phktb.corn, phktb.com
pkawx.corn, pkawx.com
wrnnr.corn, wmnr.com
rf.corn, rf.com
cyxe.corn, cyxe.com
ldg.corn, ldg.com
idg.corn, idg.com
ig.corn, ig.com
ld.corn, ld.com
lgd.corn, 1gd.com
cegjo.corn, cegjo.com
wsws.corn, wsws.com
wsu.corn, wsu.com
wsou.corn, wsou.com
l23456789O.corn, 1234567890.com
aece.corn, aece.com
aen.corn, aen.com
nll.corn, n11.com
