Repository: teni-ime/ibus-teni
Branch: master
Commit: a3824854c0f5
Files: 131
Total size: 880.7 KB
Directory structure:
gitextract_j5e35vq7/
├── .github/
│ └── ISSUE_TEMPLATE/
│ └── bug_report.md
├── .gitignore
├── .travis.yml
├── GPLv3_vi.md
├── LICENSE
├── MAINTAINERS
├── Makefile
├── PKGBUILD
├── README.md
├── debian/
│ ├── changelog
│ ├── compat
│ ├── control
│ ├── rules
│ └── source/
│ └── options
├── deploy.bash
├── dict/
│ ├── LICENSE
│ ├── vietnamese.cm.dict
│ ├── vietnamese.new.dict
│ ├── vietnamese.sp.dict
│ └── vietnamese.std.dict
├── except.tmpl.txt
├── ibus-teni.dsc
├── ibus-teni.spec
├── src/
│ ├── dict-gen/
│ │ ├── Gopkg.toml
│ │ ├── dump.go
│ │ ├── extract.go
│ │ ├── main.go
│ │ └── vnsort.go
│ ├── ibus-teni/
│ │ ├── cache-wm.go
│ │ ├── config.go
│ │ ├── debug.go
│ │ ├── engine.go
│ │ ├── except.go
│ │ ├── ibus-const.go
│ │ ├── main.go
│ │ ├── mice.go
│ │ ├── proc.go
│ │ ├── prop.go
│ │ ├── runes.go
│ │ ├── vendor/
│ │ │ └── github.com/
│ │ │ ├── godbus/
│ │ │ │ └── dbus/
│ │ │ │ ├── .travis.yml
│ │ │ │ ├── CONTRIBUTING.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── MAINTAINERS
│ │ │ │ ├── README.markdown
│ │ │ │ ├── auth.go
│ │ │ │ ├── auth_external.go
│ │ │ │ ├── auth_sha1.go
│ │ │ │ ├── call.go
│ │ │ │ ├── conn.go
│ │ │ │ ├── conn_darwin.go
│ │ │ │ ├── conn_other.go
│ │ │ │ ├── dbus.go
│ │ │ │ ├── decoder.go
│ │ │ │ ├── default_handler.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── encoder.go
│ │ │ │ ├── export.go
│ │ │ │ ├── homedir.go
│ │ │ │ ├── homedir_dynamic.go
│ │ │ │ ├── homedir_static.go
│ │ │ │ ├── message.go
│ │ │ │ ├── object.go
│ │ │ │ ├── server_interfaces.go
│ │ │ │ ├── sig.go
│ │ │ │ ├── transport_darwin.go
│ │ │ │ ├── transport_generic.go
│ │ │ │ ├── transport_tcp.go
│ │ │ │ ├── transport_unix.go
│ │ │ │ ├── transport_unixcred_dragonfly.go
│ │ │ │ ├── transport_unixcred_freebsd.go
│ │ │ │ ├── transport_unixcred_linux.go
│ │ │ │ ├── transport_unixcred_openbsd.go
│ │ │ │ ├── variant.go
│ │ │ │ ├── variant_lexer.go
│ │ │ │ └── variant_parser.go
│ │ │ └── sarim/
│ │ │ └── goibus/
│ │ │ ├── README.md
│ │ │ └── ibus/
│ │ │ ├── bus.go
│ │ │ ├── common.go
│ │ │ ├── component.go
│ │ │ ├── engine.go
│ │ │ ├── engineDesc.go
│ │ │ ├── factory.go
│ │ │ ├── lookupTable.go
│ │ │ ├── property.go
│ │ │ └── text.go
│ │ ├── version.go
│ │ └── x11.go
│ └── teni/
│ ├── teni.go
│ ├── teni_coverage_test.go
│ ├── teni_type_rule_test.go
│ ├── tone_charset.go
│ ├── typerule_change_char.go
│ ├── typerule_downlvl.go
│ ├── typerule_replace.go
│ ├── typerule_replace_char.go
│ ├── typerule_replace_str.go
│ ├── typerule_replace_vni.go
│ ├── typerule_swap.go
│ └── wordtrie.go
├── teni.xml
├── test-data/
│ ├── LICENSE
│ ├── nodict.tdata
│ ├── nodict.telexw.tdata
│ ├── test-data-gen.go
│ ├── vietnamese.cm.dict.telex1.tdata
│ ├── vietnamese.cm.dict.telex2.tdata
│ ├── vietnamese.cm.dict.telex3.tdata
│ ├── vietnamese.cm.dict.telexw.tdata
│ ├── vietnamese.cm.dict.vni1.tdata
│ ├── vietnamese.cm.dict.vni2.fix.tdata
│ ├── vietnamese.cm.dict.vni3.tdata
│ ├── vietnamese.new.dict.telex1.tdata
│ ├── vietnamese.new.dict.telex2.tdata
│ ├── vietnamese.new.dict.telex3.tdata
│ ├── vietnamese.new.dict.vni1.tdata
│ ├── vietnamese.new.dict.vni2.tdata
│ ├── vietnamese.new.dict.vni3.tdata
│ ├── vietnamese.sp.dict.telex1.fix.tdata
│ ├── vietnamese.sp.dict.telex2.fix.tdata
│ ├── vietnamese.sp.dict.telex3.fix.tdata
│ ├── vietnamese.sp.dict.telexw.fix.tdata
│ ├── vietnamese.sp.dict.vni1.tdata
│ ├── vietnamese.sp.dict.vni2.tdata
│ ├── vietnamese.sp.dict.vni3.tdata
│ ├── vietnamese.std.dict.telex1.tdata
│ ├── vietnamese.std.dict.telex2.tdata
│ ├── vietnamese.std.dict.telex3.tdata
│ ├── vietnamese.std.dict.vni1.tdata
│ ├── vietnamese.std.dict.vni2.tdata
│ └── vietnamese.std.dict.vni3.tdata
└── wm.bash
================================================
FILE CONTENTS
================================================
================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.md
================================================
---
name: Báo lỗi
about: Tạo một báo lỗi
---
**Mô tả lỗi**
Một mô tả ngắn gọn về lỗi đang xảy ra
**Các bước tái hiện lỗi**
(Mở chương trình gì, click chỗ nào, gõ những gì, điều gì xảy ra,...)
Ví dụ:
1. Mở gedit
2. Gõ abc
...
4. Thấy xyz
**Kết quả mong muốn**
Mô tả điều đáng ra phải xảy ra thay vì phát sinh lỗi bên trên.
Ví dụ: Gõ abc thì phải thấy abc chứ không phải xyz
**Ảnh chụp màn hình, hoặc clip quay màn hình**
Nếu cần thiết, hãy [đính kèm hình ảnh](https://help.github.com/articles/file-attachments-on-issues-and-pull-requests/) hoặc gửi link youtube [quay lại màn hình](https://www.youtube.com/watch?v=N8M4zsqTkr4) tái hiện lỗi.
**Môi trường**
- OS và version: (ví dụ: Ubuntu 18.10)
- Desktop: (Xfce, KDE, Gnome,... hoặc **mặc định**)
- Phiên bản ibus-teni: (click chuột trái vào icon VI tại góc màn hình để xem phiên bản ibus-teni, bản mới nhất là v1.5.3)
- Phiên bản IBus: (chạy command `ibus version` để xem phiên bản ibus)
- Ứng dụng có lỗi khi gõ: (ví dụ: Chrome, Firefox,...)
**Thông tin thêm**
Các nội dung khác có liên quan đến lỗi đang xảy ra (nếu ứng dụng có lỗi trên kia không phổ biến thì hãy thêm hướng dẫn cài đặt)
================================================
FILE: .gitignore
================================================
.idea/
pkg/
*_linux
*.tar.gz
ibus-engine-*
src/dict-gen/vendor/
================================================
FILE: .travis.yml
================================================
sudo: required
language: go
install:
- make test
- make build
- bash deploy.bash
script:
- echo END
================================================
FILE: GPLv3_vi.md
================================================
# Tóm tắt giấy phép GNU GPLv3
GNU General Public License v3.0
## Bạn được phép
- Tự do chạy chương trình cho bất cứ mục đích nào
- Tự do sao chép, phân phối chương trình
- Tự do sửa đổi, cải tiến và tái phát hành chương trình
## Với điều kiện
- Phải mở mã nguồn dưới giấy phép GPLv3 và giữ nguyên file LICENSE
- Phải ghi chú nội dung chỉnh sửa, cải tiến của bạn
## Và chấp nhận
- Từ chối trách nhiệm pháp lý
- Từ chối bảo hành
================================================
FILE: LICENSE
================================================
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc.
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
Copyright (C)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see .
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
Copyright (C)
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
.
================================================
FILE: MAINTAINERS
================================================
Nguyen Cong Hoang
================================================
FILE: Makefile
================================================
#
# Teni-IME - A Vietnamese Input method editor
# Copyright (C) 2018 Nguyen Cong Hoang
# This file is part of Teni-IME.
#
# Teni-IME is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Teni-IME is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Teni-IME. If not, see .
#
engine_name=teni
ibus_e_name=ibus-engine-$(engine_name)
pkg_name=ibus-$(engine_name)
version=1.5.3
engine_dir=/usr/share/$(pkg_name)
ibus_dir=/usr/share/ibus
rpm_src_dir=~/rpmbuild/SOURCES
tar_file=$(pkg_name)-$(version).tar.gz
rpm_src_tar=$(rpm_src_dir)/$(tar_file)
tar_options_src=--transform "s/^\./$(pkg_name)-$(version)/" --exclude={"*.tar.gz",".git",".idea"} .
test:
GOPATH=$(CURDIR) GOCACHE=/tmp go test teni
cover:
GOPATH=$(CURDIR) GOCACHE=/tmp go test --cover -c -o test_teni_linux teni
./test_teni_linux -test.coverprofile=teni_cover.out
GOPATH=$(CURDIR) GOCACHE=/tmp go tool cover -html=teni_cover.out -o teni_cover.html
rm -f test_teni_linux teni_cover.out
build:
GOPATH=$(CURDIR) GOCACHE=/tmp go build -ldflags "-w -s" -o $(ibus_e_name) ibus-$(engine_name)
dict-gen:
cd src/dict-gen && dep ensure -update
GOPATH=$(CURDIR) GOCACHE=/tmp go build -o dict_gen_linux dict-gen
./dict_gen_linux
rm -f dict_gen_linux
tdata-gen:
go run test-data/test-data-gen.go
rm test-data/vietnamese.new.dict.telexw.tdata
rm test-data/vietnamese.sp.dict.telex1.tdata
rm test-data/vietnamese.sp.dict.telex2.tdata
rm test-data/vietnamese.sp.dict.telex3.tdata
rm test-data/vietnamese.sp.dict.telexw.tdata
rm test-data/vietnamese.std.dict.telexw.tdata
clean:
rm -f ibus-engine-* *_linux *_cover.html go_test_* go_build_* test *.gz test
rm -f debian/files
rm -rf debian/debhelper*
rm -rf debian/.debhelper
rm -rf debian/ibus-teni*
install: build
mkdir -p $(DESTDIR)$(engine_dir)
mkdir -p $(DESTDIR)/usr/lib/
mkdir -p $(DESTDIR)$(ibus_dir)/component/
cp -R -f except.tmpl.txt icon.png wm.bash dict $(DESTDIR)$(engine_dir)
cp -f $(ibus_e_name) $(DESTDIR)/usr/lib/
cp -f $(engine_name).xml $(DESTDIR)$(ibus_dir)/component/
uninstall:
sudo rm -rf $(DESTDIR)$(engine_dir)
sudo rm -f $(DESTDIR)/usr/lib/$(ibus_e_name)
sudo rm -f $(DESTDIR)$(ibus_dir)/component/$(engine_name).xml
src: clean
tar -zcf $(DESTDIR)/$(tar_file) $(tar_options_src)
cp -f $(pkg_name).spec $(DESTDIR)/
cp -f $(pkg_name).dsc $(DESTDIR)/
cp -f debian/changelog $(DESTDIR)/debian.changelog
cp -f debian/control $(DESTDIR)/debian.control
cp -f debian/rules $(DESTDIR)/debian.rules
cp -f PKGBUILD $(DESTDIR)/PKGBUILD
rpm: clean
tar -zcf $(rpm_src_tar) $(tar_options_src)
rpmbuild $(pkg_name).spec -ba
#start ubuntu docker: docker run -v `pwd`:`pwd` -w `pwd` -i -t ubuntu bash
#install buildpackages: apt update && apt install dh-make golang libx11-dev -y
deb: clean
dpkg-buildpackage
.PHONY: test build clean build install uninstall src rpm deb
================================================
FILE: PKGBUILD
================================================
#
# Teni-IME - A Vietnamese Input method editor
# Copyright (C) 2018 Nguyen Cong Hoang
# This file is part of Teni-IME.
#
# Teni-IME is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Teni-IME is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Teni-IME. If not, see .
#
# Maintainer: Nguyen Cong Hoang
pkgname=ibus-teni
pkgver=1.5.3
pkgrel=1
pkgdesc='A Vietnamese IME for IBus'
arch=(any)
license=(GPL3)
url="https://github.com/teni-ime/ibus-teni"
depends=(ibus)
makedepends=('go' 'libx11')
source=($pkgname-$pkgver.tar.gz)
md5sums=('SKIP')
options=('!strip')
build() {
cd "$pkgname-$pkgver"
make
}
package() {
cd "$pkgname-$pkgver"
make DESTDIR="$pkgdir/" install
}
================================================
FILE: README.md
================================================
[IBus Teni - a Vietnamese Input Method Editor for IBus](https://github.com/teni-ime/ibus-teni)
===================================
[](https://travis-ci.org/teni-ime/ibus-teni)
[](https://github.com/teni-ime/ibus-teni/releases/latest)
[](https://opensource.org/licenses/GPL-3.0)
[](https://github.com/teni-ime/ibus-teni/wiki/H%C6%B0%E1%BB%9Bng-d%E1%BA%ABn-g%C3%B3p-%C3%BD%2C-b%C3%A1o-l%E1%BB%97i)
Copyright 2018, Nguyen Cong Hoang <>.
IBus Teni is a Vietnamese Input Method Editor (IME) for IBus.
IBus Teni là một bộ gõ tiếng Việt cho IBus.
Teni là gì ?
------------
* Teni là kết hợp **Te**lex và V**ni** - 2 kiểu gõ tiếng Việt phổ biến nhất.
* Teni cũng là kiểu gõ mặc định của bộ gõ này, vừa gõ được Telex, vừa gõ được Vni.
### Sơ lược tính năng
* Chỉ bảng mã Unicode
* 3 kiểu gõ:
* **Kiểu gõ Teni** (Telex + Vni, không cho phép gõ nhanh ư, ơ bằng w, [, ])
* **Kiểu gõ Vni**
* **Kiểu gõ Telex** (cho phép gõ nhanh ư, ơ bằng w, [, ])
* 2 kiểu đánh dấu thanh:
* **Dấu thanh chuẩn**
* **Dấu thanh kiểu mới**
* Gõ dấu tự do, đánh dấu thanh bằng từ điển
* Có danh sách loại trừ ứng dụng không dùng bộ gõ
Cài đặt và cấu hình
------------------
### Cài đặt (Ubuntu)
```sh
sudo add-apt-repository ppa:teni-ime/ibus-teni
sudo apt-get update
sudo apt-get install ibus-teni
ibus restart
```
**Lệnh bên dưới cho phép đọc event chuột, không bắt buộc nhưng cần để ibus-teni hoạt động tốt**
```sh
sudo usermod -a -G input $USER
```
*Cài đặt cho các bản Linux khác và hướng dẫn cài đặt từ mã nguồn: [wiki](https://github.com/teni-ime/ibus-teni/wiki/H%C6%B0%E1%BB%9Bng-d%E1%BA%ABn-c%C3%A0i-%C4%91%E1%BA%B7t)*
### Cấu hình
1. [Keyboard input method system: IBus](https://github.com/teni-ime/ibus-teni/wiki/H%C6%B0%E1%BB%9Bng-d%E1%BA%ABn-c%E1%BA%A5u-h%C3%ACnh#1-keyboard-input-method-system-ibus)
2. [Add an input source: Vietnamese(Teni)](https://github.com/teni-ime/ibus-teni/wiki/H%C6%B0%E1%BB%9Bng-d%E1%BA%ABn-c%E1%BA%A5u-h%C3%ACnh#2-add-an-input-source-vietnameseteni)
### Gỡ bỏ
```
sudo apt remove ibus-teni
ibus restart
```
Sử dụng
-------------
* Dùng phím tắt mặc định của IBus (thường là ⊞Win+Space) để chuyển đổi giữa các bộ gõ
* IBus-Teni dùng pre-edit để xử lý phím gõ, mặc định sẽ có gạch chân chữ khi đang gõ
* **Khi pre-edit chưa kết thúc mà nhấn chuột vào chỗ khác thì có 3 khả năng xảy ra tùy chương trình**
* **Chữ đang gõ bị mất**
* **Chữ đang gõ được commit vào vị trí mới con trỏ**
* **Chữ đang gõ được commit vào vị trí cũ**
* **Vì vậy đừng quên commit: khi gõ chỉ một chữ, hoặc chữ cuối câu, hoặc sửa chữ giữa câu: nhấn phím *Ctrl* để commit.**
Các phiên bản
------------
* Phiên bản thử nghiệm không công khai hoàn thành vào cuối tháng 5/2018
* Phiên bản thử nghiệm công khai phát hành vào đầu tháng 7/2018
* Phiên bản chính thức phát hành vào ngày 29/7/2018
Xem trang [release](https://github.com/teni-ime/ibus-teni/releases) để biết chi tiết các phiên bản đã phát hành.
Góp ý và báo lỗi
--------------
Xem [hướng dẫn](https://github.com/teni-ime/ibus-teni/wiki/H%C6%B0%E1%BB%9Bng-d%E1%BA%ABn-g%C3%B3p-%C3%BD%2C-b%C3%A1o-l%E1%BB%97i)
Giấy phép
-------
Toàn bộ code IBus Teni được viết bởi Nguyen Cong Hoang và những người đóng góp được phát hành dưới giấy phép
[GNU General Public License version 3](https://opensource.org/licenses/GPL-3.0).
Code trong thư mục [src/ibus-teni/vendor](src/ibus-teni/vendor) là của các bên thứ 3,
xem các thông báo bản quyền trong từng thư mục con.
* godbus: xem [src/ibus-teni/vendor/github.com/godbus/dbus/README.markdown](src/ibus-teni/vendor/github.com/godbus/dbus/README.markdown)
* goibus: xem [src/ibus-teni/vendor/github.com/sarim/goibus/README.md](src/ibus-teni/vendor/github.com/sarim/goibus/README.md)
Dữ liệu từ điển trong thư mục [dict](dict): xem [dict/LICENSE](dict/LICENSE)
* [Dữ liệu từ điển tiếng Việt của Ho Ngoc Duc](http://www.informatik.uni-leipzig.de/~duc/Dict/)
* [Wiktionary tiếng Việt](https://vi.wiktionary.org/wiki/Trang_Chính)
* [Danh sách viết tắt trong tiếng Việt của QUOC-HUNG NGO](https://sites.google.com/site/ngo2uochung/research/dsviettat-tieng-viet)
================================================
FILE: debian/changelog
================================================
ibus-teni (1.5.3-1) stable; urgency=low
* Release 1.5.3
- Build cho Ubuntu 20.04
-- Nguyen Cong Hoang Sat, 10 Apr 2020 00:00:00 +0900
ibus-teni (1.5.2-1) stable; urgency=low
* Release 1.5.2
- Sửa kiểu gõ tự do không kiểm tra chính tả
-- Nguyen Cong Hoang Sat, 24 Nov 2018 00:00:00 +0900
ibus-teni (1.5.1-1) stable; urgency=low
* Release 1.5.1
- Sửa kiểu gõ tự do không kiểm tra chính tả
-- Nguyen Cong Hoang Fri, 23 Nov 2018 00:00:00 +0900
ibus-teni (1.5.0-1) stable; urgency=low
* Release 1.5.0
- Thêm kiểu gõ [Telex] (kiểu gõ này cho phép dùng phím [])
- Sửa lỗi không xóa hết chữ trên Telegram
- Sửa lỗi con trỏ chuột nhảy về đầu dòng trên Facebook chat
-- Nguyen Cong Hoang Sun, 4 Nov 2018 00:00:00 +0900
ibus-teni (1.4.2-1) stable; urgency=low
* Release 1.4.2
- Sửa lỗi mất chữ khi đang gõ
- Sửa lỗi con trỏ chuột nhảy về đầu dòng trên Facebook chat
-- Nguyen Cong Hoang Mon, 22 Oct 2018 00:00:00 +0900
ibus-teni (1.4.1-1) stable; urgency=low
* Release 1.4.1
- Cập nhật từ điển
- Sửa lỗi mất chữ khi đang gõ
-- Nguyen Cong Hoang Sun, 21 Oct 2018 00:00:00 +0900
ibus-teni (1.4.0-1) stable; urgency=low
* Release 1.4.0
- Thêm lựa chọn "Giữ nhiều chữ", cho phép sửa dấu những chữ đã gõ xong
- Thêm lựa chọn "Đúng chính tả", cho phép bỏ qua kiểm tra chính tả
-- Nguyen Cong Hoang Sun, 7 Oct 2018 00:00:00 +0900
ibus-teni (1.3.3-1) stable; urgency=low
* Release 1.3.3
- Tối ưu chức năng "Loại trừ ứng dụng"
- Sửa lỗi không gõ được sau khi click chuột đi chỗ khác
- Thêm xử lý xóa pre-edit khi click chuột
-- Nguyen Cong Hoang Sun, 23 Sep 2018 00:00:00 +0900
ibus-teni (1.3.2-1) stable; urgency=low
* Release 1.3.2
- Tối ưu chức năng "Loại trừ ứng dụng"
- Sửa lỗi không gõ được trên FreeOffice và Wine
-- Nguyen Cong Hoang Sat, 15 Sep 2018 00:00:00 +0900
ibus-teni (1.3.1-1) stable; urgency=low
* Release 1.3.1
- Sửa lỗi chức năng "Loại trừ ứng dụng"
-- Nguyen Cong Hoang Sun, 9 Sep 2018 00:00:00 +0900
ibus-teni (1.3.0-1) stable; urgency=low
* Release 1.3.0
- Thêm chức năng "Loại trừ ứng dụng"
- Cập nhật từ điển (bổ sung ~700 từ)
-- Nguyen Cong Hoang Tue, 4 Sep 2018 00:00:00 +0900
ibus-teni (1.2.2-1) stable; urgency=low
* Release 1.2.2
- Thay đổi xử lý commit: forward tất cả các phím khi commit
- Sửa lỗi khôi phục phím khi nhấn phím dấu 2 lần
-- Nguyen Cong Hoang Sun, 26 Aug 2018 00:00:00 +0900
ibus-teni (1.2.1-1) stable; urgency=low
* Release 1.2.1
- Sửa lỗi khôi phục phím w, [, ] trên kiểu gõ Telex
- Bổ sung danh sách từ tiếng Việt: xịn
-- Nguyen Cong Hoang Tue, 21 Aug 2018 00:00:00 +0900
ibus-teni (1.2.0-1) stable; urgency=low
* Release 1.2.0
- Thêm kiểu gõ Telex (cho phép gõ nhanh bằng w, [,])
- Sửa lỗi mất gợi ý khi gõ trên thanh địa chỉ của Chrome
-- Nguyen Cong Hoang Fri, 17 Aug 2018 00:00:00 +0900
ibus-teni (1.1.0-1) stable; urgency=low
* Release 1.1.0
- Thêm xử lý nhanh chóng khôi phục phím khi gõ từ không có trong tiếng Việt
- Sửa lỗi mất space khi gõ trên Dropbox Paper
-- Nguyen Cong Hoang Thu, 9 Aug 2018 00:00:00 +0900
ibus-teni (1.0.0-1) stable; urgency=low
* Release 1.0.0
- Phiên bản hoàn thiện chính thức: ibus-teni 1.0.0
-- Nguyen Cong Hoang Sun, 29 Jul 2018 00:00:00 +0900
ibus-teni (0.1-1) stable; urgency=low
* Release 0.1
- Phiên bản chính thức đầu tiên: ibus-teni 0.1
-- Nguyen Cong Hoang Sun, 24 Jun 2018 00:00:00 +0900
================================================
FILE: debian/compat
================================================
10
================================================
FILE: debian/control
================================================
#
# Teni-IME - A Vietnamese Input method editor
# Copyright (C) 2018 Nguyen Cong Hoang
# This file is part of Teni-IME.
#
# Teni-IME is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Teni-IME is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Teni-IME. If not, see .
#
Source: ibus-teni
Section: utils
Priority: extra
Maintainer: Nguyen Cong Hoang
Build-Depends: debhelper, golang, libx11-dev
Standards-Version: 1.5.3
Homepage: https://github.com/teni-ime/ibus-teni
Package: ibus-teni
Architecture: any
Depends: ibus
Description: A Vietnamese IME for IBus using Teni-IME.
Bộ gõ tiếng Việt cho IBus sử dụng Teni-IME.
================================================
FILE: debian/rules
================================================
#!/usr/bin/make -f
#
# Teni-IME - A Vietnamese Input method editor
# Copyright (C) 2018 Nguyen Cong Hoang
# This file is part of Teni-IME.
#
# Teni-IME is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Teni-IME is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Teni-IME. If not, see .
#
%:
dh $@
================================================
FILE: debian/source/options
================================================
tar-ignore=.git
tar-ignore=.idea
tar-ignore=*.gz
tar-ignore=debian/ibus-teni*
tar-ignore=debian/.debhelper
tar-ignore=debian/debhelper-build-stamp
tar-ignore=debian/ibus-teni.substvars
tar-ignore=debian/files
================================================
FILE: deploy.bash
================================================
#!/bin/bash
echo "Check tag -------------------------------------------------------------------------------------------------------"
if [[ $TRAVIS_TAG =~ ^v[0-9]+\.[0-9]+\.[0-9]+ ]]; then
echo "Release tag: $TRAVIS_TAG detected"
else
echo "Release tag not found ($TRAVIS_TAG), do not deploy"
exit 0
fi
echo "Check OSC ENV ---------------------------------------------------------------------------------------------------"
if [ -z "$OSC_USER" ] || [ -z "$OSC_PASS" ] || [ -z "$OSC_PATH" ]
then
echo "OSC_USER|OSC_PASS|OSC_PATH is not defined, do not deploy"
exit 0
fi
echo "Install OSC -----------------------------------------------------------------------------------------------------"
sudo apt-get update
sudo apt-get install -y osc
osc --version
echo "Make OSC config -------------------------------------------------------------------------------------------------"
echo "[general]" >> ~/.oscrc
echo "apiurl = https://api.opensuse.org" >> ~/.oscrc
echo "[https://api.opensuse.org]" >> ~/.oscrc
echo "user = $OSC_USER" >> ~/.oscrc
echo "pass = $OSC_PASS" >> ~/.oscrc
echo "OSC checkout ----------------------------------------------------------------------------------------------------"
mkdir ../obs
cd ../obs
osc checkout $OSC_PATH
cd $TRAVIS_BUILD_DIR
echo "Build new OSC source --------------------------------------------------------------------------------------------"
rm -rf ../obs/$OSC_PATH/*
make build src DESTDIR=../obs/$OSC_PATH
cd ../obs/$OSC_PATH
echo "OSC status ------------------------------------------------------------------------------------------------------"
osc addremove
osc st
echo "OSC commit ------------------------------------------------------------------------------------------------------"
osc ci -m "$TRAVIS_TAG"
================================================
FILE: dict/LICENSE
================================================
#
# Teni-IME - A Vietnamese Input method editor
# Copyright (C) 2018 Nguyen Cong Hoang
#
# Teni-IME is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Teni-IME is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Teni-IME. If not, see .
#
########################################################################################################################
Bộ dữ liệu từ tiếng Việt này được trích xuất từ:
- Dữ liệu từ điển tiếng Việt của Hồ Ngọc Đức (http://www.informatik.uni-leipzig.de/~duc/Dict/),
phát hành dưới giấy phép GPL.
- Wiktionary tiếng Việt (https://vi.wiktionary.org/wiki/Trang_Chính) phát hành dưới giấy phép CC-BY-SA
- Danh sách viết tắt trong tiếng Việt của Ngô Quốc Hưng (https://sites.google.com/site/ngo2uochung/research/dsviettat-tieng-viet),
đã được tác giả cho phép sử dụng.
Bộ dữ liệu này là một phần của ibus-teni, được phát hành dưới giấy phép GPLv3.
Để rõ các điều khoản và điều kiện khi sử dụng bộ dữ liệu này, xin hãy xem tại:
https://www.gnu.org/licenses/gpl-3.0.en.html
########################################################################################################################
Free Vietnamese Dictionary Project's database license
------------------------------------------------------------------------------------------------------------------------
This is the English-Vietnamese dictionary database of the Free Vietnamese Dictionary Project.
It contains more than 109.000 entries with definitions and illustrative examples.
This database was compiled by Ho Ngoc Duc and other members of
the Free Vietnamese Dictionary Project (http://www.informatik.uni-leipzig.de/~duc/Dict/)
About 5.000 technical terms were imported from VACETS Dictionary Project (http://www.saigon.com/~diction/)
Copyright (C) 1997-2003 The Free Vietnamese Dictionary Project
Last updated 2004-07-01
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software Foundation
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY
See the GNU General Public License for more details.
------------------------------------------------------------------------------------------------------------------------
================================================
FILE: dict/vietnamese.cm.dict
================================================
à
ả
ã
á
ạ
ác
ạc
ácbon
ách
ạch
ácxtơ
ađai
ảh
ài
ải
ãi
ái
ại
alô
àm
ảm
ãm
ám
ạm
àn
ản
ãn
án
ạn
àng
ảng
ãng
áng
ạng
ành
ảnh
ãnh
ánh
ạnh
ào
ảo
ão
áo
ạo
aỏi
àp
áp
ạp
át
ạt
àu
ảu
áu
ạu
ày
ảy
ãy
áy
ạy
ă
ằ
ẳ
ẵ
ắ
ặ
ăc
ắc
ặc
ăcr
ăh
ăk
ắk
ăm
ằm
ẳm
ẵm
ắm
ặm
ăn
ằn
ẳn
ẵn
ắn
ặn
ăng
ằng
ẳng
ẵng
ắng
ặng
ăngten
ăngtim
ắp
ặp
ắt
ặt
ằu
â
ầ
ẩ
ẫ
ấ
ậ
ấc
ậc
âm
ầm
ẩm
ẫm
ấm
ậm
ân
ần
ẩn
ẫn
ấn
ận
âng
ầng
ẩng
ẫng
ấng
ậng
âp
ấp
ập
ất
ật
âu
ầu
ẩu
ẫu
ấu
ậu
ây
ầy
ẩy
ẫy
ấy
ậy
bà
bả
bã
bá
bạ
bác
bạc
bách
bạch
bài
bải
bãi
bái
bại
bàm
bãm
bám
bạm
bàn
bản
bán
bạn
bàng
bảng
bãng
báng
bạng
bành
bảnh
bánh
bạnh
bào
bảo
bão
báo
bạo
báp
bạp
bát
bạt
bàu
bảu
báu
bạu
bày
bảy
báy
bayơ
bắc
bặc
băm
bằm
bẳm
bẵm
bặm
băn
bằn
bẳn
bắn
bặn
băng
bằng
bẳng
bẵng
bắng
bặng
bắp
bặp
bắt
bặt
bấc
bậc
bâm
bầm
bẩm
bẫm
bấm
bậm
bân
bần
bẩn
bấn
bận
bâng
bầng
bẩng
bẫng
bấp
bập
bất
bật
bâu
bầu
bẩu
bẫu
bấu
bậu
bây
bầy
bẩy
bẫy
bấy
bậy
bè
bẻ
bẽ
bé
bẹ
béc
bèm
bẻm
bèn
bẽn
bén
bẹn
béng
bẻnh
bèo
bẻo
bẽo
béo
bẹo
bép
bẹp
bét
bẹt
bê
bề
bể
bễ
bế
bệ
bệch
bên
bền
bến
bện
bênh
bềnh
bệnh
bếp
bêt
bết
bệt
bête
bêu
bều
bễu
bếu
bệu
bhallê
bì
bỉ
bĩ
bí
bị
bìa
bịa
bích
bịch
biếc
biêm
biểm
biếm
biên
biền
biển
biến
biện
biêng
biếng
biêt
biết
biệt
biêu
biều
biểu
biễu
biếu
bìh
bìm
bỉm
bím
bìn
bín
bịn
bình
bỉnh
bĩnh
bính
bịnh
bịp
bít
bịt
bìu
bỉu
bĩu
bíu
bịu
blá
blái
blăng
blâu
blóm
blóma
blọn
blô
blúc
bluộm
bnđc
bò
bỏ
bõ
bó
bọ
boạt
bóc
bọc
bòi
bỏi
bõi
bói
bòm
bỏm
bõm
bòn
bỏn
bón
bọn
bòng
bỏng
bõng
bóng
bọng
bóp
bọp
bót
bọt
bô
bồ
bổ
bỗ
bố
bộ
bốc
bộc
bôi
bồi
bổi
bối
bội
bôm
bồm
bôn
bồn
bổn
bốn
bộn
bông
bồng
bổng
bỗng
bống
bộng
bốp
bộp
bốt
bột
bơ
bờ
bở
bỡ
bớ
bợ
bớc
bơi
bời
bởi
bỡi
bới
bơm
bờm
bợm
bơn
bờn
bởn
bỡn
bớn
bợn
bớp
bợp
bớt
bợt
bợu
brâu
brôm
brơ
bù
bủ
bú
bụ
bùa
bủa
búa
bụa
búc
bục
bùi
bủi
búi
bụi
búk
bulông
bùm
bủm
bũm
bụm
bùn
bủn
bún
bùng
bủng
búng
bụng
buộc
buồi
buổi
buối
buội
buồm
buôn
buồn
buông
buồng
buốt
buột
búp
bụp
bút
bụt
buýt
bư
bứ
bự
bưa
bừa
bửa
bữa
bứa
bựa
bức
bực
bưng
bừng
bửng
bứng
bựng
bước
bươi
bưởi
bươm
bướm
bươn
bương
bường
bướng
bướp
bượt
bươu
bướu
bứt
bựt
bưu
bửu
cà
cả
cá
cạ
các
cạc
cácbon
cách
cạch
cácxt
cacxtơ
cácxtơ
café
cài
cải
cãi
cái
cại
calô
càm
cảm
cãm
cám
cạm
campôt
càn
cản
cán
cạn
càng
cảng
cáng
cành
cảnh
cánh
cạnh
canô
canxít
cào
cảo
cão
cáo
cạo
cáp
cạp
carbón
cartón
cát
cạt
càu
cảu
cáu
cạu
cày
cảy
cáy
cạy
că
cắc
cặc
căm
cằm
cắm
cặm
căn
cằn
cẳn
cắn
cặn
căng
cằng
cẳng
cẵng
cắng
căo
cắp
cặp
cắt
cặt
câ
cầ
câble
cấc
câm
cầm
cẩm
cẫm
cấm
cân
cần
cẩn
cẫn
cấn
cận
câng
cẫng
cấp
cập
cất
cật
câu
cầu
cẩu
cẫu
cấu
cậu
cây
cầy
cẩy
cấy
cậy
céng
cê
chà
chả
chã
chá
chạ
chác
chạc
chách
chạch
chài
chải
chãi
chái
chàm
chảm
chãm
chám
chạm
chán
chạn
chàng
chảng
cháng
chạng
chành
chảnh
chánh
chạnh
chào
chảo
chão
cháo
chạo
cháp
chạp
chát
chạt
chàu
chảu
cháu
chày
chảy
cháy
chạy
chắc
chặc
chăm
chằm
chẳm
chắm
chặm
chăn
chằn
chẳn
chẵn
chắn
chặn
chăng
chằng
chẳng
chắng
chặng
chắp
chặp
chắt
chặt
chấ
chậc
châm
chầm
chẩm
chẫm
chấm
chậm
chân
chần
chẩn
chấn
chận
chẩng
chấng
chấp
chập
chất
chật
châu
chầu
chẩu
chẫu
chấu
chậu
chây
chầy
chẩy
chấy
chậy
chè
chẻ
chẽ
ché
chẹ
chèm
chẻm
chém
chèn
chẻn
chẽn
chén
chẹn
chéng
chèo
chẻo
chẽo
chéo
chẹo
chép
chẹp
chét
chẹt
chê
chề
chễ
chế
chệ
chệc
chếch
chệch
chêm
chềm
chễm
chên
chện
chênh
chềnh
chểnh
chễnh
chếnh
chệnh
chếp
chệp
chết
chệt
chêu
chì
chỉ
chĩ
chí
chị
chìa
chỉa
chĩa
chịa
chích
chịch
chiếc
chiêm
chiểm
chiếm
chiên
chiền
chiển
chiến
chiện
chiêng
chiềng
chiếng
chiếp
chiệp
chiết
chiệt
chiêu
chiều
chiểu
chiếu
chìm
chỉm
chím
chỉn
chĩn
chín
chình
chỉnh
chĩnh
chính
chíp
chít
chịt
chìu
chĩu
chíu
chịu
chò
chỏ
chõ
chó
chọ
chỏa
chõa
chóa
choác
choạc
choách
choài
choãi
choái
choại
choán
choàng
choảng
choáng
choạng
choãnh
choạp
choắc
choăn
choắt
chóc
chọc
choèn
choẻn
choét
choẹt
chòi
chỏi
chõi
chói
chọi
chòm
chỏm
chõm
chỏn
chõn
chón
chọn
chòng
chỏng
chõng
chóng
chóp
chót
chọt
chô
chồ
chổ
chỗ
chộ
chốc
chôi
chồi
chổi
chỗi
chối
chội
chôm
chồm
chổm
chỗm
chôn
chồn
chổn
chốn
chộn
chông
chồng
chổng
chống
chốp
chộp
chốt
chột
chơ
chờ
chở
chớ
chợ
chơi
chời
chới
chơm
chờm
chởm
chớm
chơn
chờn
chớn
chợn
chớp
chợp
chớt
chợt
chù
chủ
chú
chụ
chùa
chúa
chuáng
chuân
chuẩn
chuất
chuật
chúc
chục
chuế
chuếch
chuệch
chuếnh
chuệnh
chùi
chủi
chũi
chúi
chùm
chủm
chũm
chúm
chụm
chùn
chủn
chũn
chùng
chủng
chúng
chuốc
chuộc
chuôi
chuồi
chuỗi
chuối
chuội
chuôm
chuốm
chuồn
chuông
chuồng
chuộng
chuốt
chuột
chụp
chút
chụt
chuyên
chuyền
chuyển
chuyến
chuyện
chuyết
chư
chừ
chử
chữ
chứ
chưa
chừa
chửa
chữa
chứa
chức
chực
chửi
chưn
chưng
chừng
chửng
chững
chứng
chựng
chước
chược
chưởi
chườm
chương
chường
chưởng
chưỡng
chướng
chượp
chứt
chưu
chửu
chữu
chựu
cì
cí
cịt
clé
clông
cò
cỏ
cõ
có
cọ
cóc
cọc
còi
cỏi
cõi
cói
còm
cỏm
cọm
còn
cỏn
cón
cọn
còng
cỏng
cõng
cóng
cọng
cóp
cọp
cót
cọt
cô
cồ
cổ
cỗ
cố
cộ
cốc
cộc
côi
cồi
cổi
cỗi
cối
cội
côm
cồm
cốm
cộm
côn
cồn
cổn
cốn
cộn
cône
công
cồng
cổng
cống
cộng
cốp
cộp
côt
cốt
cột
cơ
cờ
cỡ
cớ
cơi
cời
cởi
cỡi
cới
cơm
cỡm
cớm
cợm
cơn
cờn
cởn
cỡn
cớn
cợn
cợp
cớt
cợt
crô
crôm
crông
crưm
cù
củ
cũ
cú
cụ
cùa
của
cúa
cúc
cục
cùi
củi
cũi
cúi
cụi
cùm
củm
cúm
cụm
cùn
củn
cũn
cùng
củng
cũng
cúng
cụng
cuốc
cuộc
cuồi
cuối
cuội
cuỗm
cuồn
cuốn
cuộn
cuông
cuồng
cuống
cuộng
cuôr
cúp
cụp
cút
cụt
cư
cừ
cử
cữ
cứ
cự
cưa
cửa
cứa
cựa
cức
cực
cửi
cưng
cửng
cứng
cước
cược
cười
cưỡi
cưới
cườm
cương
cường
cưỡng
cướp
cứt
cưu
cừu
cửu
cữu
cứu
cựu
dà
dả
dã
dá
dạ
dác
dạc
dách
dạch
dài
dải
dãi
dái
dại
dàm
dảm
dám
dạm
dàn
dản
dãn
dán
dạn
dàng
dáng
dạng
dành
dảnh
dánh
dào
dáo
dạo
dáp
dát
dạt
dàu
dáu
dày
dảy
dãy
dáy
dạy
dắc
dặc
dăm
dằm
dặm
dăn
dằn
dẳn
dẵn
dặn
dăng
dằng
dẳng
dẵng
dắng
dặng
dắt
dặt
dâ
dậ
dâm
dầm
dẩm
dẫm
dấm
dậm
dân
dần
dẩn
dẫn
dấn
dận
dâne
dâng
dậng
dấp
dập
dật
dâu
dầu
dẩu
dẫu
dấu
dậu
dây
dầy
dẩy
dẫy
dấy
dậy
dè
dẻ
dẽ
dé
dẹ
déc
dèm
dẻm
dém
dẹm
dèn
dèo
dẻo
déo
dẹo
dép
dẹp
dẹt
dê
dề
dể
dễ
dế
dệ
dềm
dền
dện
dềng
dênh
dềnh
dết
dệt
dêu
dều
dệu
dì
dỉ
dĩ
dí
dị
dìa
dĩa
día
dịa
dích
dịch
diếc
diệc
diêm
diềm
diễm
diếm
diệm
diên
diển
diễn
diến
diện
diềng
diếp
diệp
diết
diệt
diêu
diều
diểu
diễu
diếu
diệu
dìm
dím
dĩn
dín
dĩnh
dính
dịnh
díp
dịp
dìt
dít
dịt
dìu
díu
dịu
dliê
dò
dỏ
dó
dọ
doãi
doãn
doãng
doạng
doành
dóc
dọc
dòi
dỏi
dõi
dói
dọi
dòm
dỏm
dóm
dòn
dón
dọn
dòng
dỏng
dõng
dóng
dọng
dọp
dót
dô
dồ
dổ
dỗ
dộ
dốc
dộc
dôi
dồi
dổi
dỗi
dối
dội
dôn
dồn
dốn
dộn
dông
dỗng
dống
dộng
dộp
dốt
dột
dơ
dờ
dở
dỡ
dớ
dợ
dơi
dời
dới
dợi
dởm
dơn
dờn
dỡn
dớn
dợn
dớp
dợp
dớt
drăm
drăng
dù
dủ
dũ
dú
dụ
dùa
dũa
dúa
dụa
duân
duẩn
duẫn
duật
dục
duệ
duềnh
dùi
dủi
dũi
dúi
dụi
dùm
dúm
dụm
dùn
dún
dùng
dũng
dúng
dụng
duốc
duộc
duôi
duổi
duỗi
duối
duồn
duông
duồng
duơ
duơn
dút
dụt
dụy
duyên
duyến
duyện
duyệt
dư
dừ
dử
dữ
dứ
dự
dưa
dừa
dứa
dựa
dức
dực
dưng
dừng
dửng
dững
dứng
dựng
dược
dười
dưới
dượi
dương
dường
dưỡng
dướng
dượng
dượt
dứt
dựt
dửu
dữu
dứu
dựu
dýn
đ
đa
đà
đả
đã
đá
đạ
đac
đác
đạc
đách
đạch
đai
đài
đãi
đái
đại
đam
đàm
đảm
đám
đạm
đan
đàn
đản
đán
đạn
đang
đàng
đảng
đãng
đáng
đanh
đành
đảnh
đánh
đao
đào
đảo
đáo
đạo
đáp
đạp
đát
đạt
đau
đáu
đay
đày
đảy
đãy
đáy
đẵ
đắc
đặc
đăk
đắk
đăm
đằm
đẵm
đắm
đằn
đẵn
đắn
đặn
đăng
đằng
đẳng
đẵng
đắng
đặng
đắp
đắt
đặt
đằu
đâm
đầm
đẫm
đấm
đậm
đần
đẫn
đấn
đận
đâng
đấng
đập
đất
đật
đâu
đầu
đẩu
đấu
đậu
đây
đầy
đẩy
đẫy
đấy
đậy
đe
đè
đẻ
đẽ
đéc
đem
đèm
đen
đèn
đẹn
đeng
đeo
đèo
đẽo
đéo
đẹp
đét
đẹt
đê
đề
để
đễ
đế
đệ
đếch
đêh
đêm
đềm
đếm
đệm
đên
đền
đến
đênh
đềnh
đểnh
đễnh
đệp
đêu
đều
đểu
đg
đgt
đhur
đi
đì
đĩ
đị
đìa
đỉa
đĩa
đía
địa
đích
địch
đien
điếc
điềm
điểm
điếm
điệm
điên
điền
điển
điện
điêng
điếng
điệp
điệt
điêu
điều
điểu
điếu
điệu
đin
đìn
đinh
đình
đỉnh
đĩnh
đính
định
đip
đít
địt
điu
đìu
địu
đo
đò
đỏ
đõ
đó
đọ
đoa
đoác
đoài
đoái
đoan
đoàn
đoản
đoán
đoạn
đoàng
đoảng
đoãng
đoành
đoạt
đoc
đóc
đọc
đoi
đòi
đỏi
đói
đọi
đom
đòm
đỏm
đóm
đon
đòn
đón
đọn
đong
đòng
đỏng
đóng
đọng
đọp
đót
đọt
đô
đồ
đổ
đỗ
đố
độ
đôc
đốc
độc
đôi
đồi
đổi
đỗi
đối
đội
đôm
đồm
đốm
đôn
đồn
đốn
độn
đông
đồng
đổng
đỗng
đống
động
đốp
độp
đốt
đột
đơ
đờ
đở
đỡ
đớ
đợ
đời
đới
đợi
đơm
đờm
đởm
đơn
đờn
đởn
đớn
đớp
đợp
đớt
đợt
đpcm
đpctntư
đph
đphg
đqg
đqgtnn
đqt
đr
đrá
đrao
đrăk
đrắk
đrong
đrô
đrung
đs
đsp
đt
đtb
đtbxh
đtl
đtla
đtlx
đtm
đtntl
đtpt
đts
đtt
đttp
đttpmt
đttqg
đu
đù
đủ
đú
đụ
đua
đùa
đũa
đúa
đúc
đục
đuểnh
đui
đùi
đủi
đũi
đum
đùm
đúm
đun
đùn
đún
đụn
đung
đùng
đủng
đũng
đúng
đụng
đuốc
đuôi
đuổi
đuối
đuồn
đuỗn
đuống
đuột
đup
đúp
đụp
đút
đụt
đừ
đử
đứ
đưa
đừa
đứa
đức
đực
đưng
đừng
đứng
đựng
đước
được
đười
đượm
đườn
đưỡn
đương
đường
đứt
đv
đvn
đvqg
đxx
è
ẻ
ẽ
é
ẹ
éc
ẹc
éct
ẻh
éh
èm
ẻm
ẽm
ém
ẹm
èn
ẻn
ẽn
én
ẹn
èng
ẻng
éng
èo
ẻo
ẽo
éo
ẹo
ép
ẹp
ét
ẹt
ê
ề
ể
ễ
ế
ệ
êa
êbur
êc
ếc
ệc
ếch
ệch
êcle
êga
êh
êm
ềm
ểm
ễm
ếm
ệm
ên
ền
ển
ễn
ến
ện
êng
ềng
ểng
ễng
ếng
ệng
ênh
ềnh
ểnh
ễnh
ếnh
ệnh
ếp
ệp
êpôc
êpốc
êr
êt
ết
ệt
êtan
ête
êu
ều
ểu
ễu
ếu
ệu
êxim
êy
fà
frăng
fría
fù
fú
fútbol
gà
gả
gã
gá
gạ
gác
gạc
gạch
gài
gãi
gái
galông
gàn
gán
gạn
gàng
gành
gảnh
gánh
gạnh
gào
gáo
gạo
gáp
gát
gạt
gàu
gáu
gày
gảy
gãy
gáy
gạy
gặc
găm
gằm
gắm
gặm
găn
gằn
gắn
gặn
găng
gắng
gặng
gắp
gặp
gắt
gặt
gấc
gâm
gầm
gẩm
gẫm
gấm
gậm
gân
gần
gấn
gận
gầng
gấp
gập
gất
gật
gâu
gầu
gẫu
gấu
gây
gầy
gẩy
gẫy
gấy
gậy
gẻ
gém
gép
gềnh
gệt
ghè
ghẻ
ghẽ
ghé
ghẹ
ghém
ghèn
ghẹn
ghẹo
ghép
ghét
ghê
ghề
ghế
ghệ
ghếch
ghềnh
ghểnh
ghệt
ghì
ghĩa
ghiếc
ghiền
ghìm
ghín
ghinê
ghình
gì
gỉ
gĩ
gí
già
giả
giã
giá
giạ
giác
giạc
giải
giãi
giái
giại
giàm
giảm
giám
giạm
giàn
giản
giãn
gián
giàng
giảng
giáng
giạng
giành
giảnh
giào
giảo
giáo
giáp
giát
giạt
giàu
giảu
giavê
giày
giãy
giáy
giặc
giăm
giằm
giẵm
giắm
giặm
giằn
giẵn
giắn
giặn
giăng
giằng
giắng
giặng
giặp
giắt
giặt
giâ
giấc
giâm
giầm
giẫm
giấm
giậm
giân
giần
giấn
giận
giầng
giẩng
giầnh
giấp
giập
giất
giật
giâu
giầu
giấu
giậu
giây
giầy
giẩy
giẫy
giấy
gíc
gích
giẻ
giẽ
gié
giéc
gièm
giém
giẻo
giéo
giẹo
giép
giẹp
giẹt
giê
giề
giếc
giệch
giếm
giền
giêng
giềng
giếng
giềnh
giệnh
giết
giệt
giễu
giếu
giệu
gìm
gìn
giò
giỏ
giõ
gió
giọ
gióc
giọc
giòi
giỏi
giõi
giói
giọi
giòn
giỏn
gión
giọn
giòng
giỏng
giõng
gióng
giọng
giót
giọt
giô
giồ
giổ
giỗ
giộ
giốc
giôi
giồi
giổi
giỗi
giối
giội
giôn
giông
giồng
giống
giộng
giộp
giốt
giột
giơ
giờ
giở
giỡ
giớ
giời
giới
giớm
giợm
giờn
giởn
giỡn
giợn
giợt
gíp
gít
gịt
giù
giũ
giú
giùa
giũa
giụa
giục
giùi
giủi
giúi
giụi
giùm
giúm
giụm
giùn
giún
giùng
giủng
giuộc
giuỗi
giuộm
giúp
giư
giừ
giữ
giưa
giữa
giứa
giương
giường
giướng
giượng
giựt
glây
gò
gõ
gó
gọ
góc
gòi
gỏi
gõi
gói
gọi
gỏl
gòn
gón
gọn
gòng
gỏng
gọng
góp
gót
gọt
goục
gô
gồ
gổ
gỗ
gộ
gốc
gộc
gồi
gối
gội
gôm
gồm
gốm
gôn
gông
gồng
gống
gốp
gộp
gột
gơ
gờ
gở
gỡ
gớc
gởi
gới
gợi
gờm
gớm
gơn
gờn
gợn
gợt
grát
gù
gũ
gú
gụ
gục
guê
gùi
gũi
gụi
gùn
gún
gùng
gúng
guó
guốc
guộc
guồi
guồng
guột
gút
gụt
gư
gừ
gừa
gửi
gừng
gứng
gươm
gườm
gượm
gương
gường
gưỡng
gượng
gỵa
hà
hả
há
hạ
hác
hạc
hách
hạch
hài
hải
hãi
hái
hại
haló
hàm
hảm
hãm
hám
hạm
hàn
hản
hãn
hán
hạn
hàng
hảng
hãng
háng
hạng
hành
hảnh
hãnh
hánh
hạnh
hào
hảo
hão
háo
hạo
háp
hạp
hát
hạt
hàu
háu
hảy
hãy
háy
hạy
hắ
hắc
hặc
hăm
hằm
hẳm
hằn
hẳn
hắn
hăng
hằng
hẵng
hắng
hắt
hấc
hậc
hâm
hầm
hẩm
hẫm
hấm
hậm
hân
hẫn
hấn
hận
hâng
hẩng
hẫng
hấng
hấp
hập
hất
hật
hâu
hầu
hẩu
hẫu
hấu
hậu
hây
hầy
hẩy
hẫy
hấy
hđbt
hè
hẻ
hẽ
hé
hẹ
héc
hẹc
hécta
hèm
hẻm
hẹm
hèn
hẻn
hẹn
hẹng
hèo
hẻo
héo
hép
hẹp
hét
hẹt
hê
hề
hể
hễ
hế
hệ
hếch
hệch
hêli
hềm
hên
hển
hến
hênh
hềnh
hểnh
hết
hệt
hêu
hều
hểu
hếu
hì
hỉ
hĩ
hí
hích
hịch
hiêm
hiềm
hiểm
hiếm
hiên
hiền
hiển
hiến
hiện
hiêng
hiểng
hiếng
hiếp
hiệp
hiết
hiệt
hiêu
hiều
hiểu
hiếu
hiệu
hĩm
hỉn
hình
hỉnh
hĩnh
híp
hít
hìu
hmông
hnđ
hò
hỏ
hó
họ
hoác
hoách
hoạch
hoài
hoải
hoãi
hoái
hoại
hoàn
hoản
hoãn
hoán
hoạn
hoàng
hoảng
hoãng
hoáng
hoành
hoảnh
hoánh
hoạnh
hoát
hoạt
hoáy
hoắc
hoặc
hoăm
hoắm
hoằn
hoẳn
hoăng
hoằng
hoẵng
hoắt
hoân
hóc
học
hoẻn
hoét
hoẹt
hòi
hỏi
hói
hòm
hỏm
hõm
hóm
hòn
hỏn
hón
hòng
hỏng
hóng
họng
hóp
họp
hót
hô
hồ
hổ
hỗ
hố
hộ
hốc
hộc
hôi
hồi
hổi
hối
hội
hôm
hồm
hổm
hỗm
hôn
hồn
hổn
hỗn
hộn
hông
hồng
hổng
hỗng
hống
hốp
hộp
hốt
hột
hôtel
hơ
hờ
hở
hớ
hơg
hơi
hời
hởi
hỡi
hới
hợi
hờm
hớm
hợm
hơn
hờn
hớn
hơng
hớp
hợp
hớt
hợt
hrê
hrệ
hù
hủ
hũ
hú
hụ
hùa
húa
huân
huẩn
huấn
huất
huầy
húc
hục
huê
huề
huế
huệ
huếch
huênh
huểnh
huếnh
hùi
hủi
húi
hụi
hùm
hũm
húm
hụm
hùn
hủn
hùng
hủng
húng
huổi
huông
huồng
huống
huơ
huờ
huơn
huờn
huỡn
húp
hụp
hút
hụt
huých
huỵch
huyên
huyền
huyển
huyễn
huyến
huyện
huyết
huyệt
huỳnh
huỷnh
huýnh
huýt
hư
hừ
hử
hữ
hứ
hự
hưa
hừa
hữa
hứa
hức
hực
hừm
hưn
hưng
hừng
hửng
hững
hứng
hước
hướm
hượm
hương
hường
hưởng
hướng
hươu
hưu
hữu
hựu
hỷ
hỹ
hý
hyđro
ì
ỉ
ĩ
í
ị
ìa
ỉa
ĩa
ía
ịa
iác
iải
iãi
iại
iảm
iám
iạm
iàn
iản
iãn
ián
iàng
iảng
iáng
iạng
iành
iảnh
iào
iảo
iáo
iáp
iát
iạt
iàu
iảu
iày
iãy
iặc
iăm
iằm
iẵm
iặm
iằn
iặn
iăng
iằng
iắt
iặt
iấc
iâm
iầm
iẫm
iấm
iậm
iần
iấn
iận
iấp
iập
iật
iâu
iầu
iấu
iậu
iây
iầy
iẫy
iấy
íc
ỉch
ích
ịch
iẻ
iẽ
ié
ièm
iẻn
iẻo
iéo
iẹo
iẹp
iê
iề
iếc
iệc
iêm
iềm
iểm
iễm
iếm
iệm
iên
iền
iển
iễn
iến
iện
iêng
iềng
iểng
iễng
iếng
iệng
iếp
iệp
iêt
iết
iệt
iêu
iều
iểu
iễu
iếu
iệu
ìh
ìi
ìm
ỉm
ĩm
ím
ịm
ìn
ỉn
ĩn
ín
ịn
ỉng
íng
ịng
ình
ỉnh
ĩnh
ính
ịnh
iò
iỏ
ió
iọ
iọc
iòi
iỏi
iói
iọi
iòn
iỏn
ión
iòng
iỏng
ióng
iọng
iọt
iô
iồ
iỗ
iộ
iốc
iồi
iổi
iỗi
iối
iội
iôl
iôn
iông
iồng
iống
iốt
iơ
iờ
iở
iời
iới
iờn
iỡn
íp
ịp
ít
ịt
ìu
ỉu
ĩu
íu
ịu
iụa
iục
iủi
iụi
iuộc
iư
iữa
iựt
iý
jà
jì
jí
jó
josé
jú
jút
jữ
kách
kađai
kài
kalá
kalú
kạn
kcách
kđrao
kè
kẻ
kẽ
ké
kẹ
kéc
kèm
kẻm
kẽm
kém
kèn
kén
kẹn
kẻng
kèo
kẻo
kẽo
kéo
kẹo
kép
kẹp
két
kẹt
kê
kề
kể
kế
kệ
kếch
kệch
kềm
kên
kền
kêng
kênh
kềnh
kễnh
kệnh
kếp
kết
kêu
kều
kgông
khà
khả
khá
khạ
khác
khạc
khách
khải
khái
khại
khảm
khám
khàn
khản
khán
khàng
khảng
kháng
khạng
khành
khảnh
khánh
khào
khảo
kháo
khạo
kháp
khạp
khát
khạt
kháu
khảy
kháy
khắ
khắc
khặc
khăm
khẳm
khắm
khăn
khằn
khẳn
khắn
khăng
khằng
khẳng
khắng
khắp
khắt
khấc
khâm
khẩm
khấm
khân
khẩn
khấn
khẩng
khấng
khấp
khập
khất
khật
khâu
khẩu
khấu
khậu
khẩy
khè
khẻ
khẽ
khé
khẹ
khẹc
khém
khèn
khén
khèo
khẻo
khéo
khép
khét
khẹt
khê
khề
khể
khế
khệ
khến
khệng
khênh
khềnh
khểnh
khệnh
khêu
khều
khểu
khì
khỉ
khí
khị
khìa
khỉa
khía
khịa
khích
khiêm
khiểm
khiếm
khiệm
khiên
khiền
khiển
khiến
khiêng
khiễng
khiếp
khiết
khiêu
khiều
khiếu
khìn
khín
khỉnh
khĩnh
khít
khịt
khìu
khỉu
khíu
khịu
khlá
khò
khỏ
khó
khoác
khoạc
khoách
khoải
khoái
khoản
khoán
khoảng
khoáng
khoảnh
khoào
khoát
khoạt
khoáy
khoắc
khoăm
khoằm
khoắm
khoăn
khoắn
khoắng
khoắt
khóc
khoèn
khoèo
khoẻo
khoét
khỏi
khói
khòm
khóm
khọm
khòn
khọn
khòng
khỏng
khót
khô
khổ
khố
khốc
khôg
khôi
khổi
khối
khôn
khổn
khốn
không
khổng
khống
khốt
khơ
khờ
khớ
khơi
khởi
khới
khơm
khớm
khơme
khờn
khớn
khớp
khù
khủ
khũ
khú
khụ
khùa
khủa
khúa
khuân
khuẩn
khuẫn
khuâng
khuất
khuây
khuấy
khúc
khục
khuê
khuể
khuếch
khúm
khùng
khủng
khuôn
khuông
khuơ
khụt
khuých
khuyên
khuyển
khuyến
khuyết
khuỳnh
khuýnh
khuỷu
khuỵu
khư
khừ
khử
khứ
khự
khừa
khứa
khựa
khừng
khửng
khứng
khựng
khước
khươi
khươm
khươn
khương
khưỡng
khướt
khướu
khưu
khứu
khyển
kì
kỉ
kĩ
kí
kị
kìa
kỉch
kích
kịch
kiệ
kiêm
kiềm
kiểm
kiếm
kiệm
kiên
kiền
kiển
kiến
kiện
kiêng
kiềng
kiểng
kiễng
kiếng
kiếp
kiệp
kiết
kiệt
kiêu
kiều
kiểu
kiếu
kiệu
kiló
kilô
kilôgam
kilôm
kilômet
kìm
kỉm
kìn
kín
kịn
kình
kỉnh
kính
kinó
kíp
kịp
kít
kịt
kitô
kĩu
kíu
kò
kó
kòp
kót
kô
kốc
kôn
kông
kơ
kơi
kpă
kpăng
kráp
krăng
krẹ
krêy
krôm
krông
ktlê
kủ
kúba
kúc
kuênh
kủo
kỳ
kỷ
kỹ
ký
kỵ
là
lả
lã
lá
lạ
lác
lạc
lách
lạch
lài
lải
lãi
lái
lại
làm
lảm
lãm
lạm
làn
lãn
lán
lạn
làng
lảng
lãng
láng
lạng
lành
lảnh
lãnh
lánh
lạnh
lào
lảo
lão
láo
lạo
láp
lạp
lát
lạt
làu
lảu
láu
lạu
lày
lảy
láy
lạy
lazăng
lắc
lặc
lăk
lắk
lăm
lằm
lẳm
lắm
lặm
lăn
lằn
lẳn
lặn
lăng
lằng
lẳng
lẵng
lắng
lặng
lắp
lặp
lắt
lặt
lấc
lâm
lầm
lẩm
lẫm
lấm
lậm
lân
lần
lẩn
lẫn
lấn
lận
lâng
lấng
lâp
lấp
lập
lất
lật
lâu
lầu
lẩu
lấu
lậu
lây
lầy
lẩy
lẫy
lấy
lậy
lè
lẻ
lẽ
lé
lẹ
léc
lèm
lẻm
lém
lẹm
lèn
lẻn
lẽn
lén
lẹn
lèng
lẻng
léng
lèo
lẻo
lẽo
léo
lẹo
lép
lẹp
lét
lẹt
lê
lề
lể
lễ
lệ
lếch
lệch
lên
lênh
lềnh
lểnh
lễnh
lệnh
lênin
lết
lệt
lêu
lều
lểu
lễu
lếu
lệu
lểy
lếy
lì
lí
lị
lìa
lía
lịa
líc
lích
lịch
liếc
liêm
liềm
liễm
liếm
liệm
liên
liền
liễn
liến
liêng
liềng
liểng
liếng
liệng
liếp
liệp
liệt
liêu
liều
liểu
liễu
liếu
liệu
lìm
lỉm
lịm
lìn
lình
lỉnh
lĩnh
lính
lịnh
líp
lịp
lít
lịt
litô
lìu
líu
lịu
lò
lõ
ló
lọ
loạc
loách
loài
loại
loàn
loán
loạn
loàng
loảng
loãng
loáng
loạng
loát
loạt
loăn
loăng
loằng
loắt
lóc
lọc
loẻn
loét
loẹt
lòi
lỏi
lõi
lói
lọi
lòm
lỏm
lõm
lóm
lọm
lòn
lỏn
lón
lọn
lòng
lỏng
lõng
lóng
lọng
lóp
lọp
lót
lọt
lô
lồ
lổ
lỗ
lố
lộ
lôc
lốc
lộc
lôgic
lôi
lồi
lỗi
lối
lội
lôm
lồm
lổm
lốm
lộm
lôn
lồn
lổn
lốn
lộn
lông
lồng
lổng
lộng
lốp
lộp
lốt
lột
lơ
lờ
lở
lỡ
lớ
lợ
lơi
lời
lởi
lỡi
lới
lợi
lờm
lởm
lỡm
lợm
lơn
lờn
lởn
lớn
lợn
lơng
lớp
lợp
lớt
lợt
lù
lủ
lũ
lú
lụ
lùa
lũa
lúa
lụa
luán
luân
luẩn
luấn
luận
luật
lúc
lục
lùi
lủi
lũi
lúi
lụi
lùm
lủm
lũm
lúm
lụm
lùn
lủn
lũn
lún
lụn
lùng
lủng
lũng
lúng
lụng
luóm
luốc
luộc
luỗi
luôm
luộm
luôn
luồn
luông
luồng
luỗng
luống
luốt
luột
lúp
lụp
lút
lụt
luyên
luyến
luyện
luyệt
luýnh
lư
lừ
lử
lữ
lự
lưa
lừa
lửa
lữa
lứa
lựa
lưc
lức
lực
lừm
lưng
lừng
lửng
lững
lứng
lựng
lược
lười
lưỡi
lưới
lươm
lườm
lượm
lươn
lườn
lượn
lương
lường
lưỡng
lướng
lượng
lướt
lượt
lứt
lưu
lữu
lựu
lỳ
lỹ
lý
lỵ
mà
mả
mã
má
mạ
mác
mạc
mách
mạch
mài
mải
mãi
mái
mại
màn
mản
mãn
mán
mạn
màng
mảng
mãng
máng
mạng
mành
mảnh
mãnh
mánh
mạnh
mào
mão
máo
mạo
mạp
mát
mạt
matê
matrác
màu
máu
mày
mảy
máy
mạy
mă
mắc
mặc
măk
măm
mắm
măn
mằn
mẳn
mắn
mặn
măng
mắng
mặp
mắt
mặt
mâm
mầm
mẩm
mẫm
mấm
mậm
mân
mần
mẩn
mẫn
mấn
mận
mâng
mầng
mâp
mấp
mập
mất
mật
mâu
mầu
mẩu
mẫu
mấu
mậu
mây
mầy
mẩy
mấy
mè
mẻ
mẽ
mé
mẹ
méc
mèm
mém
mèn
mén
mèng
méng
menú
mèo
mẻo
mẽo
méo
mẹo
mép
mẹp
mét
mẹt
mê
mề
mể
mễ
mế
mệ
mếch
mêga
mềm
mễm
mên
mền
mễn
mến
mênh
mềnh
mệnh
mết
mệt
mêtan
mểu
mếu
mì
mỉ
mĩ
mí
mị
mỉa
mĩa
mía
mích
mịch
miẻo
miên
miền
miễn
miến
miện
miêng
miểng
miếng
miệng
miết
miệt
miêu
miều
miểu
miễu
miếu
mỉm
mĩm
mím
mìn
mịn
míng
mình
mỉnh
mính
mịnh
míp
mít
mịt
mìu
míu
mlài
mlời
mluộm
mnhời
mní
mò
mỏ
mõ
mó
mọ
móc
mọc
mòi
mỏi
mõi
mói
mọi
mòm
mỏm
mõm
móm
mòn
món
mọn
moná
mòng
mỏng
móng
mọng
móp
mọp
mót
mọt
mô
mồ
mổ
mỗ
mố
mộ
môc
mốc
mộc
môi
mồi
mỗi
mối
mội
mộl
môm
mồm
mômen
môn
mồn
mông
mồng
mổng
mỗng
mống
mộng
môt
mốt
một
mơ
mờ
mở
mỡ
mớ
mợ
mơi
mời
mới
mợi
mơm
mờm
mớm
mơn
mởn
mỡn
mớn
mớp
mrơn
mù
mủ
mũ
mú
mụ
mùa
múa
múc
mục
mùi
mủi
mũi
múi
mụi
mủm
mũm
múm
mùn
mủn
mún
mụn
mùng
mủng
muôi
muồi
muỗi
muối
muội
muỗm
muôn
muốn
muộn
muông
muồng
muổng
muỗng
muống
muốt
múp
mụp
muséum
mút
mụt
mư
mự
mưa
mửa
mứa
mựa
mức
mực
mứn
mưng
mừng
mững
mược
mươi
mười
mươn
mướn
mượn
mương
mường
mướp
mướt
mượt
mưỡu
mứt
mưu
mứu
mỳ
mỹ
mỵ
nà
nả
nã
ná
nạ
nác
nạc
nách
nạch
nài
nải
nãi
nái
nại
nàm
nảm
nám
nạm
nàn
nản
nãn
nán
nạn
nàng
nãng
náng
nạng
nành
nánh
nạnh
nanôm
nào
não
náo
nạo
nạp
nát
nạt
náu
này
nảy
nãy
náy
nạy
nắc
nặc
năm
nằm
nẳm
nắm
năn
nằn
nắn
nặn
năng
nằng
nẵng
nắng
nặng
nắp
nấc
nâm
nầm
nẫm
nấm
nậm
nân
nần
nẫn
nấn
nâng
nẫng
nấng
nậng
nấp
nập
nất
nật
nâu
nẫu
nấu
nậu
nây
nầy
nẩy
nẫy
nấy
nậy
nđm
nè
nẻ
né
ném
nén
nẹn
nèo
nẻo
nẽo
néo
nẹo
nép
nẹp
nét
nẹt
nê
nề
nể
nễ
nệ
nêm
nếm
nệm
nên
nền
nến
nện
nếp
nết
nêu
nếu
nếy
ngà
ngả
ngã
ngá
ngạ
ngác
ngạc
ngách
ngạch
ngài
ngải
ngãi
ngái
ngại
ngàm
ngám
ngàn
ngán
ngạn
ngàng
ngãng
ngáng
ngạng
ngành
ngảnh
ngánh
ngạnh
ngào
ngảo
ngão
ngáo
ngạo
ngáp
ngát
ngạt
ngàu
ngáu
ngày
ngáy
ngắc
ngăm
ngằm
ngắm
ngăn
ngằn
ngắn
ngẳng
ngẵng
ngặp
ngắt
ngặt
ngấc
ngâm
ngầm
ngẩm
ngẫm
ngấm
ngậm
ngân
ngần
ngẩn
ngẫn
ngấn
ngận
ngẩng
ngẫng
ngấp
ngập
ngất
ngật
ngâu
ngầu
ngẩu
ngẫu
ngấu
ngậu
ngây
ngầy
ngấy
ngậy
ngèo
ngẹt
ngệch
nghè
nghé
nghẹ
nghèn
nghẽn
nghén
nghẹn
nghèo
nghẻo
nghẽo
nghéo
nghẹo
nghét
nghẹt
nghê
nghề
nghể
nghễ
nghế
nghệ
nghếch
nghệch
nghển
nghễn
nghến
nghện
nghênh
nghểnh
nghễnh
nghệt
nghêu
nghều
nghểu
nghễu
nghệu
nghì
nghỉ
nghĩ
nghí
nghị
nghĩa
nghía
nghích
nghịch
nghiêm
nghiễm
nghiệm
nghiên
nghiền
nghiễn
nghiến
nghiện
nghiêng
nghiênh
nghiệp
nghiệt
nghiêu
nghìm
nghỉm
nghìn
nghỉn
nghỉnh
nghĩnh
nghít
nghịt
nghỉu
nghịu
nghoèo
nghồng
ngích
ngịu
ngò
ngỏ
ngõ
ngó
ngọ
ngoác
ngoạc
ngoách
ngoạch
ngoài
ngoải
ngoái
ngoại
ngoàm
ngoảm
ngoạm
ngoãn
ngoạn
ngoảng
ngoảnh
ngoãnh
ngoáo
ngoáp
ngoạt
ngoảy
ngoáy
ngoạy
ngoắc
ngoặc
ngoằn
ngoẳn
ngoằng
ngoẵng
ngoắng
ngoắt
ngoặt
ngóc
ngọc
ngoẻm
ngoém
ngoẻn
ngoèo
ngoẻo
ngoéo
ngoẹo
ngoét
ngòi
ngõi
ngói
ngòm
ngỏm
ngóm
ngọm
ngòn
ngỏn
ngón
ngọn
ngòng
ngỏng
ngõng
ngóng
ngọng
ngóp
ngót
ngọt
ngô
ngồ
ngổ
ngỗ
ngố
ngộ
ngốc
ngộc
ngôi
ngồi
ngỗi
ngội
ngôm
ngồm
ngổm
ngôn
ngồn
ngổn
ngốn
ngộn
ngông
ngồng
ngổng
ngỗng
ngộp
ngốt
ngột
ngơ
ngờ
ngỡ
ngớ
ngợ
ngơi
ngời
ngỡi
ngợi
ngơm
ngờm
ngỡm
ngợm
ngơn
ngớn
ngớp
ngợp
ngớt
ngù
ngủ
ngũ
ngú
ngụ
ngụa
nguây
nguầy
nguẩy
nguấy
nguậy
ngúc
ngục
nguếch
nguệch
ngùi
ngủi
ngũi
ngủm
ngụm
ngùn
ngủn
ngùng
ngủng
ngúng
nguôi
nguồi
nguội
nguồn
nguơ
ngụp
ngút
ngụt
nguyên
nguyền
nguyễn
nguyện
nguyệt
nguýt
nguỷu
ngư
ngừ
ngữ
ngứ
ngự
ngưa
ngừa
ngửa
ngữa
ngứa
ngựa
ngực
ngửi
ngưng
ngừng
ngửng
ngứng
ngước
ngược
ngươi
người
ngưởi
ngươn
ngường
ngưởng
ngưỡng
ngượng
ngưt
ngứt
ngưu
nhà
nhả
nhã
nhá
nhạ
nhác
nhạc
nhách
nhài
nhải
nhãi
nhái
nhại
nhàm
nhảm
nhám
nhàn
nhản
nhãn
nhạn
nhàng
nhãng
nháng
nhạng
nhành
nhảnh
nhánh
nhạnh
nhào
nhão
nháo
nhạo
nháp
nhạp
nhát
nhạt
nhàu
nhảu
nháu
nhạu
nhày
nhảy
nháy
nhạy
nhắc
nhăm
nhằm
nhắm
nhặm
nhăn
nhằn
nhẳn
nhẵn
nhắn
nhặn
nhăng
nhằng
nhẳng
nhẵng
nhắng
nhặng
nhắp
nhắt
nhặt
nhấc
nhâm
nhầm
nhẩm
nhẫm
nhấm
nhậm
nhân
nhần
nhẩn
nhẫn
nhấn
nhận
nhâng
nhấp
nhập
nhất
nhật
nhâu
nhầu
nhẩu
nhậu
nhây
nhầy
nhẩy
nhẫy
nhấy
nhậy
nhđm
nhè
nhẻ
nhẽ
nhé
nhẹ
nhèm
nhẻm
nhém
nhẹm
nhèn
nhén
nhẹn
nhèo
nhẻo
nhẽo
nhéo
nhẹo
nhép
nhẹp
nhét
nhẹt
nhê
nhể
nhễ
nhếch
nhệch
nhện
nhênh
nhểu
nhếu
nhệu
nhì
nhỉ
nhĩ
nhí
nhị
nhía
nhích
nhiếc
nhiêm
nhiễm
nhiệm
nhiên
nhiễn
nhiếp
nhiệp
nhiêt
nhiết
nhiệt
nhiêu
nhiều
nhiểu
nhiễu
nhiếu
nhím
nhìn
nhĩn
nhín
nhịn
nhỉnh
nhíp
nhịp
nhít
nhịt
nhìu
nhíu
nhịu
nhò
nhỏ
nhõ
nhó
nhọ
nhoài
nhoái
nhoàm
nhoạm
nhoáng
nhoạng
nhoáy
nhoằng
nhóc
nhọc
nhoèn
nhoẻn
nhoét
nhoẹt
nhõi
nhói
nhọi
nhòm
nhỏm
nhõm
nhóm
nhòn
nhỏn
nhõn
nhón
nhọn
nhòng
nhỏng
nhõng
nhóng
nhóp
nhọp
nhót
nhọt
nhô
nhổ
nhỗ
nhố
nhốc
nhôi
nhồi
nhối
nhội
nhôm
nhồm
nhổm
nhộm
nhôn
nhồn
nhổn
nhốn
nhộn
nhông
nhồng
nhộng
nhốt
nhột
nhơ
nhờ
nhở
nhỡ
nhớ
nhợ
nhơi
nhời
nhởi
nhơm
nhởm
nhớm
nhơn
nhờn
nhởn
nhỡn
nhớn
nhợn
nhớp
nhớt
nhợt
nhtư
nhù
nhủ
nhũ
nhú
nhụ
nhúa
nhụa
nhuân
nhuần
nhuận
nhúc
nhục
nhuế
nhuệ
nhùi
nhủi
nhúi
nhụi
nhúm
nhùn
nhủn
nhũn
nhún
nhùng
nhủng
nhũng
nhúng
nhụng
nhuốc
nhuôm
nhuốm
nhuộm
nhuồn
nhút
nhụt
nhuyên
nhuyễn
như
nhừ
nhử
nhữ
nhứ
nhự
nhừa
nhựa
nhức
nhưng
nhửng
những
nhứng
nhựng
nhược
nhương
nhường
nhưỡng
nhướng
nhượng
nhứt
nhựt
nhữu
nhựu
nì
nỉ
ní
nị
nỉa
nĩa
ních
nịch
niêm
niềm
niệm
niên
niền
niển
niễn
niến
niện
niềng
niễng
niếp
niệp
niết
niệt
niêu
niểu
niễu
niếu
niệu
ním
nín
nình
nính
nịnh
níp
nít
nịt
níu
nịu
niutơn
nò
nỏ
nõ
nó
nọ
noản
noãn
nóc
nọc
nòi
nỏi
nói
nọi
nòm
nỏm
nỏn
nõn
nón
nọn
nòng
nóng
nọng
nóp
nót
nọt
nô
nồ
nổ
nỗ
nố
nộ
nôben
nốc
nôi
nồi
nổi
nỗi
nối
nội
nôm
nồm
nộm
nôn
nồn
nộn
nông
nồng
nỗng
nống
nốp
nộp
nốt
nột
nơ
nờ
nở
nỡ
nớ
nợ
nơi
nới
nơm
nờm
nỡm
nớp
nợp
nớt
nơtron
nũ
nú
nụ
nủa
nũa
núa
núc
nục
núcleo
nùi
nũi
núi
nụi
núm
nùn
nùng
nủng
nũng
núng
nuốc
nuộc
nuôi
nuối
nuốm
nuông
nuốt
nuột
núp
nút
nũy
nư
nử
nữ
nứ
nự
nưa
nửa
nữa
nứa
nức
nực
nưng
nừng
nứng
nựng
nước
nược
nườm
nương
nường
nướng
nượp
nướu
nứt
nưu
nữu
nứu
nựu
ò
ỏ
õ
ó
ọ
oác
oạc
oách
oạch
oài
oải
oái
oại
oàm
oạm
oàn
oản
oãn
oán
oạn
oàng
oảng
oãng
oáng
oạng
oành
oảnh
oánh
oạnh
oáo
oáp
oạp
oát
oạt
oảy
oáy
oạy
oắc
oặc
oăm
oằm
oắm
oăn
oằn
oẳn
oắn
oăng
oằng
oẳng
oẵng
oắng
oắt
oặt
óc
ọc
oẻm
oém
oèn
oẻn
oèo
oẻo
oéo
oẹo
oét
oẹt
òi
ỏi
õi
ói
ọi
olá
òm
ỏm
õm
óm
ọm
òn
ỏn
õn
ón
ọn
òng
ỏng
õng
óng
ọng
óp
ọp
ót
ọt
oục
ô
ồ
ổ
ỗ
ố
ộ
ôb
ôben
ôc
ốc
ộc
ôca
ôckinh
ôgam
ôgic
ôhai
ôi
ồi
ổi
ỗi
ối
ội
ôin
ôkinh
ôl
ộl
ôla
ôliu
ôm
ồm
ổm
ỗm
ốm
ộm
ôma
ômet
ômi
ôn
ồn
ổn
ỗn
ốn
ộn
ône
ông
ồng
ổng
ỗng
ống
ộng
ốp
ộp
ôt
ốt
ột
ôtel
ôton
ơ
ờ
ở
ỡ
ớ
ợ
ơc
ờc
ớc
ợc
ơg
ơi
ời
ởi
ỡi
ới
ợi
ờl
ơm
ờm
ởm
ỡm
ớm
ợm
ơme
ơmi
ơn
ờn
ởn
ỡn
ớn
ợn
ơng
ờng
ởng
ỡng
ớng
ợng
ơngen
ớp
ợp
ơr
ơt
ớt
ợt
ơtron
ơu
ờu
ỡu
ớu
ợu
pà
pả
pạ
pác
pạc
pảh
pài
palăng
pán
pàng
panô
pào
páo
páp
pát
pắc
păh
pằn
păng
pấc
pâu
pẻ
péc
pẻng
péo
pê
phà
phả
phá
phạ
phác
phạc
phách
phạch
phài
phải
phái
phàm
phạm
phàn
phản
phãn
phán
phạn
phàng
phảng
phạng
phành
phảnh
phạnh
phào
phảo
pháo
phaolô
pháp
phạp
phát
phạt
phảy
pháy
phắc
phăm
phăn
phắn
phăng
phẳng
phặng
phắp
phặp
phắt
phâm
phầm
phẩm
phân
phần
phẩn
phẫn
phấn
phận
phấp
phập
phất
phật
phầu
phẩu
phẫu
phấu
phây
phẩy
phè
phé
phéc
phẹc
phèn
phèng
phéng
phèo
phép
phét
phẹt
phê
phề
phế
phệ
phếch
phệch
phên
phễn
phện
phềnh
phễnh
phệnh
phết
phệt
phều
phễu
phếu
phì
phỉ
phí
phị
phìa
phía
phịa
phích
phịch
phiêm
phiếm
phiên
phiền
phiến
phiện
phiêng
phiết
phiệt
phiêu
phiểu
phiếu
phiệu
phím
phìn
phình
phỉnh
phĩnh
phính
phịt
phịu
phlạo
phlắc
phò
phó
phóc
phọc
phòi
phón
phòng
phỏng
phóng
phọng
phót
phọt
phô
phồ
phổ
phố
phốc
phộc
phôi
phổi
phối
phôm
phồm
phôn
phồn
phông
phồng
phổng
phỗng
phộng
phốp
phốt
phơ
phờ
phở
phớ
phơi
phời
phới
phơn
phởn
phỡn
phớn
phớt
phrăng
phù
phủ
phũ
phú
phụ
phúc
phục
phủi
phùn
phún
phùng
phủng
phúng
phụng
phúp
phụp
phút
phụt
phư
phứa
phựa
phức
phưng
phừng
phước
phưỡn
phướn
phương
phường
phướng
phượng
phượt
phượu
phứt
phựt
phữu
phựu
phvđ
pí
pianô
pích
pín
píp
pisát
pít
plây
plông
plơi
pó
pótay
pô
pôc
pôn
pông
pốp
pốt
pơ
pờ
pơng
prâng
prô
prông
pù
pú
pụa
púc
puộc
pút
pư
pươi
qì
quà
quả
quã
quá
quạ
quác
quạc
quách
quạch
quài
quải
quái
quại
quàn
quản
quán
quàng
quảng
quãng
quáng
quạng
quành
quảnh
quánh
quạnh
quào
quáo
quát
quạt
quàu
quảu
quáu
quạu
quày
quảy
quáy
quạy
quắc
quặc
quăm
quằm
quẳm
quắm
quặm
quăn
quằn
quẳn
quắn
quặn
quăng
quằng
quẳng
quẵng
quặng
quắp
quặp
quắt
quặt
quấc
quân
quần
quẩn
quẫn
quấn
quận
quâng
quầng
quẩng
quẫng
quất
quật
quây
quầy
quẩy
quẫy
quấy
quậy
què
quẻ
quẽ
qué
quèn
quén
quẹn
quèo
quéo
quẹo
quẹp
quét
quẹt
quê
quế
quệ
quệch
quên
quện
quềnh
quệnh
quết
quệt
quều
quếu
quì
quỉ
quĩ
quí
quị
quình
quít
quịt
quíu
quọ
quoàng
quoạng
quoắt
quốc
quơ
quờ
quở
quớ
quới
quờn
quởn
quởng
quớt
quỳ
quỷ
quỹ
quý
quỵ
quých
quyên
quyền
quyển
quyến
quyện
quyết
quyệt
quỳng
quỳnh
quỷnh
quýnh
quýt
quỵt
rà
rả
rã
rá
rạ
rác
rạc
rách
rạch
rađi
rađio
raglây
rài
rải
rãi
rái
rại
ràm
rám
rạm
ràn
rán
rạn
ràng
rảng
ráng
rạng
rành
rảnh
rãnh
rạnh
ráno
rào
rảo
rão
ráo
rạo
ráp
rạp
rápida
rápido
rát
rạt
ràu
rảu
ráu
rày
rảy
rãy
ráy
rạy
rắc
rặc
răm
rằm
rắm
rặm
răn
rằn
rắn
rặn
răng
rằng
rặng
rắp
rắt
rặt
râm
rầm
rẩm
rẫm
rấm
rậm
rân
rần
rẫn
rấn
rận
râng
rậng
rấp
rập
rất
rật
râu
rầu
rẫu
rậu
rây
rầy
rẩy
rẫy
rcăm
rè
rẻ
rẽ
ré
rẹc
rèm
rèn
rén
rẻng
rèo
rẻo
réo
rẹo
rép
rẹp
rét
rẹt
rê
rề
rể
rễ
rế
rệ
rếch
rệch
rêm
rên
rền
rến
rện
rềnh
rểnh
rếp
rệp
rết
rệt
rêu
rều
rểu
rệu
rì
rỉ
rĩ
rí
rị
rìa
rỉa
rịa
ríc
rích
rịch
riếc
riềm
riêng
riềng
riếp
riết
riệt
riêu
riếu
rím
rĩn
rịn
rình
rỉnh
rĩnh
rịp
rít
rịt
rítra
rìu
ríu
rivê
rlâm
rò
rỏ
rõ
ró
rọ
roàng
róc
rọc
ròi
rỏi
rõi
rói
rọi
ròm
rỏm
róm
rọm
ròn
rỏn
rón
rọn
ròng
rỏng
róng
rọng
rót
rọt
rô
rồ
rổ
rỗ
rố
rộ
rốc
rộc
rồi
rổi
rỗi
rối
rội
rôm
rồm
rộm
rôma
rôn
rổn
rốn
rộn
rông
rồng
rổng
rỗng
rống
rộng
rốp
rộp
rốt
rơ
rờ
rở
rỡ
rớ
rợ
rơi
rời
rợi
rơm
rờm
rởm
rớm
rợm
rơn
rờn
rởn
rỡn
rớn
rợn
rơngen
rớp
rợp
rớt
rợt
rù
rủ
rũ
rú
rùa
rủa
rũa
rụa
rúc
rục
ruê
rùi
rủi
rũi
rúi
rụi
rùm
rúm
rùn
rủn
rún
rùng
rủng
rúng
rụng
ruốc
ruồi
ruổi
ruỗi
ruối
ruộm
ruồng
ruỗng
ruộng
ruột
rúp
rút
rụt
rư
rừ
rứ
rưa
rừa
rửa
rữa
rứa
rựa
rức
rực
rưng
rừng
rửng
rước
rươi
rười
rưởi
rưỡi
rưới
rượi
rươm
rườm
rướm
rườn
rướn
rượn
rương
rường
rượt
rượu
rứt
rựt
rỵn
sà
sả
sã
sá
sạ
sác
sạc
sách
sạch
sài
sải
sãi
sái
sại
saigón
sakê
salát
salâm
sàm
sảm
sám
sạm
sàn
sản
sán
sạn
sàng
sảng
sáng
sành
sảnh
sánh
sào
sảo
são
sáo
sạo
sáp
sạp
sát
sạt
sáu
sảy
sãy
sắc
sặc
săm
sắm
sặm
săn
sằn
sẳn
sẵn
sắn
săng
sằng
sẵng
sắng
sắp
sặp
săt
sắt
sặt
sắu
sâm
sầm
sẩm
sẫm
sấm
sậm
sân
sần
sẩn
sẫn
sấn
sận
sâng
sấp
sập
sất
sật
sâu
sầu
sẩu
sấu
sậu
sây
sầy
sẩy
sấy
sậy
sè
sẻ
sẽ
sé
sẹ
séc
sém
sẹm
sèn
sẻn
sẻng
sèo
sẹo
sét
sẹt
sê
sề
sể
sễ
sế
sệ
sếch
sệch
sên
sền
sến
sênh
sềnh
sểnh
sếp
sệp
sết
sệt
sêu
sếu
sgần
sì
sỉ
sĩ
sí
sị
sỉa
sịa
sích
sịch
sidét
siđa
siêm
siểm
siên
siển
siễn
siêng
siểng
siếp
siệp
siết
siêu
siếu
sìn
sỉn
sín
síne
sình
sỉnh
sính
sịp
sít
sịt
slìn
sò
sỏ
só
sọ
soạc
soài
soải
soái
soại
soàn
soán
soạn
soảng
soạng
soát
soạt
sóc
sọc
sòi
sỏi
sõi
sói
sòm
sóm
sọm
sòn
sỏn
són
sòng
sõng
sóng
sót
sọt
sô
sồ
sổ
sỗ
số
sộ
sôc
sốc
sộc
sôi
sồi
sổi
sồm
sôn
sồn
sông
sồng
sổng
sống
sốp
sộp
sốt
sột
sôvanh
sơ
sờ
sở
sỡ
sớ
sợ
sởi
sỡi
sới
sợi
sơm
sờm
sớm
sơmi
sơn
sờn
sởn
sớn
sớt
srêpốc
sró
sù
sủ
sũ
sú
sụ
sủa
sụa
suân
suất
súc
sục
suê
sùi
sủi
sùm
sụm
sún
sụn
sùng
sủng
sũng
súng
sụng
suôi
suối
suôn
suông
suồng
suống
suốt
súp
sụp
sút
sụt
sủy
súy
suyền
suyển
suyễn
suyến
suýt
suỵt
sư
sừ
sử
sữ
sứ
sự
sưa
sửa
sữa
sứa
sức
sực
sửi
sừn
sưng
sừng
sửng
sững
sựng
sưởi
sườn
sương
sường
sướng
sượng
sướt
sượt
sứt
sựt
sưu
sửu
sứu
sỹ
sý
tà
tả
tã
tá
tạ
tác
tạc
tách
tạch
tài
tải
tãi
tái
tại
tàm
tảm
tám
tạm
tàn
tản
tán
tạn
tàng
tảng
táng
tạng
tành
tảnh
tánh
tạnh
tào
tảo
táo
tạo
táp
tạp
tát
tạt
tàu
táu
tày
tảy
táy
tạy
tắc
tặc
tăk
tăm
tằm
tắm
tăn
tằn
tẳn
tắn
tặn
tăng
tằng
tắng
tặng
tắp
tắt
tấc
tâm
tầm
tẩm
tấm
tân
tần
tẩn
tẫn
tấn
tận
tâng
tầng
tấp
tập
tất
tật
tâu
tầu
tẩu
tấu
tậu
tây
tầy
tẩy
tấy
tbuăn
tè
tẻ
tẽ
té
téc
tẻh
tèm
tẻm
tém
tèn
tẽn
tén
tèo
tẻo
téo
tẹo
tép
tẹp
tét
tẹt
tê
tề
tể
tễ
tế
tệ
tếch
têm
tên
tênh
tềnh
tểnh
tễnh
tệp
têt
tết
tête
têu
tếu
thà
thả
thá
thác
thạc
thách
thạch
thài
thải
thãi
thái
thại
thàm
thảm
thám
thản
thán
thàng
thảng
thãng
tháng
thành
thảnh
thánh
thạnh
thào
thảo
tháo
thạo
tháp
thạp
thát
thạt
tháu
thày
thảy
tháy
thắc
thặc
thăm
thẳm
thắm
thăn
thằn
thắn
thăng
thằng
thẳng
thắng
thặng
thắp
thắt
thâm
thầm
thẩm
thẫm
thấm
thậm
thân
thần
thẩn
thẫn
thấn
thận
thấp
thập
thất
thật
thâu
thầu
thẩu
thấu
thây
thầy
thẩy
thấy
thè
thẻ
thẽ
thé
thèm
thém
thèn
thẻn
thẹn
thèo
thẻo
thẹo
thép
thẹp
thét
thê
thề
thể
thế
thệ
thếch
thêm
thềm
thến
thện
thênh
thểnh
thếp
thết
thêu
thều
thểu
thì
thỉ
thĩ
thí
thị
thìa
thía
thích
thịch
thiếc
thiêm
thiềm
thiểm
thiễm
thiệm
thiên
thiền
thiển
thiến
thiện
thiêng
thiềng
thiếp
thiệp
thiết
thiệt
thiêu
thiều
thiểu
thiễu
thiếu
thiệu
thím
thìn
thín
thình
thỉnh
thính
thịnh
thíp
thít
thíu
thịt
thìu
thỉu
thịu
thò
thỏ
thó
thọ
thoải
thoái
thoại
thoàn
thoản
thoán
thoảng
thoáng
thoát
thoạt
thoăn
thoắng
thoắt
thóc
thọc
thòi
thỏi
thói
thòm
thỏm
thóm
thõn
thòng
thõng
thóp
thót
thọt
thô
thồ
thổ
thố
thộ
thốc
thộc
thôi
thồi
thổi
thối
thồm
thôn
thồn
thổn
thỗn
thốn
thộn
thông
thổng
thống
thốp
thộp
thốt
thột
thơ
thờ
thở
thớ
thợ
thơi
thời
thởi
thới
thơm
thớm
thơn
thờn
thớt
thợt
thtục
thù
thủ
thú
thụ
thùa
thủa
thuân
thuần
thuẩn
thuẫn
thuấn
thuận
thuật
thúc
thục
thuê
thuể
thuế
thùi
thủi
thúi
thụi
thùm
thủm
thùn
thùng
thủng
thũng
thúng
thụng
thuốc
thuộc
thuộm
thuôn
thuồn
thuỗn
thuốn
thuồng
thuổng
thuột
thuở
thụp
thút
thụt
thuyên
thuyền
thuyết
thư
thừ
thử
thữ
thứ
thự
thưa
thừa
thửa
thứa
thữc
thức
thực
thừi
thưng
thừng
thửng
thững
thứng
thước
thược
thưỡi
thườn
thưỡn
thương
thường
thưởng
thướng
thượng
thướt
thượt
thưu
thứu
tì
tỉ
tĩ
tí
tị
tỉa
tía
tích
tịch
tiẻn
tiếc
tiệc
tiêm
tiềm
tiếm
tiệm
tiên
tiền
tiển
tiễn
tiến
tiện
tiêng
tiềng
tiếng
tiếp
tiệp
tiết
tiệt
tiêu
tiều
tiểu
tiễu
tiếu
tiệu
tìm
tỉm
tím
tỉn
tĩn
tín
tịn
tỉng
tình
tỉnh
tĩnh
tính
tịnh
típ
tít
tịt
tĩu
tíu
tịu
tlẻ
tlộm
tnđ
tò
tỏ
tó
tọ
toác
toạc
toài
toái
toại
toàn
toản
toán
toàng
toáng
toạng
toánh
toát
toáy
toắt
tóc
tọc
toèn
toét
toẹt
tòi
tỏi
tõi
tói
tòm
tỏm
tõm
tóm
tòn
tỏn
tòng
tỏng
tọng
tóp
tọp
tót
tọt
tô
tồ
tổ
tố
tộ
tốc
tộc
tôi
tồi
tối
tội
tôm
tôn
tồn
tổn
tỗn
tốn
tông
tồng
tổng
tống
tộng
tốp
tôt
tốt
tột
tơ
tờ
tở
tớ
tợ
tơi
tời
tới
tởm
tơn
tởn
tớn
tợn
tớp
tợp
tớt
trà
trả
trã
trá
trạ
trác
trạc
trách
trạch
trài
trải
trãi
trái
trại
tràm
trảm
trám
trạm
tràn
trản
trán
trạn
tràng
trảng
tráng
trạng
trành
tránh
trạnh
trào
trảo
tráo
trạo
tráp
trát
trạt
tràu
trảu
trày
trảy
trạy
trắc
trặc
trăm
trằm
trắm
trặm
trăn
trằn
trặn
trăng
trắng
trắp
trắt
trâ
trâm
trầm
trẩm
trẫm
trấm
trậm
trân
trần
trẩn
trấn
trận
trâng
trấp
trập
trất
trật
trâu
trầu
trẩu
trấu
trây
trầy
trẩy
trè
trẻ
trẽ
trẹ
trèm
trém
trèn
trẽn
trèo
trẻo
trẽo
tréo
trẹo
trét
trẹt
trê
trề
trể
trễ
trệ
trếch
trệch
trên
trênh
trếnh
trết
trệt
trêu
trều
trếu
trệu
trì
trỉ
trĩ
trí
trị
trìa
trỉa
tría
trịa
trích
trịch
triêm
triền
triển
triến
triện
triêng
triềng
triệng
triếp
triệp
triết
triệt
triêu
triều
triệu
trịng
trình
trĩnh
trính
trịnh
trít
trịt
trìu
trĩu
tríu
trịu
trò
trỏ
trọ
tróc
trọc
tròi
trỏi
trói
trọi
tròm
trõm
tróm
tròn
trõn
trọn
tròng
trỏng
tróng
trọng
trót
trọt
trô
trồ
trổ
trỗ
trố
trộ
trốc
trộc
trôi
trồi
trổi
trỗi
trối
trội
trôm
trộm
trôn
trốn
trộn
trông
trồng
trổng
trống
trộng
trốt
trơ
trờ
trở
trớ
trợ
trơi
trời
trới
trờm
trớm
trợm
trơn
trờn
trớn
trợn
trơng
trớp
trớt
trợt
trù
trủ
trú
trụ
trụa
truân
truất
truật
trúc
trục
trùi
trũi
trụi
trùm
trũm
trúm
trụm
trùn
trụn
trùng
trủng
trũng
trúng
trụng
truồi
truông
truồng
truột
trụp
trút
trụt
truyên
truyền
truyện
trư
trừ
trử
trữ
trứ
trự
trưa
trừa
trữa
trức
trực
trưng
trừng
trửng
trứng
trước
trươi
trườn
trương
trường
trưởng
trưỡng
trướng
trượng
trượt
trừu
trửu
trữu
trứu
tryền
tù
tủ
tú
tụ
tùa
tủa
túa
tuân
tuần
tuẩn
tuẫn
tuấn
tuận
tuất
túc
tục
tuế
tuệ
tuếch
tuệch
tuềnh
tùi
tủi
túi
tụi
tùm
tủm
tũm
túm
tụm
tủn
tùng
tủng
túng
tụng
tuốc
tuộc
tuồi
tuổi
tuồm
tuôn
tuồn
tuông
tuồng
tuốt
tuột
túp
tút
tụt
tuyên
tuyền
tuyển
tuyến
tuyết
tuyệt
tuýp
tuýt
tư
từ
tử
tữ
tứ
tự
tưa
từa
tửa
tứa
tựa
tức
tưng
từng
tửng
tước
tược
tươi
tưởi
tưới
tươm
tườm
tướn
tương
tường
tưởng
tướng
tượng
tướp
tượp
tướt
tượt
tườu
tưu
tửu
tựu
tỳ
tỷ
tý
tỵ
ù
ủ
ũ
ú
ụ
ùa
ủa
ũa
úa
ụa
uác
uạc
uách
uạch
uài
uải
uái
uại
uàn
uản
uán
uàng
uảng
uãng
uáng
uạng
uành
uánh
uạnh
uào
uáo
uát
uạt
uàu
uạu
uày
uảy
uắc
uặc
uằm
uắm
uặm
uăn
uằn
uẳn
uắn
uặn
uăng
uẳng
uặng
uắp
uặp
uắt
uặt
uân
uần
uẩn
uẫn
uấn
uận
uâng
uầng
uẩng
uất
uật
uây
uầy
uẩy
uẫy
uấy
uậy
ubtư
úc
ục
uè
uẻ
uẽ
ué
uèn
uèo
uéo
uẹo
uét
uẹt
uê
uề
uể
uế
uệ
uếch
uệch
uên
uện
uênh
uềnh
uết
uệt
uều
ùi
ủi
ũi
úi
ụi
uít
uịt
úk
ùm
ủm
ũm
úm
ụm
ùn
ủn
ũn
ún
ụn
ùng
ủng
ũng
úng
ụng
uọ
ủo
uốc
uộc
uôi
uồi
uổi
uỗi
uối
uội
uôm
uồm
uỗm
uốm
uộm
uôn
uồn
uỗn
uốn
uộn
uông
uồng
uổng
uỗng
uống
uộng
uốt
uột
uơ
uờ
uở
uớ
uới
uơn
uờn
uởn
uỡn
uờng
uởng
uớt
úp
ụp
út
ụt
uvtư
uých
uỵch
uyên
uyền
uyển
uyễn
uyến
uyện
uyết
uyệt
uỳnh
uýnh
uýt
uỷu
uỵu
ư
ừ
ử
ữ
ứ
ự
ưa
ừa
ửa
ữa
ứa
ựa
ưc
ữc
ức
ực
ưcv
ưd
ừi
ửi
ừm
ưn
ừn
ứn
ưng
ừng
ửng
ững
ứng
ựng
ước
ược
ươi
ười
ưởi
ưỡi
ưới
ượi
ươm
ườm
ướm
ượm
ươn
ườn
ưỡn
ướn
ượn
ương
ường
ưởng
ưỡng
ướng
ượng
ướp
ượp
ướt
ượt
ươu
ườu
ưỡu
ướu
ượu
ưt
ứt
ựt
ưu
ừu
ửu
ữu
ứu
ựu
và
vả
vã
vá
vạ
vác
vạc
vách
vạch
vài
vải
vãi
vái
vại
vàm
vạm
vàn
vãn
ván
vạn
vàng
vảng
vãng
váng
vạng
vành
vảnh
vãnh
vánh
vạnh
vào
váo
vàp
váp
vạp
vát
vạt
vàu
vày
vảy
vãy
váy
vạy
vắc
vặc
văm
vằm
văn
vằn
vắn
vặn
văng
vằng
vẳng
vắng
vặng
vắp
vắt
vặt
vâm
vậm
vân
vần
vẩn
vẫn
vấn
vận
vâng
vầng
vấp
vập
vất
vật
vầu
vẩu
vấu
vây
vầy
vẩy
vẫy
vấy
vậy
vè
vẻ
vẽ
vé
véc
vẹm
vèn
vẻn
vén
vẹn
vèo
vẻo
véo
vẹo
vét
vẹt
vê
về
vế
vệ
vếch
vệch
vên
vền
vện
vênh
vểnh
vết
vệt
vêtu
vêu
vều
vếu
vì
vỉ
vĩ
ví
vị
vỉa
vía
vích
viêc
việc
viêm
viên
viền
viển
viễn
viện
viêng
viếng
việp
viêt
viết
việt
vịm
vín
vịn
vĩnh
vính
vịnh
viọng
vít
vịt
víu
vò
vỏ
võ
vó
vọ
vóc
vọc
vòi
vỏi
vói
vọi
vòm
vòn
vỏn
vón
vòng
vỏng
võng
vóng
vọng
vọp
vót
vọt
vô
vồ
vổ
vỗ
vố
vốc
vôi
vồi
vối
vội
vôn
vồn
vốn
vông
vồng
vổng
vống
vốt
vơ
vờ
vở
vỡ
vớ
vợ
vơi
vời
với
vợi
vờn
vởn
vớt
vợt
vù
vũ
vú
vụ
vùa
vúc
vục
vùi
vũm
vùn
vụn
vùng
vũng
vụng
vuối
vuông
vuốt
vuột
vút
vụt
vư
vừa
vữa
vựa
vức
vực
vưng
vừng
vửng
vững
vựng
vược
vươn
vườn
vượn
vương
vưởng
vướng
vượng
vượt
vứt
vưu
vỹ
vý
xà
xả
xã
xá
xạ
xác
xạc
xách
xạch
xài
xải
xái
xàm
xảm
xám
xạm
xán
xàng
xáng
xành
xảnh
xào
xảo
xáo
xạo
xáp
xạp
xát
xàu
xảu
xạu
xảy
xáy
xắc
xăm
xắm
xăn
xắn
xăng
xằng
xẳng
xẵng
xắng
xắp
xắt
xấ
xấc
xâm
xầm
xẩm
xân
xẩn
xấn
xấp
xập
xâu
xầu
xẩu
xấu
xây
xầy
xẩy
xcô
xè
xẻ
xé
xẹ
xéc
xẹc
xém
xèn
xẻn
xén
xèng
xẻng
xèo
xẻo
xẽo
xéo
xẹo
xép
xẹp
xét
xẹt
xê
xề
xể
xễ
xế
xệ
xếch
xệch
xềm
xên
xển
xênh
xềnh
xểnh
xếp
xệp
xệt
xêu
xều
xệu
xì
xỉ
xí
xị
xỉa
xía
xịa
xích
xịch
xiếc
xiệc
xiêm
xiểm
xiên
xiển
xiễn
xiềng
xiểng
xiếp
xiệp
xiết
xiêu
xiều
xiểu
xiếu
ximăng
xỉn
xín
xịn
xinê
xíng
xình
xỉnh
xĩnh
xính
xíp
xít
xịt
xìu
xỉu
xíu
xịu
xò
xỏ
xó
xọ
xoác
xoạc
xoạch
xoài
xoải
xoàm
xoàn
xoán
xoàng
xoảng
xoạng
xoành
xoát
xoạt
xoáy
xoăn
xoẳn
xoắn
xoắt
xóc
xọc
xoèn
xoẻng
xoét
xoẹt
xòi
xói
xòm
xõm
xóm
xón
xòng
xỏng
xõng
xóng
xóp
xọp
xót
xô
xồ
xổ
xố
xộ
xốc
xộc
xôi
xồi
xổi
xối
xôm
xồm
xổm
xôn
xồn
xổn
xốn
xộn
xông
xồng
xổng
xống
xốp
xộp
xốt
xơ
xờ
xở
xỡ
xớ
xơi
xời
xởi
xới
xơm
xờm
xớm
xơn
xởn
xớn
xớp
xợp
xớt
xợt
xrê
xrêpôc
xtiêng
xtơ
xtrây
xù
xủ
xũ
xú
xụ
xùa
xúa
xuân
xuẩn
xuất
xuây
xúc
xục
xuê
xuề
xuể
xuế
xuệch
xuềnh
xùi
xủi
xúi
xụi
xùm
xúm
xùng
xủng
xúng
xuôi
xuông
xuồng
xuổng
xuống
xúp
xụp
xút
xụt
xuyên
xuyền
xuyển
xuyễn
xuyến
xuyết
xuýt
xuỵt
xư
xừ
xử
xứ
xự
xưa
xửa
xứa
xức
xực
xưng
xừng
xửng
xứng
xước
xược
xười
xương
xường
xưởng
xướng
xýt
ỳ
ỷ
ỹ
ý
ỵ
ỵa
yàm
yán
ých
ỵch
yếc
yêm
yểm
yếm
yên
yển
yến
yêng
yểng
yếng
yếp
yết
yêu
yều
yểu
yếu
yì
ýn
ỵn
ỳnh
ỷnh
ýnh
yò
yó
ýp
ýt
ỵt
yú
ỷu
ỵu
yùm
zà
zabân
zài
zắc
zăg
zăng
zép
zéro
zê
zỏm
zô
================================================
FILE: dict/vietnamese.new.dict
================================================
choá
choè
choẻ
choé
choẹ
chuỳ
chuỷ
chuý
doá
doạ
đoá
đoạ
goá
hoà
hoả
hoã
hoá
hoạ
hoè
hoé
hoẹ
huỷ
huý
khoà
khoả
khoã
khoá
khoẻ
khoé
khuỷ
loà
loả
loã
loá
loè
loé
luỹ
luý
luỵ
ngoà
ngoả
ngoã
ngoá
ngoạ
ngoè
ngoẻ
ngoẽ
ngoé
ngoẹ
nguỳ
nguỵ
nhoà
nhoá
nhoè
nhoé
nhuỵ
noạ
nuỵ
oà
oả
oã
oá
oạ
oè
oẻ
oẽ
oé
oẹ
roá
soà
soả
soã
soá
soạ
suý
thoà
thoả
thoã
thoá
thuỳ
thuỷ
thuý
thuỵ
toà
toả
toạ
toè
toẻ
toẽ
toé
truỳ
truỷ
truý
truỵ
tuỳ
tuỷ
tuý
tuỵ
uỳ
uỷ
uỹ
uý
uỵ
xoà
xoả
xoã
xoá
xoạ
xoè
xoẹ
xuỳ
xuý
================================================
FILE: dict/vietnamese.sp.dict
================================================
amiđan
anđt
atnđ
axít
bcđ
bcđpctntư
bcđqg
bcđt
bcđts
bchtư
bđ
bđn
bđs
bđvn
bêrê
bgdđt
bhalêê
bhđc
bioóc
boóng
bôxit
bvđk
café
cđ
cđsp
cđv
choòng
chơro
cnqsdđ
coóc
cqđt
cscđ
csđn
csđt
csđtlx
csđttp
csđttpmt
ctđ
ctđl
dagtđt
dđ
đatp
đb
đba
đbdt
đbđ
đbđvn
đbkvn
đbp
đbqh
đbscl
đbtn
đbtsxb
đc
đcd
đcdgs
đcdgscs
đcdgsn
đcdgsnn
đcl
đclgd
đcs
đcstq
đcsvn
đct
đgn
đh
đhbc
đhbk
đhbkhcm
đhbkhn
đhbktphcm
đhcđ
đhclc
đhcn
đhct
đhgtvt
đhhb
đhhvn
đhkh
đhkhtn
đhkhtnhn
đhkhxh
đhkt
đhktcn
đhktqd
đhn
đhnt
đhqg
đhqghn
đhsp
đk
đkđt
đkhk
đkkd
đkkh
đkt
đkvđ
đkvn
đkxt
đkz
đl
đlđ
đltp
đm
đmn
đn
đna
đná
đnd
đndtp
đnđ
đnn
đnt
đrl
đsq
đta
đtd
đtdđ
đtđ
đthvn
đtlt
đtnn
đtqg
đttx
đttxqm
đtv
đtvhd
đtvn
đtxdcb
đvht
đvtn
đvttn
đvưt
êđê
êrê
gcnđkkd
gcnqsdđ
gcnqsdđơ
gcnqshnơ
gdđh
gdđt
gđ
gđt
gđtla
gđtt
giêsu
giêxu
goòng
gplhđb
hcđ
hđ
hđba
hđcd
hđcdgs
hđcdgscs
hđcdgsn
hđcdgsnn
hđct
hđh
hđkt
hđlđ
hđnd
hđndtp
hđnt
hđqt
hđrung
hđt
hđtđ
hđts
hđtt
hđxx
hlbđ
hmnđ
hngđ
hoóc
hqđt
hsđkdt
htcđ
kađai
kdđv
kdhđc
kđcl
kđclgd
kđrao
kđs
kđt
kđtm
kđtntl
khđt
kilôoát
klđt
lđ
lđbđ
lđbđvn
lđlđ
lđtb
lđtbxh
lllđ
loỏng
ltqđtd
mđhur
moóc
môtô
mtđt
nđ
nđt
nđvn
nhđa
nhđá
nhđt
nhđtpt
nlđ
nmđ
nơron
nsưt
nxbqđnd
óoc
oọc
oòng
oọng
oốc
orăng
ốk
ôkô
ôông
ôr
ôtô
ôtôca
ôxi
ôxit
ôxy
pclbtư
pgđ
poóc
poọng
pốk
pôkô
pôồn
pôông
prôton
qđ
qđnd
qlđt
qsdđ
rđê
sdđnn
sđh
sđk
sđnđ
sđt
sđtla
skhđt
smđh
soóc
svđ
svđv
tđ
tđbkvn
tđc
tgđ
thcsnđ
thktsmđ
thoòng
tmđt
tnđh
tnđt
toòng
tơrao
tpcđ
troóc
troốc
tsdđ
ttbđs
ttđb
ttđm
tthtcđ
vđ
vđqg
vđv
vđvqg
vhgdttnnđ
voọc
xđgn
xklđ
ytcđ
ytế
zêrô
================================================
FILE: dict/vietnamese.std.dict
================================================
chóa
chòe
chỏe
chóe
chọe
chùy
chủy
chúy
dóa
dọa
đóa
đọa
góa
hòa
hỏa
hõa
hóa
họa
hòe
hóe
họe
hủy
húy
khòa
khỏa
khõa
khóa
khỏe
khóe
khủy
lòa
lỏa
lõa
lóa
lòe
lóe
lũy
lúy
lụy
ngòa
ngỏa
ngõa
ngóa
ngọa
ngòe
ngỏe
ngõe
ngóe
ngọe
ngùy
ngụy
nhòa
nhóa
nhòe
nhóe
nhụy
nọa
nụy
òa
ỏa
õa
óa
ọa
òe
ỏe
õe
óe
ọe
róa
sòa
sỏa
sõa
sóa
sọa
súy
thòa
thỏa
thõa
thóa
thùy
thủy
thúy
thụy
tòa
tỏa
tọa
tòe
tỏe
tõe
tóe
trùy
trủy
trúy
trụy
tùy
tủy
túy
tụy
ùy
ủy
ũy
úy
ụy
xòa
xỏa
xõa
xóa
xọa
xòe
xọe
xùy
xúy
================================================
FILE: except.tmpl.txt
================================================
#
# Teni-IME - A Vietnamese Input method editor
# Copyright (C) 2018 Nguyen Cong Hoang
# This file is part of Teni-IME.
#
# Teni-IME is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Teni-IME is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Teni-IME. If not, see .
#
# -----------------------------------------------------------------------------
# Đây là file chứa danh sách các ứng dụng loại trừ của bộ gõ Teni.
# Khi chế độ "Loại trừ ứng dụng" được bật, bộ gõ Teni sẽ
# không xử lý khi gõ trên các ứng dụng được liệt kê bên dưới.
# (các dòng trống hoặc bắt đầu bằng dấu # sẽ được bỏ qua)
#
# Các ứng dụng được xác định bằng WM_CLASS, để lấy WM_CLASS chạy command:
# bash ${WM.BASH}
#
# Điền WM_CLASS vào file này, mỗi WM_CLASS ghi trên một dòng,
# hãy copy hoặc gõ chính xác chữ hoa và chữ thường.
# Nếu một ứng dụng có nhiều WM_CLASS thì chỉ cần điền 1 WM_CLASS
#
# Bên dưới là một số WM_CLASS được liệt kê sẵn, bỏ dấu # đầu dòng để có hiệu lực
## Developments -----------------------
#Atom
#Code
#Eclipse
#sublime_text
#jetbrains-idea
#jetbrains-studio
#jetbrains-pycharm-ce
#jetbrains-pycharm-edu
#jetbrains-rubymine
#jetbrains-phpstorm
#jetbrains-webstorm
## Consoles ---------------------------
#console
#konsole
#XTerm
#Gnome-terminal
================================================
FILE: ibus-teni.dsc
================================================
#
# Teni-IME - A Vietnamese Input method editor
# Copyright (C) 2018 Nguyen Cong Hoang
# This file is part of Teni-IME.
#
# Teni-IME is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Teni-IME is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Teni-IME. If not, see .
#
Format: 1.0
Source: ibus-teni
Binary: ibus-teni
Architecture: any
Version: 1.5.3-0
Maintainer: Nguyen Cong Hoang
Homepage: https://github.com/teni-ime/ibus-teni
Build-Depends: debhelper, golang, libx11-dev
Files:
0 0 ibus-teni-1.5.3.tar.gz
================================================
FILE: ibus-teni.spec
================================================
#
# Teni-IME - A Vietnamese Input method editor
# Copyright (C) 2018 Nguyen Cong Hoang
# This file is part of Teni-IME.
#
# Teni-IME is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Teni-IME is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Teni-IME. If not, see .
#
#release info -----------------------------------------------------------------
%define engine_name teni
%define package_name ibus-%{engine_name}
%define version 1.5.3
#install directories ----------------------------------------------------------
%define engine_dir /usr/share/%{package_name}
%define ibus_dir /usr/share/ibus
%define ibus_cpn_dir /usr/share/ibus/component
%define usr_lib_dir /usr/lib
#package info -----------------------------------------------------------------
Name: ibus-%{engine_name}
Version: %{version}
Release: 1
Summary: A Vietnamese IME for IBus
License: GPL-3.0
Group: System/Localization
URL: https://github.com/teni-ime/ibus-teni
Packager: Nguyen Cong Hoang
BuildRequires: go, libX11-devel
Requires: ibus
Provides: locale(ibus:vi)
Source0: %{package_name}-%{version}.tar.gz
%description
A Vietnamese IME for IBus using Teni-IME
Bộ gõ tiếng Việt cho IBus sử dụng Teni-IME
%global debug_package %{nil}
%prep
%setup
%build
make build
%install
make DESTDIR=%{buildroot} install
%files
%defattr(-,root,root)
%doc README.md LICENSE MAINTAINERS
%dir %{ibus_dir}
%dir %{ibus_cpn_dir}
%dir %{engine_dir}
%{engine_dir}/*
%{ibus_dir}/component/%{engine_name}.xml
%{usr_lib_dir}/ibus-engine-%{engine_name}
%clean
cd ..
rm -rf %{package_name}-%{version}
rm -rf %{buildroot}
%changelog
* Sat Nov 24 2018 Nguyen Cong Hoang - 1.5.3
- Build cho Ubuntu 20.04
* Sat Nov 24 2018 Nguyen Cong Hoang - 1.5.2
- Sửa kiểu gõ tự do không kiểm tra chính tả
* Fri Nov 23 2018 Nguyen Cong Hoang - 1.5.1
- Sửa kiểu gõ tự do không kiểm tra chính tả
* Sun Nov 4 2018 Nguyen Cong Hoang - 1.5.0
- Thêm kiểu gõ [Telex] (kiểu gõ này cho phép dùng phím [])
- Sửa lỗi không xóa hết chữ trên Telegram
- Sửa lỗi con trỏ chuột nhảy về đầu dòng trên Facebook chat
* Mon Oct 22 2018 Nguyen Cong Hoang - 1.4.2
- Sửa lỗi mất chữ khi đang gõ
- Sửa lỗi con trỏ chuột nhảy về đầu dòng trên Facebook chat
* Sun Oct 21 2018 Nguyen Cong Hoang - 1.4.1
- Cập nhật từ điển
- Sửa lỗi mất chữ khi đang gõ
* Sun Oct 7 2018 Nguyen Cong Hoang - 1.4.0
- Thêm lựa chọn "Giữ nhiều chữ", cho phép sửa dấu những chữ đã gõ xong
- Thêm lựa chọn "Đúng chính tả", cho phép bỏ qua kiểm tra chính tả
* Sun Sep 23 2018 Nguyen Cong Hoang - 1.3.3
- Tối ưu chức năng "Loại trừ ứng dụng"
- Sửa lỗi không gõ được sau khi click chuột đi chỗ khác
- Thêm xử lý xóa pre-edit khi click chuột
* Sat Sep 15 2018 Nguyen Cong Hoang - 1.3.2
- Tối ưu chức năng "Loại trừ ứng dụng"
- Sửa lỗi không gõ được trên FreeOffice và Wine
* Sun Sep 9 2018 Nguyen Cong Hoang - 1.3.1
- Sửa lỗi chức năng "Loại trừ ứng dụng"
* Tue Sep 4 2018 Nguyen Cong Hoang - 1.3.0
- Thêm chức năng "Loại trừ ứng dụng"
- Cập nhật từ điển (bổ sung ~700 từ)
* Sun Aug 26 2018 Nguyen Cong Hoang - 1.2.2
- Thay đổi xử lý commit: forward tất cả các phím khi commit
- Sửa lỗi khôi phục phím khi nhấn phím dấu 2 lần
* Tue Aug 21 2018 Nguyen Cong Hoang - 1.2.1
- Sửa lỗi khôi phục phím w, [, ] trên kiểu gõ Telex
- Bổ sung danh sách từ tiếng Việt: xịn
* Fri Aug 17 2018 Nguyen Cong Hoang - 1.2.0
- Thêm kiểu gõ Telex (cho phép gõ nhanh bằng w, [,])
- Sửa lỗi mất gợi ý khi gõ trên thanh địa chỉ của Chrome
* Thu Aug 9 2018 Nguyen Cong Hoang - 1.1.0
- Thêm xử lý nhanh chóng khôi phục phím khi gõ từ không có trong tiếng Việt
- Sửa lỗi mất space khi gõ trên Dropbox Paper
* Sun Jul 29 2018 Nguyen Cong Hoang - 1.0.0
- Phiên bản hoàn thiện chính thức: ibus-teni v1.0.0
* Fri Jun 22 2018 Nguyen Cong Hoang - 0.1
- Phiên bản chính thức đầu tiên: ibus-teni v0.1
================================================
FILE: src/dict-gen/Gopkg.toml
================================================
# Gopkg.toml example
#
# Refer to https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md
# for detailed Gopkg.toml documentation.
#
# required = ["github.com/user/thing/cmd/thing"]
# ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"]
#
# [[constraint]]
# name = "github.com/user/project"
# version = "1.0.0"
#
# [[constraint]]
# name = "github.com/user/project2"
# branch = "dev"
# source = "github.com/myfork/project2"
#
# [[override]]
# name = "github.com/x/y"
# version = "2.4.0"
#
# [prune]
# non-go = false
# go-tests = true
# unused-packages = true
[[constraint]]
name = "golang.org/x/text"
version = "0.3.0"
[prune]
go-tests = true
unused-packages = true
================================================
FILE: src/dict-gen/dump.go
================================================
package main
import (
"html"
"io/ioutil"
"log"
"net/http"
"net/url"
"regexp"
"strings"
)
const (
topPage = "https://vi.wiktionary.org"
firstPage = "https://vi.wiktionary.org/wiki/Thể_loại:Mục_từ_tiếng_Việt"
contentFromPattern = `[\(>]Trang sau[\)<]`
nextPagePattern = `Trang sau `
pageTitlePattern = `([^>]+) `
outputFile = "dict/vi.wiktionary.org.txt"
vietChars = `
áàảãạ
ăắằẳẵặ
âấầẩẫậ
éèẻẽẹ
êếềểễệ
íìỉĩị
óòỏõọ
ôốồổỗộ
ơờớởỡợ
úùủũụ
ưứừửữự
ýỳỷỹỵ
đ
`
)
var (
nextPageRegex = regexp.MustCompile(nextPagePattern)
nextPageTitleRegex = regexp.MustCompile(pageTitlePattern)
contentStartRegex = regexp.MustCompile(contentFromPattern)
)
func GetHttpText(address string) string {
uAddr, _ := url.PathUnescape(address)
log.Println("Get " + uAddr)
if resp, err := http.Get(address); err != nil {
log.Println(err)
} else {
defer resp.Body.Close()
if b, err := ioutil.ReadAll(resp.Body); err != nil {
log.Println(err)
} else {
return string(b)
}
}
return ""
}
func isVietnamese(s string) bool {
for _, r := range []rune(s) {
if (r >= 'a' && r <= 'z') ||
(r >= 'A' && r <= 'Z') ||
(r >= '0' && r <= '9') ||
(r == ' ' || r == '.' || r == ',' || r == ';' || r == '&') ||
strings.IndexRune(vietChars, r) >= 0 {
continue
} else {
return false
}
}
return true
}
func dumpWiktionary() string {
mapWord := map[string]bool{}
s := GetHttpText(firstPage)
for len(s) > 0 {
s = html.UnescapeString(s)
startIndex := contentStartRegex.FindStringIndex(s)
if len(startIndex) > 0 {
content := s[startIndex[0]:]
matches := nextPageTitleRegex.FindAllStringSubmatch(content, -1)
for _, m := range matches {
w := m[1]
if isVietnamese(w) {
mapWord[w] = true
}
}
}
nextALink := nextPageRegex.FindAllStringSubmatch(s, 1)
if len(nextALink) > 0 && len(nextALink[0]) >= 1 {
nextUrl := nextALink[0][1]
s = GetHttpText(topPage + nextUrl)
} else {
break
}
}
var wordList []string
for k := range mapWord {
wordList = append(wordList, k)
}
return strings.Join(wordList, "\n")
}
================================================
FILE: src/dict-gen/extract.go
================================================
package main
import (
"fmt"
"log"
"regexp"
"strings"
)
const vietBaseMarks = `
áàảãạ
ăắằẳẵặ
âấầẩẫậ
éèẻẽẹ
êếềểễệ
íìỉĩị
óòỏõọ
ôốồổỗộ
ơờớởỡợ
úùủũụ
ưứừửữự
ýỳỷỹỵ
đ
`
var (
vietWordRegex *regexp.Regexp
vietWordToneStartRegex *regexp.Regexp
rootToneStartRegex *regexp.Regexp
)
func init() {
vbm := strings.Replace(vietBaseMarks, " ", "", -1)
vbm = strings.Replace(vbm, "\n", "", -1)
VBM := strings.ToUpper(vbm)
vietWordPattern := fmt.Sprintf(`[a-zA-Z]*[%[1]s%[2]s][a-zA-Z]*`, vbm, VBM)
vietWordToneStartPattern := fmt.Sprintf(`[%[1]s%[2]s][a-zA-Z]*`, vbm, VBM)
rootToneStartPattern := fmt.Sprintf(`[eyuioaEYUIOA]+[%[1]s%[2]s][a-zA-Z]*`, vbm, VBM)
var err error
vietWordRegex, err = regexp.Compile(vietWordPattern)
if err != nil {
log.Fatal(err)
}
vietWordToneStartRegex, err = regexp.Compile(vietWordToneStartPattern)
if err != nil {
log.Fatal(err)
}
rootToneStartRegex, err = regexp.Compile(rootToneStartPattern)
if err != nil {
log.Fatal(err)
}
}
func extractVietWord(s string, toMap map[string]bool) {
words := vietWordRegex.FindAllString(s, -1)
words = append(words, vietWordToneStartRegex.FindAllString(s, -1)...)
words = append(words, rootToneStartRegex.FindAllString(s, -1)...)
for _, w := range words {
if len(w) > 7 {
continue
}
wlower := strings.ToLower(w)
toMap[wlower] = true
}
}
================================================
FILE: src/dict-gen/main.go
================================================
package main
import (
"bufio"
"fmt"
"io"
"io/ioutil"
"log"
"os"
"strings"
)
var (
mapStdToneWord = loadWordMap("dict/vietnamese.std.dict")
mapNewToneWord = loadWordMap("dict/vietnamese.new.dict")
mapSpecialWord = loadWordMap("dict/vietnamese.sp.dict")
mapCommonWord = loadWordMap("dict/vietnamese.cm.dict")
newCommonWordFile = "dict/vietnamese.cm.dict"
)
func loadWordMap(wordListFile string) map[string]bool {
f, err := os.Open(wordListFile)
if err != nil {
log.Fatalln(err)
}
defer f.Close()
rd := bufio.NewReader(f)
m := map[string]bool{}
for {
line, _, err := rd.ReadLine()
if err == io.EOF {
break
} else if err != nil {
log.Fatalln(err)
}
if len(line) == 0 {
continue
}
m[string(line)] = true
}
return m
}
func main() {
fmt.Println("BEGIN")
log.Println(len(mapCommonWord))
log.Println(len(mapStdToneWord))
log.Println(len(mapNewToneWord))
allWords := dumpWiktionary()
m := map[string]bool{}
extractVietWord(allWords, m)
countNewWord := 0
for k := range m {
if _, ok := mapStdToneWord[k]; ok {
continue
} else if _, ok := mapNewToneWord[k]; ok {
continue
} else if _, ok := mapSpecialWord[k]; ok {
continue
} else if _, ok := mapCommonWord[k]; ok {
continue
} else {
mapCommonWord[k] = true
countNewWord++
}
}
log.Println("countNewWord:", countNewWord)
var words []string
for k := range mapCommonWord {
if len(k) > 0 {
words = append(words, k)
}
}
vnsort(words)
ioutil.WriteFile(newCommonWordFile, []byte(strings.Join(words, "\n")), 0777)
fmt.Println("DONE")
}
================================================
FILE: src/dict-gen/vnsort.go
================================================
package main
import (
"golang.org/x/text/collate"
"golang.org/x/text/language"
)
func vnsort(a []string) {
vnm := collate.New(language.Vietnamese)
vnm.SortStrings(a)
}
================================================
FILE: src/ibus-teni/cache-wm.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"sync"
)
type CacheWM struct {
sync.Mutex
values map[uint32][]string
keyList []uint32
maxItems int
}
func NewCacheWM(maxItems int) *CacheWM {
return &CacheWM{
values: map[uint32][]string{},
maxItems: maxItems,
}
}
func (c *CacheWM) Get(window uint32) ([]string, bool) {
c.Lock()
defer c.Unlock()
v, ok := c.values[window]
if ok {
lenKeyList := len(c.keyList)
for i := lenKeyList - 1; i >= 0; i-- {
if c.keyList[i] == window {
for j := i + 1; j < lenKeyList; j++ {
c.keyList[j-1] = c.keyList[j]
}
c.keyList[lenKeyList-1] = window
break
}
}
}
return v, ok
}
func (c *CacheWM) Set(window uint32, wm []string) {
c.Lock()
defer c.Unlock()
c.values[window] = wm
if len(c.keyList) < c.maxItems {
c.keyList = append(c.keyList, window)
} else {
delete(c.values, c.keyList[0])
c.keyList = append(c.keyList[1:], window)
}
}
================================================
FILE: src/ibus-teni/config.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"encoding/json"
"fmt"
"io/ioutil"
"log"
"os"
"os/exec"
"os/user"
"path/filepath"
"strings"
"teni"
)
const (
configFile = "%s/.config/ibus/ibus-%s.config.json"
exceptListFile = "%s/.config/ibus/ibus-%s.except.txt"
sampleExceptListFile = "except.tmpl.txt"
varWmBash = "${WM.BASH}"
wmBashFile = "wm.bash"
)
type ToneType uint8
const (
ConfigToneStd ToneType = iota << 0
ConfigToneNew ToneType = iota
)
type Config struct {
InputMethod teni.InputMethod
ToneType ToneType
EnableExcept uint32
EnableLongText uint32
EnableForceSpell uint32
}
func LoadConfig(engineName string) *Config {
c := Config{
InputMethod: teni.IMTeni,
ToneType: ConfigToneStd,
EnableExcept: 0,
EnableLongText: 0,
EnableForceSpell: 1,
}
u, err := user.Current()
if err == nil {
data, err := ioutil.ReadFile(fmt.Sprintf(configFile, u.HomeDir, engineName))
if err == nil {
json.Unmarshal(data, &c)
}
}
return &c
}
func SaveConfig(c *Config, engineName string) {
u, err := user.Current()
if err != nil {
return
}
data, err := json.Marshal(c)
if err != nil {
return
}
err = ioutil.WriteFile(fmt.Sprintf(configFile, u.HomeDir, engineName), data, 0644)
if err != nil {
log.Println(err)
}
}
func getExceptListFile(engineName string) string {
u, err := user.Current()
if err != nil {
return fmt.Sprintf(exceptListFile, "~", engineName)
}
return fmt.Sprintf(exceptListFile, u.HomeDir, engineName)
}
func getEngineSubFile(fileName string) string {
if _, err := os.Stat(fileName); err == nil {
if absPath, err := filepath.Abs(fileName); err == nil {
return absPath
}
}
return filepath.Join(filepath.Dir(os.Args[0]), fileName)
}
func OpenExceptListFile(engineName string) {
efPath := getExceptListFile(engineName)
if _, err := os.Stat(efPath); os.IsNotExist(err) {
sampleFile := getEngineSubFile(sampleExceptListFile)
sample, _ := ioutil.ReadFile(sampleFile)
if len(sample) > 0 {
wmBashPath := getEngineSubFile(wmBashFile)
strSample := strings.Replace(string(sample), varWmBash, wmBashPath, 1)
sample = []byte(strSample)
}
ioutil.WriteFile(efPath, sample, 0644)
}
exec.Command("xdg-open", efPath).Start()
}
================================================
FILE: src/ibus-teni/debug.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"github.com/sarim/goibus/ibus"
"os"
"path/filepath"
)
const (
DebugComponentName = ComponentName + "Debug"
DebugEngineName = EngineName + "-debug"
IconFile = "icon.png"
)
func makeDebugComponent() *ibus.Component {
component := &ibus.Component{
Name: "IBusComponent",
ComponentName: DebugComponentName,
}
engine := &ibus.EngineDesc{
Name: "IBusEngineDesc",
EngineName: DebugEngineName,
Icon: filepath.Join(filepath.Dir(os.Args[0]), IconFile),
}
component.AddEngine(engine)
return component
}
================================================
FILE: src/ibus-teni/engine.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"fmt"
"github.com/godbus/dbus"
"github.com/sarim/goibus/ibus"
"os/exec"
"runtime/debug"
"sync"
"teni"
"time"
)
type IBusTeniEngine struct {
sync.Mutex
ibus.Engine
preediter *teni.Engine
excepted bool
zeroLocation bool
capSurrounding bool
engineName string
config *Config
propList *ibus.PropList
exceptMap *ExceptMap
display CDisplay
prevText []rune
ignoreNextUp bool
}
var (
DictStdList = []string{DictVietnameseCm, DictVietnameseSp, DictVietnameseStd}
DictNewList = []string{DictVietnameseCm, DictVietnameseSp, DictVietnameseNew}
printableKeyCode = map[uint32]bool{
0x0039: true,
0x0002: true,
0x0003: true,
0x0004: true,
0x0005: true,
0x0006: true,
0x0007: true,
0x0008: true,
0x0009: true,
0x000a: true,
0x000b: true,
0x000c: true,
0x000d: true,
0x007c: true,
0x001a: true,
0x001b: true,
0x0027: true,
0x0028: true,
0x002b: true,
0x0033: true,
0x0034: true,
0x0035: true,
0x0059: true,
}
)
func IBusTeniEngineCreator(conn *dbus.Conn, engineName string) dbus.ObjectPath {
objectPath := dbus.ObjectPath(fmt.Sprintf("/org/freedesktop/IBus/Engine/Teni/%d", time.Now().UnixNano()))
var config = LoadConfig(engineName)
if config.ToneType == ConfigToneStd {
teni.InitWordTrie(config.EnableForceSpell == ibus.PROP_STATE_CHECKED, DictStdList...)
} else {
teni.InitWordTrie(config.EnableForceSpell == ibus.PROP_STATE_CHECKED, DictNewList...)
}
engine := &IBusTeniEngine{
Engine: ibus.BaseEngine(conn, objectPath),
preediter: teni.NewEngine(),
engineName: engineName,
config: config,
propList: GetPropListByConfig(config),
exceptMap: &ExceptMap{engineName: engineName},
}
engine.preediter.InputMethod = config.InputMethod
engine.preediter.ForceSpell = config.EnableForceSpell == ibus.PROP_STATE_CHECKED
if config.EnableExcept == ibus.PROP_STATE_CHECKED {
engine.exceptMap.Enable()
}
ibus.PublishEngine(conn, objectPath, engine)
onMouseClick = func() {
engine.Lock()
defer engine.Unlock()
if engine.preediter.RawKeyLen() > 0 {
engine.HidePreeditText()
engine.preediter.Reset()
engine.prevText = engine.prevText[:0]
}
}
return objectPath
}
func (e *IBusTeniEngine) updatePreedit() {
preeditText := string(e.prevText)
preeditLen := uint32(len(e.prevText))
preeditText += e.preediter.GetResultStr()
preeditLen += e.preediter.ResultLen()
e.UpdatePreeditTextWithMode(ibus.NewText(preeditText), preeditLen, true, ibus.IBUS_ENGINE_PREEDIT_COMMIT)
if preeditLen == 0 {
e.preediter.Reset()
}
}
func (e *IBusTeniEngine) commitPreedit(lastKey uint32) {
var commitStr = string(e.prevText)
if lastKey == IBUS_Escape {
commitStr += e.preediter.GetRawStr()
} else if e.config.EnableForceSpell == ibus.PROP_STATE_CHECKED {
commitStr += e.preediter.GetCommitResultStr()
} else {
commitStr += e.preediter.GetResultStr()
}
e.preediter.Reset()
e.prevText = e.prevText[:0]
e.HidePreeditText()
e.CommitText(ibus.NewText(commitStr))
}
func (e *IBusTeniEngine) ProcessKeyEvent(keyVal uint32, keyCode uint32, state uint32) (bool, *dbus.Error) {
e.Lock()
defer e.Unlock()
if e.zeroLocation || e.excepted ||
(state&IBUS_SHIFT_MASK == 0 && (keyVal == IBUS_Shift_L || keyVal == IBUS_Shift_R)) { //Ignore 1 shift key
return false, nil
}
if state&IBUS_RELEASE_MASK != 0 {
//Ignore key-up event
if e.ignoreNextUp || e.preediter.RawKeyLen() > 0 {
return true, nil
} else {
return false, nil
}
} else {
e.ignoreNextUp = false
}
if state&IBUS_CONTROL_MASK != 0 ||
state&IBUS_MOD1_MASK != 0 ||
state&IBUS_IGNORED_MASK != 0 ||
state&IBUS_SUPER_MASK != 0 ||
state&IBUS_HYPER_MASK != 0 ||
state&IBUS_META_MASK != 0 {
if e.preediter.RawKeyLen() == 0 && len(e.prevText) == 0 {
//No thing left, just ignore
return false, nil
} else {
//while typing, do not process control keys
e.ignoreNextUp = true
return true, nil
}
}
if keyVal == IBUS_BackSpace {
if e.preediter.RawKeyLen() > 0 {
e.preediter.Backspace()
e.updatePreedit()
e.ignoreNextUp = true
return true, nil
} else if lenLongText := len(e.prevText); lenLongText > 0 {
backLen := e.preediter.PopStateBack()
e.prevText = e.prevText[:lenLongText-1-backLen]
e.updatePreedit()
e.ignoreNextUp = true
return true, nil
}
}
if keyVal == IBUS_Return || keyVal == IBUS_KP_Enter {
if e.preediter.ResultLen() > 0 || len(e.prevText) > 0 {
e.commitPreedit(0)
//forward lastKey
if !e.capSurrounding {
e.ForwardKeyEvent(keyVal, keyCode, state)
return true, nil
}
}
return false, nil
}
if keyVal == IBUS_Escape {
if e.preediter.RawKeyLen() > 0 {
e.commitPreedit(keyVal)
e.ignoreNextUp = true
return true, nil
}
}
if e.preediter.RawKeyLen() > 2*teni.MaxWordLength {
e.commitPreedit(keyVal)
e.ignoreNextUp = true
return true, nil
}
if (keyVal >= 'a' && keyVal <= 'z') ||
(keyVal >= 'A' && keyVal <= 'Z') ||
(keyVal >= '0' && keyVal <= '9' && e.preediter.ResultLen() > 0) ||
(e.preediter.InputMethod == teni.IMTelex && teni.InChangeCharMap(rune(keyVal))) ||
(e.preediter.InputMethod == teni.IMTelexEx && teni.InChangeCharMapEx(rune(keyVal))) {
if e.preediter.InputMethod == teni.IMTelex && state&IBUS_LOCK_MASK != 0 {
keyVal = teni.SwitchCaplock(keyVal)
}
keyRune := rune(keyVal)
e.preediter.AddKey(keyRune)
e.updatePreedit()
e.ignoreNextUp = true
return true, nil
} else {
if e.preediter.ResultLen() > 0 || len(e.prevText) > 0 {
if e.config.EnableLongText == ibus.PROP_STATE_CHECKED && printableKeyCode[keyCode] {
if e.config.EnableForceSpell == ibus.PROP_STATE_CHECKED {
e.prevText = append(e.prevText, e.preediter.GetCommitResult()...)
} else {
e.prevText = append(e.prevText, e.preediter.GetResult()...)
}
cutLen := e.preediter.PushStateBack()
if cutLen > 0 {
e.CommitText(ibus.NewText(string(e.prevText[:cutLen])))
e.prevText = e.prevText[cutLen:]
}
e.prevText = append(e.prevText, rune(keyVal))
preeditText, preeditLen := string(e.prevText), uint32(len(e.prevText))
e.UpdatePreeditTextWithMode(ibus.NewText(preeditText), preeditLen, true, ibus.IBUS_ENGINE_PREEDIT_COMMIT)
e.ignoreNextUp = true
return true, nil
}
e.commitPreedit(keyVal)
//forward lastKey
if e.capSurrounding {
return false, nil
}
e.ForwardKeyEvent(keyVal, keyCode, state)
return true, nil
} else if e.config.EnableLongText == ibus.PROP_STATE_CHECKED && printableKeyCode[keyCode] && e.preediter.LenStateBack() > 0 {
e.preediter.PushStateBack()
e.prevText = append(e.prevText, rune(keyVal))
preeditText, preeditLen := string(e.prevText), uint32(len(e.prevText))
e.UpdatePreeditTextWithMode(ibus.NewText(preeditText), preeditLen, true, ibus.IBUS_ENGINE_PREEDIT_COMMIT)
e.ignoreNextUp = true
return true, nil
}
//pre-edit empty, just forward key
return false, nil
}
}
func (e *IBusTeniEngine) FocusIn() *dbus.Error {
e.Lock()
defer e.Unlock()
if e.config.EnableExcept == ibus.PROP_STATE_CHECKED {
if e.display == nil {
e.display = x11OpenDisplay()
}
e.excepted = e.exceptMap.Contains(x11GetFocusWindowClass(e.display))
}
e.RegisterProperties(e.propList)
e.preediter.Reset()
e.prevText = e.prevText[:0]
return nil
}
func (e *IBusTeniEngine) FocusOut() *dbus.Error {
e.Lock()
defer e.Unlock()
e.preediter.Reset()
e.prevText = e.prevText[:0]
return nil
}
func (e *IBusTeniEngine) Reset() *dbus.Error {
return nil
}
func (e *IBusTeniEngine) Enable() *dbus.Error {
e.preediter.Reset()
e.prevText = e.prevText[:0]
return nil
}
func (e *IBusTeniEngine) Disable() *dbus.Error {
e.Lock()
defer e.Unlock()
e.preediter.Reset()
e.prevText = e.prevText[:0]
if e.display != nil {
x11CloseDisplay(e.display)
e.display = nil
}
return nil
}
func (e *IBusTeniEngine) SetCapabilities(cap uint32) *dbus.Error {
e.Lock()
defer e.Unlock()
e.capSurrounding = cap&IBUS_CAP_SURROUNDING_TEXT != 0
return nil
}
func (e *IBusTeniEngine) SetCursorLocation(x int32, y int32, w int32, h int32) *dbus.Error {
e.zeroLocation = x == 0 && y == 0 && w == 0 && h == 0
return nil
}
func (e *IBusTeniEngine) SetContentType(purpose uint32, hints uint32) *dbus.Error {
return nil
}
//@method(in_signature="su")
func (e *IBusTeniEngine) PropertyActivate(propName string, propState uint32) *dbus.Error {
debug.FreeOSMemory()
if propName == PropKeyAbout {
exec.Command("xdg-open", HomePage).Start()
return nil
}
oldToneType := e.config.ToneType
if propState == ibus.PROP_STATE_CHECKED &&
(propName == PropKeyMethodTeni ||
propName == PropKeyMethodVni ||
propName == PropKeyMethodTelex ||
propName == PropKeyMethodTelexEx ||
propName == PropKeyToneStd ||
propName == PropKeyToneNew) {
switch propName {
case PropKeyMethodTeni:
e.config.InputMethod = teni.IMTeni
e.preediter.InputMethod = teni.IMTeni
case PropKeyMethodVni:
e.config.InputMethod = teni.IMVni
e.preediter.InputMethod = teni.IMVni
case PropKeyMethodTelex:
e.config.InputMethod = teni.IMTelex
e.preediter.InputMethod = teni.IMTelex
case PropKeyMethodTelexEx:
e.config.InputMethod = teni.IMTelexEx
e.preediter.InputMethod = teni.IMTelexEx
case PropKeyToneStd:
e.config.ToneType = ConfigToneStd
case PropKeyToneNew:
e.config.ToneType = ConfigToneNew
}
SaveConfig(e.config, e.engineName)
e.propList = GetPropListByConfig(e.config)
e.RegisterProperties(e.propList)
if e.config.ToneType != oldToneType {
if e.config.ToneType == ConfigToneStd {
teni.InitWordTrie(e.preediter.ForceSpell, DictStdList...)
} else {
teni.InitWordTrie(e.preediter.ForceSpell, DictNewList...)
}
}
return nil
}
if propName == PropKeyExcept {
e.config.EnableExcept = propState
SaveConfig(e.config, e.engineName)
e.propList = GetPropListByConfig(e.config)
e.RegisterProperties(e.propList)
if propState == ibus.PROP_STATE_CHECKED {
e.exceptMap.Enable()
e.excepted = e.exceptMap.Contains(x11GetFocusWindowClass(e.display))
} else {
e.exceptMap.Disable()
e.excepted = false
}
return nil
}
if propName == PropKeyExceptList {
OpenExceptListFile(e.engineName)
return nil
}
if propName == PropKeyLongText {
e.config.EnableLongText = propState
SaveConfig(e.config, e.engineName)
e.propList = GetPropListByConfig(e.config)
e.RegisterProperties(e.propList)
return nil
}
if propName == PropKeyForceSpell {
e.config.EnableForceSpell = propState
SaveConfig(e.config, e.engineName)
e.propList = GetPropListByConfig(e.config)
e.RegisterProperties(e.propList)
e.preediter.ForceSpell = e.config.EnableForceSpell == ibus.PROP_STATE_CHECKED
if e.config.ToneType == ConfigToneStd {
teni.InitWordTrie(e.preediter.ForceSpell, DictStdList...)
} else {
teni.InitWordTrie(e.preediter.ForceSpell, DictNewList...)
}
return nil
}
return nil
}
================================================
FILE: src/ibus-teni/except.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"io/ioutil"
"log"
"os"
"strings"
"sync"
"time"
)
type ExceptMap struct {
sync.RWMutex
m map[string]bool
enable bool
engineName string
}
func (e *ExceptMap) Contains(ss []string) bool {
e.RLock()
defer e.RUnlock()
if !e.enable || len(e.m) == 0 {
return false
}
for _, s := range ss {
if _, exist := e.m[s]; exist {
return true
}
}
return false
}
func (e *ExceptMap) update(exceptFile string) {
b, err := ioutil.ReadFile(exceptFile)
if err != nil {
log.Println(err)
return
}
e.Lock()
e.m = map[string]bool{}
for _, s := range strings.Split(string(b), "\n") {
s = strings.TrimSpace(s)
if len(s) > 0 && !strings.HasPrefix(s, "#") {
e.m[s] = true
}
}
e.Unlock()
}
func (e *ExceptMap) Enable() {
e.Lock()
e.enable = true
go func() {
cont := true
modTime := time.Now()
efPath := getExceptListFile(e.engineName)
for cont {
if sta, _ := os.Stat(efPath); sta != nil {
if newModeTime := sta.ModTime(); !newModeTime.Equal(modTime) {
modTime = newModeTime
e.update(efPath)
}
}
time.Sleep(time.Second)
e.RLock()
cont = e.enable
e.RUnlock()
}
}()
e.Unlock()
}
func (e *ExceptMap) Disable() {
e.Lock()
e.enable = false
e.m = nil
e.Unlock()
}
================================================
FILE: src/ibus-teni/ibus-const.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
//ibustypes — Generic types for IBus.
// http://ibus.github.io/docs/ibus-1.5/ibus-ibustypes.html
const (
//IBusModifierType
IBUS_SHIFT_MASK = 1 << 0 //Shift is activated.
IBUS_LOCK_MASK = 1 << 1 //Cap Lock is locked.
IBUS_CONTROL_MASK = 1 << 2 //Control key is activated.
IBUS_MOD1_MASK = 1 << 3 //Modifier 1 (Usually Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)) activated.
//IBUS_MOD2_MASK = 1 << 4 //Modifier 2 (Usually Num_Lock (0x4d)) activated.
//IBUS_MOD3_MASK = 1 << 5 //Modifier 3 activated.
//IBUS_MOD4_MASK = 1 << 6 //Modifier 4 (Usually Super_L (0xce), Hyper_L (0xcf)) activated.
//IBUS_MOD5_MASK = 1 << 7 //Modifier 5 (ISO_Level3_Shift (0x5c), Mode_switch (0xcb)) activated.
//IBUS_BUTTON1_MASK = 1 << 8 //Mouse button 1 (left) is activated.
//IBUS_BUTTON2_MASK = 1 << 9 //Mouse button 2 (middle) is activated.
//IBUS_BUTTON3_MASK = 1 << 10 //Mouse button 3 (right) is activated.
//IBUS_BUTTON4_MASK = 1 << 11 //Mouse button 4 (scroll up) is activated.
//IBUS_BUTTON5_MASK = 1 << 12 //Mouse button 5 (scroll down) is activated.
//IBUS_HANDLED_MASK = 1 << 24 //Handled mask indicates the event has been handled by ibus.
IBUS_FORWARD_MASK = 1 << 25 //Forward mask indicates the event has been forward from ibus.
IBUS_IGNORED_MASK = IBUS_FORWARD_MASK //It is an alias of IBUS_FORWARD_MASK.
IBUS_SUPER_MASK = 1 << 26 //Super (Usually Win) key is activated.
IBUS_HYPER_MASK = 1 << 27 //Hyper key is activated.
IBUS_META_MASK = 1 << 28 //Meta key is activated.
IBUS_RELEASE_MASK = 1 << 30 //Key is released.
//IBUS_MODIFIER_MASK = 0x5f001fff //Modifier mask for the all the masks above.
)
const (
//IBusCapability
IBUS_CAP_PREEDIT_TEXT = 1 << 0 //UI is capable to show pre-edit text.
//IBUS_CAP_AUXILIARY_TEXT = 1 << 1 //UI is capable to show auxiliary text.
//IBUS_CAP_LOOKUP_TABLE = 1 << 2 //UI is capable to show the lookup table.
//IBUS_CAP_FOCUS = 1 << 3 //UI is capable to get focus.
//IBUS_CAP_PROPERTY = 1 << 4 //UI is capable to have property.
IBUS_CAP_SURROUNDING_TEXT = 1 << 5 //Client can provide surround text, or IME can handle surround text.
)
// ibuskeysyms-compat
// http://ibus.github.io/docs/ibus-1.5/ibus-ibuskeysyms-compat.htm
const (
IBUS_BackSpace = 0xff08
IBUS_Return = 0xff0d
IBUS_Escape = 0xff1b
IBUS_KP_Space = 0xff80
IBUS_KP_Enter = 0xff8d
IBUS_KP_Multiply = 0xffaa
IBUS_KP_Divide = 0xffaf
IBUS_KP_0 = 0xffb0
IBUS_KP_9 = 0xffb9
IBUS_Shift_L = 0xffe1
IBUS_Shift_R = 0xffe2
IBUS_space = 0x020
IBUS_0 = 0x030
)
================================================
FILE: src/ibus-teni/main.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"github.com/godbus/dbus"
"github.com/sarim/goibus/ibus"
"log"
"os"
)
const (
ComponentName = "org.freedesktop.IBus.Teni"
EngineName = "Teni"
HomePage = "https://github.com/teni-ime/ibus-teni"
DictVietnameseCm = "dict/vietnamese.cm.dict"
DictVietnameseSp = "dict/vietnamese.sp.dict"
DictVietnameseStd = "dict/vietnamese.std.dict"
DictVietnameseNew = "dict/vietnamese.new.dict"
)
func main() {
if isIBusDaemonChild() {
if len(os.Args) == 3 && os.Args[1] == "cd" {
os.Chdir(os.Args[2])
}
bus := ibus.NewBus()
bus.RequestName(ComponentName, 0)
conn := bus.GetDbusConn()
ibus.NewFactory(conn, IBusTeniEngineCreator)
select {}
} else {
log.Println("Running debug mode")
runMode = " (debug)"
bus := ibus.NewBus()
bus.RegisterComponent(makeDebugComponent())
conn := bus.GetDbusConn()
ibus.NewFactory(conn, IBusTeniEngineCreator)
log.Println("Setting Global Engine to", DebugEngineName)
bus.CallMethod("SetGlobalEngine", 0, DebugEngineName)
c := make(chan *dbus.Signal, 10)
conn.Signal(c)
select {
case <-c:
}
}
}
================================================
FILE: src/ibus-teni/mice.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"os"
)
//sudo usermod -a -G input $USER
const (
DevInputMice = "/dev/input/mice"
)
var onMouseClick func()
func init() {
go func() {
down := false
miceDev, err := os.OpenFile(DevInputMice, os.O_RDONLY, 0)
if err == nil {
data := make([]byte, 3)
for {
n, err := miceDev.Read(data)
if err == nil && n == 3 && data[0]&0x7 != 0 {
if data[1] == 0 && data[2] == 0 {
if !down {
if onMouseClick != nil {
go onMouseClick()
}
down = true
}
}
} else if down {
down = false
}
}
}
}()
}
================================================
FILE: src/ibus-teni/proc.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"fmt"
"os"
"strings"
)
const IBusDaemon = "ibus-daemon"
func getProcessName(pid int) string {
pStatusFile := fmt.Sprintf("/proc/%d/status", pid)
f, e := os.OpenFile(pStatusFile, os.O_RDONLY, os.ModePerm)
if e == nil {
defer f.Close()
buf := make([]byte, len(IBusDaemon)*2)
n, e := f.Read(buf)
if e == nil {
s := string(buf[:n])
lines := strings.Split(s, "\n")
firstLineParts := strings.Split(lines[0], "\t")
if len(firstLineParts) >= 2 {
return firstLineParts[1]
}
}
}
return ""
}
func isIBusDaemonChild() bool {
ppid := os.Getppid()
return getProcessName(ppid) == IBusDaemon
}
================================================
FILE: src/ibus-teni/prop.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"github.com/godbus/dbus"
"github.com/sarim/goibus/ibus"
"teni"
)
const (
PropKeyAbout = "about"
PropKeyMethodTeni = "method_teni"
PropKeyMethodVni = "method_vni"
PropKeyMethodTelex = "method_telex"
PropKeyMethodTelexEx = "method_telex_ex"
PropKeyToneStd = "tone_std"
PropKeyToneNew = "tone_new"
PropKeyExcept = "except"
PropKeyExceptList = "except_list"
PropKeyLongText = "long_text"
PropKeyForceSpell = "force_spell"
)
var runMode = ""
func GetPropListByConfig(c *Config) *ibus.PropList {
teniChecked := ibus.PROP_STATE_UNCHECKED
vniChecked := ibus.PROP_STATE_UNCHECKED
telexChecked := ibus.PROP_STATE_UNCHECKED
telexExChecked := ibus.PROP_STATE_UNCHECKED
toneStdChecked := ibus.PROP_STATE_UNCHECKED
toneNewChecked := ibus.PROP_STATE_UNCHECKED
switch c.InputMethod {
case teni.IMTeni:
teniChecked = ibus.PROP_STATE_CHECKED
case teni.IMVni:
vniChecked = ibus.PROP_STATE_CHECKED
case teni.IMTelex:
telexChecked = ibus.PROP_STATE_CHECKED
case teni.IMTelexEx:
telexExChecked = ibus.PROP_STATE_CHECKED
}
switch c.ToneType {
case ConfigToneStd:
toneStdChecked = ibus.PROP_STATE_CHECKED
case ConfigToneNew:
toneNewChecked = ibus.PROP_STATE_CHECKED
}
return ibus.NewPropList(
&ibus.Property{
Name: "IBusProperty",
Key: PropKeyAbout,
Type: ibus.PROP_TYPE_NORMAL,
Label: dbus.MakeVariant(ibus.NewText("Bộ gõ " + EngineName + " " + Version + runMode)),
Tooltip: dbus.MakeVariant(ibus.NewText("Mở trang chủ")),
Sensitive: true,
Visible: true,
Icon: "gtk-about",
Symbol: dbus.MakeVariant(ibus.NewText("B")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: "-",
Type: ibus.PROP_TYPE_SEPARATOR,
Label: dbus.MakeVariant(ibus.NewText("")),
Tooltip: dbus.MakeVariant(ibus.NewText("")),
Sensitive: true,
Visible: true,
Symbol: dbus.MakeVariant(ibus.NewText("")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: PropKeyMethodTeni,
Type: ibus.PROP_TYPE_RADIO,
Label: dbus.MakeVariant(ibus.NewText("Kiểu gõ Teni")),
Tooltip: dbus.MakeVariant(ibus.NewText("Kết hợp Telex và Vni")),
Sensitive: true,
Visible: true,
State: teniChecked,
Symbol: dbus.MakeVariant(ibus.NewText("T")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: PropKeyMethodVni,
Type: ibus.PROP_TYPE_RADIO,
Label: dbus.MakeVariant(ibus.NewText("Kiểu gõ Vni")),
Tooltip: dbus.MakeVariant(ibus.NewText("Chỉ kiểu gõ Vni")),
Sensitive: true,
Visible: true,
State: vniChecked,
Symbol: dbus.MakeVariant(ibus.NewText("V")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: PropKeyMethodTelex,
Type: ibus.PROP_TYPE_RADIO,
Label: dbus.MakeVariant(ibus.NewText("Kiểu gõ Telex")),
Tooltip: dbus.MakeVariant(ibus.NewText("Kiểu gõ Telex không dùng []")),
Sensitive: true,
Visible: true,
State: telexChecked,
Symbol: dbus.MakeVariant(ibus.NewText("X")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: PropKeyMethodTelexEx,
Type: ibus.PROP_TYPE_RADIO,
Label: dbus.MakeVariant(ibus.NewText("Kiểu gõ [Telex]")),
Tooltip: dbus.MakeVariant(ibus.NewText("Kiểu gõ Telex có dùng []")),
Sensitive: true,
Visible: true,
State: telexExChecked,
Symbol: dbus.MakeVariant(ibus.NewText("[")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: "-",
Type: ibus.PROP_TYPE_SEPARATOR,
Label: dbus.MakeVariant(ibus.NewText("")),
Tooltip: dbus.MakeVariant(ibus.NewText("")),
Sensitive: true,
Visible: true,
Symbol: dbus.MakeVariant(ibus.NewText("")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: PropKeyToneStd,
Type: ibus.PROP_TYPE_RADIO,
Label: dbus.MakeVariant(ibus.NewText("Dấu thanh chuẩn")),
Tooltip: dbus.MakeVariant(ibus.NewText("Cân đối, nên dùng")),
Sensitive: true,
Visible: true,
State: toneStdChecked,
Symbol: dbus.MakeVariant(ibus.NewText("C")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: PropKeyToneNew,
Type: ibus.PROP_TYPE_RADIO,
Label: dbus.MakeVariant(ibus.NewText("Dấu thanh kiểu mới")),
Tooltip: dbus.MakeVariant(ibus.NewText("Lệch bên phải, không nên dùng")),
Sensitive: true,
Visible: true,
State: toneNewChecked,
Symbol: dbus.MakeVariant(ibus.NewText("M")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: "-",
Type: ibus.PROP_TYPE_SEPARATOR,
Label: dbus.MakeVariant(ibus.NewText("")),
Tooltip: dbus.MakeVariant(ibus.NewText("")),
Sensitive: true,
Visible: true,
Symbol: dbus.MakeVariant(ibus.NewText("")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
}, &ibus.Property{
Name: "IBusProperty",
Key: PropKeyExcept,
Type: ibus.PROP_TYPE_TOGGLE,
Label: dbus.MakeVariant(ibus.NewText("Loại trừ ứng dụng")),
Tooltip: dbus.MakeVariant(ibus.NewText("Loại trừ các ứng dụng không cần gõ tiếng Việt")),
Sensitive: true,
Visible: true,
State: c.EnableExcept,
Symbol: dbus.MakeVariant(ibus.NewText("L")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
}, &ibus.Property{
Name: "IBusProperty",
Key: PropKeyExceptList,
Type: ibus.PROP_TYPE_NORMAL,
Label: dbus.MakeVariant(ibus.NewText("Danh sách loại trừ")),
Tooltip: dbus.MakeVariant(ibus.NewText("Mở file danh sách các ứng dụng không cần gõ tiếng Việt")),
Sensitive: true,
Visible: true,
Symbol: dbus.MakeVariant(ibus.NewText("D")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
&ibus.Property{
Name: "IBusProperty",
Key: "-",
Type: ibus.PROP_TYPE_SEPARATOR,
Label: dbus.MakeVariant(ibus.NewText("")),
Tooltip: dbus.MakeVariant(ibus.NewText("")),
Sensitive: true,
Visible: true,
Symbol: dbus.MakeVariant(ibus.NewText("")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
}, &ibus.Property{
Name: "IBusProperty",
Key: PropKeyLongText,
Type: ibus.PROP_TYPE_TOGGLE,
Label: dbus.MakeVariant(ibus.NewText("Giữ nhiều chữ")),
Tooltip: dbus.MakeVariant(ibus.NewText("Giữ nhiều chữ khi đang gõ, cho sửa dấu các từ đã gõ xong")),
Sensitive: true,
Visible: true,
State: c.EnableLongText,
Symbol: dbus.MakeVariant(ibus.NewText("G")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
}, &ibus.Property{
Name: "IBusProperty",
Key: PropKeyForceSpell,
Type: ibus.PROP_TYPE_TOGGLE,
Label: dbus.MakeVariant(ibus.NewText("Đúng chính tả")),
Tooltip: dbus.MakeVariant(ibus.NewText("Sẽ khôi phục phím với những từ không có trong từ điển tiếng Việt")),
Sensitive: true,
Visible: true,
State: c.EnableForceSpell,
Symbol: dbus.MakeVariant(ibus.NewText("G")),
SubProps: dbus.MakeVariant(*ibus.NewPropList()),
},
)
}
================================================
FILE: src/ibus-teni/runes.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
type Runes struct {
buf []rune
}
func (r *Runes) Len() int {
return len(r.buf)
}
func (r *Runes) Append(c ...rune) {
r.buf = append(r.buf, c...)
}
func (r *Runes) AppendRunes(rs Runes) {
r.buf = append(r.buf, rs.buf...)
}
func (r *Runes) Clear() {
r.buf = r.buf[:0]
}
func (r *Runes) At(index int) rune {
if index < len(r.buf) {
return r.buf[index]
}
return 0
}
func (r *Runes) First() rune {
if len(r.buf) > 0 {
return r.buf[0]
}
return 0
}
func (r *Runes) Last() rune {
if len(r.buf) > 0 {
return r.buf[len(r.buf)-1]
}
return 0
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/.travis.yml
================================================
dist: precise
language: go
go_import_path: github.com/godbus/dbus
sudo: true
go:
- 1.6.3
- 1.7.3
- tip
env:
global:
matrix:
- TARGET=amd64
- TARGET=arm64
- TARGET=arm
- TARGET=386
- TARGET=ppc64le
matrix:
fast_finish: true
allow_failures:
- go: tip
exclude:
- go: tip
env: TARGET=arm
- go: tip
env: TARGET=arm64
- go: tip
env: TARGET=386
- go: tip
env: TARGET=ppc64le
addons:
apt:
packages:
- dbus
- dbus-x11
before_install:
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/CONTRIBUTING.md
================================================
# How to Contribute
## Getting Started
- Fork the repository on GitHub
- Read the [README](README.markdown) for build and test instructions
- Play with the project, submit bugs, submit patches!
## Contribution Flow
This is a rough outline of what a contributor's workflow looks like:
- Create a topic branch from where you want to base your work (usually master).
- Make commits of logical units.
- Make sure your commit messages are in the proper format (see below).
- Push your changes to a topic branch in your fork of the repository.
- Make sure the tests pass, and add any new tests as appropriate.
- Submit a pull request to the original repository.
Thanks for your contributions!
### Format of the Commit Message
We follow a rough convention for commit messages that is designed to answer two
questions: what changed and why. The subject line should feature the what and
the body of the commit should describe the why.
```
scripts: add the test-cluster command
this uses tmux to setup a test cluster that you can easily kill and
start for debugging.
Fixes #38
```
The format can be described more formally as follows:
```
:
```
The first line is the subject and should be no longer than 70 characters, the
second line is always blank, and other lines should be wrapped at 80 characters.
This allows the message to be easier to read on GitHub as well as in various
git tools.
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/LICENSE
================================================
Copyright (c) 2013, Georg Reinke (), Google
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/MAINTAINERS
================================================
Brandon Philips (@philips)
Brian Waldon (@bcwaldon)
John Southworth (@jsouthworth)
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/README.markdown
================================================
[](https://travis-ci.org/godbus/dbus)
dbus
----
dbus is a simple library that implements native Go client bindings for the
D-Bus message bus system.
### Features
* Complete native implementation of the D-Bus message protocol
* Go-like API (channels for signals / asynchronous method calls, Goroutine-safe connections)
* Subpackages that help with the introspection / property interfaces
### Installation
This packages requires Go 1.1. If you installed it and set up your GOPATH, just run:
```
go get github.com/godbus/dbus
```
If you want to use the subpackages, you can install them the same way.
### Usage
The complete package documentation and some simple examples are available at
[godoc.org](http://godoc.org/github.com/godbus/dbus). Also, the
[_examples](https://github.com/godbus/dbus/tree/master/_examples) directory
gives a short overview over the basic usage.
#### Projects using godbus
- [notify](https://github.com/esiqveland/notify) provides desktop notifications over dbus into a library.
- [go-bluetooth](https://github.com/muka/go-bluetooth) provides a bluetooth client over bluez dbus API.
Please note that the API is considered unstable for now and may change without
further notice.
### License
go.dbus is available under the Simplified BSD License; see LICENSE for the full
text.
Nearly all of the credit for this library goes to github.com/guelfey/go.dbus.
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/auth.go
================================================
package dbus
import (
"bufio"
"bytes"
"errors"
"io"
"os"
"strconv"
)
// AuthStatus represents the Status of an authentication mechanism.
type AuthStatus byte
const (
// AuthOk signals that authentication is finished; the next command
// from the server should be an OK.
AuthOk AuthStatus = iota
// AuthContinue signals that additional data is needed; the next command
// from the server should be a DATA.
AuthContinue
// AuthError signals an error; the server sent invalid data or some
// other unexpected thing happened and the current authentication
// process should be aborted.
AuthError
)
type authState byte
const (
waitingForData authState = iota
waitingForOk
waitingForReject
)
// Auth defines the behaviour of an authentication mechanism.
type Auth interface {
// Return the name of the mechnism, the argument to the first AUTH command
// and the next status.
FirstData() (name, resp []byte, status AuthStatus)
// Process the given DATA command, and return the argument to the DATA
// command and the next status. If len(resp) == 0, no DATA command is sent.
HandleData(data []byte) (resp []byte, status AuthStatus)
}
// Auth authenticates the connection, trying the given list of authentication
// mechanisms (in that order). If nil is passed, the EXTERNAL and
// DBUS_COOKIE_SHA1 mechanisms are tried for the current user. For private
// connections, this method must be called before sending any messages to the
// bus. Auth must not be called on shared connections.
func (conn *Conn) Auth(methods []Auth) error {
if methods == nil {
uid := strconv.Itoa(os.Getuid())
methods = []Auth{AuthExternal(uid), AuthCookieSha1(uid, getHomeDir())}
}
in := bufio.NewReader(conn.transport)
err := conn.transport.SendNullByte()
if err != nil {
return err
}
err = authWriteLine(conn.transport, []byte("AUTH"))
if err != nil {
return err
}
s, err := authReadLine(in)
if err != nil {
return err
}
if len(s) < 2 || !bytes.Equal(s[0], []byte("REJECTED")) {
return errors.New("dbus: authentication protocol error")
}
s = s[1:]
for _, v := range s {
for _, m := range methods {
if name, data, status := m.FirstData(); bytes.Equal(v, name) {
var ok bool
err = authWriteLine(conn.transport, []byte("AUTH"), []byte(v), data)
if err != nil {
return err
}
switch status {
case AuthOk:
err, ok = conn.tryAuth(m, waitingForOk, in)
case AuthContinue:
err, ok = conn.tryAuth(m, waitingForData, in)
default:
panic("dbus: invalid authentication status")
}
if err != nil {
return err
}
if ok {
if conn.transport.SupportsUnixFDs() {
err = authWriteLine(conn, []byte("NEGOTIATE_UNIX_FD"))
if err != nil {
return err
}
line, err := authReadLine(in)
if err != nil {
return err
}
switch {
case bytes.Equal(line[0], []byte("AGREE_UNIX_FD")):
conn.EnableUnixFDs()
conn.unixFD = true
case bytes.Equal(line[0], []byte("ERROR")):
default:
return errors.New("dbus: authentication protocol error")
}
}
err = authWriteLine(conn.transport, []byte("BEGIN"))
if err != nil {
return err
}
go conn.inWorker()
go conn.outWorker()
return nil
}
}
}
}
return errors.New("dbus: authentication failed")
}
// tryAuth tries to authenticate with m as the mechanism, using state as the
// initial authState and in for reading input. It returns (nil, true) on
// success, (nil, false) on a REJECTED and (someErr, false) if some other
// error occured.
func (conn *Conn) tryAuth(m Auth, state authState, in *bufio.Reader) (error, bool) {
for {
s, err := authReadLine(in)
if err != nil {
return err, false
}
switch {
case state == waitingForData && string(s[0]) == "DATA":
if len(s) != 2 {
err = authWriteLine(conn.transport, []byte("ERROR"))
if err != nil {
return err, false
}
continue
}
data, status := m.HandleData(s[1])
switch status {
case AuthOk, AuthContinue:
if len(data) != 0 {
err = authWriteLine(conn.transport, []byte("DATA"), data)
if err != nil {
return err, false
}
}
if status == AuthOk {
state = waitingForOk
}
case AuthError:
err = authWriteLine(conn.transport, []byte("ERROR"))
if err != nil {
return err, false
}
}
case state == waitingForData && string(s[0]) == "REJECTED":
return nil, false
case state == waitingForData && string(s[0]) == "ERROR":
err = authWriteLine(conn.transport, []byte("CANCEL"))
if err != nil {
return err, false
}
state = waitingForReject
case state == waitingForData && string(s[0]) == "OK":
if len(s) != 2 {
err = authWriteLine(conn.transport, []byte("CANCEL"))
if err != nil {
return err, false
}
state = waitingForReject
}
conn.uuid = string(s[1])
return nil, true
case state == waitingForData:
err = authWriteLine(conn.transport, []byte("ERROR"))
if err != nil {
return err, false
}
case state == waitingForOk && string(s[0]) == "OK":
if len(s) != 2 {
err = authWriteLine(conn.transport, []byte("CANCEL"))
if err != nil {
return err, false
}
state = waitingForReject
}
conn.uuid = string(s[1])
return nil, true
case state == waitingForOk && string(s[0]) == "REJECTED":
return nil, false
case state == waitingForOk && (string(s[0]) == "DATA" ||
string(s[0]) == "ERROR"):
err = authWriteLine(conn.transport, []byte("CANCEL"))
if err != nil {
return err, false
}
state = waitingForReject
case state == waitingForOk:
err = authWriteLine(conn.transport, []byte("ERROR"))
if err != nil {
return err, false
}
case state == waitingForReject && string(s[0]) == "REJECTED":
return nil, false
case state == waitingForReject:
return errors.New("dbus: authentication protocol error"), false
default:
panic("dbus: invalid auth state")
}
}
}
// authReadLine reads a line and separates it into its fields.
func authReadLine(in *bufio.Reader) ([][]byte, error) {
data, err := in.ReadBytes('\n')
if err != nil {
return nil, err
}
data = bytes.TrimSuffix(data, []byte("\r\n"))
return bytes.Split(data, []byte{' '}), nil
}
// authWriteLine writes the given line in the authentication protocol format
// (elements of data separated by a " " and terminated by "\r\n").
func authWriteLine(out io.Writer, data ...[]byte) error {
buf := make([]byte, 0)
for i, v := range data {
buf = append(buf, v...)
if i != len(data)-1 {
buf = append(buf, ' ')
}
}
buf = append(buf, '\r')
buf = append(buf, '\n')
n, err := out.Write(buf)
if err != nil {
return err
}
if n != len(buf) {
return io.ErrUnexpectedEOF
}
return nil
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/auth_external.go
================================================
package dbus
import (
"encoding/hex"
)
// AuthExternal returns an Auth that authenticates as the given user with the
// EXTERNAL mechanism.
func AuthExternal(user string) Auth {
return authExternal{user}
}
// AuthExternal implements the EXTERNAL authentication mechanism.
type authExternal struct {
user string
}
func (a authExternal) FirstData() ([]byte, []byte, AuthStatus) {
b := make([]byte, 2*len(a.user))
hex.Encode(b, []byte(a.user))
return []byte("EXTERNAL"), b, AuthOk
}
func (a authExternal) HandleData(b []byte) ([]byte, AuthStatus) {
return nil, AuthError
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/auth_sha1.go
================================================
package dbus
import (
"bufio"
"bytes"
"crypto/rand"
"crypto/sha1"
"encoding/hex"
"os"
)
// AuthCookieSha1 returns an Auth that authenticates as the given user with the
// DBUS_COOKIE_SHA1 mechanism. The home parameter should specify the home
// directory of the user.
func AuthCookieSha1(user, home string) Auth {
return authCookieSha1{user, home}
}
type authCookieSha1 struct {
user, home string
}
func (a authCookieSha1) FirstData() ([]byte, []byte, AuthStatus) {
b := make([]byte, 2*len(a.user))
hex.Encode(b, []byte(a.user))
return []byte("DBUS_COOKIE_SHA1"), b, AuthContinue
}
func (a authCookieSha1) HandleData(data []byte) ([]byte, AuthStatus) {
challenge := make([]byte, len(data)/2)
_, err := hex.Decode(challenge, data)
if err != nil {
return nil, AuthError
}
b := bytes.Split(challenge, []byte{' '})
if len(b) != 3 {
return nil, AuthError
}
context := b[0]
id := b[1]
svchallenge := b[2]
cookie := a.getCookie(context, id)
if cookie == nil {
return nil, AuthError
}
clchallenge := a.generateChallenge()
if clchallenge == nil {
return nil, AuthError
}
hash := sha1.New()
hash.Write(bytes.Join([][]byte{svchallenge, clchallenge, cookie}, []byte{':'}))
hexhash := make([]byte, 2*hash.Size())
hex.Encode(hexhash, hash.Sum(nil))
data = append(clchallenge, ' ')
data = append(data, hexhash...)
resp := make([]byte, 2*len(data))
hex.Encode(resp, data)
return resp, AuthOk
}
// getCookie searches for the cookie identified by id in context and returns
// the cookie content or nil. (Since HandleData can't return a specific error,
// but only whether an error occured, this function also doesn't bother to
// return an error.)
func (a authCookieSha1) getCookie(context, id []byte) []byte {
file, err := os.Open(a.home + "/.dbus-keyrings/" + string(context))
if err != nil {
return nil
}
defer file.Close()
rd := bufio.NewReader(file)
for {
line, err := rd.ReadBytes('\n')
if err != nil {
return nil
}
line = line[:len(line)-1]
b := bytes.Split(line, []byte{' '})
if len(b) != 3 {
return nil
}
if bytes.Equal(b[0], id) {
return b[2]
}
}
}
// generateChallenge returns a random, hex-encoded challenge, or nil on error
// (see above).
func (a authCookieSha1) generateChallenge() []byte {
b := make([]byte, 16)
n, err := rand.Read(b)
if err != nil {
return nil
}
if n != 16 {
return nil
}
enc := make([]byte, 32)
hex.Encode(enc, b)
return enc
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/call.go
================================================
package dbus
import (
"errors"
)
// Call represents a pending or completed method call.
type Call struct {
Destination string
Path ObjectPath
Method string
Args []interface{}
// Strobes when the call is complete.
Done chan *Call
// After completion, the error status. If this is non-nil, it may be an
// error message from the peer (with Error as its type) or some other error.
Err error
// Holds the response once the call is done.
Body []interface{}
}
var errSignature = errors.New("dbus: mismatched signature")
// Store stores the body of the reply into the provided pointers. It returns
// an error if the signatures of the body and retvalues don't match, or if
// the error status is not nil.
func (c *Call) Store(retvalues ...interface{}) error {
if c.Err != nil {
return c.Err
}
return Store(c.Body, retvalues...)
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/conn.go
================================================
package dbus
import (
"errors"
"io"
"os"
"reflect"
"strings"
"sync"
)
var (
systemBus *Conn
systemBusLck sync.Mutex
sessionBus *Conn
sessionBusLck sync.Mutex
sessionEnvLck sync.Mutex
)
// ErrClosed is the error returned by calls on a closed connection.
var ErrClosed = errors.New("dbus: connection closed by user")
// Conn represents a connection to a message bus (usually, the system or
// session bus).
//
// Connections are either shared or private. Shared connections
// are shared between calls to the functions that return them. As a result,
// the methods Close, Auth and Hello must not be called on them.
//
// Multiple goroutines may invoke methods on a connection simultaneously.
type Conn struct {
transport
busObj BusObject
unixFD bool
uuid string
names []string
namesLck sync.RWMutex
serialLck sync.Mutex
nextSerial uint32
serialUsed map[uint32]bool
calls map[uint32]*Call
callsLck sync.RWMutex
handler Handler
out chan *Message
closed bool
outLck sync.RWMutex
signalHandler SignalHandler
eavesdropped chan<- *Message
eavesdroppedLck sync.Mutex
}
// SessionBus returns a shared connection to the session bus, connecting to it
// if not already done.
func SessionBus() (conn *Conn, err error) {
sessionBusLck.Lock()
defer sessionBusLck.Unlock()
if sessionBus != nil {
return sessionBus, nil
}
defer func() {
if conn != nil {
sessionBus = conn
}
}()
conn, err = SessionBusPrivate()
if err != nil {
return
}
if err = conn.Auth(nil); err != nil {
conn.Close()
conn = nil
return
}
if err = conn.Hello(); err != nil {
conn.Close()
conn = nil
}
return
}
func getSessionBusAddress() (string, error) {
sessionEnvLck.Lock()
defer sessionEnvLck.Unlock()
address := os.Getenv("DBUS_SESSION_BUS_ADDRESS")
if address != "" && address != "autolaunch:" {
return address, nil
}
return getSessionBusPlatformAddress()
}
// SessionBusPrivate returns a new private connection to the session bus.
func SessionBusPrivate() (*Conn, error) {
address, err := getSessionBusAddress()
if err != nil {
return nil, err
}
return Dial(address)
}
// SessionBusPrivate returns a new private connection to the session bus.
func SessionBusPrivateHandler(handler Handler, signalHandler SignalHandler) (*Conn, error) {
address, err := getSessionBusAddress()
if err != nil {
return nil, err
}
return DialHandler(address, handler, signalHandler)
}
// SystemBus returns a shared connection to the system bus, connecting to it if
// not already done.
func SystemBus() (conn *Conn, err error) {
systemBusLck.Lock()
defer systemBusLck.Unlock()
if systemBus != nil {
return systemBus, nil
}
defer func() {
if conn != nil {
systemBus = conn
}
}()
conn, err = SystemBusPrivate()
if err != nil {
return
}
if err = conn.Auth(nil); err != nil {
conn.Close()
conn = nil
return
}
if err = conn.Hello(); err != nil {
conn.Close()
conn = nil
}
return
}
// SystemBusPrivate returns a new private connection to the system bus.
func SystemBusPrivate() (*Conn, error) {
return Dial(getSystemBusPlatformAddress())
}
// SystemBusPrivateHandler returns a new private connection to the system bus, using the provided handlers.
func SystemBusPrivateHandler(handler Handler, signalHandler SignalHandler) (*Conn, error) {
return DialHandler(getSystemBusPlatformAddress(), handler, signalHandler)
}
// Dial establishes a new private connection to the message bus specified by address.
func Dial(address string) (*Conn, error) {
tr, err := getTransport(address)
if err != nil {
return nil, err
}
return newConn(tr, NewDefaultHandler(), NewDefaultSignalHandler())
}
// DialHandler establishes a new private connection to the message bus specified by address, using the supplied handlers.
func DialHandler(address string, handler Handler, signalHandler SignalHandler) (*Conn, error) {
tr, err := getTransport(address)
if err != nil {
return nil, err
}
return newConn(tr, handler, signalHandler)
}
// NewConn creates a new private *Conn from an already established connection.
func NewConn(conn io.ReadWriteCloser) (*Conn, error) {
return NewConnHandler(conn, NewDefaultHandler(), NewDefaultSignalHandler())
}
// NewConnHandler creates a new private *Conn from an already established connection, using the supplied handlers.
func NewConnHandler(conn io.ReadWriteCloser, handler Handler, signalHandler SignalHandler) (*Conn, error) {
return newConn(genericTransport{conn}, handler, signalHandler)
}
// newConn creates a new *Conn from a transport.
func newConn(tr transport, handler Handler, signalHandler SignalHandler) (*Conn, error) {
conn := new(Conn)
conn.transport = tr
conn.calls = make(map[uint32]*Call)
conn.out = make(chan *Message, 10)
conn.handler = handler
conn.signalHandler = signalHandler
conn.nextSerial = 1
conn.serialUsed = map[uint32]bool{0: true}
conn.busObj = conn.Object("org.freedesktop.DBus", "/org/freedesktop/DBus")
return conn, nil
}
// BusObject returns the object owned by the bus daemon which handles
// administrative requests.
func (conn *Conn) BusObject() BusObject {
return conn.busObj
}
// Close closes the connection. Any blocked operations will return with errors
// and the channels passed to Eavesdrop and Signal are closed. This method must
// not be called on shared connections.
func (conn *Conn) Close() error {
conn.outLck.Lock()
if conn.closed {
// inWorker calls Close on read error, the read error may
// be caused by another caller calling Close to shutdown the
// dbus connection, a double-close scenario we prevent here.
conn.outLck.Unlock()
return nil
}
close(conn.out)
conn.closed = true
conn.outLck.Unlock()
if term, ok := conn.signalHandler.(Terminator); ok {
term.Terminate()
}
if term, ok := conn.handler.(Terminator); ok {
term.Terminate()
}
conn.eavesdroppedLck.Lock()
if conn.eavesdropped != nil {
close(conn.eavesdropped)
}
conn.eavesdroppedLck.Unlock()
return conn.transport.Close()
}
// Eavesdrop causes conn to send all incoming messages to the given channel
// without further processing. Method replies, errors and signals will not be
// sent to the appropiate channels and method calls will not be handled. If nil
// is passed, the normal behaviour is restored.
//
// The caller has to make sure that ch is sufficiently buffered;
// if a message arrives when a write to ch is not possible, the message is
// discarded.
func (conn *Conn) Eavesdrop(ch chan<- *Message) {
conn.eavesdroppedLck.Lock()
conn.eavesdropped = ch
conn.eavesdroppedLck.Unlock()
}
// getSerial returns an unused serial.
func (conn *Conn) getSerial() uint32 {
conn.serialLck.Lock()
defer conn.serialLck.Unlock()
n := conn.nextSerial
for conn.serialUsed[n] {
n++
}
conn.serialUsed[n] = true
conn.nextSerial = n + 1
return n
}
// Hello sends the initial org.freedesktop.DBus.Hello call. This method must be
// called after authentication, but before sending any other messages to the
// bus. Hello must not be called for shared connections.
func (conn *Conn) Hello() error {
var s string
err := conn.busObj.Call("org.freedesktop.DBus.Hello", 0).Store(&s)
if err != nil {
return err
}
conn.namesLck.Lock()
conn.names = make([]string, 1)
conn.names[0] = s
conn.namesLck.Unlock()
return nil
}
// inWorker runs in an own goroutine, reading incoming messages from the
// transport and dispatching them appropiately.
func (conn *Conn) inWorker() {
for {
msg, err := conn.ReadMessage()
if err == nil {
conn.eavesdroppedLck.Lock()
if conn.eavesdropped != nil {
select {
case conn.eavesdropped <- msg:
default:
}
conn.eavesdroppedLck.Unlock()
continue
}
conn.eavesdroppedLck.Unlock()
dest, _ := msg.Headers[FieldDestination].value.(string)
found := false
if dest == "" {
found = true
} else {
conn.namesLck.RLock()
if len(conn.names) == 0 {
found = true
}
for _, v := range conn.names {
if dest == v {
found = true
break
}
}
conn.namesLck.RUnlock()
}
if !found {
// Eavesdropped a message, but no channel for it is registered.
// Ignore it.
continue
}
switch msg.Type {
case TypeMethodReply, TypeError:
serial := msg.Headers[FieldReplySerial].value.(uint32)
conn.callsLck.Lock()
if c, ok := conn.calls[serial]; ok {
if msg.Type == TypeError {
name, _ := msg.Headers[FieldErrorName].value.(string)
c.Err = Error{name, msg.Body}
} else {
c.Body = msg.Body
}
c.Done <- c
conn.serialLck.Lock()
delete(conn.serialUsed, serial)
conn.serialLck.Unlock()
delete(conn.calls, serial)
}
conn.callsLck.Unlock()
case TypeSignal:
iface := msg.Headers[FieldInterface].value.(string)
member := msg.Headers[FieldMember].value.(string)
// as per http://dbus.freedesktop.org/doc/dbus-specification.html ,
// sender is optional for signals.
sender, _ := msg.Headers[FieldSender].value.(string)
if iface == "org.freedesktop.DBus" && sender == "org.freedesktop.DBus" {
if member == "NameLost" {
// If we lost the name on the bus, remove it from our
// tracking list.
name, ok := msg.Body[0].(string)
if !ok {
panic("Unable to read the lost name")
}
conn.namesLck.Lock()
for i, v := range conn.names {
if v == name {
conn.names = append(conn.names[:i],
conn.names[i+1:]...)
}
}
conn.namesLck.Unlock()
} else if member == "NameAcquired" {
// If we acquired the name on the bus, add it to our
// tracking list.
name, ok := msg.Body[0].(string)
if !ok {
panic("Unable to read the acquired name")
}
conn.namesLck.Lock()
conn.names = append(conn.names, name)
conn.namesLck.Unlock()
}
}
conn.handleSignal(msg)
case TypeMethodCall:
go conn.handleCall(msg)
}
} else if _, ok := err.(InvalidMessageError); !ok {
// Some read error occured (usually EOF); we can't really do
// anything but to shut down all stuff and returns errors to all
// pending replies.
conn.Close()
conn.callsLck.RLock()
for _, v := range conn.calls {
v.Err = err
v.Done <- v
}
conn.callsLck.RUnlock()
return
}
// invalid messages are ignored
}
}
func (conn *Conn) handleSignal(msg *Message) {
iface := msg.Headers[FieldInterface].value.(string)
member := msg.Headers[FieldMember].value.(string)
// as per http://dbus.freedesktop.org/doc/dbus-specification.html ,
// sender is optional for signals.
sender, _ := msg.Headers[FieldSender].value.(string)
signal := &Signal{
Sender: sender,
Path: msg.Headers[FieldPath].value.(ObjectPath),
Name: iface + "." + member,
Body: msg.Body,
}
conn.signalHandler.DeliverSignal(iface, member, signal)
}
// Names returns the list of all names that are currently owned by this
// connection. The slice is always at least one element long, the first element
// being the unique name of the connection.
func (conn *Conn) Names() []string {
conn.namesLck.RLock()
// copy the slice so it can't be modified
s := make([]string, len(conn.names))
copy(s, conn.names)
conn.namesLck.RUnlock()
return s
}
// Object returns the object identified by the given destination name and path.
func (conn *Conn) Object(dest string, path ObjectPath) BusObject {
return &Object{conn, dest, path}
}
// outWorker runs in an own goroutine, encoding and sending messages that are
// sent to conn.out.
func (conn *Conn) outWorker() {
for msg := range conn.out {
err := conn.SendMessage(msg)
conn.callsLck.RLock()
if err != nil {
if c := conn.calls[msg.serial]; c != nil {
c.Err = err
c.Done <- c
}
conn.serialLck.Lock()
delete(conn.serialUsed, msg.serial)
conn.serialLck.Unlock()
} else if msg.Type != TypeMethodCall {
conn.serialLck.Lock()
delete(conn.serialUsed, msg.serial)
conn.serialLck.Unlock()
}
conn.callsLck.RUnlock()
}
}
// Send sends the given message to the message bus. You usually don't need to
// use this; use the higher-level equivalents (Call / Go, Emit and Export)
// instead. If msg is a method call and NoReplyExpected is not set, a non-nil
// call is returned and the same value is sent to ch (which must be buffered)
// once the call is complete. Otherwise, ch is ignored and a Call structure is
// returned of which only the Err member is valid.
func (conn *Conn) Send(msg *Message, ch chan *Call) *Call {
var call *Call
msg.serial = conn.getSerial()
if msg.Type == TypeMethodCall && msg.Flags&FlagNoReplyExpected == 0 {
if ch == nil {
ch = make(chan *Call, 5)
} else if cap(ch) == 0 {
panic("dbus: unbuffered channel passed to (*Conn).Send")
}
call = new(Call)
call.Destination, _ = msg.Headers[FieldDestination].value.(string)
call.Path, _ = msg.Headers[FieldPath].value.(ObjectPath)
iface, _ := msg.Headers[FieldInterface].value.(string)
member, _ := msg.Headers[FieldMember].value.(string)
call.Method = iface + "." + member
call.Args = msg.Body
call.Done = ch
conn.callsLck.Lock()
conn.calls[msg.serial] = call
conn.callsLck.Unlock()
conn.outLck.RLock()
if conn.closed {
call.Err = ErrClosed
call.Done <- call
} else {
conn.out <- msg
}
conn.outLck.RUnlock()
} else {
conn.outLck.RLock()
if conn.closed {
call = &Call{Err: ErrClosed}
} else {
conn.out <- msg
call = &Call{Err: nil}
}
conn.outLck.RUnlock()
}
return call
}
// sendError creates an error message corresponding to the parameters and sends
// it to conn.out.
func (conn *Conn) sendError(err error, dest string, serial uint32) {
var e *Error
switch em := err.(type) {
case Error:
e = &em
case *Error:
e = em
case DBusError:
name, body := em.DBusError()
e = NewError(name, body)
default:
e = MakeFailedError(err)
}
msg := new(Message)
msg.Type = TypeError
msg.serial = conn.getSerial()
msg.Headers = make(map[HeaderField]Variant)
if dest != "" {
msg.Headers[FieldDestination] = MakeVariant(dest)
}
msg.Headers[FieldErrorName] = MakeVariant(e.Name)
msg.Headers[FieldReplySerial] = MakeVariant(serial)
msg.Body = e.Body
if len(e.Body) > 0 {
msg.Headers[FieldSignature] = MakeVariant(SignatureOf(e.Body...))
}
conn.outLck.RLock()
if !conn.closed {
conn.out <- msg
}
conn.outLck.RUnlock()
}
// sendReply creates a method reply message corresponding to the parameters and
// sends it to conn.out.
func (conn *Conn) sendReply(dest string, serial uint32, values ...interface{}) {
msg := new(Message)
msg.Type = TypeMethodReply
msg.serial = conn.getSerial()
msg.Headers = make(map[HeaderField]Variant)
if dest != "" {
msg.Headers[FieldDestination] = MakeVariant(dest)
}
msg.Headers[FieldReplySerial] = MakeVariant(serial)
msg.Body = values
if len(values) > 0 {
msg.Headers[FieldSignature] = MakeVariant(SignatureOf(values...))
}
conn.outLck.RLock()
if !conn.closed {
conn.out <- msg
}
conn.outLck.RUnlock()
}
func (conn *Conn) defaultSignalAction(fn func(h *defaultSignalHandler, ch chan<- *Signal), ch chan<- *Signal) {
if !isDefaultSignalHandler(conn.signalHandler) {
return
}
handler := conn.signalHandler.(*defaultSignalHandler)
fn(handler, ch)
}
// Signal registers the given channel to be passed all received signal messages.
// The caller has to make sure that ch is sufficiently buffered; if a message
// arrives when a write to c is not possible, it is discarded.
//
// Multiple of these channels can be registered at the same time.
//
// These channels are "overwritten" by Eavesdrop; i.e., if there currently is a
// channel for eavesdropped messages, this channel receives all signals, and
// none of the channels passed to Signal will receive any signals.
func (conn *Conn) Signal(ch chan<- *Signal) {
conn.defaultSignalAction((*defaultSignalHandler).addSignal, ch)
}
// RemoveSignal removes the given channel from the list of the registered channels.
func (conn *Conn) RemoveSignal(ch chan<- *Signal) {
conn.defaultSignalAction((*defaultSignalHandler).removeSignal, ch)
}
// SupportsUnixFDs returns whether the underlying transport supports passing of
// unix file descriptors. If this is false, method calls containing unix file
// descriptors will return an error and emitted signals containing them will
// not be sent.
func (conn *Conn) SupportsUnixFDs() bool {
return conn.unixFD
}
// Error represents a D-Bus message of type Error.
type Error struct {
Name string
Body []interface{}
}
func NewError(name string, body []interface{}) *Error {
return &Error{name, body}
}
func (e Error) Error() string {
if len(e.Body) >= 1 {
s, ok := e.Body[0].(string)
if ok {
return s
}
}
return e.Name
}
// Signal represents a D-Bus message of type Signal. The name member is given in
// "interface.member" notation, e.g. org.freedesktop.D-Bus.NameLost.
type Signal struct {
Sender string
Path ObjectPath
Name string
Body []interface{}
}
// transport is a D-Bus transport.
type transport interface {
// Read and Write raw data (for example, for the authentication protocol).
io.ReadWriteCloser
// Send the initial null byte used for the EXTERNAL mechanism.
SendNullByte() error
// Returns whether this transport supports passing Unix FDs.
SupportsUnixFDs() bool
// Signal the transport that Unix FD passing is enabled for this connection.
EnableUnixFDs()
// Read / send a message, handling things like Unix FDs.
ReadMessage() (*Message, error)
SendMessage(*Message) error
}
var (
transports = make(map[string]func(string) (transport, error))
)
func getTransport(address string) (transport, error) {
var err error
var t transport
addresses := strings.Split(address, ";")
for _, v := range addresses {
i := strings.IndexRune(v, ':')
if i == -1 {
err = errors.New("dbus: invalid bus address (no transport)")
continue
}
f := transports[v[:i]]
if f == nil {
err = errors.New("dbus: invalid bus address (invalid or unsupported transport)")
continue
}
t, err = f(v[i+1:])
if err == nil {
return t, nil
}
}
return nil, err
}
// dereferenceAll returns a slice that, assuming that vs is a slice of pointers
// of arbitrary types, containes the values that are obtained from dereferencing
// all elements in vs.
func dereferenceAll(vs []interface{}) []interface{} {
for i := range vs {
v := reflect.ValueOf(vs[i])
v = v.Elem()
vs[i] = v.Interface()
}
return vs
}
// getKey gets a key from a the list of keys. Returns "" on error / not found...
func getKey(s, key string) string {
for _, keyEqualsValue := range strings.Split(s, ",") {
keyValue := strings.SplitN(keyEqualsValue, "=", 2)
if len(keyValue) == 2 && keyValue[0] == key {
return keyValue[1]
}
}
return ""
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/conn_darwin.go
================================================
package dbus
import (
"errors"
"fmt"
"os"
"os/exec"
)
const defaultSystemBusAddress = "unix:path=/opt/local/var/run/dbus/system_bus_socket"
func getSessionBusPlatformAddress() (string, error) {
cmd := exec.Command("launchctl", "getenv", "DBUS_LAUNCHD_SESSION_BUS_SOCKET")
b, err := cmd.CombinedOutput()
if err != nil {
return "", err
}
if len(b) == 0 {
return "", errors.New("dbus: couldn't determine address of session bus")
}
return "unix:path=" + string(b[:len(b)-1]), nil
}
func getSystemBusPlatformAddress() string {
address := os.Getenv("DBUS_LAUNCHD_SESSION_BUS_SOCKET")
if address != "" {
return fmt.Sprintf("unix:path=%s", address)
}
return defaultSystemBusAddress
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/conn_other.go
================================================
// +build !darwin
package dbus
import (
"bytes"
"errors"
"fmt"
"os"
"os/exec"
)
const defaultSystemBusAddress = "unix:path=/var/run/dbus/system_bus_socket"
func getSessionBusPlatformAddress() (string, error) {
cmd := exec.Command("dbus-launch")
b, err := cmd.CombinedOutput()
if err != nil {
return "", err
}
i := bytes.IndexByte(b, '=')
j := bytes.IndexByte(b, '\n')
if i == -1 || j == -1 {
return "", errors.New("dbus: couldn't determine address of session bus")
}
env, addr := string(b[0:i]), string(b[i+1:j])
os.Setenv(env, addr)
return addr, nil
}
func getSystemBusPlatformAddress() string {
address := os.Getenv("DBUS_SYSTEM_BUS_ADDRESS")
if address != "" {
return fmt.Sprintf("unix:path=%s", address)
}
return defaultSystemBusAddress
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/dbus.go
================================================
package dbus
import (
"errors"
"fmt"
"reflect"
"strings"
)
var (
byteType = reflect.TypeOf(byte(0))
boolType = reflect.TypeOf(false)
uint8Type = reflect.TypeOf(uint8(0))
int16Type = reflect.TypeOf(int16(0))
uint16Type = reflect.TypeOf(uint16(0))
intType = reflect.TypeOf(int(0))
uintType = reflect.TypeOf(uint(0))
int32Type = reflect.TypeOf(int32(0))
uint32Type = reflect.TypeOf(uint32(0))
int64Type = reflect.TypeOf(int64(0))
uint64Type = reflect.TypeOf(uint64(0))
float64Type = reflect.TypeOf(float64(0))
stringType = reflect.TypeOf("")
signatureType = reflect.TypeOf(Signature{""})
objectPathType = reflect.TypeOf(ObjectPath(""))
variantType = reflect.TypeOf(Variant{Signature{""}, nil})
interfacesType = reflect.TypeOf([]interface{}{})
interfaceType = reflect.TypeOf((*interface{})(nil)).Elem()
unixFDType = reflect.TypeOf(UnixFD(0))
unixFDIndexType = reflect.TypeOf(UnixFDIndex(0))
)
// An InvalidTypeError signals that a value which cannot be represented in the
// D-Bus wire format was passed to a function.
type InvalidTypeError struct {
Type reflect.Type
}
func (e InvalidTypeError) Error() string {
return "dbus: invalid type " + e.Type.String()
}
// Store copies the values contained in src to dest, which must be a slice of
// pointers. It converts slices of interfaces from src to corresponding structs
// in dest. An error is returned if the lengths of src and dest or the types of
// their elements don't match.
func Store(src []interface{}, dest ...interface{}) error {
if len(src) != len(dest) {
return errors.New("dbus.Store: length mismatch")
}
for i := range src {
if err := storeInterfaces(src[i], dest[i]); err != nil {
return err
}
}
return nil
}
func storeInterfaces(src, dest interface{}) error {
return store(reflect.ValueOf(dest), reflect.ValueOf(src))
}
func store(dest, src reflect.Value) error {
if dest.Kind() == reflect.Ptr {
return store(dest.Elem(), src)
}
switch src.Kind() {
case reflect.Slice:
return storeSlice(dest, src)
case reflect.Map:
return storeMap(dest, src)
default:
return storeBase(dest, src)
}
}
func storeBase(dest, src reflect.Value) error {
return setDest(dest, src)
}
func setDest(dest, src reflect.Value) error {
if !isVariant(src.Type()) && isVariant(dest.Type()) {
//special conversion for dbus.Variant
dest.Set(reflect.ValueOf(MakeVariant(src.Interface())))
return nil
}
if isVariant(src.Type()) && !isVariant(dest.Type()) {
src = getVariantValue(src)
}
if !src.Type().ConvertibleTo(dest.Type()) {
return fmt.Errorf(
"dbus.Store: type mismatch: cannot convert %s to %s",
src.Type(), dest.Type())
}
dest.Set(src.Convert(dest.Type()))
return nil
}
func kindsAreCompatible(dest, src reflect.Type) bool {
switch {
case isVariant(dest):
return true
case dest.Kind() == reflect.Interface:
return true
default:
return dest.Kind() == src.Kind()
}
}
func isConvertibleTo(dest, src reflect.Type) bool {
switch {
case isVariant(dest):
return true
case dest.Kind() == reflect.Interface:
return true
case dest.Kind() == reflect.Slice:
return src.Kind() == reflect.Slice &&
isConvertibleTo(dest.Elem(), src.Elem())
case dest.Kind() == reflect.Struct:
return src == interfacesType
default:
return src.ConvertibleTo(dest)
}
}
func storeMap(dest, src reflect.Value) error {
switch {
case !kindsAreCompatible(dest.Type(), src.Type()):
return fmt.Errorf(
"dbus.Store: type mismatch: "+
"map: cannot store a value of %s into %s",
src.Type(), dest.Type())
case isVariant(dest.Type()):
return storeMapIntoVariant(dest, src)
case dest.Kind() == reflect.Interface:
return storeMapIntoInterface(dest, src)
case isConvertibleTo(dest.Type().Key(), src.Type().Key()) &&
isConvertibleTo(dest.Type().Elem(), src.Type().Elem()):
return storeMapIntoMap(dest, src)
default:
return fmt.Errorf(
"dbus.Store: type mismatch: "+
"map: cannot convert a value of %s into %s",
src.Type(), dest.Type())
}
}
func storeMapIntoVariant(dest, src reflect.Value) error {
dv := reflect.MakeMap(src.Type())
err := store(dv, src)
if err != nil {
return err
}
return storeBase(dest, dv)
}
func storeMapIntoInterface(dest, src reflect.Value) error {
var dv reflect.Value
if isVariant(src.Type().Elem()) {
//Convert variants to interface{} recursively when converting
//to interface{}
dv = reflect.MakeMap(
reflect.MapOf(src.Type().Key(), interfaceType))
} else {
dv = reflect.MakeMap(src.Type())
}
err := store(dv, src)
if err != nil {
return err
}
return storeBase(dest, dv)
}
func storeMapIntoMap(dest, src reflect.Value) error {
if dest.IsNil() {
dest.Set(reflect.MakeMap(dest.Type()))
}
keys := src.MapKeys()
for _, key := range keys {
dkey := key.Convert(dest.Type().Key())
dval := reflect.New(dest.Type().Elem()).Elem()
err := store(dval, getVariantValue(src.MapIndex(key)))
if err != nil {
return err
}
dest.SetMapIndex(dkey, dval)
}
return nil
}
func storeSlice(dest, src reflect.Value) error {
switch {
case src.Type() == interfacesType && dest.Kind() == reflect.Struct:
//The decoder always decodes structs as slices of interface{}
return storeStruct(dest, src)
case !kindsAreCompatible(dest.Type(), src.Type()):
return fmt.Errorf(
"dbus.Store: type mismatch: "+
"slice: cannot store a value of %s into %s",
src.Type(), dest.Type())
case isVariant(dest.Type()):
return storeSliceIntoVariant(dest, src)
case dest.Kind() == reflect.Interface:
return storeSliceIntoInterface(dest, src)
case isConvertibleTo(dest.Type().Elem(), src.Type().Elem()):
return storeSliceIntoSlice(dest, src)
default:
return fmt.Errorf(
"dbus.Store: type mismatch: "+
"slice: cannot convert a value of %s into %s",
src.Type(), dest.Type())
}
}
func storeStruct(dest, src reflect.Value) error {
if isVariant(dest.Type()) {
return storeBase(dest, src)
}
dval := make([]interface{}, 0, dest.NumField())
dtype := dest.Type()
for i := 0; i < dest.NumField(); i++ {
field := dest.Field(i)
ftype := dtype.Field(i)
if ftype.PkgPath != "" {
continue
}
if ftype.Tag.Get("dbus") == "-" {
continue
}
dval = append(dval, field.Addr().Interface())
}
if src.Len() != len(dval) {
return fmt.Errorf(
"dbus.Store: type mismatch: "+
"destination struct does not have "+
"enough fields need: %d have: %d",
src.Len(), len(dval))
}
return Store(src.Interface().([]interface{}), dval...)
}
func storeSliceIntoVariant(dest, src reflect.Value) error {
dv := reflect.MakeSlice(src.Type(), src.Len(), src.Cap())
err := store(dv, src)
if err != nil {
return err
}
return storeBase(dest, dv)
}
func storeSliceIntoInterface(dest, src reflect.Value) error {
var dv reflect.Value
if isVariant(src.Type().Elem()) {
//Convert variants to interface{} recursively when converting
//to interface{}
dv = reflect.MakeSlice(reflect.SliceOf(interfaceType),
src.Len(), src.Cap())
} else {
dv = reflect.MakeSlice(src.Type(), src.Len(), src.Cap())
}
err := store(dv, src)
if err != nil {
return err
}
return storeBase(dest, dv)
}
func storeSliceIntoSlice(dest, src reflect.Value) error {
if dest.IsNil() || dest.Len() < src.Len() {
dest.Set(reflect.MakeSlice(dest.Type(), src.Len(), src.Cap()))
}
if dest.Len() != src.Len() {
return fmt.Errorf(
"dbus.Store: type mismatch: "+
"slices are different lengths "+
"need: %d have: %d",
src.Len(), dest.Len())
}
for i := 0; i < src.Len(); i++ {
err := store(dest.Index(i), getVariantValue(src.Index(i)))
if err != nil {
return err
}
}
return nil
}
func getVariantValue(in reflect.Value) reflect.Value {
if isVariant(in.Type()) {
return reflect.ValueOf(in.Interface().(Variant).Value())
}
return in
}
func isVariant(t reflect.Type) bool {
return t == variantType
}
// An ObjectPath is an object path as defined by the D-Bus spec.
type ObjectPath string
// IsValid returns whether the object path is valid.
func (o ObjectPath) IsValid() bool {
s := string(o)
if len(s) == 0 {
return false
}
if s[0] != '/' {
return false
}
if s[len(s)-1] == '/' && len(s) != 1 {
return false
}
// probably not used, but technically possible
if s == "/" {
return true
}
split := strings.Split(s[1:], "/")
for _, v := range split {
if len(v) == 0 {
return false
}
for _, c := range v {
if !isMemberChar(c) {
return false
}
}
}
return true
}
// A UnixFD is a Unix file descriptor sent over the wire. See the package-level
// documentation for more information about Unix file descriptor passsing.
type UnixFD int32
// A UnixFDIndex is the representation of a Unix file descriptor in a message.
type UnixFDIndex uint32
// alignment returns the alignment of values of type t.
func alignment(t reflect.Type) int {
switch t {
case variantType:
return 1
case objectPathType:
return 4
case signatureType:
return 1
case interfacesType:
return 4
}
switch t.Kind() {
case reflect.Uint8:
return 1
case reflect.Uint16, reflect.Int16:
return 2
case reflect.Uint, reflect.Int, reflect.Uint32, reflect.Int32, reflect.String, reflect.Array, reflect.Slice, reflect.Map:
return 4
case reflect.Uint64, reflect.Int64, reflect.Float64, reflect.Struct:
return 8
case reflect.Ptr:
return alignment(t.Elem())
}
return 1
}
// isKeyType returns whether t is a valid type for a D-Bus dict.
func isKeyType(t reflect.Type) bool {
switch t.Kind() {
case reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64,
reflect.Int16, reflect.Int32, reflect.Int64, reflect.Float64,
reflect.String, reflect.Uint, reflect.Int:
return true
}
return false
}
// isValidInterface returns whether s is a valid name for an interface.
func isValidInterface(s string) bool {
if len(s) == 0 || len(s) > 255 || s[0] == '.' {
return false
}
elem := strings.Split(s, ".")
if len(elem) < 2 {
return false
}
for _, v := range elem {
if len(v) == 0 {
return false
}
if v[0] >= '0' && v[0] <= '9' {
return false
}
for _, c := range v {
if !isMemberChar(c) {
return false
}
}
}
return true
}
// isValidMember returns whether s is a valid name for a member.
func isValidMember(s string) bool {
if len(s) == 0 || len(s) > 255 {
return false
}
i := strings.Index(s, ".")
if i != -1 {
return false
}
if s[0] >= '0' && s[0] <= '9' {
return false
}
for _, c := range s {
if !isMemberChar(c) {
return false
}
}
return true
}
func isMemberChar(c rune) bool {
return (c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z') ||
(c >= 'a' && c <= 'z') || c == '_'
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/decoder.go
================================================
package dbus
import (
"encoding/binary"
"io"
"reflect"
)
type decoder struct {
in io.Reader
order binary.ByteOrder
pos int
}
// newDecoder returns a new decoder that reads values from in. The input is
// expected to be in the given byte order.
func newDecoder(in io.Reader, order binary.ByteOrder) *decoder {
dec := new(decoder)
dec.in = in
dec.order = order
return dec
}
// align aligns the input to the given boundary and panics on error.
func (dec *decoder) align(n int) {
if dec.pos%n != 0 {
newpos := (dec.pos + n - 1) & ^(n - 1)
empty := make([]byte, newpos-dec.pos)
if _, err := io.ReadFull(dec.in, empty); err != nil {
panic(err)
}
dec.pos = newpos
}
}
// Calls binary.Read(dec.in, dec.order, v) and panics on read errors.
func (dec *decoder) binread(v interface{}) {
if err := binary.Read(dec.in, dec.order, v); err != nil {
panic(err)
}
}
func (dec *decoder) Decode(sig Signature) (vs []interface{}, err error) {
defer func() {
var ok bool
v := recover()
if err, ok = v.(error); ok {
if err == io.EOF || err == io.ErrUnexpectedEOF {
err = FormatError("unexpected EOF")
}
}
}()
vs = make([]interface{}, 0)
s := sig.str
for s != "" {
err, rem := validSingle(s, 0)
if err != nil {
return nil, err
}
v := dec.decode(s[:len(s)-len(rem)], 0)
vs = append(vs, v)
s = rem
}
return vs, nil
}
func (dec *decoder) decode(s string, depth int) interface{} {
dec.align(alignment(typeFor(s)))
switch s[0] {
case 'y':
var b [1]byte
if _, err := dec.in.Read(b[:]); err != nil {
panic(err)
}
dec.pos++
return b[0]
case 'b':
i := dec.decode("u", depth).(uint32)
switch {
case i == 0:
return false
case i == 1:
return true
default:
panic(FormatError("invalid value for boolean"))
}
case 'n':
var i int16
dec.binread(&i)
dec.pos += 2
return i
case 'i':
var i int32
dec.binread(&i)
dec.pos += 4
return i
case 'x':
var i int64
dec.binread(&i)
dec.pos += 8
return i
case 'q':
var i uint16
dec.binread(&i)
dec.pos += 2
return i
case 'u':
var i uint32
dec.binread(&i)
dec.pos += 4
return i
case 't':
var i uint64
dec.binread(&i)
dec.pos += 8
return i
case 'd':
var f float64
dec.binread(&f)
dec.pos += 8
return f
case 's':
length := dec.decode("u", depth).(uint32)
b := make([]byte, int(length)+1)
if _, err := io.ReadFull(dec.in, b); err != nil {
panic(err)
}
dec.pos += int(length) + 1
return string(b[:len(b)-1])
case 'o':
return ObjectPath(dec.decode("s", depth).(string))
case 'g':
length := dec.decode("y", depth).(byte)
b := make([]byte, int(length)+1)
if _, err := io.ReadFull(dec.in, b); err != nil {
panic(err)
}
dec.pos += int(length) + 1
sig, err := ParseSignature(string(b[:len(b)-1]))
if err != nil {
panic(err)
}
return sig
case 'v':
if depth >= 64 {
panic(FormatError("input exceeds container depth limit"))
}
var variant Variant
sig := dec.decode("g", depth).(Signature)
if len(sig.str) == 0 {
panic(FormatError("variant signature is empty"))
}
err, rem := validSingle(sig.str, 0)
if err != nil {
panic(err)
}
if rem != "" {
panic(FormatError("variant signature has multiple types"))
}
variant.sig = sig
variant.value = dec.decode(sig.str, depth+1)
return variant
case 'h':
return UnixFDIndex(dec.decode("u", depth).(uint32))
case 'a':
if len(s) > 1 && s[1] == '{' {
ksig := s[2:3]
vsig := s[3 : len(s)-1]
v := reflect.MakeMap(reflect.MapOf(typeFor(ksig), typeFor(vsig)))
if depth >= 63 {
panic(FormatError("input exceeds container depth limit"))
}
length := dec.decode("u", depth).(uint32)
// Even for empty maps, the correct padding must be included
dec.align(8)
spos := dec.pos
for dec.pos < spos+int(length) {
dec.align(8)
if !isKeyType(v.Type().Key()) {
panic(InvalidTypeError{v.Type()})
}
kv := dec.decode(ksig, depth+2)
vv := dec.decode(vsig, depth+2)
v.SetMapIndex(reflect.ValueOf(kv), reflect.ValueOf(vv))
}
return v.Interface()
}
if depth >= 64 {
panic(FormatError("input exceeds container depth limit"))
}
length := dec.decode("u", depth).(uint32)
v := reflect.MakeSlice(reflect.SliceOf(typeFor(s[1:])), 0, int(length))
// Even for empty arrays, the correct padding must be included
dec.align(alignment(typeFor(s[1:])))
spos := dec.pos
for dec.pos < spos+int(length) {
ev := dec.decode(s[1:], depth+1)
v = reflect.Append(v, reflect.ValueOf(ev))
}
return v.Interface()
case '(':
if depth >= 64 {
panic(FormatError("input exceeds container depth limit"))
}
dec.align(8)
v := make([]interface{}, 0)
s = s[1 : len(s)-1]
for s != "" {
err, rem := validSingle(s, 0)
if err != nil {
panic(err)
}
ev := dec.decode(s[:len(s)-len(rem)], depth+1)
v = append(v, ev)
s = rem
}
return v
default:
panic(SignatureError{Sig: s})
}
}
// A FormatError is an error in the wire format.
type FormatError string
func (e FormatError) Error() string {
return "dbus: wire format error: " + string(e)
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/default_handler.go
================================================
package dbus
import (
"bytes"
"reflect"
"strings"
"sync"
)
func newIntrospectIntf(h *defaultHandler) *exportedIntf {
methods := make(map[string]Method)
methods["Introspect"] = exportedMethod{
reflect.ValueOf(func(msg Message) (string, *Error) {
path := msg.Headers[FieldPath].value.(ObjectPath)
return h.introspectPath(path), nil
}),
}
return newExportedIntf(methods, true)
}
//NewDefaultHandler returns an instance of the default
//call handler. This is useful if you want to implement only
//one of the two handlers but not both.
func NewDefaultHandler() *defaultHandler {
h := &defaultHandler{
objects: make(map[ObjectPath]*exportedObj),
defaultIntf: make(map[string]*exportedIntf),
}
h.defaultIntf["org.freedesktop.DBus.Introspectable"] = newIntrospectIntf(h)
return h
}
type defaultHandler struct {
sync.RWMutex
objects map[ObjectPath]*exportedObj
defaultIntf map[string]*exportedIntf
}
func (h *defaultHandler) PathExists(path ObjectPath) bool {
_, ok := h.objects[path]
return ok
}
func (h *defaultHandler) introspectPath(path ObjectPath) string {
subpath := make(map[string]struct{})
var xml bytes.Buffer
xml.WriteString("")
for obj, _ := range h.objects {
p := string(path)
if p != "/" {
p += "/"
}
if strings.HasPrefix(string(obj), p) {
node_name := strings.Split(string(obj[len(p):]), "/")[0]
subpath[node_name] = struct{}{}
}
}
for s, _ := range subpath {
xml.WriteString("\n\t ")
}
xml.WriteString("\n ")
return xml.String()
}
func (h *defaultHandler) LookupObject(path ObjectPath) (ServerObject, bool) {
h.RLock()
defer h.RUnlock()
object, ok := h.objects[path]
if ok {
return object, ok
}
// If an object wasn't found for this exact path,
// look for a matching subtree registration
subtreeObject := newExportedObject()
path = path[:strings.LastIndex(string(path), "/")]
for len(path) > 0 {
object, ok = h.objects[path]
if ok {
for name, iface := range object.interfaces {
// Only include this handler if it registered for the subtree
if iface.isFallbackInterface() {
subtreeObject.interfaces[name] = iface
}
}
break
}
path = path[:strings.LastIndex(string(path), "/")]
}
for name, intf := range h.defaultIntf {
if _, exists := subtreeObject.interfaces[name]; exists {
continue
}
subtreeObject.interfaces[name] = intf
}
return subtreeObject, true
}
func (h *defaultHandler) AddObject(path ObjectPath, object *exportedObj) {
h.Lock()
h.objects[path] = object
h.Unlock()
}
func (h *defaultHandler) DeleteObject(path ObjectPath) {
h.Lock()
delete(h.objects, path)
h.Unlock()
}
type exportedMethod struct {
reflect.Value
}
func (m exportedMethod) Call(args ...interface{}) ([]interface{}, error) {
t := m.Type()
params := make([]reflect.Value, len(args))
for i := 0; i < len(args); i++ {
params[i] = reflect.ValueOf(args[i]).Elem()
}
ret := m.Value.Call(params)
err := ret[t.NumOut()-1].Interface().(*Error)
ret = ret[:t.NumOut()-1]
out := make([]interface{}, len(ret))
for i, val := range ret {
out[i] = val.Interface()
}
if err == nil {
//concrete type to interface nil is a special case
return out, nil
}
return out, err
}
func (m exportedMethod) NumArguments() int {
return m.Value.Type().NumIn()
}
func (m exportedMethod) ArgumentValue(i int) interface{} {
return reflect.Zero(m.Type().In(i)).Interface()
}
func (m exportedMethod) NumReturns() int {
return m.Value.Type().NumOut()
}
func (m exportedMethod) ReturnValue(i int) interface{} {
return reflect.Zero(m.Type().Out(i)).Interface()
}
func newExportedObject() *exportedObj {
return &exportedObj{
interfaces: make(map[string]*exportedIntf),
}
}
type exportedObj struct {
interfaces map[string]*exportedIntf
}
func (obj *exportedObj) LookupInterface(name string) (Interface, bool) {
if name == "" {
return obj, true
}
intf, exists := obj.interfaces[name]
return intf, exists
}
func (obj *exportedObj) AddInterface(name string, iface *exportedIntf) {
obj.interfaces[name] = iface
}
func (obj *exportedObj) DeleteInterface(name string) {
delete(obj.interfaces, name)
}
func (obj *exportedObj) LookupMethod(name string) (Method, bool) {
for _, intf := range obj.interfaces {
method, exists := intf.LookupMethod(name)
if exists {
return method, exists
}
}
return nil, false
}
func (obj *exportedObj) isFallbackInterface() bool {
return false
}
func newExportedIntf(methods map[string]Method, includeSubtree bool) *exportedIntf {
return &exportedIntf{
methods: methods,
includeSubtree: includeSubtree,
}
}
type exportedIntf struct {
methods map[string]Method
// Whether or not this export is for the entire subtree
includeSubtree bool
}
func (obj *exportedIntf) LookupMethod(name string) (Method, bool) {
out, exists := obj.methods[name]
return out, exists
}
func (obj *exportedIntf) isFallbackInterface() bool {
return obj.includeSubtree
}
//NewDefaultSignalHandler returns an instance of the default
//signal handler. This is useful if you want to implement only
//one of the two handlers but not both.
func NewDefaultSignalHandler() *defaultSignalHandler {
return &defaultSignalHandler{}
}
func isDefaultSignalHandler(handler SignalHandler) bool {
_, ok := handler.(*defaultSignalHandler)
return ok
}
type defaultSignalHandler struct {
sync.RWMutex
closed bool
signals []chan<- *Signal
}
func (sh *defaultSignalHandler) DeliverSignal(intf, name string, signal *Signal) {
go func() {
sh.RLock()
defer sh.RUnlock()
if sh.closed {
return
}
for _, ch := range sh.signals {
ch <- signal
}
}()
}
func (sh *defaultSignalHandler) Init() error {
sh.Lock()
sh.signals = make([]chan<- *Signal, 0)
sh.Unlock()
return nil
}
func (sh *defaultSignalHandler) Terminate() {
sh.Lock()
sh.closed = true
for _, ch := range sh.signals {
close(ch)
}
sh.signals = nil
sh.Unlock()
}
func (sh *defaultSignalHandler) addSignal(ch chan<- *Signal) {
sh.Lock()
defer sh.Unlock()
if sh.closed {
return
}
sh.signals = append(sh.signals, ch)
}
func (sh *defaultSignalHandler) removeSignal(ch chan<- *Signal) {
sh.Lock()
defer sh.Unlock()
if sh.closed {
return
}
for i := len(sh.signals) - 1; i >= 0; i-- {
if ch == sh.signals[i] {
copy(sh.signals[i:], sh.signals[i+1:])
sh.signals[len(sh.signals)-1] = nil
sh.signals = sh.signals[:len(sh.signals)-1]
}
}
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/doc.go
================================================
/*
Package dbus implements bindings to the D-Bus message bus system.
To use the message bus API, you first need to connect to a bus (usually the
session or system bus). The acquired connection then can be used to call methods
on remote objects and emit or receive signals. Using the Export method, you can
arrange D-Bus methods calls to be directly translated to method calls on a Go
value.
Conversion Rules
For outgoing messages, Go types are automatically converted to the
corresponding D-Bus types. The following types are directly encoded as their
respective D-Bus equivalents:
Go type | D-Bus type
------------+-----------
byte | BYTE
bool | BOOLEAN
int16 | INT16
uint16 | UINT16
int | INT32
uint | UINT32
int32 | INT32
uint32 | UINT32
int64 | INT64
uint64 | UINT64
float64 | DOUBLE
string | STRING
ObjectPath | OBJECT_PATH
Signature | SIGNATURE
Variant | VARIANT
interface{} | VARIANT
UnixFDIndex | UNIX_FD
Slices and arrays encode as ARRAYs of their element type.
Maps encode as DICTs, provided that their key type can be used as a key for
a DICT.
Structs other than Variant and Signature encode as a STRUCT containing their
exported fields. Fields whose tags contain `dbus:"-"` and unexported fields will
be skipped.
Pointers encode as the value they're pointed to.
Types convertible to one of the base types above will be mapped as the
base type.
Trying to encode any other type or a slice, map or struct containing an
unsupported type will result in an InvalidTypeError.
For incoming messages, the inverse of these rules are used, with the exception
of STRUCTs. Incoming STRUCTS are represented as a slice of empty interfaces
containing the struct fields in the correct order. The Store function can be
used to convert such values to Go structs.
Unix FD passing
Handling Unix file descriptors deserves special mention. To use them, you should
first check that they are supported on a connection by calling SupportsUnixFDs.
If it returns true, all method of Connection will translate messages containing
UnixFD's to messages that are accompanied by the given file descriptors with the
UnixFD values being substituted by the correct indices. Similarily, the indices
of incoming messages are automatically resolved. It shouldn't be necessary to use
UnixFDIndex.
*/
package dbus
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/encoder.go
================================================
package dbus
import (
"bytes"
"encoding/binary"
"io"
"reflect"
)
// An encoder encodes values to the D-Bus wire format.
type encoder struct {
out io.Writer
order binary.ByteOrder
pos int
}
// NewEncoder returns a new encoder that writes to out in the given byte order.
func newEncoder(out io.Writer, order binary.ByteOrder) *encoder {
return newEncoderAtOffset(out, 0, order)
}
// newEncoderAtOffset returns a new encoder that writes to out in the given
// byte order. Specify the offset to initialize pos for proper alignment
// computation.
func newEncoderAtOffset(out io.Writer, offset int, order binary.ByteOrder) *encoder {
enc := new(encoder)
enc.out = out
enc.order = order
enc.pos = offset
return enc
}
// Aligns the next output to be on a multiple of n. Panics on write errors.
func (enc *encoder) align(n int) {
pad := enc.padding(0, n)
if pad > 0 {
empty := make([]byte, pad)
if _, err := enc.out.Write(empty); err != nil {
panic(err)
}
enc.pos += pad
}
}
// pad returns the number of bytes of padding, based on current position and additional offset.
// and alignment.
func (enc *encoder) padding(offset, algn int) int {
abs := enc.pos + offset
if abs%algn != 0 {
newabs := (abs + algn - 1) & ^(algn - 1)
return newabs - abs
}
return 0
}
// Calls binary.Write(enc.out, enc.order, v) and panics on write errors.
func (enc *encoder) binwrite(v interface{}) {
if err := binary.Write(enc.out, enc.order, v); err != nil {
panic(err)
}
}
// Encode encodes the given values to the underyling reader. All written values
// are aligned properly as required by the D-Bus spec.
func (enc *encoder) Encode(vs ...interface{}) (err error) {
defer func() {
err, _ = recover().(error)
}()
for _, v := range vs {
enc.encode(reflect.ValueOf(v), 0)
}
return nil
}
// encode encodes the given value to the writer and panics on error. depth holds
// the depth of the container nesting.
func (enc *encoder) encode(v reflect.Value, depth int) {
enc.align(alignment(v.Type()))
switch v.Kind() {
case reflect.Uint8:
var b [1]byte
b[0] = byte(v.Uint())
if _, err := enc.out.Write(b[:]); err != nil {
panic(err)
}
enc.pos++
case reflect.Bool:
if v.Bool() {
enc.encode(reflect.ValueOf(uint32(1)), depth)
} else {
enc.encode(reflect.ValueOf(uint32(0)), depth)
}
case reflect.Int16:
enc.binwrite(int16(v.Int()))
enc.pos += 2
case reflect.Uint16:
enc.binwrite(uint16(v.Uint()))
enc.pos += 2
case reflect.Int, reflect.Int32:
enc.binwrite(int32(v.Int()))
enc.pos += 4
case reflect.Uint, reflect.Uint32:
enc.binwrite(uint32(v.Uint()))
enc.pos += 4
case reflect.Int64:
enc.binwrite(v.Int())
enc.pos += 8
case reflect.Uint64:
enc.binwrite(v.Uint())
enc.pos += 8
case reflect.Float64:
enc.binwrite(v.Float())
enc.pos += 8
case reflect.String:
enc.encode(reflect.ValueOf(uint32(len(v.String()))), depth)
b := make([]byte, v.Len()+1)
copy(b, v.String())
b[len(b)-1] = 0
n, err := enc.out.Write(b)
if err != nil {
panic(err)
}
enc.pos += n
case reflect.Ptr:
enc.encode(v.Elem(), depth)
case reflect.Slice, reflect.Array:
if depth >= 64 {
panic(FormatError("input exceeds container depth limit"))
}
// Lookahead offset: 4 bytes for uint32 length (with alignment),
// plus alignment for elements.
n := enc.padding(0, 4) + 4
offset := enc.pos + n + enc.padding(n, alignment(v.Type().Elem()))
var buf bytes.Buffer
bufenc := newEncoderAtOffset(&buf, offset, enc.order)
for i := 0; i < v.Len(); i++ {
bufenc.encode(v.Index(i), depth+1)
}
enc.encode(reflect.ValueOf(uint32(buf.Len())), depth)
length := buf.Len()
enc.align(alignment(v.Type().Elem()))
if _, err := buf.WriteTo(enc.out); err != nil {
panic(err)
}
enc.pos += length
case reflect.Struct:
if depth >= 64 && v.Type() != signatureType {
panic(FormatError("input exceeds container depth limit"))
}
switch t := v.Type(); t {
case signatureType:
str := v.Field(0)
enc.encode(reflect.ValueOf(byte(str.Len())), depth+1)
b := make([]byte, str.Len()+1)
copy(b, str.String())
b[len(b)-1] = 0
n, err := enc.out.Write(b)
if err != nil {
panic(err)
}
enc.pos += n
case variantType:
variant := v.Interface().(Variant)
enc.encode(reflect.ValueOf(variant.sig), depth+1)
enc.encode(reflect.ValueOf(variant.value), depth+1)
default:
for i := 0; i < v.Type().NumField(); i++ {
field := t.Field(i)
if field.PkgPath == "" && field.Tag.Get("dbus") != "-" {
enc.encode(v.Field(i), depth+1)
}
}
}
case reflect.Map:
// Maps are arrays of structures, so they actually increase the depth by
// 2.
if depth >= 63 {
panic(FormatError("input exceeds container depth limit"))
}
if !isKeyType(v.Type().Key()) {
panic(InvalidTypeError{v.Type()})
}
keys := v.MapKeys()
// Lookahead offset: 4 bytes for uint32 length (with alignment),
// plus 8-byte alignment
n := enc.padding(0, 4) + 4
offset := enc.pos + n + enc.padding(n, 8)
var buf bytes.Buffer
bufenc := newEncoderAtOffset(&buf, offset, enc.order)
for _, k := range keys {
bufenc.align(8)
bufenc.encode(k, depth+2)
bufenc.encode(v.MapIndex(k), depth+2)
}
enc.encode(reflect.ValueOf(uint32(buf.Len())), depth)
length := buf.Len()
enc.align(8)
if _, err := buf.WriteTo(enc.out); err != nil {
panic(err)
}
enc.pos += length
case reflect.Interface:
enc.encode(reflect.ValueOf(MakeVariant(v.Interface())), depth)
default:
panic(InvalidTypeError{v.Type()})
}
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/export.go
================================================
package dbus
import (
"errors"
"fmt"
"reflect"
"strings"
)
var (
ErrMsgInvalidArg = Error{
"org.freedesktop.DBus.Error.InvalidArgs",
[]interface{}{"Invalid type / number of args"},
}
ErrMsgNoObject = Error{
"org.freedesktop.DBus.Error.NoSuchObject",
[]interface{}{"No such object"},
}
ErrMsgUnknownMethod = Error{
"org.freedesktop.DBus.Error.UnknownMethod",
[]interface{}{"Unknown / invalid method"},
}
ErrMsgUnknownInterface = Error{
"org.freedesktop.DBus.Error.UnknownInterface",
[]interface{}{"Object does not implement the interface"},
}
)
func MakeFailedError(err error) *Error {
return &Error{
"org.freedesktop.DBus.Error.Failed",
[]interface{}{err.Error()},
}
}
// Sender is a type which can be used in exported methods to receive the message
// sender.
type Sender string
func computeMethodName(name string, mapping map[string]string) string {
newname, ok := mapping[name]
if ok {
name = newname
}
return name
}
func getMethods(in interface{}, mapping map[string]string) map[string]reflect.Value {
if in == nil {
return nil
}
methods := make(map[string]reflect.Value)
val := reflect.ValueOf(in)
typ := val.Type()
for i := 0; i < typ.NumMethod(); i++ {
methtype := typ.Method(i)
method := val.Method(i)
t := method.Type()
// only track valid methods must return *Error as last arg
// and must be exported
if t.NumOut() == 0 ||
t.Out(t.NumOut()-1) != reflect.TypeOf(&ErrMsgInvalidArg) ||
methtype.PkgPath != "" {
continue
}
// map names while building table
methods[computeMethodName(methtype.Name, mapping)] = method
}
return methods
}
func standardMethodArgumentDecode(m Method, sender string, msg *Message, body []interface{}) ([]interface{}, error) {
pointers := make([]interface{}, m.NumArguments())
decode := make([]interface{}, 0, len(body))
for i := 0; i < m.NumArguments(); i++ {
tp := reflect.TypeOf(m.ArgumentValue(i))
val := reflect.New(tp)
pointers[i] = val.Interface()
if tp == reflect.TypeOf((*Sender)(nil)).Elem() {
val.Elem().SetString(sender)
} else if tp == reflect.TypeOf((*Message)(nil)).Elem() {
val.Elem().Set(reflect.ValueOf(*msg))
} else {
decode = append(decode, pointers[i])
}
}
if len(decode) != len(body) {
return nil, ErrMsgInvalidArg
}
if err := Store(body, decode...); err != nil {
return nil, ErrMsgInvalidArg
}
return pointers, nil
}
func (conn *Conn) decodeArguments(m Method, sender string, msg *Message) ([]interface{}, error) {
if decoder, ok := m.(ArgumentDecoder); ok {
return decoder.DecodeArguments(conn, sender, msg, msg.Body)
}
return standardMethodArgumentDecode(m, sender, msg, msg.Body)
}
// handleCall handles the given method call (i.e. looks if it's one of the
// pre-implemented ones and searches for a corresponding handler if not).
func (conn *Conn) handleCall(msg *Message) {
name := msg.Headers[FieldMember].value.(string)
path := msg.Headers[FieldPath].value.(ObjectPath)
ifaceName, _ := msg.Headers[FieldInterface].value.(string)
sender, hasSender := msg.Headers[FieldSender].value.(string)
serial := msg.serial
if ifaceName == "org.freedesktop.DBus.Peer" {
switch name {
case "Ping":
conn.sendReply(sender, serial)
case "GetMachineId":
conn.sendReply(sender, serial, conn.uuid)
default:
conn.sendError(ErrMsgUnknownMethod, sender, serial)
}
return
}
if len(name) == 0 {
conn.sendError(ErrMsgUnknownMethod, sender, serial)
}
object, ok := conn.handler.LookupObject(path)
if !ok {
conn.sendError(ErrMsgNoObject, sender, serial)
return
}
iface, exists := object.LookupInterface(ifaceName)
if !exists {
conn.sendError(ErrMsgUnknownInterface, sender, serial)
return
}
m, exists := iface.LookupMethod(name)
if !exists {
conn.sendError(ErrMsgUnknownMethod, sender, serial)
return
}
args, err := conn.decodeArguments(m, sender, msg)
if err != nil {
conn.sendError(err, sender, serial)
return
}
ret, err := m.Call(args...)
if err != nil {
conn.sendError(err, sender, serial)
return
}
if msg.Flags&FlagNoReplyExpected == 0 {
reply := new(Message)
reply.Type = TypeMethodReply
reply.serial = conn.getSerial()
reply.Headers = make(map[HeaderField]Variant)
if hasSender {
reply.Headers[FieldDestination] = msg.Headers[FieldSender]
}
reply.Headers[FieldReplySerial] = MakeVariant(msg.serial)
reply.Body = make([]interface{}, len(ret))
for i := 0; i < len(ret); i++ {
reply.Body[i] = ret[i]
}
reply.Headers[FieldSignature] = MakeVariant(SignatureOf(reply.Body...))
conn.outLck.RLock()
if !conn.closed {
conn.out <- reply
}
conn.outLck.RUnlock()
}
}
// Emit emits the given signal on the message bus. The name parameter must be
// formatted as "interface.member", e.g., "org.freedesktop.DBus.NameLost".
func (conn *Conn) Emit(path ObjectPath, name string, values ...interface{}) error {
if !path.IsValid() {
return errors.New("dbus: invalid object path")
}
i := strings.LastIndex(name, ".")
if i == -1 {
return errors.New("dbus: invalid method name")
}
iface := name[:i]
member := name[i+1:]
if !isValidMember(member) {
return errors.New("dbus: invalid method name")
}
if !isValidInterface(iface) {
return errors.New("dbus: invalid interface name")
}
msg := new(Message)
msg.Type = TypeSignal
msg.serial = conn.getSerial()
msg.Headers = make(map[HeaderField]Variant)
msg.Headers[FieldInterface] = MakeVariant(iface)
msg.Headers[FieldMember] = MakeVariant(member)
msg.Headers[FieldPath] = MakeVariant(path)
msg.Body = values
if len(values) > 0 {
msg.Headers[FieldSignature] = MakeVariant(SignatureOf(values...))
}
conn.outLck.RLock()
defer conn.outLck.RUnlock()
if conn.closed {
return ErrClosed
}
conn.out <- msg
return nil
}
// Export registers the given value to be exported as an object on the
// message bus.
//
// If a method call on the given path and interface is received, an exported
// method with the same name is called with v as the receiver if the
// parameters match and the last return value is of type *Error. If this
// *Error is not nil, it is sent back to the caller as an error.
// Otherwise, a method reply is sent with the other return values as its body.
//
// Any parameters with the special type Sender are set to the sender of the
// dbus message when the method is called. Parameters of this type do not
// contribute to the dbus signature of the method (i.e. the method is exposed
// as if the parameters of type Sender were not there).
//
// Similarly, any parameters with the type Message are set to the raw message
// received on the bus. Again, parameters of this type do not contribute to the
// dbus signature of the method.
//
// Every method call is executed in a new goroutine, so the method may be called
// in multiple goroutines at once.
//
// Method calls on the interface org.freedesktop.DBus.Peer will be automatically
// handled for every object.
//
// Passing nil as the first parameter will cause conn to cease handling calls on
// the given combination of path and interface.
//
// Export returns an error if path is not a valid path name.
func (conn *Conn) Export(v interface{}, path ObjectPath, iface string) error {
return conn.ExportWithMap(v, nil, path, iface)
}
// ExportWithMap works exactly like Export but provides the ability to remap
// method names (e.g. export a lower-case method).
//
// The keys in the map are the real method names (exported on the struct), and
// the values are the method names to be exported on DBus.
func (conn *Conn) ExportWithMap(v interface{}, mapping map[string]string, path ObjectPath, iface string) error {
return conn.export(getMethods(v, mapping), path, iface, false)
}
// ExportSubtree works exactly like Export but registers the given value for
// an entire subtree rather under the root path provided.
//
// In order to make this useful, one parameter in each of the value's exported
// methods should be a Message, in which case it will contain the raw message
// (allowing one to get access to the path that caused the method to be called).
//
// Note that more specific export paths take precedence over less specific. For
// example, a method call using the ObjectPath /foo/bar/baz will call a method
// exported on /foo/bar before a method exported on /foo.
func (conn *Conn) ExportSubtree(v interface{}, path ObjectPath, iface string) error {
return conn.ExportSubtreeWithMap(v, nil, path, iface)
}
// ExportSubtreeWithMap works exactly like ExportSubtree but provides the
// ability to remap method names (e.g. export a lower-case method).
//
// The keys in the map are the real method names (exported on the struct), and
// the values are the method names to be exported on DBus.
func (conn *Conn) ExportSubtreeWithMap(v interface{}, mapping map[string]string, path ObjectPath, iface string) error {
return conn.export(getMethods(v, mapping), path, iface, true)
}
// ExportMethodTable like Export registers the given methods as an object
// on the message bus. Unlike Export the it uses a method table to define
// the object instead of a native go object.
//
// The method table is a map from method name to function closure
// representing the method. This allows an object exported on the bus to not
// necessarily be a native go object. It can be useful for generating exposed
// methods on the fly.
//
// Any non-function objects in the method table are ignored.
func (conn *Conn) ExportMethodTable(methods map[string]interface{}, path ObjectPath, iface string) error {
return conn.exportMethodTable(methods, path, iface, false)
}
// Like ExportSubtree, but with the same caveats as ExportMethodTable.
func (conn *Conn) ExportSubtreeMethodTable(methods map[string]interface{}, path ObjectPath, iface string) error {
return conn.exportMethodTable(methods, path, iface, true)
}
func (conn *Conn) exportMethodTable(methods map[string]interface{}, path ObjectPath, iface string, includeSubtree bool) error {
out := make(map[string]reflect.Value)
for name, method := range methods {
rval := reflect.ValueOf(method)
if rval.Kind() != reflect.Func {
continue
}
t := rval.Type()
// only track valid methods must return *Error as last arg
if t.NumOut() == 0 ||
t.Out(t.NumOut()-1) != reflect.TypeOf(&ErrMsgInvalidArg) {
continue
}
out[name] = rval
}
return conn.export(out, path, iface, includeSubtree)
}
func (conn *Conn) unexport(h *defaultHandler, path ObjectPath, iface string) error {
if h.PathExists(path) {
obj := h.objects[path]
obj.DeleteInterface(iface)
if len(obj.interfaces) == 0 {
h.DeleteObject(path)
}
}
return nil
}
// exportWithMap is the worker function for all exports/registrations.
func (conn *Conn) export(methods map[string]reflect.Value, path ObjectPath, iface string, includeSubtree bool) error {
h, ok := conn.handler.(*defaultHandler)
if !ok {
return fmt.Errorf(
`dbus: export only allowed on the default hander handler have %T"`,
conn.handler)
}
if !path.IsValid() {
return fmt.Errorf(`dbus: Invalid path name: "%s"`, path)
}
// Remove a previous export if the interface is nil
if methods == nil {
return conn.unexport(h, path, iface)
}
// If this is the first handler for this path, make a new map to hold all
// handlers for this path.
if !h.PathExists(path) {
h.AddObject(path, newExportedObject())
}
exportedMethods := make(map[string]Method)
for name, method := range methods {
exportedMethods[name] = exportedMethod{method}
}
// Finally, save this handler
obj := h.objects[path]
obj.AddInterface(iface, newExportedIntf(exportedMethods, includeSubtree))
return nil
}
// ReleaseName calls org.freedesktop.DBus.ReleaseName and awaits a response.
func (conn *Conn) ReleaseName(name string) (ReleaseNameReply, error) {
var r uint32
err := conn.busObj.Call("org.freedesktop.DBus.ReleaseName", 0, name).Store(&r)
if err != nil {
return 0, err
}
return ReleaseNameReply(r), nil
}
// RequestName calls org.freedesktop.DBus.RequestName and awaits a response.
func (conn *Conn) RequestName(name string, flags RequestNameFlags) (RequestNameReply, error) {
var r uint32
err := conn.busObj.Call("org.freedesktop.DBus.RequestName", 0, name, flags).Store(&r)
if err != nil {
return 0, err
}
return RequestNameReply(r), nil
}
// ReleaseNameReply is the reply to a ReleaseName call.
type ReleaseNameReply uint32
const (
ReleaseNameReplyReleased ReleaseNameReply = 1 + iota
ReleaseNameReplyNonExistent
ReleaseNameReplyNotOwner
)
// RequestNameFlags represents the possible flags for a RequestName call.
type RequestNameFlags uint32
const (
NameFlagAllowReplacement RequestNameFlags = 1 << iota
NameFlagReplaceExisting
NameFlagDoNotQueue
)
// RequestNameReply is the reply to a RequestName call.
type RequestNameReply uint32
const (
RequestNameReplyPrimaryOwner RequestNameReply = 1 + iota
RequestNameReplyInQueue
RequestNameReplyExists
RequestNameReplyAlreadyOwner
)
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/homedir.go
================================================
package dbus
import (
"os"
"sync"
)
var (
homeDir string
homeDirLock sync.Mutex
)
func getHomeDir() string {
homeDirLock.Lock()
defer homeDirLock.Unlock()
if homeDir != "" {
return homeDir
}
homeDir = os.Getenv("HOME")
if homeDir != "" {
return homeDir
}
homeDir = lookupHomeDir()
return homeDir
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/homedir_dynamic.go
================================================
// +build !static_build
package dbus
import (
"os/user"
)
func lookupHomeDir() string {
u, err := user.Current()
if err != nil {
return "/"
}
return u.HomeDir
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/homedir_static.go
================================================
// +build static_build
package dbus
import (
"bufio"
"os"
"strconv"
"strings"
)
func lookupHomeDir() string {
myUid := os.Getuid()
f, err := os.Open("/etc/passwd")
if err != nil {
return "/"
}
defer f.Close()
s := bufio.NewScanner(f)
for s.Scan() {
if err := s.Err(); err != nil {
break
}
line := strings.TrimSpace(s.Text())
if line == "" {
continue
}
parts := strings.Split(line, ":")
if len(parts) >= 6 {
uid, err := strconv.Atoi(parts[2])
if err == nil && uid == myUid {
return parts[5]
}
}
}
// Default to / if we can't get a better value
return "/"
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/message.go
================================================
package dbus
import (
"bytes"
"encoding/binary"
"errors"
"io"
"reflect"
"strconv"
)
const protoVersion byte = 1
// Flags represents the possible flags of a D-Bus message.
type Flags byte
const (
// FlagNoReplyExpected signals that the message is not expected to generate
// a reply. If this flag is set on outgoing messages, any possible reply
// will be discarded.
FlagNoReplyExpected Flags = 1 << iota
// FlagNoAutoStart signals that the message bus should not automatically
// start an application when handling this message.
FlagNoAutoStart
// FlagAllowInteractiveAuthorization may be set on a method call
// message to inform the receiving side that the caller is prepared
// to wait for interactive authorization, which might take a
// considerable time to complete. For instance, if this flag is set,
// it would be appropriate to query the user for passwords or
// confirmation via Polkit or a similar framework.
FlagAllowInteractiveAuthorization
)
// Type represents the possible types of a D-Bus message.
type Type byte
const (
TypeMethodCall Type = 1 + iota
TypeMethodReply
TypeError
TypeSignal
typeMax
)
func (t Type) String() string {
switch t {
case TypeMethodCall:
return "method call"
case TypeMethodReply:
return "reply"
case TypeError:
return "error"
case TypeSignal:
return "signal"
}
return "invalid"
}
// HeaderField represents the possible byte codes for the headers
// of a D-Bus message.
type HeaderField byte
const (
FieldPath HeaderField = 1 + iota
FieldInterface
FieldMember
FieldErrorName
FieldReplySerial
FieldDestination
FieldSender
FieldSignature
FieldUnixFDs
fieldMax
)
// An InvalidMessageError describes the reason why a D-Bus message is regarded as
// invalid.
type InvalidMessageError string
func (e InvalidMessageError) Error() string {
return "dbus: invalid message: " + string(e)
}
// fieldType are the types of the various header fields.
var fieldTypes = [fieldMax]reflect.Type{
FieldPath: objectPathType,
FieldInterface: stringType,
FieldMember: stringType,
FieldErrorName: stringType,
FieldReplySerial: uint32Type,
FieldDestination: stringType,
FieldSender: stringType,
FieldSignature: signatureType,
FieldUnixFDs: uint32Type,
}
// requiredFields lists the header fields that are required by the different
// message types.
var requiredFields = [typeMax][]HeaderField{
TypeMethodCall: {FieldPath, FieldMember},
TypeMethodReply: {FieldReplySerial},
TypeError: {FieldErrorName, FieldReplySerial},
TypeSignal: {FieldPath, FieldInterface, FieldMember},
}
// Message represents a single D-Bus message.
type Message struct {
Type
Flags
Headers map[HeaderField]Variant
Body []interface{}
serial uint32
}
type header struct {
Field byte
Variant
}
// DecodeMessage tries to decode a single message in the D-Bus wire format
// from the given reader. The byte order is figured out from the first byte.
// The possibly returned error can be an error of the underlying reader, an
// InvalidMessageError or a FormatError.
func DecodeMessage(rd io.Reader) (msg *Message, err error) {
var order binary.ByteOrder
var hlength, length uint32
var typ, flags, proto byte
var headers []header
b := make([]byte, 1)
_, err = rd.Read(b)
if err != nil {
return
}
switch b[0] {
case 'l':
order = binary.LittleEndian
case 'B':
order = binary.BigEndian
default:
return nil, InvalidMessageError("invalid byte order")
}
dec := newDecoder(rd, order)
dec.pos = 1
msg = new(Message)
vs, err := dec.Decode(Signature{"yyyuu"})
if err != nil {
return nil, err
}
if err = Store(vs, &typ, &flags, &proto, &length, &msg.serial); err != nil {
return nil, err
}
msg.Type = Type(typ)
msg.Flags = Flags(flags)
// get the header length separately because we need it later
b = make([]byte, 4)
_, err = io.ReadFull(rd, b)
if err != nil {
return nil, err
}
binary.Read(bytes.NewBuffer(b), order, &hlength)
if hlength+length+16 > 1<<27 {
return nil, InvalidMessageError("message is too long")
}
dec = newDecoder(io.MultiReader(bytes.NewBuffer(b), rd), order)
dec.pos = 12
vs, err = dec.Decode(Signature{"a(yv)"})
if err != nil {
return nil, err
}
if err = Store(vs, &headers); err != nil {
return nil, err
}
msg.Headers = make(map[HeaderField]Variant)
for _, v := range headers {
msg.Headers[HeaderField(v.Field)] = v.Variant
}
dec.align(8)
body := make([]byte, int(length))
if length != 0 {
_, err := io.ReadFull(rd, body)
if err != nil {
return nil, err
}
}
if err = msg.IsValid(); err != nil {
return nil, err
}
sig, _ := msg.Headers[FieldSignature].value.(Signature)
if sig.str != "" {
buf := bytes.NewBuffer(body)
dec = newDecoder(buf, order)
vs, err := dec.Decode(sig)
if err != nil {
return nil, err
}
msg.Body = vs
}
return
}
// EncodeTo encodes and sends a message to the given writer. The byte order must
// be either binary.LittleEndian or binary.BigEndian. If the message is not
// valid or an error occurs when writing, an error is returned.
func (msg *Message) EncodeTo(out io.Writer, order binary.ByteOrder) error {
if err := msg.IsValid(); err != nil {
return err
}
var vs [7]interface{}
switch order {
case binary.LittleEndian:
vs[0] = byte('l')
case binary.BigEndian:
vs[0] = byte('B')
default:
return errors.New("dbus: invalid byte order")
}
body := new(bytes.Buffer)
enc := newEncoder(body, order)
if len(msg.Body) != 0 {
enc.Encode(msg.Body...)
}
vs[1] = msg.Type
vs[2] = msg.Flags
vs[3] = protoVersion
vs[4] = uint32(len(body.Bytes()))
vs[5] = msg.serial
headers := make([]header, 0, len(msg.Headers))
for k, v := range msg.Headers {
headers = append(headers, header{byte(k), v})
}
vs[6] = headers
var buf bytes.Buffer
enc = newEncoder(&buf, order)
enc.Encode(vs[:]...)
enc.align(8)
body.WriteTo(&buf)
if buf.Len() > 1<<27 {
return InvalidMessageError("message is too long")
}
if _, err := buf.WriteTo(out); err != nil {
return err
}
return nil
}
// IsValid checks whether msg is a valid message and returns an
// InvalidMessageError if it is not.
func (msg *Message) IsValid() error {
if msg.Flags & ^(FlagNoAutoStart|FlagNoReplyExpected|FlagAllowInteractiveAuthorization) != 0 {
return InvalidMessageError("invalid flags")
}
if msg.Type == 0 || msg.Type >= typeMax {
return InvalidMessageError("invalid message type")
}
for k, v := range msg.Headers {
if k == 0 || k >= fieldMax {
return InvalidMessageError("invalid header")
}
if reflect.TypeOf(v.value) != fieldTypes[k] {
return InvalidMessageError("invalid type of header field")
}
}
for _, v := range requiredFields[msg.Type] {
if _, ok := msg.Headers[v]; !ok {
return InvalidMessageError("missing required header")
}
}
if path, ok := msg.Headers[FieldPath]; ok {
if !path.value.(ObjectPath).IsValid() {
return InvalidMessageError("invalid path name")
}
}
if iface, ok := msg.Headers[FieldInterface]; ok {
if !isValidInterface(iface.value.(string)) {
return InvalidMessageError("invalid interface name")
}
}
if member, ok := msg.Headers[FieldMember]; ok {
if !isValidMember(member.value.(string)) {
return InvalidMessageError("invalid member name")
}
}
if errname, ok := msg.Headers[FieldErrorName]; ok {
if !isValidInterface(errname.value.(string)) {
return InvalidMessageError("invalid error name")
}
}
if len(msg.Body) != 0 {
if _, ok := msg.Headers[FieldSignature]; !ok {
return InvalidMessageError("missing signature")
}
}
return nil
}
// Serial returns the message's serial number. The returned value is only valid
// for messages received by eavesdropping.
func (msg *Message) Serial() uint32 {
return msg.serial
}
// String returns a string representation of a message similar to the format of
// dbus-monitor.
func (msg *Message) String() string {
if err := msg.IsValid(); err != nil {
return ""
}
s := msg.Type.String()
if v, ok := msg.Headers[FieldSender]; ok {
s += " from " + v.value.(string)
}
if v, ok := msg.Headers[FieldDestination]; ok {
s += " to " + v.value.(string)
}
s += " serial " + strconv.FormatUint(uint64(msg.serial), 10)
if v, ok := msg.Headers[FieldReplySerial]; ok {
s += " reply_serial " + strconv.FormatUint(uint64(v.value.(uint32)), 10)
}
if v, ok := msg.Headers[FieldUnixFDs]; ok {
s += " unixfds " + strconv.FormatUint(uint64(v.value.(uint32)), 10)
}
if v, ok := msg.Headers[FieldPath]; ok {
s += " path " + string(v.value.(ObjectPath))
}
if v, ok := msg.Headers[FieldInterface]; ok {
s += " interface " + v.value.(string)
}
if v, ok := msg.Headers[FieldErrorName]; ok {
s += " error " + v.value.(string)
}
if v, ok := msg.Headers[FieldMember]; ok {
s += " member " + v.value.(string)
}
if len(msg.Body) != 0 {
s += "\n"
}
for i, v := range msg.Body {
s += " " + MakeVariant(v).String()
if i != len(msg.Body)-1 {
s += "\n"
}
}
return s
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/object.go
================================================
package dbus
import (
"errors"
"strings"
)
// BusObject is the interface of a remote object on which methods can be
// invoked.
type BusObject interface {
Call(method string, flags Flags, args ...interface{}) *Call
Go(method string, flags Flags, ch chan *Call, args ...interface{}) *Call
GetProperty(p string) (Variant, error)
Destination() string
Path() ObjectPath
}
// Object represents a remote object on which methods can be invoked.
type Object struct {
conn *Conn
dest string
path ObjectPath
}
// Call calls a method with (*Object).Go and waits for its reply.
func (o *Object) Call(method string, flags Flags, args ...interface{}) *Call {
return <-o.Go(method, flags, make(chan *Call, 1), args...).Done
}
// AddMatchSignal subscribes BusObject to signals from specified interface and
// method (member).
func (o *Object) AddMatchSignal(iface, member string) *Call {
return o.Call(
"org.freedesktop.DBus.AddMatch",
0,
"type='signal',interface='"+iface+"',member='"+member+"'",
)
}
// Go calls a method with the given arguments asynchronously. It returns a
// Call structure representing this method call. The passed channel will
// return the same value once the call is done. If ch is nil, a new channel
// will be allocated. Otherwise, ch has to be buffered or Go will panic.
//
// If the flags include FlagNoReplyExpected, ch is ignored and a Call structure
// is returned with any error in Err and a closed channel in Done containing
// the returned Call as it's one entry.
//
// If the method parameter contains a dot ('.'), the part before the last dot
// specifies the interface on which the method is called.
func (o *Object) Go(method string, flags Flags, ch chan *Call, args ...interface{}) *Call {
iface := ""
i := strings.LastIndex(method, ".")
if i != -1 {
iface = method[:i]
}
method = method[i+1:]
msg := new(Message)
msg.Type = TypeMethodCall
msg.serial = o.conn.getSerial()
msg.Flags = flags & (FlagNoAutoStart | FlagNoReplyExpected)
msg.Headers = make(map[HeaderField]Variant)
msg.Headers[FieldPath] = MakeVariant(o.path)
msg.Headers[FieldDestination] = MakeVariant(o.dest)
msg.Headers[FieldMember] = MakeVariant(method)
if iface != "" {
msg.Headers[FieldInterface] = MakeVariant(iface)
}
msg.Body = args
if len(args) > 0 {
msg.Headers[FieldSignature] = MakeVariant(SignatureOf(args...))
}
if msg.Flags&FlagNoReplyExpected == 0 {
if ch == nil {
ch = make(chan *Call, 10)
} else if cap(ch) == 0 {
panic("dbus: unbuffered channel passed to (*Object).Go")
}
call := &Call{
Destination: o.dest,
Path: o.path,
Method: method,
Args: args,
Done: ch,
}
o.conn.callsLck.Lock()
o.conn.calls[msg.serial] = call
o.conn.callsLck.Unlock()
o.conn.outLck.RLock()
if o.conn.closed {
call.Err = ErrClosed
call.Done <- call
} else {
o.conn.out <- msg
}
o.conn.outLck.RUnlock()
return call
}
o.conn.outLck.RLock()
defer o.conn.outLck.RUnlock()
done := make(chan *Call, 1)
call := &Call{
Err: nil,
Done: done,
}
defer func() {
call.Done <- call
close(done)
}()
if o.conn.closed {
call.Err = ErrClosed
return call
}
o.conn.out <- msg
return call
}
// GetProperty calls org.freedesktop.DBus.Properties.GetProperty on the given
// object. The property name must be given in interface.member notation.
func (o *Object) GetProperty(p string) (Variant, error) {
idx := strings.LastIndex(p, ".")
if idx == -1 || idx+1 == len(p) {
return Variant{}, errors.New("dbus: invalid property " + p)
}
iface := p[:idx]
prop := p[idx+1:]
result := Variant{}
err := o.Call("org.freedesktop.DBus.Properties.Get", 0, iface, prop).Store(&result)
if err != nil {
return Variant{}, err
}
return result, nil
}
// Destination returns the destination that calls on (o *Object) are sent to.
func (o *Object) Destination() string {
return o.dest
}
// Path returns the path that calls on (o *Object") are sent to.
func (o *Object) Path() ObjectPath {
return o.path
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/server_interfaces.go
================================================
package dbus
// Terminator allows a handler to implement a shutdown mechanism that
// is called when the connection terminates.
type Terminator interface {
Terminate()
}
// Handler is the representation of a D-Bus Application.
//
// The Handler must have a way to lookup objects given
// an ObjectPath. The returned object must implement the
// ServerObject interface.
type Handler interface {
LookupObject(path ObjectPath) (ServerObject, bool)
}
// ServerObject is the representation of an D-Bus Object.
//
// Objects are registered at a path for a given Handler.
// The Objects implement D-Bus interfaces. The semantics
// of Interface lookup is up to the implementation of
// the ServerObject. The ServerObject implementation may
// choose to implement empty string as a valid interface
// represeting all methods or not per the D-Bus specification.
type ServerObject interface {
LookupInterface(name string) (Interface, bool)
}
// An Interface is the representation of a D-Bus Interface.
//
// Interfaces are a grouping of methods implemented by the Objects.
// Interfaces are responsible for routing method calls.
type Interface interface {
LookupMethod(name string) (Method, bool)
}
// A Method represents the exposed methods on D-Bus.
type Method interface {
// Call requires that all arguments are decoded before being passed to it.
Call(args ...interface{}) ([]interface{}, error)
NumArguments() int
NumReturns() int
// ArgumentValue returns a representative value for the argument at position
// it should be of the proper type. reflect.Zero would be a good mechanism
// to use for this Value.
ArgumentValue(position int) interface{}
// ReturnValue returns a representative value for the return at position
// it should be of the proper type. reflect.Zero would be a good mechanism
// to use for this Value.
ReturnValue(position int) interface{}
}
// An Argument Decoder can decode arguments using the non-standard mechanism
//
// If a method implements this interface then the non-standard
// decoder will be used.
//
// Method arguments must be decoded from the message.
// The mechanism for doing this will vary based on the
// implementation of the method. A normal approach is provided
// as part of this library, but may be replaced with
// any other decoding scheme.
type ArgumentDecoder interface {
// To decode the arguments of a method the sender and message are
// provided incase the semantics of the implementer provides access
// to these as part of the method invocation.
DecodeArguments(conn *Conn, sender string, msg *Message, args []interface{}) ([]interface{}, error)
}
// A SignalHandler is responsible for delivering a signal.
//
// Signal delivery may be changed from the default channel
// based approach by Handlers implementing the SignalHandler
// interface.
type SignalHandler interface {
DeliverSignal(iface, name string, signal *Signal)
}
// A DBusError is used to convert a generic object to a D-Bus error.
//
// Any custom error mechanism may implement this interface to provide
// a custom encoding of the error on D-Bus. By default if a normal
// error is returned, it will be encoded as the generic
// "org.freedesktop.DBus.Error.Failed" error. By implementing this
// interface as well a custom encoding may be provided.
type DBusError interface {
DBusError() (string, []interface{})
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/sig.go
================================================
package dbus
import (
"fmt"
"reflect"
"strings"
)
var sigToType = map[byte]reflect.Type{
'y': byteType,
'b': boolType,
'n': int16Type,
'q': uint16Type,
'i': int32Type,
'u': uint32Type,
'x': int64Type,
't': uint64Type,
'd': float64Type,
's': stringType,
'g': signatureType,
'o': objectPathType,
'v': variantType,
'h': unixFDIndexType,
}
// Signature represents a correct type signature as specified by the D-Bus
// specification. The zero value represents the empty signature, "".
type Signature struct {
str string
}
// SignatureOf returns the concatenation of all the signatures of the given
// values. It panics if one of them is not representable in D-Bus.
func SignatureOf(vs ...interface{}) Signature {
var s string
for _, v := range vs {
s += getSignature(reflect.TypeOf(v))
}
return Signature{s}
}
// SignatureOfType returns the signature of the given type. It panics if the
// type is not representable in D-Bus.
func SignatureOfType(t reflect.Type) Signature {
return Signature{getSignature(t)}
}
// getSignature returns the signature of the given type and panics on unknown types.
func getSignature(t reflect.Type) string {
// handle simple types first
switch t.Kind() {
case reflect.Uint8:
return "y"
case reflect.Bool:
return "b"
case reflect.Int16:
return "n"
case reflect.Uint16:
return "q"
case reflect.Int, reflect.Int32:
if t == unixFDType {
return "h"
}
return "i"
case reflect.Uint, reflect.Uint32:
if t == unixFDIndexType {
return "h"
}
return "u"
case reflect.Int64:
return "x"
case reflect.Uint64:
return "t"
case reflect.Float64:
return "d"
case reflect.Ptr:
return getSignature(t.Elem())
case reflect.String:
if t == objectPathType {
return "o"
}
return "s"
case reflect.Struct:
if t == variantType {
return "v"
} else if t == signatureType {
return "g"
}
var s string
for i := 0; i < t.NumField(); i++ {
field := t.Field(i)
if field.PkgPath == "" && field.Tag.Get("dbus") != "-" {
s += getSignature(t.Field(i).Type)
}
}
return "(" + s + ")"
case reflect.Array, reflect.Slice:
return "a" + getSignature(t.Elem())
case reflect.Map:
if !isKeyType(t.Key()) {
panic(InvalidTypeError{t})
}
return "a{" + getSignature(t.Key()) + getSignature(t.Elem()) + "}"
case reflect.Interface:
return "v"
}
panic(InvalidTypeError{t})
}
// ParseSignature returns the signature represented by this string, or a
// SignatureError if the string is not a valid signature.
func ParseSignature(s string) (sig Signature, err error) {
if len(s) == 0 {
return
}
if len(s) > 255 {
return Signature{""}, SignatureError{s, "too long"}
}
sig.str = s
for err == nil && len(s) != 0 {
err, s = validSingle(s, 0)
}
if err != nil {
sig = Signature{""}
}
return
}
// ParseSignatureMust behaves like ParseSignature, except that it panics if s
// is not valid.
func ParseSignatureMust(s string) Signature {
sig, err := ParseSignature(s)
if err != nil {
panic(err)
}
return sig
}
// Empty retruns whether the signature is the empty signature.
func (s Signature) Empty() bool {
return s.str == ""
}
// Single returns whether the signature represents a single, complete type.
func (s Signature) Single() bool {
err, r := validSingle(s.str, 0)
return err != nil && r == ""
}
// String returns the signature's string representation.
func (s Signature) String() string {
return s.str
}
// A SignatureError indicates that a signature passed to a function or received
// on a connection is not a valid signature.
type SignatureError struct {
Sig string
Reason string
}
func (e SignatureError) Error() string {
return fmt.Sprintf("dbus: invalid signature: %q (%s)", e.Sig, e.Reason)
}
// Try to read a single type from this string. If it was successful, err is nil
// and rem is the remaining unparsed part. Otherwise, err is a non-nil
// SignatureError and rem is "". depth is the current recursion depth which may
// not be greater than 64 and should be given as 0 on the first call.
func validSingle(s string, depth int) (err error, rem string) {
if s == "" {
return SignatureError{Sig: s, Reason: "empty signature"}, ""
}
if depth > 64 {
return SignatureError{Sig: s, Reason: "container nesting too deep"}, ""
}
switch s[0] {
case 'y', 'b', 'n', 'q', 'i', 'u', 'x', 't', 'd', 's', 'g', 'o', 'v', 'h':
return nil, s[1:]
case 'a':
if len(s) > 1 && s[1] == '{' {
i := findMatching(s[1:], '{', '}')
if i == -1 {
return SignatureError{Sig: s, Reason: "unmatched '{'"}, ""
}
i++
rem = s[i+1:]
s = s[2:i]
if err, _ = validSingle(s[:1], depth+1); err != nil {
return err, ""
}
err, nr := validSingle(s[1:], depth+1)
if err != nil {
return err, ""
}
if nr != "" {
return SignatureError{Sig: s, Reason: "too many types in dict"}, ""
}
return nil, rem
}
return validSingle(s[1:], depth+1)
case '(':
i := findMatching(s, '(', ')')
if i == -1 {
return SignatureError{Sig: s, Reason: "unmatched ')'"}, ""
}
rem = s[i+1:]
s = s[1:i]
for err == nil && s != "" {
err, s = validSingle(s, depth+1)
}
if err != nil {
rem = ""
}
return
}
return SignatureError{Sig: s, Reason: "invalid type character"}, ""
}
func findMatching(s string, left, right rune) int {
n := 0
for i, v := range s {
if v == left {
n++
} else if v == right {
n--
}
if n == 0 {
return i
}
}
return -1
}
// typeFor returns the type of the given signature. It ignores any left over
// characters and panics if s doesn't start with a valid type signature.
func typeFor(s string) (t reflect.Type) {
err, _ := validSingle(s, 0)
if err != nil {
panic(err)
}
if t, ok := sigToType[s[0]]; ok {
return t
}
switch s[0] {
case 'a':
if s[1] == '{' {
i := strings.LastIndex(s, "}")
t = reflect.MapOf(sigToType[s[2]], typeFor(s[3:i]))
} else {
t = reflect.SliceOf(typeFor(s[1:]))
}
case '(':
t = interfacesType
}
return
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/transport_darwin.go
================================================
package dbus
func (t *unixTransport) SendNullByte() error {
_, err := t.Write([]byte{0})
return err
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/transport_generic.go
================================================
package dbus
import (
"encoding/binary"
"errors"
"io"
"unsafe"
)
var nativeEndian binary.ByteOrder
func detectEndianness() binary.ByteOrder {
var x uint32 = 0x01020304
if *(*byte)(unsafe.Pointer(&x)) == 0x01 {
return binary.BigEndian
}
return binary.LittleEndian
}
func init() {
nativeEndian = detectEndianness()
}
type genericTransport struct {
io.ReadWriteCloser
}
func (t genericTransport) SendNullByte() error {
_, err := t.Write([]byte{0})
return err
}
func (t genericTransport) SupportsUnixFDs() bool {
return false
}
func (t genericTransport) EnableUnixFDs() {}
func (t genericTransport) ReadMessage() (*Message, error) {
return DecodeMessage(t)
}
func (t genericTransport) SendMessage(msg *Message) error {
for _, v := range msg.Body {
if _, ok := v.(UnixFD); ok {
return errors.New("dbus: unix fd passing not enabled")
}
}
return msg.EncodeTo(t, nativeEndian)
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/transport_tcp.go
================================================
//+build !windows
package dbus
import (
"errors"
"net"
)
func init() {
transports["tcp"] = newTcpTransport
}
func tcpFamily(keys string) (string, error) {
switch getKey(keys, "family") {
case "":
return "tcp", nil
case "ipv4":
return "tcp4", nil
case "ipv6":
return "tcp6", nil
default:
return "", errors.New("dbus: invalid tcp family (must be ipv4 or ipv6)")
}
}
func newTcpTransport(keys string) (transport, error) {
host := getKey(keys, "host")
port := getKey(keys, "port")
if host == "" || port == "" {
return nil, errors.New("dbus: unsupported address (must set host and port)")
}
protocol, err := tcpFamily(keys)
if err != nil {
return nil, err
}
socket, err := net.Dial(protocol, net.JoinHostPort(host, port))
if err != nil {
return nil, err
}
return NewConn(socket)
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/transport_unix.go
================================================
//+build !windows,!solaris
package dbus
import (
"bytes"
"encoding/binary"
"errors"
"io"
"net"
"syscall"
)
type oobReader struct {
conn *net.UnixConn
oob []byte
buf [4096]byte
}
func (o *oobReader) Read(b []byte) (n int, err error) {
n, oobn, flags, _, err := o.conn.ReadMsgUnix(b, o.buf[:])
if err != nil {
return n, err
}
if flags&syscall.MSG_CTRUNC != 0 {
return n, errors.New("dbus: control data truncated (too many fds received)")
}
o.oob = append(o.oob, o.buf[:oobn]...)
return n, nil
}
type unixTransport struct {
*net.UnixConn
hasUnixFDs bool
}
func newUnixTransport(keys string) (transport, error) {
var err error
t := new(unixTransport)
abstract := getKey(keys, "abstract")
path := getKey(keys, "path")
switch {
case abstract == "" && path == "":
return nil, errors.New("dbus: invalid address (neither path nor abstract set)")
case abstract != "" && path == "":
t.UnixConn, err = net.DialUnix("unix", nil, &net.UnixAddr{Name: "@" + abstract, Net: "unix"})
if err != nil {
return nil, err
}
return t, nil
case abstract == "" && path != "":
t.UnixConn, err = net.DialUnix("unix", nil, &net.UnixAddr{Name: path, Net: "unix"})
if err != nil {
return nil, err
}
return t, nil
default:
return nil, errors.New("dbus: invalid address (both path and abstract set)")
}
}
func init() {
transports["unix"] = newUnixTransport
}
func (t *unixTransport) EnableUnixFDs() {
t.hasUnixFDs = true
}
func (t *unixTransport) ReadMessage() (*Message, error) {
var (
blen, hlen uint32
csheader [16]byte
headers []header
order binary.ByteOrder
unixfds uint32
)
// To be sure that all bytes of out-of-band data are read, we use a special
// reader that uses ReadUnix on the underlying connection instead of Read
// and gathers the out-of-band data in a buffer.
rd := &oobReader{conn: t.UnixConn}
// read the first 16 bytes (the part of the header that has a constant size),
// from which we can figure out the length of the rest of the message
if _, err := io.ReadFull(rd, csheader[:]); err != nil {
return nil, err
}
switch csheader[0] {
case 'l':
order = binary.LittleEndian
case 'B':
order = binary.BigEndian
default:
return nil, InvalidMessageError("invalid byte order")
}
// csheader[4:8] -> length of message body, csheader[12:16] -> length of
// header fields (without alignment)
binary.Read(bytes.NewBuffer(csheader[4:8]), order, &blen)
binary.Read(bytes.NewBuffer(csheader[12:]), order, &hlen)
if hlen%8 != 0 {
hlen += 8 - (hlen % 8)
}
// decode headers and look for unix fds
headerdata := make([]byte, hlen+4)
copy(headerdata, csheader[12:])
if _, err := io.ReadFull(t, headerdata[4:]); err != nil {
return nil, err
}
dec := newDecoder(bytes.NewBuffer(headerdata), order)
dec.pos = 12
vs, err := dec.Decode(Signature{"a(yv)"})
if err != nil {
return nil, err
}
Store(vs, &headers)
for _, v := range headers {
if v.Field == byte(FieldUnixFDs) {
unixfds, _ = v.Variant.value.(uint32)
}
}
all := make([]byte, 16+hlen+blen)
copy(all, csheader[:])
copy(all[16:], headerdata[4:])
if _, err := io.ReadFull(rd, all[16+hlen:]); err != nil {
return nil, err
}
if unixfds != 0 {
if !t.hasUnixFDs {
return nil, errors.New("dbus: got unix fds on unsupported transport")
}
// read the fds from the OOB data
scms, err := syscall.ParseSocketControlMessage(rd.oob)
if err != nil {
return nil, err
}
if len(scms) != 1 {
return nil, errors.New("dbus: received more than one socket control message")
}
fds, err := syscall.ParseUnixRights(&scms[0])
if err != nil {
return nil, err
}
msg, err := DecodeMessage(bytes.NewBuffer(all))
if err != nil {
return nil, err
}
// substitute the values in the message body (which are indices for the
// array receiver via OOB) with the actual values
for i, v := range msg.Body {
if j, ok := v.(UnixFDIndex); ok {
if uint32(j) >= unixfds {
return nil, InvalidMessageError("invalid index for unix fd")
}
msg.Body[i] = UnixFD(fds[j])
}
}
return msg, nil
}
return DecodeMessage(bytes.NewBuffer(all))
}
func (t *unixTransport) SendMessage(msg *Message) error {
fds := make([]int, 0)
for i, v := range msg.Body {
if fd, ok := v.(UnixFD); ok {
msg.Body[i] = UnixFDIndex(len(fds))
fds = append(fds, int(fd))
}
}
if len(fds) != 0 {
if !t.hasUnixFDs {
return errors.New("dbus: unix fd passing not enabled")
}
msg.Headers[FieldUnixFDs] = MakeVariant(uint32(len(fds)))
oob := syscall.UnixRights(fds...)
buf := new(bytes.Buffer)
msg.EncodeTo(buf, nativeEndian)
n, oobn, err := t.UnixConn.WriteMsgUnix(buf.Bytes(), oob, nil)
if err != nil {
return err
}
if n != buf.Len() || oobn != len(oob) {
return io.ErrShortWrite
}
} else {
if err := msg.EncodeTo(t, nativeEndian); err != nil {
return nil
}
}
return nil
}
func (t *unixTransport) SupportsUnixFDs() bool {
return true
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/transport_unixcred_dragonfly.go
================================================
// The UnixCredentials system call is currently only implemented on Linux
// http://golang.org/src/pkg/syscall/sockcmsg_linux.go
// https://golang.org/s/go1.4-syscall
// http://code.google.com/p/go/source/browse/unix/sockcmsg_linux.go?repo=sys
// Local implementation of the UnixCredentials system call for DragonFly BSD
package dbus
/*
#include
*/
import "C"
import (
"io"
"os"
"syscall"
"unsafe"
)
// http://golang.org/src/pkg/syscall/ztypes_linux_amd64.go
// http://golang.org/src/pkg/syscall/ztypes_dragonfly_amd64.go
type Ucred struct {
Pid int32
Uid uint32
Gid uint32
}
// http://golang.org/src/pkg/syscall/types_linux.go
// http://golang.org/src/pkg/syscall/types_dragonfly.go
// https://github.com/DragonFlyBSD/DragonFlyBSD/blob/master/sys/sys/ucred.h
const (
SizeofUcred = C.sizeof_struct_ucred
)
// http://golang.org/src/pkg/syscall/sockcmsg_unix.go
func cmsgAlignOf(salen int) int {
// From http://golang.org/src/pkg/syscall/sockcmsg_unix.go
//salign := sizeofPtr
// NOTE: It seems like 64-bit Darwin and DragonFly BSD kernels
// still require 32-bit aligned access to network subsystem.
//if darwin64Bit || dragonfly64Bit {
// salign = 4
//}
salign := 4
return (salen + salign - 1) & ^(salign - 1)
}
// http://golang.org/src/pkg/syscall/sockcmsg_unix.go
func cmsgData(h *syscall.Cmsghdr) unsafe.Pointer {
return unsafe.Pointer(uintptr(unsafe.Pointer(h)) + uintptr(cmsgAlignOf(syscall.SizeofCmsghdr)))
}
// http://golang.org/src/pkg/syscall/sockcmsg_linux.go
// UnixCredentials encodes credentials into a socket control message
// for sending to another process. This can be used for
// authentication.
func UnixCredentials(ucred *Ucred) []byte {
b := make([]byte, syscall.CmsgSpace(SizeofUcred))
h := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0]))
h.Level = syscall.SOL_SOCKET
h.Type = syscall.SCM_CREDS
h.SetLen(syscall.CmsgLen(SizeofUcred))
*((*Ucred)(cmsgData(h))) = *ucred
return b
}
// http://golang.org/src/pkg/syscall/sockcmsg_linux.go
// ParseUnixCredentials decodes a socket control message that contains
// credentials in a Ucred structure. To receive such a message, the
// SO_PASSCRED option must be enabled on the socket.
func ParseUnixCredentials(m *syscall.SocketControlMessage) (*Ucred, error) {
if m.Header.Level != syscall.SOL_SOCKET {
return nil, syscall.EINVAL
}
if m.Header.Type != syscall.SCM_CREDS {
return nil, syscall.EINVAL
}
ucred := *(*Ucred)(unsafe.Pointer(&m.Data[0]))
return &ucred, nil
}
func (t *unixTransport) SendNullByte() error {
ucred := &Ucred{Pid: int32(os.Getpid()), Uid: uint32(os.Getuid()), Gid: uint32(os.Getgid())}
b := UnixCredentials(ucred)
_, oobn, err := t.UnixConn.WriteMsgUnix([]byte{0}, b, nil)
if err != nil {
return err
}
if oobn != len(b) {
return io.ErrShortWrite
}
return nil
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/transport_unixcred_freebsd.go
================================================
// The UnixCredentials system call is currently only implemented on Linux
// http://golang.org/src/pkg/syscall/sockcmsg_linux.go
// https://golang.org/s/go1.4-syscall
// http://code.google.com/p/go/source/browse/unix/sockcmsg_linux.go?repo=sys
// Local implementation of the UnixCredentials system call for FreeBSD
package dbus
/*
const int sizeofPtr = sizeof(void*);
#define _WANT_UCRED
#include
*/
import "C"
import (
"io"
"os"
"syscall"
"unsafe"
)
// http://golang.org/src/pkg/syscall/ztypes_linux_amd64.go
// https://golang.org/src/syscall/ztypes_freebsd_amd64.go
type Ucred struct {
Pid int32
Uid uint32
Gid uint32
}
// http://golang.org/src/pkg/syscall/types_linux.go
// https://golang.org/src/syscall/types_freebsd.go
// https://github.com/freebsd/freebsd/blob/master/sys/sys/ucred.h
const (
SizeofUcred = C.sizeof_struct_ucred
)
// http://golang.org/src/pkg/syscall/sockcmsg_unix.go
func cmsgAlignOf(salen int) int {
salign := C.sizeofPtr
return (salen + salign - 1) & ^(salign - 1)
}
// http://golang.org/src/pkg/syscall/sockcmsg_unix.go
func cmsgData(h *syscall.Cmsghdr) unsafe.Pointer {
return unsafe.Pointer(uintptr(unsafe.Pointer(h)) + uintptr(cmsgAlignOf(syscall.SizeofCmsghdr)))
}
// http://golang.org/src/pkg/syscall/sockcmsg_linux.go
// UnixCredentials encodes credentials into a socket control message
// for sending to another process. This can be used for
// authentication.
func UnixCredentials(ucred *Ucred) []byte {
b := make([]byte, syscall.CmsgSpace(SizeofUcred))
h := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0]))
h.Level = syscall.SOL_SOCKET
h.Type = syscall.SCM_CREDS
h.SetLen(syscall.CmsgLen(SizeofUcred))
*((*Ucred)(cmsgData(h))) = *ucred
return b
}
// http://golang.org/src/pkg/syscall/sockcmsg_linux.go
// ParseUnixCredentials decodes a socket control message that contains
// credentials in a Ucred structure. To receive such a message, the
// SO_PASSCRED option must be enabled on the socket.
func ParseUnixCredentials(m *syscall.SocketControlMessage) (*Ucred, error) {
if m.Header.Level != syscall.SOL_SOCKET {
return nil, syscall.EINVAL
}
if m.Header.Type != syscall.SCM_CREDS {
return nil, syscall.EINVAL
}
ucred := *(*Ucred)(unsafe.Pointer(&m.Data[0]))
return &ucred, nil
}
func (t *unixTransport) SendNullByte() error {
ucred := &Ucred{Pid: int32(os.Getpid()), Uid: uint32(os.Getuid()), Gid: uint32(os.Getgid())}
b := UnixCredentials(ucred)
_, oobn, err := t.UnixConn.WriteMsgUnix([]byte{0}, b, nil)
if err != nil {
return err
}
if oobn != len(b) {
return io.ErrShortWrite
}
return nil
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/transport_unixcred_linux.go
================================================
// The UnixCredentials system call is currently only implemented on Linux
// http://golang.org/src/pkg/syscall/sockcmsg_linux.go
// https://golang.org/s/go1.4-syscall
// http://code.google.com/p/go/source/browse/unix/sockcmsg_linux.go?repo=sys
package dbus
import (
"io"
"os"
"syscall"
)
func (t *unixTransport) SendNullByte() error {
ucred := &syscall.Ucred{Pid: int32(os.Getpid()), Uid: uint32(os.Getuid()), Gid: uint32(os.Getgid())}
b := syscall.UnixCredentials(ucred)
_, oobn, err := t.UnixConn.WriteMsgUnix([]byte{0}, b, nil)
if err != nil {
return err
}
if oobn != len(b) {
return io.ErrShortWrite
}
return nil
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/transport_unixcred_openbsd.go
================================================
package dbus
import "io"
func (t *unixTransport) SendNullByte() error {
n, _, err := t.UnixConn.WriteMsgUnix([]byte{0}, nil, nil)
if err != nil {
return err
}
if n != 1 {
return io.ErrShortWrite
}
return nil
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/variant.go
================================================
package dbus
import (
"bytes"
"fmt"
"reflect"
"sort"
"strconv"
)
// Variant represents the D-Bus variant type.
type Variant struct {
sig Signature
value interface{}
}
// MakeVariant converts the given value to a Variant. It panics if v cannot be
// represented as a D-Bus type.
func MakeVariant(v interface{}) Variant {
return MakeVariantWithSignature(v, SignatureOf(v))
}
// MakeVariantWithSignature converts the given value to a Variant.
func MakeVariantWithSignature(v interface{}, s Signature) Variant {
return Variant{s, v}
}
// ParseVariant parses the given string as a variant as described at
// https://developer.gnome.org/glib/unstable/gvariant-text.html. If sig is not
// empty, it is taken to be the expected signature for the variant.
func ParseVariant(s string, sig Signature) (Variant, error) {
tokens := varLex(s)
p := &varParser{tokens: tokens}
n, err := varMakeNode(p)
if err != nil {
return Variant{}, err
}
if sig.str == "" {
sig, err = varInfer(n)
if err != nil {
return Variant{}, err
}
}
v, err := n.Value(sig)
if err != nil {
return Variant{}, err
}
return MakeVariant(v), nil
}
// format returns a formatted version of v and whether this string can be parsed
// unambigously.
func (v Variant) format() (string, bool) {
switch v.sig.str[0] {
case 'b', 'i':
return fmt.Sprint(v.value), true
case 'n', 'q', 'u', 'x', 't', 'd', 'h':
return fmt.Sprint(v.value), false
case 's':
return strconv.Quote(v.value.(string)), true
case 'o':
return strconv.Quote(string(v.value.(ObjectPath))), false
case 'g':
return strconv.Quote(v.value.(Signature).str), false
case 'v':
s, unamb := v.value.(Variant).format()
if !unamb {
return "<@" + v.value.(Variant).sig.str + " " + s + ">", true
}
return "<" + s + ">", true
case 'y':
return fmt.Sprintf("%#x", v.value.(byte)), false
}
rv := reflect.ValueOf(v.value)
switch rv.Kind() {
case reflect.Slice:
if rv.Len() == 0 {
return "[]", false
}
unamb := true
buf := bytes.NewBuffer([]byte("["))
for i := 0; i < rv.Len(); i++ {
// TODO: slooow
s, b := MakeVariant(rv.Index(i).Interface()).format()
unamb = unamb && b
buf.WriteString(s)
if i != rv.Len()-1 {
buf.WriteString(", ")
}
}
buf.WriteByte(']')
return buf.String(), unamb
case reflect.Map:
if rv.Len() == 0 {
return "{}", false
}
unamb := true
var buf bytes.Buffer
kvs := make([]string, rv.Len())
for i, k := range rv.MapKeys() {
s, b := MakeVariant(k.Interface()).format()
unamb = unamb && b
buf.Reset()
buf.WriteString(s)
buf.WriteString(": ")
s, b = MakeVariant(rv.MapIndex(k).Interface()).format()
unamb = unamb && b
buf.WriteString(s)
kvs[i] = buf.String()
}
buf.Reset()
buf.WriteByte('{')
sort.Strings(kvs)
for i, kv := range kvs {
if i > 0 {
buf.WriteString(", ")
}
buf.WriteString(kv)
}
buf.WriteByte('}')
return buf.String(), unamb
}
return `"INVALID"`, true
}
// Signature returns the D-Bus signature of the underlying value of v.
func (v Variant) Signature() Signature {
return v.sig
}
// String returns the string representation of the underlying value of v as
// described at https://developer.gnome.org/glib/unstable/gvariant-text.html.
func (v Variant) String() string {
s, unamb := v.format()
if !unamb {
return "@" + v.sig.str + " " + s
}
return s
}
// Value returns the underlying value of v.
func (v Variant) Value() interface{} {
return v.value
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/variant_lexer.go
================================================
package dbus
import (
"fmt"
"strings"
"unicode"
"unicode/utf8"
)
// Heavily inspired by the lexer from text/template.
type varToken struct {
typ varTokenType
val string
}
type varTokenType byte
const (
tokEOF varTokenType = iota
tokError
tokNumber
tokString
tokBool
tokArrayStart
tokArrayEnd
tokDictStart
tokDictEnd
tokVariantStart
tokVariantEnd
tokComma
tokColon
tokType
tokByteString
)
type varLexer struct {
input string
start int
pos int
width int
tokens []varToken
}
type lexState func(*varLexer) lexState
func varLex(s string) []varToken {
l := &varLexer{input: s}
l.run()
return l.tokens
}
func (l *varLexer) accept(valid string) bool {
if strings.IndexRune(valid, l.next()) >= 0 {
return true
}
l.backup()
return false
}
func (l *varLexer) backup() {
l.pos -= l.width
}
func (l *varLexer) emit(t varTokenType) {
l.tokens = append(l.tokens, varToken{t, l.input[l.start:l.pos]})
l.start = l.pos
}
func (l *varLexer) errorf(format string, v ...interface{}) lexState {
l.tokens = append(l.tokens, varToken{
tokError,
fmt.Sprintf(format, v...),
})
return nil
}
func (l *varLexer) ignore() {
l.start = l.pos
}
func (l *varLexer) next() rune {
var r rune
if l.pos >= len(l.input) {
l.width = 0
return -1
}
r, l.width = utf8.DecodeRuneInString(l.input[l.pos:])
l.pos += l.width
return r
}
func (l *varLexer) run() {
for state := varLexNormal; state != nil; {
state = state(l)
}
}
func (l *varLexer) peek() rune {
r := l.next()
l.backup()
return r
}
func varLexNormal(l *varLexer) lexState {
for {
r := l.next()
switch {
case r == -1:
l.emit(tokEOF)
return nil
case r == '[':
l.emit(tokArrayStart)
case r == ']':
l.emit(tokArrayEnd)
case r == '{':
l.emit(tokDictStart)
case r == '}':
l.emit(tokDictEnd)
case r == '<':
l.emit(tokVariantStart)
case r == '>':
l.emit(tokVariantEnd)
case r == ':':
l.emit(tokColon)
case r == ',':
l.emit(tokComma)
case r == '\'' || r == '"':
l.backup()
return varLexString
case r == '@':
l.backup()
return varLexType
case unicode.IsSpace(r):
l.ignore()
case unicode.IsNumber(r) || r == '+' || r == '-':
l.backup()
return varLexNumber
case r == 'b':
pos := l.start
if n := l.peek(); n == '"' || n == '\'' {
return varLexByteString
}
// not a byte string; try to parse it as a type or bool below
l.pos = pos + 1
l.width = 1
fallthrough
default:
// either a bool or a type. Try bools first.
l.backup()
if l.pos+4 <= len(l.input) {
if l.input[l.pos:l.pos+4] == "true" {
l.pos += 4
l.emit(tokBool)
continue
}
}
if l.pos+5 <= len(l.input) {
if l.input[l.pos:l.pos+5] == "false" {
l.pos += 5
l.emit(tokBool)
continue
}
}
// must be a type.
return varLexType
}
}
}
var varTypeMap = map[string]string{
"boolean": "b",
"byte": "y",
"int16": "n",
"uint16": "q",
"int32": "i",
"uint32": "u",
"int64": "x",
"uint64": "t",
"double": "f",
"string": "s",
"objectpath": "o",
"signature": "g",
}
func varLexByteString(l *varLexer) lexState {
q := l.next()
Loop:
for {
switch l.next() {
case '\\':
if r := l.next(); r != -1 {
break
}
fallthrough
case -1:
return l.errorf("unterminated bytestring")
case q:
break Loop
}
}
l.emit(tokByteString)
return varLexNormal
}
func varLexNumber(l *varLexer) lexState {
l.accept("+-")
digits := "0123456789"
if l.accept("0") {
if l.accept("x") {
digits = "0123456789abcdefABCDEF"
} else {
digits = "01234567"
}
}
for strings.IndexRune(digits, l.next()) >= 0 {
}
l.backup()
if l.accept(".") {
for strings.IndexRune(digits, l.next()) >= 0 {
}
l.backup()
}
if l.accept("eE") {
l.accept("+-")
for strings.IndexRune("0123456789", l.next()) >= 0 {
}
l.backup()
}
if r := l.peek(); unicode.IsLetter(r) {
l.next()
return l.errorf("bad number syntax: %q", l.input[l.start:l.pos])
}
l.emit(tokNumber)
return varLexNormal
}
func varLexString(l *varLexer) lexState {
q := l.next()
Loop:
for {
switch l.next() {
case '\\':
if r := l.next(); r != -1 {
break
}
fallthrough
case -1:
return l.errorf("unterminated string")
case q:
break Loop
}
}
l.emit(tokString)
return varLexNormal
}
func varLexType(l *varLexer) lexState {
at := l.accept("@")
for {
r := l.next()
if r == -1 {
break
}
if unicode.IsSpace(r) {
l.backup()
break
}
}
if at {
if _, err := ParseSignature(l.input[l.start+1 : l.pos]); err != nil {
return l.errorf("%s", err)
}
} else {
if _, ok := varTypeMap[l.input[l.start:l.pos]]; ok {
l.emit(tokType)
return varLexNormal
}
return l.errorf("unrecognized type %q", l.input[l.start:l.pos])
}
l.emit(tokType)
return varLexNormal
}
================================================
FILE: src/ibus-teni/vendor/github.com/godbus/dbus/variant_parser.go
================================================
package dbus
import (
"bytes"
"errors"
"fmt"
"io"
"reflect"
"strconv"
"strings"
"unicode/utf8"
)
type varParser struct {
tokens []varToken
i int
}
func (p *varParser) backup() {
p.i--
}
func (p *varParser) next() varToken {
if p.i < len(p.tokens) {
t := p.tokens[p.i]
p.i++
return t
}
return varToken{typ: tokEOF}
}
type varNode interface {
Infer() (Signature, error)
String() string
Sigs() sigSet
Value(Signature) (interface{}, error)
}
func varMakeNode(p *varParser) (varNode, error) {
var sig Signature
for {
t := p.next()
switch t.typ {
case tokEOF:
return nil, io.ErrUnexpectedEOF
case tokError:
return nil, errors.New(t.val)
case tokNumber:
return varMakeNumNode(t, sig)
case tokString:
return varMakeStringNode(t, sig)
case tokBool:
if sig.str != "" && sig.str != "b" {
return nil, varTypeError{t.val, sig}
}
b, err := strconv.ParseBool(t.val)
if err != nil {
return nil, err
}
return boolNode(b), nil
case tokArrayStart:
return varMakeArrayNode(p, sig)
case tokVariantStart:
return varMakeVariantNode(p, sig)
case tokDictStart:
return varMakeDictNode(p, sig)
case tokType:
if sig.str != "" {
return nil, errors.New("unexpected type annotation")
}
if t.val[0] == '@' {
sig.str = t.val[1:]
} else {
sig.str = varTypeMap[t.val]
}
case tokByteString:
if sig.str != "" && sig.str != "ay" {
return nil, varTypeError{t.val, sig}
}
b, err := varParseByteString(t.val)
if err != nil {
return nil, err
}
return byteStringNode(b), nil
default:
return nil, fmt.Errorf("unexpected %q", t.val)
}
}
}
type varTypeError struct {
val string
sig Signature
}
func (e varTypeError) Error() string {
return fmt.Sprintf("dbus: can't parse %q as type %q", e.val, e.sig.str)
}
type sigSet map[Signature]bool
func (s sigSet) Empty() bool {
return len(s) == 0
}
func (s sigSet) Intersect(s2 sigSet) sigSet {
r := make(sigSet)
for k := range s {
if s2[k] {
r[k] = true
}
}
return r
}
func (s sigSet) Single() (Signature, bool) {
if len(s) == 1 {
for k := range s {
return k, true
}
}
return Signature{}, false
}
func (s sigSet) ToArray() sigSet {
r := make(sigSet, len(s))
for k := range s {
r[Signature{"a" + k.str}] = true
}
return r
}
type numNode struct {
sig Signature
str string
val interface{}
}
var numSigSet = sigSet{
Signature{"y"}: true,
Signature{"n"}: true,
Signature{"q"}: true,
Signature{"i"}: true,
Signature{"u"}: true,
Signature{"x"}: true,
Signature{"t"}: true,
Signature{"d"}: true,
}
func (n numNode) Infer() (Signature, error) {
if strings.ContainsAny(n.str, ".e") {
return Signature{"d"}, nil
}
return Signature{"i"}, nil
}
func (n numNode) String() string {
return n.str
}
func (n numNode) Sigs() sigSet {
if n.sig.str != "" {
return sigSet{n.sig: true}
}
if strings.ContainsAny(n.str, ".e") {
return sigSet{Signature{"d"}: true}
}
return numSigSet
}
func (n numNode) Value(sig Signature) (interface{}, error) {
if n.sig.str != "" && n.sig != sig {
return nil, varTypeError{n.str, sig}
}
if n.val != nil {
return n.val, nil
}
return varNumAs(n.str, sig)
}
func varMakeNumNode(tok varToken, sig Signature) (varNode, error) {
if sig.str == "" {
return numNode{str: tok.val}, nil
}
num, err := varNumAs(tok.val, sig)
if err != nil {
return nil, err
}
return numNode{sig: sig, val: num}, nil
}
func varNumAs(s string, sig Signature) (interface{}, error) {
isUnsigned := false
size := 32
switch sig.str {
case "n":
size = 16
case "i":
case "x":
size = 64
case "y":
size = 8
isUnsigned = true
case "q":
size = 16
isUnsigned = true
case "u":
isUnsigned = true
case "t":
size = 64
isUnsigned = true
case "d":
d, err := strconv.ParseFloat(s, 64)
if err != nil {
return nil, err
}
return d, nil
default:
return nil, varTypeError{s, sig}
}
base := 10
if strings.HasPrefix(s, "0x") {
base = 16
s = s[2:]
}
if strings.HasPrefix(s, "0") && len(s) != 1 {
base = 8
s = s[1:]
}
if isUnsigned {
i, err := strconv.ParseUint(s, base, size)
if err != nil {
return nil, err
}
var v interface{} = i
switch sig.str {
case "y":
v = byte(i)
case "q":
v = uint16(i)
case "u":
v = uint32(i)
}
return v, nil
}
i, err := strconv.ParseInt(s, base, size)
if err != nil {
return nil, err
}
var v interface{} = i
switch sig.str {
case "n":
v = int16(i)
case "i":
v = int32(i)
}
return v, nil
}
type stringNode struct {
sig Signature
str string // parsed
val interface{} // has correct type
}
var stringSigSet = sigSet{
Signature{"s"}: true,
Signature{"g"}: true,
Signature{"o"}: true,
}
func (n stringNode) Infer() (Signature, error) {
return Signature{"s"}, nil
}
func (n stringNode) String() string {
return n.str
}
func (n stringNode) Sigs() sigSet {
if n.sig.str != "" {
return sigSet{n.sig: true}
}
return stringSigSet
}
func (n stringNode) Value(sig Signature) (interface{}, error) {
if n.sig.str != "" && n.sig != sig {
return nil, varTypeError{n.str, sig}
}
if n.val != nil {
return n.val, nil
}
switch {
case sig.str == "g":
return Signature{n.str}, nil
case sig.str == "o":
return ObjectPath(n.str), nil
case sig.str == "s":
return n.str, nil
default:
return nil, varTypeError{n.str, sig}
}
}
func varMakeStringNode(tok varToken, sig Signature) (varNode, error) {
if sig.str != "" && sig.str != "s" && sig.str != "g" && sig.str != "o" {
return nil, fmt.Errorf("invalid type %q for string", sig.str)
}
s, err := varParseString(tok.val)
if err != nil {
return nil, err
}
n := stringNode{str: s}
if sig.str == "" {
return stringNode{str: s}, nil
}
n.sig = sig
switch sig.str {
case "o":
n.val = ObjectPath(s)
case "g":
n.val = Signature{s}
case "s":
n.val = s
}
return n, nil
}
func varParseString(s string) (string, error) {
// quotes are guaranteed to be there
s = s[1 : len(s)-1]
buf := new(bytes.Buffer)
for len(s) != 0 {
r, size := utf8.DecodeRuneInString(s)
if r == utf8.RuneError && size == 1 {
return "", errors.New("invalid UTF-8")
}
s = s[size:]
if r != '\\' {
buf.WriteRune(r)
continue
}
r, size = utf8.DecodeRuneInString(s)
if r == utf8.RuneError && size == 1 {
return "", errors.New("invalid UTF-8")
}
s = s[size:]
switch r {
case 'a':
buf.WriteRune(0x7)
case 'b':
buf.WriteRune(0x8)
case 'f':
buf.WriteRune(0xc)
case 'n':
buf.WriteRune('\n')
case 'r':
buf.WriteRune('\r')
case 't':
buf.WriteRune('\t')
case '\n':
case 'u':
if len(s) < 4 {
return "", errors.New("short unicode escape")
}
r, err := strconv.ParseUint(s[:4], 16, 32)
if err != nil {
return "", err
}
buf.WriteRune(rune(r))
s = s[4:]
case 'U':
if len(s) < 8 {
return "", errors.New("short unicode escape")
}
r, err := strconv.ParseUint(s[:8], 16, 32)
if err != nil {
return "", err
}
buf.WriteRune(rune(r))
s = s[8:]
default:
buf.WriteRune(r)
}
}
return buf.String(), nil
}
var boolSigSet = sigSet{Signature{"b"}: true}
type boolNode bool
func (boolNode) Infer() (Signature, error) {
return Signature{"b"}, nil
}
func (b boolNode) String() string {
if b {
return "true"
}
return "false"
}
func (boolNode) Sigs() sigSet {
return boolSigSet
}
func (b boolNode) Value(sig Signature) (interface{}, error) {
if sig.str != "b" {
return nil, varTypeError{b.String(), sig}
}
return bool(b), nil
}
type arrayNode struct {
set sigSet
children []varNode
val interface{}
}
func (n arrayNode) Infer() (Signature, error) {
for _, v := range n.children {
csig, err := varInfer(v)
if err != nil {
continue
}
return Signature{"a" + csig.str}, nil
}
return Signature{}, fmt.Errorf("can't infer type for %q", n.String())
}
func (n arrayNode) String() string {
s := "["
for i, v := range n.children {
s += v.String()
if i != len(n.children)-1 {
s += ", "
}
}
return s + "]"
}
func (n arrayNode) Sigs() sigSet {
return n.set
}
func (n arrayNode) Value(sig Signature) (interface{}, error) {
if n.set.Empty() {
// no type information whatsoever, so this must be an empty slice
return reflect.MakeSlice(typeFor(sig.str), 0, 0).Interface(), nil
}
if !n.set[sig] {
return nil, varTypeError{n.String(), sig}
}
s := reflect.MakeSlice(typeFor(sig.str), len(n.children), len(n.children))
for i, v := range n.children {
rv, err := v.Value(Signature{sig.str[1:]})
if err != nil {
return nil, err
}
s.Index(i).Set(reflect.ValueOf(rv))
}
return s.Interface(), nil
}
func varMakeArrayNode(p *varParser, sig Signature) (varNode, error) {
var n arrayNode
if sig.str != "" {
n.set = sigSet{sig: true}
}
if t := p.next(); t.typ == tokArrayEnd {
return n, nil
} else {
p.backup()
}
Loop:
for {
t := p.next()
switch t.typ {
case tokEOF:
return nil, io.ErrUnexpectedEOF
case tokError:
return nil, errors.New(t.val)
}
p.backup()
cn, err := varMakeNode(p)
if err != nil {
return nil, err
}
if cset := cn.Sigs(); !cset.Empty() {
if n.set.Empty() {
n.set = cset.ToArray()
} else {
nset := cset.ToArray().Intersect(n.set)
if nset.Empty() {
return nil, fmt.Errorf("can't parse %q with given type information", cn.String())
}
n.set = nset
}
}
n.children = append(n.children, cn)
switch t := p.next(); t.typ {
case tokEOF:
return nil, io.ErrUnexpectedEOF
case tokError:
return nil, errors.New(t.val)
case tokArrayEnd:
break Loop
case tokComma:
continue
default:
return nil, fmt.Errorf("unexpected %q", t.val)
}
}
return n, nil
}
type variantNode struct {
n varNode
}
var variantSet = sigSet{
Signature{"v"}: true,
}
func (variantNode) Infer() (Signature, error) {
return Signature{"v"}, nil
}
func (n variantNode) String() string {
return "<" + n.n.String() + ">"
}
func (variantNode) Sigs() sigSet {
return variantSet
}
func (n variantNode) Value(sig Signature) (interface{}, error) {
if sig.str != "v" {
return nil, varTypeError{n.String(), sig}
}
sig, err := varInfer(n.n)
if err != nil {
return nil, err
}
v, err := n.n.Value(sig)
if err != nil {
return nil, err
}
return MakeVariant(v), nil
}
func varMakeVariantNode(p *varParser, sig Signature) (varNode, error) {
n, err := varMakeNode(p)
if err != nil {
return nil, err
}
if t := p.next(); t.typ != tokVariantEnd {
return nil, fmt.Errorf("unexpected %q", t.val)
}
vn := variantNode{n}
if sig.str != "" && sig.str != "v" {
return nil, varTypeError{vn.String(), sig}
}
return variantNode{n}, nil
}
type dictEntry struct {
key, val varNode
}
type dictNode struct {
kset, vset sigSet
children []dictEntry
val interface{}
}
func (n dictNode) Infer() (Signature, error) {
for _, v := range n.children {
ksig, err := varInfer(v.key)
if err != nil {
continue
}
vsig, err := varInfer(v.val)
if err != nil {
continue
}
return Signature{"a{" + ksig.str + vsig.str + "}"}, nil
}
return Signature{}, fmt.Errorf("can't infer type for %q", n.String())
}
func (n dictNode) String() string {
s := "{"
for i, v := range n.children {
s += v.key.String() + ": " + v.val.String()
if i != len(n.children)-1 {
s += ", "
}
}
return s + "}"
}
func (n dictNode) Sigs() sigSet {
r := sigSet{}
for k := range n.kset {
for v := range n.vset {
sig := "a{" + k.str + v.str + "}"
r[Signature{sig}] = true
}
}
return r
}
func (n dictNode) Value(sig Signature) (interface{}, error) {
set := n.Sigs()
if set.Empty() {
// no type information -> empty dict
return reflect.MakeMap(typeFor(sig.str)).Interface(), nil
}
if !set[sig] {
return nil, varTypeError{n.String(), sig}
}
m := reflect.MakeMap(typeFor(sig.str))
ksig := Signature{sig.str[2:3]}
vsig := Signature{sig.str[3 : len(sig.str)-1]}
for _, v := range n.children {
kv, err := v.key.Value(ksig)
if err != nil {
return nil, err
}
vv, err := v.val.Value(vsig)
if err != nil {
return nil, err
}
m.SetMapIndex(reflect.ValueOf(kv), reflect.ValueOf(vv))
}
return m.Interface(), nil
}
func varMakeDictNode(p *varParser, sig Signature) (varNode, error) {
var n dictNode
if sig.str != "" {
if len(sig.str) < 5 {
return nil, fmt.Errorf("invalid signature %q for dict type", sig)
}
ksig := Signature{string(sig.str[2])}
vsig := Signature{sig.str[3 : len(sig.str)-1]}
n.kset = sigSet{ksig: true}
n.vset = sigSet{vsig: true}
}
if t := p.next(); t.typ == tokDictEnd {
return n, nil
} else {
p.backup()
}
Loop:
for {
t := p.next()
switch t.typ {
case tokEOF:
return nil, io.ErrUnexpectedEOF
case tokError:
return nil, errors.New(t.val)
}
p.backup()
kn, err := varMakeNode(p)
if err != nil {
return nil, err
}
if kset := kn.Sigs(); !kset.Empty() {
if n.kset.Empty() {
n.kset = kset
} else {
n.kset = kset.Intersect(n.kset)
if n.kset.Empty() {
return nil, fmt.Errorf("can't parse %q with given type information", kn.String())
}
}
}
t = p.next()
switch t.typ {
case tokEOF:
return nil, io.ErrUnexpectedEOF
case tokError:
return nil, errors.New(t.val)
case tokColon:
default:
return nil, fmt.Errorf("unexpected %q", t.val)
}
t = p.next()
switch t.typ {
case tokEOF:
return nil, io.ErrUnexpectedEOF
case tokError:
return nil, errors.New(t.val)
}
p.backup()
vn, err := varMakeNode(p)
if err != nil {
return nil, err
}
if vset := vn.Sigs(); !vset.Empty() {
if n.vset.Empty() {
n.vset = vset
} else {
n.vset = n.vset.Intersect(vset)
if n.vset.Empty() {
return nil, fmt.Errorf("can't parse %q with given type information", vn.String())
}
}
}
n.children = append(n.children, dictEntry{kn, vn})
t = p.next()
switch t.typ {
case tokEOF:
return nil, io.ErrUnexpectedEOF
case tokError:
return nil, errors.New(t.val)
case tokDictEnd:
break Loop
case tokComma:
continue
default:
return nil, fmt.Errorf("unexpected %q", t.val)
}
}
return n, nil
}
type byteStringNode []byte
var byteStringSet = sigSet{
Signature{"ay"}: true,
}
func (byteStringNode) Infer() (Signature, error) {
return Signature{"ay"}, nil
}
func (b byteStringNode) String() string {
return string(b)
}
func (b byteStringNode) Sigs() sigSet {
return byteStringSet
}
func (b byteStringNode) Value(sig Signature) (interface{}, error) {
if sig.str != "ay" {
return nil, varTypeError{b.String(), sig}
}
return []byte(b), nil
}
func varParseByteString(s string) ([]byte, error) {
// quotes and b at start are guaranteed to be there
b := make([]byte, 0, 1)
s = s[2 : len(s)-1]
for len(s) != 0 {
c := s[0]
s = s[1:]
if c != '\\' {
b = append(b, c)
continue
}
c = s[0]
s = s[1:]
switch c {
case 'a':
b = append(b, 0x7)
case 'b':
b = append(b, 0x8)
case 'f':
b = append(b, 0xc)
case 'n':
b = append(b, '\n')
case 'r':
b = append(b, '\r')
case 't':
b = append(b, '\t')
case 'x':
if len(s) < 2 {
return nil, errors.New("short escape")
}
n, err := strconv.ParseUint(s[:2], 16, 8)
if err != nil {
return nil, err
}
b = append(b, byte(n))
s = s[2:]
case '0':
if len(s) < 3 {
return nil, errors.New("short escape")
}
n, err := strconv.ParseUint(s[:3], 8, 8)
if err != nil {
return nil, err
}
b = append(b, byte(n))
s = s[3:]
default:
b = append(b, c)
}
}
return append(b, 0), nil
}
func varInfer(n varNode) (Signature, error) {
if sig, ok := n.Sigs().Single(); ok {
return sig, nil
}
return n.Infer()
}
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/README.md
================================================
goibus - golang implementation of libibus
==
goibus implements the libibus bindings in golang. goibus can be used to create IBus engines aka develop custom input methods.
IBus is an Intelligent Input Bus. It provides full featured and user friendly input method user interface. It also may help developers to develop input method easily.
This library is little bit different than other libibus bindings/wrappers. Instead of wrapping `libibus c library` or `GOBject-Introspection`, it implements whole functionality by communicating over DBus IPC. Because of that it is a independent 100% pure golang library without any native dependencies.
####NB:
libibus has various classes that are not absolutely required for creating engines. This library only implements engine related classes. Some uncommon class/methods are also skipped for now. You can always implement those and send PR ;)
This table shows the current status of implementation.
libibus | - | goibus
--- | --- | ---
[IBusAttrList](http://ibus.github.io/docs/ibus-1.5/IBusAttrList.html) | :white_check_mark: | Implemented In `text.go`
[IBusAttribute](http://ibus.github.io/docs/ibus-1.5/IBusAttribute.html) | :large_blue_circle: | Ignored for now, will implement
[IBusBus](http://ibus.github.io/docs/ibus-1.5/IBusBus.html) | :white_check_mark: | Implemented In `bus.go`
[IBusComponent](http://ibus.github.io/docs/ibus-1.5/IBusComponent.html) | :white_check_mark: | Implemented In `component.go`
[IBusConfig](http://ibus.github.io/docs/ibus-1.5/IBusConfig.html) | :red_circle: | Ignored, not implemented
[IBusConfigService](http://ibus.github.io/docs/ibus-1.5/IBusConfigService.html) | :red_circle: | Ignored, not implemented
[IBusEngine](http://ibus.github.io/docs/ibus-1.5/IBusEngine.html) | :white_check_mark: | Implemented In `engine.go`
[IBusEngineDesc](http://ibus.github.io/docs/ibus-1.5/IBusEngineDesc.html) | :white_check_mark: | Implemented In `engineDesc.go`
[IBusFactory](http://ibus.github.io/docs/ibus-1.5/IBusFactory.html) | :white_check_mark: | Implemented In `factory.go`
[IBusHotkeyProfile](http://ibus.github.io/docs/ibus-1.5/IBusHotkeyProfile.html) | :red_circle: | Ignored, not implemented
[IBusInputContext](http://ibus.github.io/docs/ibus-1.5/IBusInputContext.html) | :large_blue_circle: | Ignored, relevant inherited signals implemented in `Engine`
[IBusKeymap](http://ibus.github.io/docs/ibus-1.5/IBusKeymap.html) | :large_blue_circle: | Ignored for now, will implement
[IBusLookupTable](http://ibus.github.io/docs/ibus-1.5/IBusLookupTable.html) | :white_check_mark: | Implemented In `lookupTable.go`
[IBusObject](http://ibus.github.io/docs/ibus-1.5/IBusObject.html) | :white_check_mark: | Ignored, Parent/Interface class, relevant inherited signals implemented in `Engine`
[IBusObservedPath](http://ibus.github.io/docs/ibus-1.5/IBusObservedPath.html) | :red_circle: | Ignored, not implemented
[IBusPanelService](http://ibus.github.io/docs/ibus-1.5/IBusPanelService.html) | :red_circle: | Ignored, not implemented
[IBusPropList](http://ibus.github.io/docs/ibus-1.5/IBusPropList.html) | :white_check_mark: | Implemented In `property.go`
[IBusProperty](http://ibus.github.io/docs/ibus-1.5/IBusProperty.html) | :white_check_mark: | Implemented In `property.go`
[IBusProxy](http://ibus.github.io/docs/ibus-1.5/IBusProxy.html) | :red_circle: | Ignored, not implemented
[IBusRegistry](http://ibus.github.io/docs/ibus-1.5/IBusRegistry.html) | :red_circle: | Ignored, not implemented
[IBusSerializable](http://ibus.github.io/docs/ibus-1.5/IBusSerializable.html) | :white_check_mark: | Not needed in golang, All implemented classes are Serializable
[IBusService](http://ibus.github.io/docs/ibus-1.5/IBusService.html) | :white_check_mark: | Ignored, not needed. Parent/Interface class
[IBusText](http://ibus.github.io/docs/ibus-1.5/IBusText.html) | :white_check_mark: | Implemented In `text.go`
Installation
==
```
go get github.com/godbus/dbus
go get github.com/sarim/goibus
```
check `_example` directory for a sample engine and ~~ TODO:detailed tutorial ~~. Run the sample engine by `_example -standalone` to see it in action.

License
==
**goibus** - golang implementation of libibus by **Sarim Khan**
Licensed under Mozilla Public License 1.1 ("MPL"), an open source/free software license.
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/ibus/bus.go
================================================
package ibus
import "github.com/godbus/dbus"
type Bus struct {
dbusConn *dbus.Conn
dbusObject dbus.BusObject
ibusObject dbus.BusObject
}
func NewBus() *Bus {
doPanic := func(err error) {
if err != nil {
panic(err)
}
}
addr := GetAddress()
conn, err := dbus.Dial(addr)
doPanic(err)
err = conn.Auth(GetUserAuth())
doPanic(err)
err = conn.Hello()
doPanic(err)
dbusObject := conn.Object(BUS_DAEMON_NAME, dbus.ObjectPath(BUS_DAEMON_PATH))
ibusObject := conn.Object(IBUS_SERVICE_IBUS, dbus.ObjectPath(IBUS_PATH_IBUS))
return &Bus{conn, dbusObject, ibusObject}
}
func (bus *Bus) CallMethod(name string, flags dbus.Flags, args ...interface{}) *dbus.Call {
return bus.ibusObject.Call(bus.ibusObject.Destination()+"."+name, flags, args...)
}
func (bus *Bus) RequestName(name string, flags dbus.RequestNameFlags) (dbus.RequestNameReply, error) {
return bus.dbusConn.RequestName(name, flags)
}
func (bus *Bus) RegisterComponent(component *Component) {
bus.CallMethod("RegisterComponent", 0, dbus.MakeVariant(component))
}
func (bus *Bus) GetDbusConn() *dbus.Conn {
return bus.dbusConn
}
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/ibus/common.go
================================================
package ibus
import (
"fmt"
"io/ioutil"
"os"
"strconv"
"strings"
"github.com/godbus/dbus"
)
const (
BUS_DAEMON_NAME = "org.freedesktop.DBus"
BUS_DAEMON_PATH = "/org/freedesktop/DBus"
BUS_PROPERTIES_NAME = "org.freedesktop.DBus.Properties"
IBUS_IFACE_IBUS = "org.freedesktop.IBus"
IBUS_PATH_IBUS = "/org/freedesktop/IBus"
IBUS_SERVICE_IBUS = "org.freedesktop.IBus"
IBUS_IFACE_PANEL = "org.freedesktop.IBus.Panel"
IBUS_IFACE_CONFIG = "org.freedesktop.IBus.Config"
IBUS_IFACE_SERVICE = "org.freedesktop.IBus.Service"
IBUS_IFACE_ENGINE = "org.freedesktop.IBus.Engine"
IBUS_IFACE_ENGINE_FACTORY = "org.freedesktop.IBus.Factory"
IBUS_IFACE_INPUT_CONTEXT = "org.freedesktop.IBus.InputContext"
IBUS_IFACE_NOTIFICATIONS = "org.freedesktop.IBus.Notifications"
IBUS_ENGINE_PREEDIT_CLEAR uint32 = 0
IBUS_ENGINE_PREEDIT_COMMIT uint32 = 1
ORIENTATION_HORIZONTAL int32 = 0
ORIENTATION_VERTICAL int32 = 1
ORIENTATION_SYSTEM int32 = 2
PROP_TYPE_NORMAL uint32 = 0
PROP_TYPE_TOGGLE uint32 = 1
PROP_TYPE_RADIO uint32 = 2
PROP_TYPE_MENU uint32 = 3
PROP_TYPE_SEPARATOR uint32 = 4
PROP_STATE_UNCHECKED uint32 = 0
PROP_STATE_CHECKED uint32 = 1
PROP_STATE_INCONSISTENT uint32 = 2
)
func GetAddress() string {
address := os.Getenv("IBUS_ADDRESS")
if address != "" {
return address
}
data, err := ioutil.ReadFile(GetSocketPath())
if err != nil {
panic(err)
}
for _, line := range strings.Split(string(data), "\n") {
if strings.Index(line, "IBUS_ADDRESS=") == 0 {
address = line[13:]
}
}
return address
}
func GetSocketPath() string {
path := os.Getenv("IBUS_ADDRESS_FILE")
if path != "" {
return path
}
display := os.Getenv("DISPLAY")
if display == "" {
fmt.Fprintf(os.Stderr, "DISPLAY is empty! We use default DISPLAY (:0.0)")
display = ":0.0"
}
// format is {hostname}:{displaynumber}.{screennumber}
hostname := "unix"
HDS := strings.SplitN(display, ":", 2)
DS := strings.SplitN(HDS[1], ".", 2)
if HDS[0] != "" {
hostname = HDS[0]
}
p := fmt.Sprintf("%s-%s-%s", GetLocalMachineId(), hostname, DS[0])
path = GetUserConfigDir() + "/ibus/bus/" + p
return path
}
func GetLocalMachineId() string {
var mID []byte
var err error
mID, err = ioutil.ReadFile("/var/lib/dbus/machine-id")
if err != nil {
mID, err = ioutil.ReadFile("/etc/machine-id")
if err != nil {
panic(err)
}
}
return strings.TrimSpace(string(mID))
}
func GetUserConfigDir() string {
dir := os.Getenv("XDG_CONFIG_HOME")
if dir == "" {
return os.Getenv("HOME") + "/.config"
}
return dir
}
func GetUserAuth() []dbus.Auth {
uid := os.Getenv("DBUS_AUTH_UID")
if uid == "" {
uid = strconv.Itoa(os.Getuid())
}
home := os.Getenv("DBUS_AUTH_HOME")
if home == "" {
home = os.Getenv("HOME")
}
return []dbus.Auth{dbus.AuthExternal(uid), dbus.AuthCookieSha1(uid, home)}
}
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/ibus/component.go
================================================
package ibus
import (
"encoding/xml"
"fmt"
"github.com/godbus/dbus"
"io"
)
type Component struct {
XMLName xml.Name `xml:"component" dbus:"-"`
Name string `xml:"-"`
Attachments map[string]dbus.Variant `xml:"-"`
ComponentName string `xml:"name"`
Description string `xml:"description"`
Version string `xml:"version"`
License string `xml:"license"`
Author string `xml:"author"`
Homepage string `xml:"homepage"`
Exec string `xml:"exec"`
Textdomain string `xml:"textdomain"`
ObservedPaths []dbus.Variant `xml:"-"`
EngineList []dbus.Variant `xml:"-"`
Engines []*EngineDesc `xml:"engines>engine" dbus:"-"`
}
func NewComponent(name string, desc string, version string, license string, author string, homepage string, exec string, textdomain string) *Component {
c := &Component{}
c.Name = "IBusComponent"
c.ComponentName = name
c.Description = desc
c.Version = version
c.License = license
c.Author = author
c.Homepage = homepage
c.Exec = exec
c.Textdomain = textdomain
return c
}
func (c *Component) AddEngine(e *EngineDesc) {
c.Engines = append(c.Engines, e)
c.EngineList = append(c.EngineList, dbus.MakeVariant(*e))
}
func (c *Component) OutputXML(w io.Writer) {
data, err := xml.MarshalIndent(c, "", " ")
if err != nil {
panic(err)
}
fmt.Fprintf(w, "%s%s\n\n%s\n", xml.Header, "", string(data))
}
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/ibus/engine.go
================================================
package ibus
import (
"github.com/godbus/dbus"
)
type Engine struct {
conn *dbus.Conn
objectPath dbus.ObjectPath
}
func BaseEngine(conn *dbus.Conn, objectPath dbus.ObjectPath) Engine {
return Engine{conn, objectPath}
}
func PublishEngine(conn *dbus.Conn, objectPath dbus.ObjectPath, userEngine interface{}) {
conn.Export(userEngine, objectPath, IBUS_IFACE_ENGINE)
conn.Export(userEngine, objectPath, IBUS_IFACE_SERVICE)
conn.Export(userEngine, objectPath, BUS_PROPERTIES_NAME)
}
func (e *Engine) emitSignal(name string, values ...interface{}) {
methodName := IBUS_IFACE_ENGINE + "." + name
e.conn.Emit(e.objectPath, methodName, values...)
}
func (e *Engine) GetAll(iface string) (map[string]dbus.Variant, *dbus.Error) {
items := make(map[string]dbus.Variant)
return items, nil
}
//@method(in_signature="uuu", out_signature="b")
func (e *Engine) ProcessKeyEvent(keyval uint32, keycode uint32, state uint32) (bool, *dbus.Error) {
return false, nil
}
//@method(in_signature="iiii")
func (e *Engine) SetCursorLocation(x int32, y int32, w int32, h int32) *dbus.Error {
return nil
}
//@method(in_signature="vuu")
func (e *Engine) SetSurroundingText(text dbus.Variant, cursor_index uint32, anchor_pos uint32) *dbus.Error {
return nil
}
//@method(in_signature="u")
func (e *Engine) SetCapabilities(cap uint32) *dbus.Error {
return nil
}
//@method()
func (e *Engine) FocusIn() *dbus.Error {
return nil
}
//@method()
func (e *Engine) FocusOut() *dbus.Error {
return nil
}
//@method()
func (e *Engine) Reset() *dbus.Error {
return nil
}
//@method()
func (e *Engine) PageUp() *dbus.Error {
return nil
}
//@method()
func (e *Engine) PageDown() *dbus.Error {
return nil
}
//@method()
func (e *Engine) CursorUp() *dbus.Error {
return nil
}
//@method()
func (e *Engine) CursorDown() *dbus.Error {
return nil
}
//@method(in_signature="uuu")
func (e *Engine) CandidateClicked(index uint32, button uint32, state uint32) *dbus.Error {
return nil
}
//@method()
func (e *Engine) Enable() *dbus.Error {
return nil
}
//@method()
func (e *Engine) Disable() *dbus.Error {
return nil
}
//@method(in_signature="su")
func (e *Engine) PropertyActivate(prop_name string, prop_state uint32) *dbus.Error {
return nil
}
//@method(in_signature="s")
func (e *Engine) PropertyShow(prop_name string) *dbus.Error {
return nil
}
//@method(in_signature="s")
func (e *Engine) PropertyHide(prop_name string) *dbus.Error {
return nil
}
//@method()
func (e *Engine) Destroy() *dbus.Error {
e.conn.Export(nil, e.objectPath, IBUS_IFACE_ENGINE)
e.conn.Export(nil, e.objectPath, IBUS_IFACE_SERVICE)
e.conn.Export(nil, e.objectPath, BUS_PROPERTIES_NAME)
return nil
}
//@signal(signature="v")
func (e *Engine) CommitText(text *Text) {
e.emitSignal("CommitText", dbus.MakeVariant(*text))
}
//@signal(signature="uuu")
func (e *Engine) ForwardKeyEvent(keyval uint32, keycode uint32, state uint32) {
e.emitSignal("ForwardKeyEvent", keyval, keycode, state)
}
//@signal(signature="vubu")
func (e *Engine) UpdatePreeditText(text *Text, cursor_pos uint32, visible bool) {
e.emitSignal("UpdatePreeditText", dbus.MakeVariant(*text), cursor_pos, visible, IBUS_ENGINE_PREEDIT_CLEAR)
}
func (e *Engine) UpdatePreeditTextWithMode(text *Text, cursor_pos uint32, visible bool, mode uint32) {
e.emitSignal("UpdatePreeditText", dbus.MakeVariant(*text), cursor_pos, visible, mode)
}
//@signal()
func (e *Engine) ShowPreeditText() {
e.emitSignal("ShowPreeditText")
}
//@signal()
func (e *Engine) HidePreeditText() {
e.emitSignal("HidePreeditText")
}
//@signal(signature="vb")
func (e *Engine) UpdateAuxiliaryText(text *Text, visible bool) {
e.emitSignal("UpdateAuxiliaryText", dbus.MakeVariant(*text), visible)
}
//@signal()
func (e *Engine) ShowAuxiliaryText() {
e.emitSignal("ShowAuxiliaryText")
}
//@signal()
func (e *Engine) HideAuxiliaryText() {
e.emitSignal("HideAuxiliaryText")
}
//@signal(signature="vb")
func (e *Engine) UpdateLookupTable(lookup_table *LookupTable, visible bool) {
e.emitSignal("UpdateLookupTable", dbus.MakeVariant(*lookup_table), visible)
}
//@signal()
func (e *Engine) ShowLookupTable() {
e.emitSignal("ShowLookupTable")
}
//@signal()
func (e *Engine) HideLookupTable() {
e.emitSignal("HideLookupTable")
}
//@signal()
func (e *Engine) PageUpLookupTable() {
e.emitSignal("PageUpLookupTable")
}
//@signal()
func (e *Engine) PageDownLookupTable() {
e.emitSignal("PageDownLookupTable")
}
//@signal()
func (e *Engine) CursorUpLookupTable() {
e.emitSignal("CursorUpLookupTable")
}
//@signal()
func (e *Engine) CursorDownLookupTable() {
e.emitSignal("CursorDownLookupTable")
}
//@signal(signature="v")
func (e *Engine) RegisterProperties(props *PropList) {
e.emitSignal("RegisterProperties", dbus.MakeVariant(*props))
}
//@signal(signature="v")
func (e *Engine) UpdateProperty(prop *Property) {
e.emitSignal("UpdateProperty", dbus.MakeVariant(*prop))
}
//@signal(signature="iu")
func (e *Engine) DeleteSurroundingText(offset_from_cursor int32, nchars uint32) {
e.emitSignal("DeleteSurroundingText", offset_from_cursor, nchars)
}
//@signal()
func (e *Engine) RequireSurroundingText() {
e.emitSignal("RequireSurroundingText")
}
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/ibus/engineDesc.go
================================================
package ibus
import (
"github.com/godbus/dbus"
)
type EngineDesc struct {
Name string `xml:"-"`
Attachments map[string]dbus.Variant `xml:"-"`
EngineName string `xml:"name"`
LongName string `xml:"longname"`
Description string `xml:"description"`
Language string `xml:"language"`
License string `xml:"license"`
Author string `xml:"author"`
Icon string `xml:"icon"`
Layout string `xml:"layout"`
Rank uint32 `xml:"rank"`
Hotkeys string `xml:"hotkeys,omitempty"`
Symbol string `xml:"symbol,omitempty"`
Setup string `xml:"setup,omitempty"`
LayoutVariant string `xml:"layout-variant,omitempty"`
LayoutOption string `xml:"layout-option,omitempty"`
Version string `xml:"version,omitempty"`
Textdomain string `xml:"textdomain,omitempty"`
}
func TinyEngineDesc(name string, longname string, desc string, lang string, license string, author string, icon string, layout string) *EngineDesc {
ed := &EngineDesc{}
ed.Name = "IBusEngineDesc"
ed.EngineName = name
ed.LongName = longname
ed.Description = desc
ed.Language = lang
ed.License = license
ed.Author = author
ed.Icon = icon
ed.Layout = layout
return ed
}
func SmallEngineDesc(name string, longname string, desc string, lang string, license string, author string, icon string, layout string,
setup string, version string) *EngineDesc {
ed := TinyEngineDesc(name, longname, desc, lang, license, author, icon, layout)
ed.Setup = setup
ed.Version = version
return ed
}
func FullEngineDesc(name string, longname string, desc string, lang string, license string, author string, icon string, layout string,
rank uint32, hotkeys string, symbol string, setup string, layoutVariant string, layoutOption string, version string, textdomain string) *EngineDesc {
ed := TinyEngineDesc(name, longname, desc, lang, license, author, icon, layout)
ed.Rank = rank
ed.Hotkeys = hotkeys
ed.Symbol = symbol
ed.Setup = setup
ed.LayoutVariant = layoutVariant
ed.LayoutOption = layoutOption
ed.Version = version
ed.Textdomain = textdomain
return ed
}
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/ibus/factory.go
================================================
package ibus
import (
"github.com/godbus/dbus"
)
type Factory struct {
conn *dbus.Conn
EngineCreator func(conn *dbus.Conn, engineName string) dbus.ObjectPath
}
func NewFactory(conn *dbus.Conn, EngineCreator func(conn *dbus.Conn, engineName string) dbus.ObjectPath) *Factory {
f := &Factory{conn, EngineCreator}
conn.Export(f, "/org/freedesktop/IBus/Factory", IBUS_IFACE_ENGINE_FACTORY)
return f
}
// # Return a array. [name, default_language, icon_path, authors, credits]
// @method(out_signature="as")
// def GetInfo(self): pass
// # Factory should allocate all resources in this method
// @method()
// def Initialize(self): pass
// # Factory should free all allocated resources in this method
// @method()
// def Uninitialize(self): pass
// # Create an input context and return the id of the context.
// # If failed, it will return "" or None.
// @method(in_signature="s", out_signature="o")
func (factory *Factory) CreateEngine(engineName string) (dbus.ObjectPath, *dbus.Error) {
return factory.EngineCreator(factory.conn, engineName), nil
}
// # Destroy the engine
// @method()
func (factory *Factory) Destroy() *dbus.Error {
factory.conn.Export(nil, "/org/freedesktop/IBus/Factory", IBUS_IFACE_ENGINE_FACTORY)
return nil
}
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/ibus/lookupTable.go
================================================
package ibus
import (
"github.com/godbus/dbus"
)
type LookupTable struct {
Name string
Attachments map[string]dbus.Variant
PageSize uint32
CursorPos uint32
CursorVisible bool
Round bool
Orientation int32
Candidates []dbus.Variant
Labels []dbus.Variant
}
func NewLookupTable() *LookupTable {
lt := &LookupTable{}
lt.Name = "IBusLookupTable"
lt.PageSize = 5
lt.CursorPos = 0
lt.CursorVisible = true
lt.Round = false
lt.Orientation = ORIENTATION_SYSTEM
return lt
}
func (lt *LookupTable) AppendCandidate(text string) {
t := NewText(text)
lt.Candidates = append(lt.Candidates, dbus.MakeVariant(*t))
}
func (lt *LookupTable) AppendLabel(label string) {
l := NewText(label)
lt.Labels = append(lt.Labels, dbus.MakeVariant(*l))
}
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/ibus/property.go
================================================
package ibus
import (
"github.com/godbus/dbus"
)
type PropList struct {
Name string
Attachments map[string]dbus.Variant
PropertyList []dbus.Variant
}
type Property struct {
Name string
Attachments map[string]dbus.Variant
Key string
Type uint32
Label dbus.Variant
Icon string
Tooltip dbus.Variant
Sensitive bool
Visible bool
State uint32
SubProps dbus.Variant
Symbol dbus.Variant
}
func NewProperty(key string, ptype uint32, label string, icon string, tooltip string, sensitive bool, visible bool, state uint32) *Property {
p := &Property{}
p.Name = "IBusProperty"
p.Key = key
p.Type = ptype
p.Label = dbus.MakeVariant(*NewText(label))
p.Icon = icon
p.Tooltip = dbus.MakeVariant(*NewText(tooltip))
p.Sensitive = sensitive
p.Visible = visible
p.State = state
p.SubProps = dbus.MakeVariant(*NewPropList())
p.Symbol = dbus.MakeVariant(*NewText(""))
return p
}
func NewPropertyWithChild(key string, ptype uint32, label string, icon string, tooltip string, sensitive bool, visible bool, state uint32, child PropList) *Property {
p := NewProperty(key, ptype, label, icon, tooltip, sensitive, visible, state)
p.SubProps = dbus.MakeVariant(child)
return p
}
func NewPropList(propList ...*Property) *PropList {
pl := &PropList{}
pl.Name = "IBusPropList"
for _, p := range propList {
pl.PropertyList = append(pl.PropertyList, dbus.MakeVariant(*p))
}
return pl
}
================================================
FILE: src/ibus-teni/vendor/github.com/sarim/goibus/ibus/text.go
================================================
package ibus
import (
"github.com/godbus/dbus"
)
type AttrList struct {
Name string
Attachments map[string]dbus.Variant
Attr []dbus.Variant
}
type Text struct {
Name string
Attachments map[string]dbus.Variant
Text string
AttrList dbus.Variant
}
func NewText(text string) *Text {
attrList := AttrList{}
attrList.Name = "IBusAttrList"
t := Text{}
t.Name = "IBusText"
t.Text = text
t.AttrList = dbus.MakeVariant(attrList)
return &t
}
================================================
FILE: src/ibus-teni/version.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
const Version = "v1.5.3"
================================================
FILE: src/ibus-teni/x11.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
/*
#cgo CFLAGS: -std=c99
#cgo LDFLAGS: -lX11
#include
#include
inline void ucharfree(unsigned char* uc) {
XFree(uc);
}
inline void windowfree(Window* w) {
XFree(w);
}
inline char* uchar2char(unsigned char* uc, unsigned long len) {
for (int i=0; i 0 {
strClass += s + "\n"
}
rootWindow, parentWindow := x11GetParentWindow(display, w)
if rootWindow == parentWindow {
break
}
w = parentWindow
}
v := strings.Split(strClass, "\n")
if len(v) > 0 {
cacheWM.Set(uint32(focusWindow), v)
}
return v
}
return nil
}
================================================
FILE: src/teni/teni.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
import (
"sort"
"strings"
)
const (
MaxWordLength = 15
MaxStateStack = 2
)
type InputMethod int
const (
IMTeni InputMethod = iota << 0
IMVni InputMethod = iota
IMTelex InputMethod = iota
IMTelexEx InputMethod = iota
)
type EngineState struct {
rawKeys []rune
resultStack [][]rune
completedStack []bool
stateBackCount uint32
}
type Engine struct {
EngineState
stateStack []EngineState
InputMethod InputMethod
ForceSpell bool
}
type resultCase struct {
value []rune
findResult uint8
}
func (pc *resultCase) better(pc2 *resultCase) bool {
return pc.findResult > pc2.findResult ||
(pc.findResult == pc2.findResult && len(pc.value) < len(pc2.value))
}
type resultCases []*resultCase
func (p resultCases) Len() int { return len(p) }
func (p resultCases) Less(i, j int) bool {
return p[i].better(p[j])
}
func (p resultCases) Swap(i, j int) { p[i], p[j] = p[j], p[i] }
func NewEngine() *Engine {
return &Engine{
EngineState: EngineState{
rawKeys: nil,
resultStack: nil,
completedStack: nil,
stateBackCount: 0,
},
stateStack: nil,
InputMethod: IMTeni,
ForceSpell: true,
}
}
func (pc *Engine) RawKeyLen() int {
return len(pc.rawKeys)
}
func (pc *Engine) ResultLen() uint32 {
if l := len(pc.resultStack); l > 0 {
return uint32(len(pc.resultStack[l-1]))
}
return 0
}
func (pc *Engine) Reset() {
if len(pc.rawKeys) > 0 {
pc.rawKeys = pc.rawKeys[:0]
}
if len(pc.resultStack) > 0 {
pc.resultStack = pc.resultStack[:0]
}
if len(pc.stateStack) > 0 {
pc.stateStack = pc.stateStack[:0]
}
pc.stateBackCount = 0
}
func (pc *Engine) LenStateBack() int {
return len(pc.stateStack)
}
func (pc *Engine) PushStateBack() int {
cutLen := 0
if pc.RawKeyLen() > 0 {
if len(pc.stateStack) == MaxStateStack {
firstState := pc.stateStack[0]
cutLen = len(firstState.resultStack[len(firstState.resultStack)-1])
pc.stateStack = pc.stateStack[1:]
if len(pc.stateStack) > 0 {
cutLen += int(pc.stateStack[0].stateBackCount)
}
}
pc.stateStack = append(pc.stateStack, EngineState{
stateBackCount: pc.stateBackCount,
completedStack: pc.completedStack,
rawKeys: pc.rawKeys,
resultStack: pc.resultStack,
})
if len(pc.rawKeys) > 0 {
pc.rawKeys = nil
}
if len(pc.resultStack) > 0 {
pc.resultStack = nil
}
pc.stateBackCount = 1
} else if len(pc.stateStack) > 0 {
pc.stateBackCount++
}
return cutLen
}
func (pc *Engine) PopStateBack() int {
if len(pc.stateStack) > 0 && pc.RawKeyLen() == 0 {
pc.stateBackCount--
if pc.stateBackCount == 0 && len(pc.stateStack) > 0 {
lastState := pc.stateStack[len(pc.stateStack)-1]
pc.stateBackCount = lastState.stateBackCount
pc.completedStack = lastState.completedStack
pc.rawKeys = lastState.rawKeys
pc.resultStack = lastState.resultStack
pc.stateStack = pc.stateStack[:len(pc.stateStack)-1]
return int(pc.ResultLen())
}
}
return 0
}
func (pc *Engine) GetResult() []rune {
if l := len(pc.resultStack); l > 0 {
return pc.resultStack[l-1]
}
return nil
}
func (pc *Engine) GetResultStr() string {
return string(pc.GetResult())
}
func (pc *Engine) HasToneChar() bool {
for _, c := range pc.GetResult() {
if toneCharset[c] {
return true
}
}
return false
}
func (pc *Engine) isCompleted() bool {
if l := len(pc.completedStack); l > 0 {
return pc.completedStack[l-1]
}
return false
}
func (pc *Engine) GetCommitResult() []rune {
if pc.isCompleted() || !pc.HasToneChar() {
return pc.GetResult()
}
return pc.rawKeys
}
func (pc *Engine) GetCommitResultStr() string {
if pc.isCompleted() || !pc.HasToneChar() {
return pc.GetResultStr()
}
return string(pc.rawKeys)
}
func (pc *Engine) GetRawStr() string {
return string(pc.rawKeys)
}
func (pc *Engine) GetRaw() []rune {
return pc.rawKeys
}
func copyRunes(r []rune) []rune {
t := make([]rune, len(r))
copy(t, r)
return t
}
func (pc *Engine) getCopyResult() ([]rune, []rune) {
return pc.getCopyResultN(0)
}
func (pc *Engine) getCopyResultN(n int) ([]rune, []rune) {
if l := len(pc.resultStack); l > n {
rs := copyRunes(pc.resultStack[l-1-n])
if pc.ForceSpell {
return nil, rs
} else {
//a,b:=SplitConsonantVowel(rs)
//log.Printf("SplitConsonantVowel [%s], [%s], [%s]", string(rs), string(a), string(b))
return SplitConsonantVowel(rs)
}
}
return nil, nil
}
func (pc *Engine) Backspace() {
if l := len(pc.rawKeys); l > 0 {
pc.rawKeys = pc.rawKeys[:l-1]
}
if l := len(pc.resultStack); l > 0 {
pc.resultStack = pc.resultStack[:l-1]
}
if l := len(pc.completedStack); l > 0 {
pc.completedStack = pc.completedStack[:l-1]
}
}
func (pc *Engine) AddStr(s string) {
for _, c := range []rune(s) {
pc.AddKey(c)
}
}
func (pc *Engine) AddKey(key rune) {
consonant, resultRunes := pc.getCopyResult()
var isCompleted bool
if len(pc.rawKeys) > MaxWordLength ||
(pc.InputMethod == IMVni && (key < '0' || key > '9')) ||
(pc.InputMethod == IMTelex && (key >= '0' && key <= '9')) ||
(len(resultRunes) == 0 && (pc.InputMethod != IMTelex || !InChangeCharMap(key)) && (pc.InputMethod != IMTelexEx || !InChangeCharMapEx(key))) ||
(replaceCharMap[key] == nil && replaceStrMap[key] == nil && (pc.InputMethod == IMTelex && !InChangeCharMap(key)) && (pc.InputMethod != IMTelexEx || !InChangeCharMapEx(key))) {
appendCase := pc.appendChar(key, resultRunes)
resultRunes = appendCase.value
isCompleted = appendCase.findResult == FindResultMatchFull
if appendCase.findResult == FindResultNotMatch {
if pc.HasToneChar() && pc.ForceSpell {
resultRunes = append(pc.rawKeys, key)
} else {
cs, rs := pc.getCopyResult()
resultRunes = append(cs, rs...)
resultRunes = append(resultRunes, key)
}
} else {
resultRunes = append(consonant, resultRunes...)
}
} else {
finalCase := pc.changeChar(key, resultRunes)
if finalCase == nil || (finalCase.findResult != FindResultMatchFull && finalCase.findResult != FindResultRevert) {
replaceStrCase := pc.replaceStr(key, resultRunes)
if replaceStrCase != nil &&
(replaceStrCase.findResult != FindResultNotMatch) &&
(finalCase == nil || replaceStrCase.better(finalCase)) {
finalCase = replaceStrCase
}
}
if finalCase == nil || (finalCase.findResult != FindResultMatchFull && finalCase.findResult != FindResultRevert) {
replaceCharCase := pc.replaceChar(key, resultRunes)
if replaceCharCase != nil &&
(replaceCharCase.findResult != FindResultNotMatch) &&
(finalCase == nil || replaceCharCase.better(finalCase)) {
finalCase = replaceCharCase
}
}
if finalCase == nil || (finalCase.findResult != FindResultMatchFull && finalCase.findResult != FindResultRevert) {
appendCase := pc.appendChar(key, resultRunes)
if finalCase == nil || appendCase.better(finalCase) {
finalCase = appendCase
}
}
if finalCase == nil || (finalCase.findResult != FindResultMatchFull && finalCase.findResult != FindResultRevert) {
revertCase := pc.revertChar(key, resultRunes)
if revertCase != nil && (finalCase == nil || revertCase.better(finalCase)) {
finalCase = revertCase
}
}
resultRunes = finalCase.value
isCompleted = finalCase.findResult == FindResultMatchFull
if finalCase.findResult == FindResultNotMatch {
if pc.HasToneChar() && pc.ForceSpell {
resultRunes = append(pc.rawKeys, key)
} else {
cs, rs := pc.getCopyResult()
resultRunes = append(cs, rs...)
resultRunes = append(resultRunes, key)
}
} else {
resultRunes = append(consonant, resultRunes...)
}
}
pc.rawKeys = append(pc.rawKeys, key)
pc.resultStack = append(pc.resultStack, resultRunes)
pc.completedStack = append(pc.completedStack, isCompleted)
}
func (pc *Engine) appendChar(key rune, originalRunes []rune) *resultCase {
originalRunes = append(originalRunes, key)
if len(originalRunes) > MaxWordLength {
return &resultCase{
value: originalRunes,
findResult: FindResultNotMatch,
}
}
result := findRootWord(originalRunes)
return pc.trySwapTone(&resultCase{
value: originalRunes,
findResult: result,
})
}
func (pc *Engine) replaceStr(key rune, originalRunes []rune) *resultCase {
rsm := replaceStrMap[key]
if rsm == nil {
return nil
}
resultText := string(originalRunes)
for findText, replaceSR := range rsm {
if foundIndex := strings.Index(resultText, findText); foundIndex >= 0 {
replacedText := strings.Replace(resultText, findText, replaceSR.S, 1)
resultRunes := []rune(replacedText)
result := findRootWord(resultRunes)
return &resultCase{
value: resultRunes,
findResult: result,
}
}
}
return nil
}
func (pc *Engine) replaceChar(key rune, originalRunes []rune) *resultCase {
if rcm := replaceCharMap[key]; rcm != nil {
resultCases := resultCases{}
for i := len(originalRunes) - 1; i >= 0; i-- {
c := originalRunes[i]
if cReplace, found := rcm[c]; found {
resultRunes := copyRunes(originalRunes)
resultRunes[i] = cReplace.C
result := findRootWord(resultRunes)
resultCases = append(resultCases, &resultCase{
value: resultRunes,
findResult: result,
})
if result == FindResultMatchFull {
break
}
}
}
if len(resultCases) > 0 {
sort.Sort(resultCases)
return resultCases[0]
}
}
return nil
}
func (pc *Engine) changeChar(key rune, originalRunes []rune) *resultCase {
if changeTo, exist := changeCharMapEx[key]; exist {
lr := len(originalRunes)
lrk := len(pc.rawKeys)
//revert mode
if lr > 0 && lrk > 0 && key != originalRunes[lr-1] && pc.rawKeys[lrk-1] == key {
var resultRunes []rune
if lrs := len(pc.resultStack); lrs > 1 {
_, resultRunes = pc.getCopyResultN(1)
}
resultRunes = append(resultRunes, key)
return &resultCase{
value: resultRunes,
findResult: FindResultRevert,
}
}
resultRunes := copyRunes(originalRunes)
resultRunes = append(resultRunes, changeTo)
result := findRootWord(resultRunes)
return &resultCase{
value: resultRunes,
findResult: result,
}
}
return nil
}
func (pc *Engine) revertChar(key rune, originalRunes []rune) *resultCase {
if replaceCharMap[key] != nil || replaceStrMap[key] != nil {
lr := len(originalRunes)
lrk := len(pc.rawKeys)
//revert mode
if lr > 0 && lrk > 0 && key != originalRunes[lr-1] && pc.rawKeys[lrk-1] == key {
var resultRunes []rune
if lrs := len(pc.resultStack); lrs > 1 {
_, resultRunes = pc.getCopyResultN(1)
}
resultRunes = append(resultRunes, key)
return &resultCase{
value: resultRunes,
findResult: FindResultRevert,
}
}
}
return nil
}
func (pc *Engine) trySwapTone(originalCase *resultCase) *resultCase {
if originalCase.findResult == FindResultMatchFull {
return originalCase
}
rsCopy := copyRunes(originalCase.value)
toneKey := rune(0)
for i, k := range rsCopy {
if bt, exists := baseTone[k]; exists {
rsCopy[i] = bt.B
toneKey = bt.T
break
}
}
if toneKey == 0 {
return originalCase
}
var replaceStrCase *resultCase
replaceStrCase = pc.replaceStr(toneKey, rsCopy)
if replaceStrCase == nil || replaceStrCase.findResult != FindResultMatchFull {
replaceCharCase := pc.replaceChar(toneKey, rsCopy)
if replaceCharCase != nil && replaceCharCase.findResult != FindResultNotMatch && (replaceStrCase == nil || replaceCharCase.better(replaceStrCase)) {
replaceStrCase = replaceCharCase
}
}
if replaceStrCase != nil {
if replaceStrCase.better(originalCase) {
return replaceStrCase
}
}
return originalCase
}
================================================
FILE: src/teni/teni_coverage_test.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
import (
"testing"
)
func TestTeniCoverage(t *testing.T) {
cdDictDir()
e := InitWordTrie(true, "you can't find me")
if e == nil {
t.Errorf("e must be not nil here!")
}
e = InitWordTrie(true, DictStdList...)
fe(e)
pc := NewEngine()
initResultLen := pc.ResultLen()
if initResultLen != 0 {
t.Errorf("initResultLen %d", initResultLen)
}
initResult := pc.GetResult()
if initResult != nil {
t.Errorf("initResult %+v", initResult)
}
initCommitResult := pc.GetResultStr()
if initCommitResult != "" {
t.Errorf("initResult %+v", initResult)
}
keys := []rune{'t', 'i', 'e', 'e', 's', 'n', 'g'}
for _, k := range keys {
pc.AddKey(k)
}
resultLen := pc.ResultLen()
expectedResultLen := uint32(len([]rune("tiếng")))
if resultLen != expectedResultLen {
t.Errorf("ResultLen %d, expected %d", resultLen, expectedResultLen)
}
rawKeyLen := pc.RawKeyLen()
expectedRawKeyLen := len(keys)
if rawKeyLen != expectedRawKeyLen {
t.Errorf("rawKeyLen %d, expected %d", rawKeyLen, expectedRawKeyLen)
}
pc.AddKey('a')
commitStr := pc.GetResultStr()
expectedCommitStr := "tieesnga"
if commitStr != expectedCommitStr {
t.Errorf("commitStr [%s], expectedCommitStr [%s]", commitStr, expectedCommitStr)
}
pc.Backspace()
commitStr = pc.GetResultStr()
expectedCommitStr = "tiếng"
if commitStr != expectedCommitStr {
t.Errorf("commitStr [%s], expectedCommitStr [%s]", commitStr, expectedCommitStr)
}
rawStr := pc.GetRawStr()
expectedRawStr := "tieesng"
if rawStr != expectedRawStr {
t.Errorf("commitStr [%s], expectedCommitStr [%s]", rawStr, expectedRawStr)
}
pc.AddStr("aaaaaaaaaaaaaaaaaa")
commitStr = pc.GetResultStr()
expectedCommitStr = "tieesngaaaaaaaaaaaaaaaaaa"
if commitStr != expectedCommitStr {
t.Errorf("commitStr [%s], expectedCommitStr [%s]", commitStr, expectedCommitStr)
}
}
================================================
FILE: src/teni/teni_type_rule_test.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
import (
"io/ioutil"
"log"
"os"
"path/filepath"
"strings"
"testing"
)
const (
testDataDir = "test-data"
testDataSuffix = ".tdata"
vniTestDataFileSign = ".vni"
telexTestDataFileSign = ".telexw"
newTestDataFileSign = ".new"
)
const (
DictDir = "dict"
DictVietnameseCm = "dict/vietnamese.cm.dict"
DictVietnameseSp = "dict/vietnamese.sp.dict"
DictVietnameseStd = "dict/vietnamese.std.dict"
DictVietnameseNew = "dict/vietnamese.new.dict"
)
var (
DictStdList = []string{DictVietnameseCm, DictVietnameseSp, DictVietnameseStd}
DictNewList = []string{DictVietnameseCm, DictVietnameseSp, DictVietnameseNew}
)
//fatal error
func fe(err error) {
if err != nil {
log.Fatal(err)
}
}
func cdDictDir() {
if st, e := os.Stat(DictDir); e == nil && st.IsDir() {
return
}
gp := filepath.Dir(os.Args[0])
p := filepath.Join(gp, DictDir)
if st, e := os.Stat(p); e == nil && st.IsDir() {
os.Chdir(p)
return
}
goPath := os.Getenv("GOPATH")
for _, gp := range strings.Split(goPath, ":") {
p := filepath.Join(gp, DictDir)
if st, e := os.Stat(p); e == nil && st.IsDir() {
os.Chdir(gp)
return
}
}
}
func TestTeniTypeRule(t *testing.T) {
cdDictDir()
failedCount := 0
testCaseCount := 0
pc := NewEngine()
fos, err := ioutil.ReadDir(testDataDir)
fe(err)
for _, fo := range fos {
if fo.IsDir() || !strings.HasSuffix(fo.Name(), testDataSuffix) {
continue
}
if strings.Contains(fo.Name(), newTestDataFileSign) {
e := InitWordTrie(true, DictNewList...)
fe(e)
} else {
e := InitWordTrie(true, DictStdList...)
fe(e)
}
t.Log("Testing ", fo.Name())
if strings.Contains(fo.Name(), vniTestDataFileSign) {
pc.InputMethod = IMVni
} else if strings.Contains(fo.Name(), telexTestDataFileSign) {
pc.InputMethod = IMTelexEx
} else {
pc.InputMethod = IMTeni
}
for iLine, line := range readFileLines(filepath.Join(testDataDir, fo.Name())) {
inout := strings.Split(line, " ")
if len(inout) != 2 {
continue
}
out := inout[0]
in := inout[1]
testCaseCount++
pc.Reset()
pc.AddStr(in)
result := pc.GetResultStr()
if result != out {
t.Errorf("\tLine #%d for [%s], expected [%s], got [%s]", iLine, in, out, result)
failedCount++
}
}
}
if failedCount > 0 {
t.Log("Failed count", failedCount, "of", testCaseCount, "total")
} else {
t.Log("Passed", testCaseCount, "test cases")
}
}
func readFileLines(f string) []string {
data, e := ioutil.ReadFile(f)
fe(e)
s := strings.Replace(string(data), "\r", "", -1)
return strings.Split(s, "\n")
}
================================================
FILE: src/teni/tone_charset.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
var toneCharset = map[rune]bool{
'á': true,
'à': true,
'ả': true,
'ã': true,
'ạ': true,
'ă': true,
'ắ': true,
'ằ': true,
'ẳ': true,
'ẵ': true,
'ặ': true,
'â': true,
'ấ': true,
'ầ': true,
'ẩ': true,
'ẫ': true,
'ậ': true,
'é': true,
'è': true,
'ẻ': true,
'ẽ': true,
'ẹ': true,
'ê': true,
'ế': true,
'ề': true,
'ể': true,
'ễ': true,
'ệ': true,
'í': true,
'ì': true,
'ỉ': true,
'ĩ': true,
'ị': true,
'ó': true,
'ò': true,
'ỏ': true,
'õ': true,
'ọ': true,
'ô': true,
'ố': true,
'ồ': true,
'ổ': true,
'ỗ': true,
'ộ': true,
'ơ': true,
'ớ': true,
'ờ': true,
'ở': true,
'ỡ': true,
'ợ': true,
'ú': true,
'ù': true,
'ủ': true,
'ũ': true,
'ụ': true,
'ư': true,
'ứ': true,
'ừ': true,
'ử': true,
'ữ': true,
'ự': true,
'ý': true,
'ỳ': true,
'ỷ': true,
'ỹ': true,
'ỵ': true,
'đ': true,
'Á': true,
'À': true,
'Ả': true,
'Ã': true,
'Ạ': true,
'Ă': true,
'Ắ': true,
'Ằ': true,
'Ẳ': true,
'Ẵ': true,
'Ặ': true,
'Â': true,
'Ấ': true,
'Ầ': true,
'Ẩ': true,
'Ẫ': true,
'Ậ': true,
'É': true,
'È': true,
'Ẻ': true,
'Ẽ': true,
'Ẹ': true,
'Ê': true,
'Ế': true,
'Ề': true,
'Ể': true,
'Ễ': true,
'Ệ': true,
'Í': true,
'Ì': true,
'Ỉ': true,
'Ĩ': true,
'Ị': true,
'Ó': true,
'Ò': true,
'Ỏ': true,
'Õ': true,
'Ọ': true,
'Ô': true,
'Ố': true,
'Ồ': true,
'Ổ': true,
'Ỗ': true,
'Ộ': true,
'Ơ': true,
'Ớ': true,
'Ờ': true,
'Ở': true,
'Ỡ': true,
'Ợ': true,
'Ú': true,
'Ù': true,
'Ủ': true,
'Ũ': true,
'Ụ': true,
'Ư': true,
'Ứ': true,
'Ừ': true,
'Ử': true,
'Ữ': true,
'Ự': true,
'Ý': true,
'Ỳ': true,
'Ỷ': true,
'Ỹ': true,
'Ỵ': true,
'Đ': true,
}
================================================
FILE: src/teni/typerule_change_char.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
var changeCharMap = map[rune]rune{
'w': 'ư',
'W': 'Ư',
}
var changeCharMapEx = map[rune]rune{
'[': 'ơ',
'{': 'Ơ',
']': 'ư',
'}': 'Ư',
'w': 'ư',
'W': 'Ư',
}
func InChangeCharMap(c rune) bool {
_, exist := changeCharMap[c]
return exist
}
func InChangeCharMapEx(c rune) bool {
_, exist := changeCharMapEx[c]
return exist
}
var caplockSwitchMap = map[uint32]uint32{
'[': '{',
'{': '[',
']': '}',
'}': ']',
}
func SwitchCaplock(keyVal uint32) uint32 {
if v, exist := caplockSwitchMap[keyVal]; exist {
return v
}
return keyVal
}
================================================
FILE: src/teni/typerule_downlvl.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
var downLvlMap = map[rune][]rune{
'á': {'a'},
'à': {'a'},
'ả': {'a'},
'ã': {'a'},
'ạ': {'a'},
'ă': {'a'},
'ắ': {'ă', 'á', 'a'},
'ằ': {'ă', 'à', 'a'},
'ẳ': {'ă', 'ả', 'a'},
'ẵ': {'ă', 'ã', 'a'},
'ặ': {'ă', 'ạ', 'a'},
'â': {'a'},
'ấ': {'â', 'á', 'a'},
'ầ': {'â', 'à', 'a'},
'ẩ': {'â', 'ả', 'a'},
'ẫ': {'â', 'ã', 'a'},
'ậ': {'â', 'ạ', 'a'},
'é': {'e'},
'è': {'e'},
'ẻ': {'e'},
'ẽ': {'e'},
'ẹ': {'e'},
'ê': {'e'},
'ế': {'ê', 'é', 'e'},
'ề': {'ê', 'è', 'e'},
'ể': {'ê', 'ẻ', 'e'},
'ễ': {'ê', 'ẽ', 'e'},
'ệ': {'ê', 'ẹ', 'e'},
'í': {'i'},
'ì': {'i'},
'ỉ': {'i'},
'ĩ': {'i'},
'ị': {'i'},
'ó': {'o'},
'ò': {'o'},
'ỏ': {'o'},
'õ': {'o'},
'ọ': {'o'},
'ô': {'o'},
'ố': {'ô', 'ó', 'o'},
'ồ': {'ô', 'ò', 'o'},
'ổ': {'ô', 'ỏ', 'o'},
'ỗ': {'ô', 'õ', 'o'},
'ộ': {'ô', 'ọ', 'o'},
'ơ': {'o'},
'ớ': {'ơ', 'ó', 'o'},
'ờ': {'ơ', 'ò', 'o'},
'ở': {'ơ', 'ỏ', 'o'},
'ỡ': {'ơ', 'õ', 'o'},
'ợ': {'ơ', 'ọ', 'o'},
'ú': {'u'},
'ù': {'u'},
'ủ': {'u'},
'ũ': {'u'},
'ụ': {'u'},
'ư': {'u'},
'ứ': {'ư', 'ú', 'u'},
'ừ': {'ư', 'ù', 'u'},
'ử': {'ư', 'ủ', 'u'},
'ữ': {'ư', 'ũ', 'u'},
'ự': {'ư', 'ụ', 'u'},
'ý': {'y'},
'ỳ': {'y'},
'ỷ': {'y'},
'ỹ': {'y'},
'ỵ': {'y'},
'đ': {'d'},
}
================================================
FILE: src/teni/typerule_replace.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
import (
"strings"
"unicode"
)
func joinMapCR(maps ...map[rune]*CR) map[rune]*CR {
newMap := map[rune]*CR{}
for _, m := range maps {
for k, v := range m {
newMap[k] = v
}
}
return newMap
}
func upFirstChar(s string) string {
var Str string
sRune := []rune(s)
if len(sRune) >= 1 {
Str = string(unicode.ToUpper(sRune[0])) + string(sRune[1:])
}
return Str
}
func init() {
addVniRule()
//BEGIN Add UP-CASE replaceCharMap
for _, m := range replaceCharMap {
var keys []rune
for k := range m {
keys = append(keys, k)
}
for _, k := range keys {
m[unicode.ToUpper(k)] = &CR{
C: unicode.ToUpper(m[k].C),
}
}
}
var lowerKeys []rune
for k := range replaceCharMap {
if unicode.IsLower(k) {
lowerKeys = append(lowerKeys, k)
}
}
for _, k := range lowerKeys {
replaceCharMap[unicode.ToUpper(k)] = replaceCharMap[k]
}
//END Add UP-CASE replaceCharMap
//BEGIN Add UP-CASE replaceStrMap
for _, m := range replaceStrMap {
var keys []string
for s := range m {
keys = append(keys, s)
}
for _, s := range keys {
m[strings.ToUpper(s)] = &SR{
S: strings.ToUpper(m[s].S),
}
m[upFirstChar(s)] = &SR{
S: upFirstChar(m[s].S),
}
}
}
var lowerStrKey []rune
for k := range replaceStrMap {
if unicode.IsLower(k) {
lowerStrKey = append(lowerStrKey, k)
}
}
for _, k := range lowerStrKey {
replaceStrMap[unicode.ToUpper(k)] = replaceStrMap[k]
}
//END Add UP-CASE replaceStrMap
}
================================================
FILE: src/teni/typerule_replace_char.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
type CR struct {
C rune //change to C
}
var (
//r_a = &CR{'a'}
//r_ă = &CR{'ă'}
//r_â = &CR{'â'}
//r_e = &CR{'e'}
//r_ê = &CR{'ê'}
//r_i = &CR{'i'}
//r_o = &CR{'o'}
//r_ô = &CR{'ô'}
//r_ơ = &CR{'ơ'}
//r_u = &CR{'u'}
//r_ư = &CR{'ư'}
//r_y = &CR{'y'}
c_á = &CR{'á'}
c_ắ = &CR{'ắ'}
c_ấ = &CR{'ấ'}
c_é = &CR{'é'}
c_ế = &CR{'ế'}
c_í = &CR{'í'}
c_ó = &CR{'ó'}
c_ố = &CR{'ố'}
c_ớ = &CR{'ớ'}
c_ú = &CR{'ú'}
c_ứ = &CR{'ứ'}
c_ý = &CR{'ý'}
c_à = &CR{'à'}
c_ằ = &CR{'ằ'}
c_ầ = &CR{'ầ'}
c_è = &CR{'è'}
c_ề = &CR{'ề'}
c_ì = &CR{'ì'}
c_ò = &CR{'ò'}
c_ồ = &CR{'ồ'}
c_ờ = &CR{'ờ'}
c_ù = &CR{'ù'}
c_ừ = &CR{'ừ'}
c_ỳ = &CR{'ỳ'}
c_ả = &CR{'ả'}
c_ẳ = &CR{'ẳ'}
c_ẩ = &CR{'ẩ'}
c_ẻ = &CR{'ẻ'}
c_ể = &CR{'ể'}
c_ỉ = &CR{'ỉ'}
c_ỏ = &CR{'ỏ'}
c_ổ = &CR{'ổ'}
c_ở = &CR{'ở'}
c_ủ = &CR{'ủ'}
c_ử = &CR{'ử'}
c_ỷ = &CR{'ỷ'}
c_ã = &CR{'ã'}
c_ẵ = &CR{'ẵ'}
c_ẫ = &CR{'ẫ'}
c_ẽ = &CR{'ẽ'}
c_ễ = &CR{'ễ'}
c_ĩ = &CR{'ĩ'}
c_õ = &CR{'õ'}
c_ỗ = &CR{'ỗ'}
c_ỡ = &CR{'ỡ'}
c_ũ = &CR{'ũ'}
c_ữ = &CR{'ữ'}
c_ỹ = &CR{'ỹ'}
c_ạ = &CR{'ạ'}
c_ặ = &CR{'ặ'}
c_ậ = &CR{'ậ'}
c_ẹ = &CR{'ẹ'}
c_ệ = &CR{'ệ'}
c_ị = &CR{'ị'}
c_ọ = &CR{'ọ'}
c_ộ = &CR{'ộ'}
c_ợ = &CR{'ợ'}
c_ụ = &CR{'ụ'}
c_ự = &CR{'ự'}
c_ỵ = &CR{'ỵ'}
r_d = &CR{'d'}
c_đ = &CR{'đ'}
c_a = &CR{'a'}
c_ă = &CR{'ă'}
c_â = &CR{'â'}
c_e = &CR{'e'}
c_ê = &CR{'ê'}
c_i = &CR{'i'}
c_o = &CR{'o'}
c_ô = &CR{'ô'}
c_u = &CR{'u'}
c_ơ = &CR{'ơ'}
c_ư = &CR{'ư'}
c_y = &CR{'y'}
//r_á = &CR{'á'}
//r_à = &CR{'à'}
//r_ả = &CR{'ả'}
//r_ã = &CR{'ã'}
//r_ạ = &CR{'ạ'}
//r_é = &CR{'é'}
//r_è = &CR{'è'}
//r_ẻ = &CR{'ẻ'}
//r_ẽ = &CR{'ẽ'}
//r_ẹ = &CR{'ẹ'}
//r_ó = &CR{'ó'}
//r_ò = &CR{'ò'}
//r_ỏ = &CR{'ỏ'}
//r_õ = &CR{'õ'}
//r_ọ = &CR{'ọ'}
//r_ú = &CR{'ú'}
//r_ù = &CR{'ù'}
//r_ủ = &CR{'ủ'}
//r_ũ = &CR{'ũ'}
//r_ụ = &CR{'ụ'}
)
var replaceCharMap = map[rune]map[rune]*CR{
's': {
'a': c_á,
'ă': c_ắ,
'â': c_ấ,
'e': c_é,
'ê': c_ế,
'i': c_í,
'o': c_ó,
'ô': c_ố,
'ơ': c_ớ,
'u': c_ú,
'ư': c_ứ,
'y': c_ý,
//'á': r_a,
//'ắ': r_ă,
//'ấ': r_â,
//'é': r_e,
//'ế': r_ê,
//'í': r_i,
//'ó': r_o,
//'ố': r_ô,
//'ớ': r_ơ,
//'ú': r_u,
//'ứ': r_ư,
//'ý': r_y,
'à': c_á,
'ằ': c_ắ,
'ầ': c_ấ,
'è': c_é,
'ề': c_ế,
'ì': c_í,
'ò': c_ó,
'ồ': c_ố,
'ờ': c_ớ,
'ù': c_ú,
'ừ': c_ứ,
'ỳ': c_ý,
'ả': c_á,
'ẳ': c_ắ,
'ẩ': c_ấ,
'ẻ': c_é,
'ể': c_ế,
'ỉ': c_í,
'ỏ': c_ó,
'ổ': c_ố,
'ở': c_ớ,
'ủ': c_ú,
'ử': c_ứ,
'ỷ': c_ý,
'ã': c_á,
'ẵ': c_ắ,
'ẫ': c_ấ,
'ẽ': c_é,
'ễ': c_ế,
'ĩ': c_í,
'õ': c_ó,
'ỗ': c_ố,
'ỡ': c_ớ,
'ũ': c_ú,
'ữ': c_ứ,
'ỹ': c_ý,
'ạ': c_á,
'ặ': c_ắ,
'ậ': c_ấ,
'ẹ': c_é,
'ệ': c_ế,
'ị': c_í,
'ọ': c_ó,
'ộ': c_ố,
'ợ': c_ớ,
'ụ': c_ú,
'ự': c_ứ,
'ỵ': c_ý,
},
'f': {
'a': c_à,
'ă': c_ằ,
'â': c_ầ,
'e': c_è,
'ê': c_ề,
'i': c_ì,
'o': c_ò,
'ô': c_ồ,
'ơ': c_ờ,
'u': c_ù,
'ư': c_ừ,
'y': c_ỳ,
'á': c_à,
'ắ': c_ằ,
'ấ': c_ầ,
'é': c_è,
'ế': c_ề,
'í': c_ì,
'ó': c_ò,
'ố': c_ồ,
'ớ': c_ờ,
'ú': c_ù,
'ứ': c_ừ,
'ý': c_ỳ,
//'à': r_a,
//'ằ': r_ă,
//'ầ': r_â,
//'è': r_e,
//'ề': r_ê,
//'ì': r_i,
//'ò': r_o,
//'ồ': r_ô,
//'ờ': r_ơ,
//'ù': r_u,
//'ừ': r_ư,
//'ỳ': r_y,
'ả': c_à,
'ẳ': c_ằ,
'ẩ': c_ầ,
'ẻ': c_è,
'ể': c_ề,
'ỉ': c_ì,
'ỏ': c_ò,
'ổ': c_ồ,
'ở': c_ờ,
'ủ': c_ù,
'ử': c_ừ,
'ỷ': c_ỳ,
'ã': c_à,
'ẵ': c_ằ,
'ẫ': c_ầ,
'ẽ': c_è,
'ễ': c_ề,
'ĩ': c_ì,
'õ': c_ò,
'ỗ': c_ồ,
'ỡ': c_ờ,
'ũ': c_ù,
'ữ': c_ừ,
'ỹ': c_ỳ,
'ạ': c_à,
'ặ': c_ằ,
'ậ': c_ầ,
'ẹ': c_è,
'ệ': c_ề,
'ị': c_ì,
'ọ': c_ò,
'ộ': c_ồ,
'ợ': c_ờ,
'ụ': c_ù,
'ự': c_ừ,
'ỵ': c_ỳ,
},
'r': {
'a': c_ả,
'ă': c_ẳ,
'â': c_ẩ,
'e': c_ẻ,
'ê': c_ể,
'i': c_ỉ,
'o': c_ỏ,
'ô': c_ổ,
'ơ': c_ở,
'u': c_ủ,
'ư': c_ử,
'y': c_ỷ,
'á': c_ả,
'ắ': c_ẳ,
'ấ': c_ẩ,
'é': c_ẻ,
'ế': c_ể,
'í': c_ỉ,
'ó': c_ỏ,
'ố': c_ổ,
'ớ': c_ở,
'ú': c_ủ,
'ứ': c_ử,
'ý': c_ỷ,
'à': c_ả,
'ằ': c_ẳ,
'ầ': c_ẩ,
'è': c_ẻ,
'ề': c_ể,
'ì': c_ỉ,
'ò': c_ỏ,
'ồ': c_ổ,
'ờ': c_ở,
'ù': c_ủ,
'ừ': c_ử,
'ỳ': c_ỷ,
//'ả': r_a,
//'ẳ': r_ă,
//'ẩ': r_â,
//'ẻ': r_e,
//'ể': r_ê,
//'ỉ': r_i,
//'ỏ': r_o,
//'ổ': r_ô,
//'ở': r_ơ,
//'ủ': r_u,
//'ử': r_ư,
//'ỷ': r_y,
'ã': c_ả,
'ẵ': c_ẳ,
'ẫ': c_ẩ,
'ẽ': c_ẻ,
'ễ': c_ể,
'ĩ': c_ỉ,
'õ': c_ỏ,
'ỗ': c_ổ,
'ỡ': c_ở,
'ũ': c_ủ,
'ữ': c_ử,
'ỹ': c_ỷ,
'ạ': c_ả,
'ặ': c_ẳ,
'ậ': c_ẩ,
'ẹ': c_ẻ,
'ệ': c_ể,
'ị': c_ỉ,
'ọ': c_ỏ,
'ộ': c_ổ,
'ợ': c_ở,
'ụ': c_ủ,
'ự': c_ử,
'ỵ': c_ỷ,
},
'x': {
'a': c_ã,
'ă': c_ẵ,
'â': c_ẫ,
'e': c_ẽ,
'ê': c_ễ,
'i': c_ĩ,
'o': c_õ,
'ô': c_ỗ,
'ơ': c_ỡ,
'u': c_ũ,
'ư': c_ữ,
'y': c_ỹ,
'á': c_ã,
'ắ': c_ẵ,
'ấ': c_ẫ,
'é': c_ẽ,
'ế': c_ễ,
'í': c_ĩ,
'ó': c_õ,
'ố': c_ỗ,
'ớ': c_ỡ,
'ú': c_ũ,
'ứ': c_ữ,
'ý': c_ỹ,
'à': c_ã,
'ằ': c_ẵ,
'ầ': c_ẫ,
'è': c_ẽ,
'ề': c_ễ,
'ì': c_ĩ,
'ò': c_õ,
'ồ': c_ỗ,
'ờ': c_ỡ,
'ù': c_ũ,
'ừ': c_ữ,
'ỳ': c_ỹ,
'ả': c_ã,
'ẳ': c_ẵ,
'ẩ': c_ẫ,
'ẻ': c_ẽ,
'ể': c_ễ,
'ỉ': c_ĩ,
'ỏ': c_õ,
'ổ': c_ỗ,
'ở': c_ỡ,
'ủ': c_ũ,
'ử': c_ữ,
'ỷ': c_ỹ,
//'ã': r_a,
//'ẵ': r_ă,
//'ẫ': r_â,
//'ẽ': r_e,
//'ễ': r_ê,
//'ĩ': r_i,
//'õ': r_o,
//'ỗ': r_ô,
//'ỡ': r_ơ,
//'ũ': r_u,
//'ữ': r_ư,
//'ỹ': r_y,
'ạ': c_ã,
'ặ': c_ẵ,
'ậ': c_ẫ,
'ẹ': c_ẽ,
'ệ': c_ễ,
'ị': c_ĩ,
'ọ': c_õ,
'ộ': c_ỗ,
'ợ': c_ỡ,
'ụ': c_ũ,
'ự': c_ữ,
'ỵ': c_ỹ,
},
'j': {
'a': c_ạ,
'ă': c_ặ,
'â': c_ậ,
'e': c_ẹ,
'ê': c_ệ,
'i': c_ị,
'o': c_ọ,
'ô': c_ộ,
'ơ': c_ợ,
'u': c_ụ,
'ư': c_ự,
'y': c_ỵ,
'á': c_ạ,
'ắ': c_ặ,
'ấ': c_ậ,
'é': c_ẹ,
'ế': c_ệ,
'í': c_ị,
'ó': c_ọ,
'ố': c_ộ,
'ớ': c_ợ,
'ú': c_ụ,
'ứ': c_ự,
'ý': c_ỵ,
'à': c_ạ,
'ằ': c_ặ,
'ầ': c_ậ,
'è': c_ẹ,
'ề': c_ệ,
'ì': c_ị,
'ò': c_ọ,
'ồ': c_ộ,
'ờ': c_ợ,
'ù': c_ụ,
'ừ': c_ự,
'ỳ': c_ỵ,
'ả': c_ạ,
'ẳ': c_ặ,
'ẩ': c_ậ,
'ẻ': c_ẹ,
'ể': c_ệ,
'ỉ': c_ị,
'ỏ': c_ọ,
'ổ': c_ộ,
'ở': c_ợ,
'ủ': c_ụ,
'ử': c_ự,
'ỷ': c_ỵ,
'ã': c_ạ,
'ẵ': c_ặ,
'ẫ': c_ậ,
'ẽ': c_ẹ,
'ễ': c_ệ,
'ĩ': c_ị,
'õ': c_ọ,
'ỗ': c_ộ,
'ỡ': c_ợ,
'ũ': c_ụ,
'ữ': c_ự,
'ỹ': c_ỵ,
//'ạ': r_a,
//'ặ': r_ă,
//'ậ': r_â,
//'ẹ': r_e,
//'ệ': r_ê,
//'ị': r_i,
//'ọ': r_o,
//'ộ': r_ô,
//'ợ': r_ơ,
//'ụ': r_u,
//'ự': r_ư,
//'ỵ': r_y,
},
'd': {
'd': c_đ,
//'đ': r_d,
},
'a': {
'a': c_â,
'á': c_ấ,
'à': c_ầ,
'ả': c_ẩ,
'ã': c_ẫ,
'ạ': c_ậ,
'ă': c_â,
'ắ': c_ấ,
'ằ': c_ầ,
'ẳ': c_ẩ,
'ẵ': c_ẫ,
'ặ': c_ậ,
//'â': r_a,
//'ấ': r_á,
//'ầ': r_à,
//'ẩ': r_ả,
//'ẫ': r_ã,
//'ậ': r_ạ,
},
'o': {
'o': c_ô,
'ó': c_ố,
'ò': c_ồ,
'ỏ': c_ổ,
'õ': c_ỗ,
'ọ': c_ộ,
'ơ': c_ô,
'ớ': c_ố,
'ờ': c_ồ,
'ở': c_ổ,
'ỡ': c_ỗ,
'ợ': c_ộ,
//'ô': r_o,
//'ố': r_ó,
//'ồ': r_ò,
//'ổ': r_ỏ,
//'ỗ': r_õ,
//'ộ': r_ọ,
},
'e': {
'e': c_ê,
'é': c_ế,
'è': c_ề,
'ẻ': c_ể,
'ẽ': c_ễ,
'ẹ': c_ệ,
//'ê': r_e,
//'ế': r_é,
//'ề': r_è,
//'ể': r_ẻ,
//'ễ': r_ẽ,
//'ệ': r_ẹ,
},
'w': {
'a': c_ă,
'á': c_ắ,
'à': c_ằ,
'ả': c_ẳ,
'ã': c_ẵ,
'ạ': c_ặ,
'â': c_ă,
'ấ': c_ắ,
'ầ': c_ằ,
'ẩ': c_ẳ,
'ẫ': c_ẵ,
'ậ': c_ặ,
'o': c_ơ,
'ó': c_ớ,
'ò': c_ờ,
'ỏ': c_ở,
'õ': c_ỡ,
'ọ': c_ợ,
'ô': c_ơ,
'ố': c_ớ,
'ồ': c_ờ,
'ổ': c_ở,
'ỗ': c_ỡ,
'ộ': c_ợ,
'u': c_ư,
'ú': c_ứ,
'ù': c_ừ,
'ủ': c_ử,
'ũ': c_ữ,
'ụ': c_ự,
//'ă': r_a,
//'ắ': r_á,
//'ằ': r_à,
//'ẳ': r_ả,
//'ẵ': r_ã,
//'ặ': r_ạ,
//'ơ': r_o,
//'ờ': r_ó,
//'ớ': r_ò,
//'ở': r_ỏ,
//'ỡ': r_õ,
//'ợ': r_ọ,
//'ư': r_u,
//'ứ': r_ú,
//'ừ': r_ù,
//'ử': r_ủ,
//'ữ': r_ũ,
//'ự': r_ụ,
},
'z': {
'á': c_a,
'ắ': c_ă,
'ấ': c_â,
'é': c_e,
'ế': c_ê,
'í': c_i,
'ó': c_o,
'ố': c_ô,
'ớ': c_ơ,
'ú': c_u,
'ứ': c_ư,
'ý': c_y,
'à': c_a,
'ằ': c_ă,
'ầ': c_â,
'è': c_e,
'ề': c_ê,
'ì': c_i,
'ò': c_o,
'ồ': c_ô,
'ờ': c_ơ,
'ù': c_u,
'ừ': c_ư,
'ỳ': c_y,
'ả': c_a,
'ẳ': c_ă,
'ẩ': c_â,
'ẻ': c_e,
'ể': c_ê,
'ỉ': c_i,
'ỏ': c_o,
'ổ': c_ô,
'ở': c_ơ,
'ủ': c_u,
'ử': c_ư,
'ỷ': c_y,
'ã': c_a,
'ẵ': c_ă,
'ẫ': c_â,
'ẽ': c_e,
'ễ': c_ê,
'ĩ': c_i,
'õ': c_o,
'ỗ': c_ô,
'ỡ': c_ơ,
'ũ': c_u,
'ữ': c_ư,
'ỹ': c_y,
'ạ': c_a,
'ặ': c_ă,
'ậ': c_â,
'ẹ': c_e,
'ệ': c_ê,
'ị': c_i,
'ọ': c_o,
'ộ': c_ô,
'ợ': c_ơ,
'ụ': c_u,
'ự': c_ư,
'ỵ': c_y,
},
}
================================================
FILE: src/teni/typerule_replace_str.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
type SR struct {
S string //change to S
}
var replaceStrMap = map[rune]map[string]*SR{
's': {
"uơ": {"ướ"},
"ưo": {"ướ"},
},
'f': {
"uơ": {"ườ"},
"ưo": {"ườ"},
},
'r': {
"uơ": {"ưở"},
"ưo": {"ưở"},
},
'x': {
"uơ": {"ưỡ"},
"ưo": {"ưỡ"},
},
'j': {
"uơ": {"ượ"},
"ưo": {"ượ"},
},
'w': {
"uo": {"ươ"},
"uó": {"ướ"},
"uò": {"ườ"},
"uỏ": {"ưở"},
"uõ": {"ưỡ"},
"uọ": {"ượ"},
"úo": {"ướ"},
"ùo": {"ườ"},
"ủo": {"ưở"},
"ũo": {"ưỡ"},
"ụo": {"ượ"},
"oa": {"oă"},
"oá": {"oắ"},
"oà": {"oằ"},
"oả": {"oẳ"},
"oã": {"oẵ"},
"oạ": {"oặ"},
"óa": {"oắ"},
"òa": {"oằ"},
"ỏa": {"oẳ"},
"õa": {"oẵ"},
"ọa": {"oặ"},
},
}
================================================
FILE: src/teni/typerule_replace_vni.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
func addVniRule() {
replaceCharMap['0'] = replaceCharMap['z']
replaceCharMap['1'] = replaceCharMap['s']
replaceCharMap['2'] = replaceCharMap['f']
replaceCharMap['3'] = replaceCharMap['r']
replaceCharMap['4'] = replaceCharMap['x']
replaceCharMap['5'] = replaceCharMap['j']
replaceCharMap['6'] = joinMapCR(replaceCharMap['a'], replaceCharMap['e'], replaceCharMap['o'])
replaceCharMap['7'] = map[rune]*CR{
'o': c_ơ,
'ó': c_ớ,
'ò': c_ờ,
'ỏ': c_ở,
'õ': c_ỡ,
'ọ': c_ợ,
'ô': c_ơ,
'ố': c_ớ,
'ồ': c_ờ,
'ổ': c_ở,
'ỗ': c_ỡ,
'ộ': c_ợ,
'u': c_ư,
'ú': c_ứ,
'ù': c_ừ,
'ủ': c_ử,
'ũ': c_ữ,
'ụ': c_ự,
//'ơ': r_o,
//'ờ': r_ó,
//'ớ': r_ò,
//'ở': r_ỏ,
//'ỡ': r_õ,
//'ợ': r_ọ,
//
//'ư': r_u,
//'ứ': r_ú,
//'ừ': r_ù,
//'ử': r_ủ,
//'ữ': r_ũ,
//'ự': r_ụ,
}
replaceCharMap['8'] = map[rune]*CR{
'a': c_ă,
'á': c_ắ,
'à': c_ằ,
'ả': c_ẳ,
'ã': c_ẵ,
'ạ': c_ặ,
//'ă': r_a,
//'ắ': r_á,
//'ằ': r_à,
//'ẳ': r_ả,
//'ẵ': r_ã,
//'ặ': r_ạ,
}
replaceCharMap['9'] = replaceCharMap['d']
replaceStrMap['1'] = replaceStrMap['s']
replaceStrMap['2'] = replaceStrMap['f']
replaceStrMap['3'] = replaceStrMap['r']
replaceStrMap['4'] = replaceStrMap['x']
replaceStrMap['5'] = replaceStrMap['j']
replaceStrMap['7'] = replaceStrMap['w']
}
================================================
FILE: src/teni/typerule_swap.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
import "unicode"
type BT struct {
T rune //Tone char
B rune //Base char
}
var baseTone = map[rune]*BT{
'á': {'s', 'a'},
'ắ': {'s', 'ă'},
'ấ': {'s', 'â'},
'é': {'s', 'e'},
'ế': {'s', 'ê'},
'í': {'s', 'i'},
'ó': {'s', 'o'},
'ố': {'s', 'ô'},
'ớ': {'s', 'ơ'},
'ú': {'s', 'u'},
'ứ': {'s', 'ư'},
'ý': {'s', 'y'},
'à': {'f', 'a'},
'ằ': {'f', 'ă'},
'ầ': {'f', 'â'},
'è': {'f', 'e'},
'ề': {'f', 'ê'},
'ì': {'f', 'i'},
'ò': {'f', 'o'},
'ồ': {'f', 'ô'},
'ờ': {'f', 'ơ'},
'ù': {'f', 'u'},
'ừ': {'f', 'ư'},
'ỳ': {'f', 'y'},
'ả': {'r', 'a'},
'ẳ': {'r', 'ă'},
'ẩ': {'r', 'â'},
'ẻ': {'r', 'e'},
'ể': {'r', 'ê'},
'ỉ': {'r', 'i'},
'ỏ': {'r', 'o'},
'ổ': {'r', 'ô'},
'ở': {'r', 'ơ'},
'ủ': {'r', 'u'},
'ử': {'r', 'ư'},
'ỷ': {'r', 'y'},
'ã': {'x', 'a'},
'ẵ': {'x', 'ă'},
'ẫ': {'x', 'â'},
'ẽ': {'x', 'e'},
'ễ': {'x', 'ê'},
'ĩ': {'x', 'i'},
'õ': {'x', 'o'},
'ỗ': {'x', 'ô'},
'ỡ': {'x', 'ơ'},
'ũ': {'x', 'u'},
'ữ': {'x', 'ư'},
'ỹ': {'x', 'y'},
'ạ': {'j', 'a'},
'ặ': {'j', 'ă'},
'ậ': {'j', 'â'},
'ẹ': {'j', 'e'},
'ệ': {'j', 'ê'},
'ị': {'j', 'i'},
'ọ': {'j', 'o'},
'ộ': {'j', 'ô'},
'ợ': {'j', 'ơ'},
'ụ': {'j', 'u'},
'ự': {'j', 'ư'},
'ỵ': {'j', 'y'},
'ơ': {'w', 'o'},
'ư': {'w', 'u'},
//No swap these chars
//'ă': {'w', 'a'},
//'â': {'a', 'a'},
//'ê': {'e', 'e'},
//'ô': {'o', 'o'},
//'đ': {'d', 'd'},
}
func init() {
var keys []rune
for k := range baseTone {
keys = append(keys, k)
}
for _, k := range keys {
b := baseTone[k]
baseTone[unicode.ToUpper(k)] = &BT{T: b.T, B: unicode.ToUpper(b.B)}
}
}
================================================
FILE: src/teni/wordtrie.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package teni
import (
"bufio"
"os"
"path/filepath"
"runtime"
"runtime/debug"
"strings"
"unicode"
)
const (
FindResultNotMatch = iota
FindResultMatchPrefix
FindResultRevert
FindResultMatchFull
Consonant = "qwrtpsdfghjklzxcvbnmđQWRTPSDFGHJKLZXCVBNMĐ"
)
var consonantKeys = map[rune]bool{
'đ': true,
'q': true,
'w': true,
'r': true,
't': true,
'p': true,
's': true,
'd': true,
'f': true,
'g': true,
'h': true,
'j': true,
'k': true,
'l': true,
'z': true,
'x': true,
'c': true,
'v': true,
'b': true,
'n': true,
'm': true,
'Đ': true,
'Q': true,
'W': true,
'R': true,
'T': true,
'P': true,
'S': true,
'D': true,
'F': true,
'G': true,
'H': true,
'J': true,
'K': true,
'L': true,
'Z': true,
'X': true,
'C': true,
'V': true,
'B': true,
'N': true,
'M': true,
}
var changeableConsonant = []string{"d", "D"}
var connectConsonant = []string{"qu", "QU", "Qu", "qU", "gi", "GI", "Gi", "gI"}
func RemoveConsonant(s string) string {
if len([]rune(s)) <= 1 {
return s
}
for _, cs := range connectConsonant {
if len(s) > len(cs) && strings.HasPrefix(s, cs) {
return s[len(cs):]
}
}
return strings.TrimLeft(s, Consonant)
}
func SplitConsonantVowel(rs []rune) ([]rune, []rune) {
s := string(rs)
for _, cc := range changeableConsonant {
if s == cc {
return nil, rs
}
}
for _, cs := range connectConsonant {
rcs := []rune(cs)
if len(rs) > len(rcs) && strings.HasPrefix(s, cs) {
return rcs, rs[len(rcs):]
}
}
for i, c := range rs {
if consonantKeys[unicode.ToLower(c)] {
continue
} else {
return rs[0:i], rs[i:]
}
}
return rs, nil
}
//Word trie
type W struct {
F bool //Full word
N map[rune]*W // Next characters
}
var rootWordTrie = &W{F: false}
func addTrie(trie *W, s []rune, down bool) {
if trie.N == nil {
trie.N = map[rune]*W{}
}
//add original char
s0 := s[0]
if trie.N[s0] == nil {
trie.N[s0] = &W{}
}
if len(s) == 1 {
if !trie.N[s0].F {
trie.N[s0].F = !down
}
} else {
addTrie(trie.N[s0], s[1:], down)
}
//add down 1 level char
if dmap, exist := downLvlMap[s0]; exist {
for _, r := range dmap {
if trie.N[r] == nil {
trie.N[r] = &W{}
}
if len(s) == 1 {
trie.N[r].F = true
} else {
addTrie(trie.N[r], s[1:], true)
}
}
}
}
func findWord(t *W, s []rune) (result uint8) {
if len(s) == 0 {
if t.F {
return FindResultMatchFull
}
return FindResultMatchPrefix
}
c := unicode.ToLower(s[0])
if t.N[c] != nil {
r := findWord(t.N[c], s[1:])
if r != FindResultNotMatch {
return r
}
}
return FindResultNotMatch
}
func findRootWord(s []rune) (result uint8) {
return findWord(rootWordTrie, s)
}
func fileExist(p string) bool {
sta, err := os.Stat(p)
return err == nil && !sta.IsDir()
}
func InitWordTrie(forceSpell bool, dataFiles ...string) error {
rootWordTrie = &W{F: false}
for _, dataFile := range dataFiles {
if !fileExist(dataFile) && !filepath.IsAbs(dataFile) {
dataFile = filepath.Join(filepath.Dir(os.Args[0]), dataFile)
}
f, err := os.Open(dataFile)
if err != nil {
return err
}
rd := bufio.NewReader(f)
for {
line, _, _ := rd.ReadLine()
if len(line) == 0 {
break
}
if len(line) <= MaxWordLength {
sLine := string(line)
if !forceSpell {
sLine = RemoveConsonant(sLine)
}
if len(sLine) > 0 {
addTrie(rootWordTrie, []rune(sLine), false)
}
}
}
f.Close()
}
runtime.GC()
debug.FreeOSMemory()
return nil
}
================================================
FILE: teni.xml
================================================
org.freedesktop.IBus.Teni
Vietnamese input engine for IBus
/usr/lib/ibus-engine-teni cd /usr/share/ibus-teni
1.5.3
Nguyễn Công Hoàng <hoangnc.jp@gmail.com>
GPLv3
https://github.com/teni-ime/ibus-teni/
ibus-teni
vi
teni
vi
GPLv3
Nguyễn Công Hoàng <hoangnc.jp@gmail.com>
/usr/share/ibus-teni/icon.png
default
Teni
Vietnamese input engine for IBus
0
================================================
FILE: test-data/LICENSE
================================================
Teni-IME - A Vietnamese Input method editor
Copyright (C) 2018 Nguyen Cong Hoang
This file and all tdata files in this directory is part of Teni-IME.
Teni-IME is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Teni-IME is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Teni-IME. If not, see .
================================================
FILE: test-data/nodict.tdata
================================================
truow truoww
TRUOW TRUOWW
disabled disabled
DISABLED DISABLED
text text
TEXT TEXT
raise raise
raise raisse
huaw huaww
how howw
huw huww
powerpoint powerpoint
powerpoint powwerpoint
================================================
FILE: test-data/nodict.telexw.tdata
================================================
w ww
web web
www wwww
[] [[]
{} {{}
huaw huaww
how howw
huw huww
powerpoint powerpoint
powerpoint powwerpoint
================================================
FILE: test-data/test-data-gen.go
================================================
/*
* Teni-IME - A Vietnamese Input method editor
* Copyright (C) 2018 Nguyen Cong Hoang
* This file is part of Teni-IME.
*
* Teni-IME is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Teni-IME is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Teni-IME. If not, see .
*
*/
package main
import (
"fmt"
"io/ioutil"
"log"
"math/rand"
"os"
"path/filepath"
"strings"
)
const (
dataDir = "dict"
dataSuffix = ".dict"
outputDir = "test-data"
outputSuffix = ".tdata"
)
var genFuncMap = map[string]func(string) string{
"telex1": telex1,
"telex2": telex2,
"telex3": telex3,
"telexw": telexw,
"vni1": vni1,
"vni2": vni2,
"vni3": vni3,
}
//fatal error
func fe(err error) {
if err != nil {
log.Fatal(err)
}
}
func main() {
fos, err := ioutil.ReadDir(dataDir)
fe(err)
for _, fo := range fos {
if fo.IsDir() {
continue
}
if strings.HasSuffix(fo.Name(), dataSuffix) {
fName := fo.Name()
dictFile := filepath.Join(dataDir, fName)
lines := readFileLines(dictFile)
genTestData(fName, lines)
}
}
}
func readFileLines(f string) []string {
data, e := ioutil.ReadFile(f)
fe(e)
s := strings.Replace(string(data), "\r", "", -1)
return strings.Split(s, "\n")
}
func genTestData(inputFileName string, lines []string) {
for genFuncName, genFunc := range genFuncMap {
outputFileName := filepath.Join(outputDir, inputFileName+"."+genFuncName+outputSuffix)
fo, e := os.OpenFile(outputFileName, os.O_CREATE|os.O_TRUNC|os.O_WRONLY, os.ModePerm)
fe(e)
for _, line := range lines {
if len(line) == 0 {
continue
}
inputStr := genFunc(line)
if len(inputStr) > 0 {
fmt.Fprintln(fo, line, inputStr)
}
}
}
}
func telex1(line string) string {
var or []rune
for _, r := range []rune(line) {
if bt, has := baseToneTelex[r]; has {
if bt2, has2 := baseToneTelex[bt.B]; has2 {
or = append(or, bt2.B, bt2.T, bt.T)
} else {
or = append(or, bt.B, bt.T)
}
} else {
or = append(or, r)
}
}
return string(or)
}
func telex2(line string) string {
var base []rune
var tone []rune
for _, r := range []rune(line) {
if bt, has := baseToneTelex[r]; has {
if bt2, has2 := baseToneTelex[bt.B]; has2 {
base = append(base, bt2.B)
tone = append(tone, bt2.T, bt.T)
} else {
base = append(base, bt.B)
tone = append(tone, bt.T)
}
} else {
base = append(base, r)
}
}
baseStr := string(base)
baseStr = strings.Replace(baseStr, "oo", "ooo", -1)
toneStr := string(tone)
toneStr = strings.Replace(toneStr, "ww", "w", -1)
return baseStr + toneStr
}
func telex3(line string) string {
var base []rune
var tone []rune
for _, r := range []rune(line) {
if bt, has := baseToneTelex[r]; has {
if bt2, has2 := baseToneTelex[bt.B]; has2 {
base = append(base, bt2.B, bt2.T)
tone = append(tone, bt.T)
} else {
base = append(base, bt.B)
tone = append(tone, bt.T)
}
} else {
base = append(base, r)
}
}
baseStr := string(base)
toneStr := string(tone)
if strings.Contains(baseStr, "w") && strings.Contains(toneStr, "w") {
toneStr = strings.Replace(toneStr, "w", "", 1)
} else {
toneStr = strings.Replace(toneStr, "ww", "w", 1)
}
return baseStr + toneStr
}
func telexw(line string) string {
var or []rune
for _, r := range []rune(line) {
if bt, has := baseToneTelex[r]; has {
if bt2, has2 := baseToneTelex[bt.B]; has2 {
or = append(or, bt2.B, bt2.T, bt.T)
} else {
or = append(or, bt.B, bt.T)
}
} else {
or = append(or, r)
}
}
s := string(or)
if strings.Contains(s, "ow") {
return strings.Replace(s, "ow", "[", -1)
} else if strings.Contains(s, "uw") {
if rand.Int()%2 == 0 {
return strings.Replace(s, "uw", "]", -1)
} else {
return strings.Replace(s, "uw", "w", -1)
}
}
return ""
}
func vni1(line string) string {
var or []rune
for _, r := range []rune(line) {
if bt, has := baseToneVni[r]; has {
if bt2, has2 := baseToneVni[bt.B]; has2 {
or = append(or, bt2.B, bt2.T, bt.T)
} else {
or = append(or, bt.B, bt.T)
}
} else {
or = append(or, r)
}
}
return string(or)
}
func vni2(line string) string {
var base []rune
var tone []rune
for _, r := range []rune(line) {
if bt, has := baseToneVni[r]; has {
if bt2, has2 := baseToneVni[bt.B]; has2 {
base = append(base, bt2.B)
tone = append(tone, bt2.T, bt.T)
} else {
base = append(base, bt.B)
tone = append(tone, bt.T)
}
} else {
base = append(base, r)
}
}
baseStr := string(base)
toneStr := string(tone)
toneStr = strings.Replace(toneStr, "77", "7", -1)
return baseStr + toneStr
}
func vni3(line string) string {
var base []rune
var tone []rune
for _, r := range []rune(line) {
if bt, has := baseToneVni[r]; has {
if bt2, has2 := baseToneVni[bt.B]; has2 {
base = append(base, bt2.B, bt2.T)
tone = append(tone, bt.T)
} else {
base = append(base, bt.B)
tone = append(tone, bt.T)
}
} else {
base = append(base, r)
}
}
baseStr := string(base)
toneStr := string(tone)
if strings.Contains(baseStr, "7") && strings.Contains(toneStr, "7") {
toneStr = strings.Replace(toneStr, "7", "", 1)
}
toneStr = strings.Replace(toneStr, "77", "7", -1)
return baseStr + toneStr
}
type BT struct {
T rune //Tone char
B rune //Base char
}
var baseToneTelex = map[rune]*BT{
'ă': {'w', 'a'},
'â': {'a', 'a'},
'ê': {'e', 'e'},
'ô': {'o', 'o'},
'ơ': {'w', 'o'},
'ư': {'w', 'u'},
'đ': {'d', 'd'},
'á': {'s', 'a'},
'ắ': {'s', 'ă'},
'ấ': {'s', 'â'},
'é': {'s', 'e'},
'ế': {'s', 'ê'},
'í': {'s', 'i'},
'ó': {'s', 'o'},
'ố': {'s', 'ô'},
'ớ': {'s', 'ơ'},
'ú': {'s', 'u'},
'ứ': {'s', 'ư'},
'ý': {'s', 'y'},
'à': {'f', 'a'},
'ằ': {'f', 'ă'},
'ầ': {'f', 'â'},
'è': {'f', 'e'},
'ề': {'f', 'ê'},
'ì': {'f', 'i'},
'ò': {'f', 'o'},
'ồ': {'f', 'ô'},
'ờ': {'f', 'ơ'},
'ù': {'f', 'u'},
'ừ': {'f', 'ư'},
'ỳ': {'f', 'y'},
'ả': {'r', 'a'},
'ẳ': {'r', 'ă'},
'ẩ': {'r', 'â'},
'ẻ': {'r', 'e'},
'ể': {'r', 'ê'},
'ỉ': {'r', 'i'},
'ỏ': {'r', 'o'},
'ổ': {'r', 'ô'},
'ở': {'r', 'ơ'},
'ủ': {'r', 'u'},
'ử': {'r', 'ư'},
'ỷ': {'r', 'y'},
'ã': {'x', 'a'},
'ẵ': {'x', 'ă'},
'ẫ': {'x', 'â'},
'ẽ': {'x', 'e'},
'ễ': {'x', 'ê'},
'ĩ': {'x', 'i'},
'õ': {'x', 'o'},
'ỗ': {'x', 'ô'},
'ỡ': {'x', 'ơ'},
'ũ': {'x', 'u'},
'ữ': {'x', 'ư'},
'ỹ': {'x', 'y'},
'ạ': {'j', 'a'},
'ặ': {'j', 'ă'},
'ậ': {'j', 'â'},
'ẹ': {'j', 'e'},
'ệ': {'j', 'ê'},
'ị': {'j', 'i'},
'ọ': {'j', 'o'},
'ộ': {'j', 'ô'},
'ợ': {'j', 'ơ'},
'ụ': {'j', 'u'},
'ự': {'j', 'ư'},
'ỵ': {'j', 'y'},
}
var baseToneVni = map[rune]*BT{
'â': {'6', 'a'},
'ê': {'6', 'e'},
'ô': {'6', 'o'},
'ơ': {'7', 'o'},
'ư': {'7', 'u'},
'ă': {'8', 'a'},
'đ': {'9', 'd'},
'á': {'1', 'a'},
'ắ': {'1', 'ă'},
'ấ': {'1', 'â'},
'é': {'1', 'e'},
'ế': {'1', 'ê'},
'í': {'1', 'i'},
'ó': {'1', 'o'},
'ố': {'1', 'ô'},
'ớ': {'1', 'ơ'},
'ú': {'1', 'u'},
'ứ': {'1', 'ư'},
'ý': {'1', 'y'},
'à': {'2', 'a'},
'ằ': {'2', 'ă'},
'ầ': {'2', 'â'},
'è': {'2', 'e'},
'ề': {'2', 'ê'},
'ì': {'2', 'i'},
'ò': {'2', 'o'},
'ồ': {'2', 'ô'},
'ờ': {'2', 'ơ'},
'ù': {'2', 'u'},
'ừ': {'2', 'ư'},
'ỳ': {'2', 'y'},
'ả': {'3', 'a'},
'ẳ': {'3', 'ă'},
'ẩ': {'3', 'â'},
'ẻ': {'3', 'e'},
'ể': {'3', 'ê'},
'ỉ': {'3', 'i'},
'ỏ': {'3', 'o'},
'ổ': {'3', 'ô'},
'ở': {'3', 'ơ'},
'ủ': {'3', 'u'},
'ử': {'3', 'ư'},
'ỷ': {'3', 'y'},
'ã': {'4', 'a'},
'ẵ': {'4', 'ă'},
'ẫ': {'4', 'â'},
'ẽ': {'4', 'e'},
'ễ': {'4', 'ê'},
'ĩ': {'4', 'i'},
'õ': {'4', 'o'},
'ỗ': {'4', 'ô'},
'ỡ': {'4', 'ơ'},
'ũ': {'4', 'u'},
'ữ': {'4', 'ư'},
'ỹ': {'4', 'y'},
'ạ': {'5', 'a'},
'ặ': {'5', 'ă'},
'ậ': {'5', 'â'},
'ẹ': {'5', 'e'},
'ệ': {'5', 'ê'},
'ị': {'5', 'i'},
'ọ': {'5', 'o'},
'ộ': {'5', 'ô'},
'ợ': {'5', 'ơ'},
'ụ': {'5', 'u'},
'ự': {'5', 'ư'},
'ỵ': {'5', 'y'},
}
================================================
FILE: test-data/vietnamese.cm.dict.telex1.tdata
================================================
à af
ả ar
ã ax
á as
ạ aj
ác asc
ạc ajc
ácbon ascbon
ách asch
ạch ajch
ácxtơ ascxtow
ảh arh
ài afi
ải ari
ãi axi
ái asi
ại aji
alô aloo
àm afm
ảm arm
ãm axm
ám asm
ạm ajm
àn afn
ản arn
ãn axn
án asn
ạn ajn
àng afng
ảng arng
ãng axng
áng asng
ạng ajng
ành afnh
ảnh arnh
ãnh axnh
ánh asnh
ạnh ajnh
ào afo
ảo aro
ão axo
áo aso
ạo ajo
aỏi aori
àp afp
áp asp
ạp ajp
át ast
ạt ajt
àu afu
ảu aru
áu asu
ạu aju
ày afy
ảy ary
ãy axy
áy asy
ạy ajy
ă aw
ằ awf
ẳ awr
ẵ awx
ắ aws
ặ awj
ăc awc
ắc awsc
ặc awjc
ăcr awcr
ăh awh
ăk awk
ắk awsk
ăm awm
ằm awfm
ẳm awrm
ẵm awxm
ắm awsm
ặm awjm
ăn awn
ằn awfn
ẳn awrn
ẵn awxn
ắn awsn
ặn awjn
ăng awng
ằng awfng
ẳng awrng
ẵng awxng
ắng awsng
ặng awjng
ăngten awngten
ắp awsp
ặp awjp
ắt awst
ặt awjt
ằu awfu
â aa
ầ aaf
ẩ aar
ẫ aax
ấ aas
ậ aaj
ấc aasc
ậc aajc
âm aam
ầm aafm
ẩm aarm
ẫm aaxm
ấm aasm
ậm aajm
ân aan
ần aafn
ẩn aarn
ẫn aaxn
ấn aasn
ận aajn
âng aang
ầng aafng
ẩng aarng
ẫng aaxng
ấng aasng
ậng aajng
âp aap
ấp aasp
ập aajp
ất aast
ật aajt
âu aau
ầu aafu
ẩu aaru
ẫu aaxu
ấu aasu
ậu aaju
ây aay
ầy aafy
ẩy aary
ẫy aaxy
ấy aasy
ậy aajy
bà baf
bả bar
bã bax
bá bas
bạ baj
bác basc
bạc bajc
bách basch
bạch bajch
bài bafi
bải bari
bãi baxi
bái basi
bại baji
bàm bafm
bãm baxm
bám basm
bạm bajm
bàn bafn
bản barn
bán basn
bạn bajn
bàng bafng
bảng barng
bãng baxng
báng basng
bạng bajng
bành bafnh
bảnh barnh
bánh basnh
bạnh bajnh
bào bafo
bảo baro
bão baxo
báo baso
bạo bajo
báp basp
bạp bajp
bát bast
bạt bajt
bàu bafu
bảu baru
báu basu
bạu baju
bày bafy
bảy bary
báy basy
bayơ bayow
bắc bawsc
bặc bawjc
băm bawm
bằm bawfm
bẳm bawrm
bẵm bawxm
bặm bawjm
băn bawn
bằn bawfn
bẳn bawrn
bắn bawsn
bặn bawjn
băng bawng
bằng bawfng
bẳng bawrng
bẵng bawxng
bắng bawsng
bặng bawjng
bắp bawsp
bặp bawjp
bắt bawst
bặt bawjt
bấc baasc
bậc baajc
bâm baam
bầm baafm
bẩm baarm
bẫm baaxm
bấm baasm
bậm baajm
bân baan
bần baafn
bẩn baarn
bấn baasn
bận baajn
bâng baang
bầng baafng
bẩng baarng
bẫng baaxng
bấp baasp
bập baajp
bất baast
bật baajt
bâu baau
bầu baafu
bẩu baaru
bẫu baaxu
bấu baasu
bậu baaju
bây baay
bầy baafy
bẩy baary
bẫy baaxy
bấy baasy
bậy baajy
bè bef
bẻ ber
bẽ bex
bé bes
bẹ bej
béc besc
bèm befm
bẻm berm
bèn befn
bẽn bexn
bén besn
bẹn bejn
béng besng
bẻnh bernh
bèo befo
bẻo bero
bẽo bexo
béo beso
bẹo bejo
bép besp
bẹp bejp
bét best
bẹt bejt
bê bee
bề beef
bể beer
bễ beex
bế bees
bệ beej
bệch beejch
bên been
bền beefn
bến beesn
bện beejn
bênh beenh
bềnh beefnh
bệnh beejnh
bếp beesp
bêt beet
bết beest
bệt beejt
bête beete
bêu beeu
bều beefu
bễu beexu
bếu beesu
bệu beeju
bì bif
bỉ bir
bĩ bix
bí bis
bị bij
bìa bifa
bịa bija
bích bisch
bịch bijch
biếc bieesc
biêm bieem
biểm bieerm
biếm bieesm
biên bieen
biền bieefn
biển bieern
biến bieesn
biện bieejn
biêng bieeng
biếng bieesng
biêt bieet
biết bieest
biệt bieejt
biêu bieeu
biều bieefu
biểu bieeru
biễu bieexu
biếu bieesu
bìh bifh
bìm bifm
bỉm birm
bím bism
bìn bifn
bịn bijn
bình bifnh
bỉnh birnh
bĩnh bixnh
bính bisnh
bịnh bijnh
bịp bijp
bít bist
bịt bijt
bìu bifu
bỉu biru
bĩu bixu
bíu bisu
bịu biju
blá blas
blái blasi
blăng blawng
blâu blaau
blóm blosm
blóma blosma
blọn blojn
blô bloo
blúc blusc
bluộm bluoojm
bnđc bnddc
bò bof
bỏ bor
bõ box
bó bos
bọ boj
boạt boajt
bóc bosc
bọc bojc
bòi bofi
bỏi bori
bõi boxi
bói bosi
bòm bofm
bỏm borm
bõm boxm
bòn bofn
bỏn born
bón bosn
bọn bojn
bòng bofng
bỏng borng
bõng boxng
bóng bosng
bọng bojng
bóp bosp
bọp bojp
bót bost
bọt bojt
bô boo
bồ boof
bổ boor
bỗ boox
bố boos
bộ booj
bốc boosc
bộc boojc
bôi booi
bồi boofi
bổi boori
bối boosi
bội booji
bôm boom
bồm boofm
bôn boon
bồn boofn
bổn boorn
bốn boosn
bộn boojn
bông boong
bồng boofng
bổng boorng
bỗng booxng
bống boosng
bộng boojng
bốp boosp
bộp boojp
bốt boost
bột boojt
bơ bow
bờ bowf
bở bowr
bỡ bowx
bớ bows
bợ bowj
bớc bowsc
bơi bowi
bời bowfi
bởi bowri
bỡi bowxi
bới bowsi
bơm bowm
bờm bowfm
bợm bowjm
bơn bown
bờn bowfn
bởn bowrn
bỡn bowxn
bớn bowsn
bợn bowjn
bớp bowsp
bợp bowjp
bớt bowst
bợt bowjt
bợu bowju
brâu braau
brôm broom
brơ brow
bù buf
bủ bur
bú bus
bụ buj
bùa bufa
bủa bura
búa busa
bụa buja
búc busc
bục bujc
bùi bufi
bủi buri
búi busi
bụi buji
búk busk
bulông buloong
bùm bufm
bủm burm
bũm buxm
bụm bujm
bùn bufn
bủn burn
bún busn
bùng bufng
bủng burng
búng busng
bụng bujng
buộc buoojc
buồi buoofi
buổi buoori
buối buoosi
buội buooji
buồm buoofm
buôn buoon
buồn buoofn
buông buoong
buồng buoofng
buốt buoost
buột buoojt
búp busp
bụp bujp
bút bust
bụt bujt
buýt buyst
bư buw
bứ buws
bự buwj
bưa buwa
bừa buwfa
bửa buwra
bữa buwxa
bứa buwsa
bựa buwja
bức buwsc
bực buwjc
bưng buwng
bừng buwfng
bửng buwrng
bứng buwsng
bựng buwjng
bước buwowsc
bươi buwowi
bưởi buwowri
bươm buwowm
bướm buwowsm
bươn buwown
bương buwowng
bường buwowfng
bướng buwowsng
bướp buwowsp
bượt buwowjt
bươu buwowu
bướu buwowsu
bứt buwst
bựt buwjt
bưu buwu
bửu buwru
cà caf
cả car
cá cas
cạ caj
các casc
cạc cajc
cácbon cascbon
cách casch
cạch cajch
cácxt cascxt
cacxtơ cacxtow
cácxtơ cascxtow
café cafes
cài cafi
cải cari
cãi caxi
cái casi
cại caji
calô caloo
càm cafm
cảm carm
cãm caxm
cám casm
cạm cajm
campôt campoot
càn cafn
cản carn
cán casn
cạn cajn
càng cafng
cảng carng
cáng casng
cành cafnh
cảnh carnh
cánh casnh
cạnh cajnh
canô canoo
canxít canxist
cào cafo
cảo caro
cão caxo
cáo caso
cạo cajo
cáp casp
cạp cajp
carbón carbosn
cartón cartosn
cát cast
cạt cajt
càu cafu
cảu caru
cáu casu
cạu caju
cày cafy
cảy cary
cáy casy
cạy cajy
că caw
cắc cawsc
cặc cawjc
căm cawm
cằm cawfm
cắm cawsm
cặm cawjm
căn cawn
cằn cawfn
cẳn cawrn
cắn cawsn
cặn cawjn
căng cawng
cằng cawfng
cẳng cawrng
cẵng cawxng
cắng cawsng
căo cawo
cắp cawsp
cặp cawjp
cắt cawst
cặt cawjt
câ caa
cầ caaf
câble caable
cấc caasc
câm caam
cầm caafm
cẩm caarm
cẫm caaxm
cấm caasm
cân caan
cần caafn
cẩn caarn
cẫn caaxn
cấn caasn
cận caajn
câng caang
cẫng caaxng
cấp caasp
cập caajp
cất caast
cật caajt
câu caau
cầu caafu
cẩu caaru
cẫu caaxu
cấu caasu
cậu caaju
cây caay
cầy caafy
cẩy caary
cấy caasy
cậy caajy
céng cesng
cê cee
chà chaf
chả char
chã chax
chá chas
chạ chaj
chác chasc
chạc chajc
chách chasch
chạch chajch
chài chafi
chải chari
chãi chaxi
chái chasi
chàm chafm
chảm charm
chãm chaxm
chám chasm
chạm chajm
chán chasn
chạn chajn
chàng chafng
chảng charng
cháng chasng
chạng chajng
chành chafnh
chảnh charnh
chánh chasnh
chạnh chajnh
chào chafo
chảo charo
chão chaxo
cháo chaso
chạo chajo
cháp chasp
chạp chajp
chát chast
chạt chajt
chàu chafu
chảu charu
cháu chasu
chày chafy
chảy chary
cháy chasy
chạy chajy
chắc chawsc
chặc chawjc
chăm chawm
chằm chawfm
chẳm chawrm
chắm chawsm
chặm chawjm
chăn chawn
chằn chawfn
chẳn chawrn
chẵn chawxn
chắn chawsn
chặn chawjn
chăng chawng
chằng chawfng
chẳng chawrng
chắng chawsng
chặng chawjng
chắp chawsp
chặp chawjp
chắt chawst
chặt chawjt
chấ chaas
chậc chaajc
châm chaam
chầm chaafm
chẩm chaarm
chẫm chaaxm
chấm chaasm
chậm chaajm
chân chaan
chần chaafn
chẩn chaarn
chấn chaasn
chận chaajn
chẩng chaarng
chấng chaasng
chấp chaasp
chập chaajp
chất chaast
chật chaajt
châu chaau
chầu chaafu
chẩu chaaru
chẫu chaaxu
chấu chaasu
chậu chaaju
chây chaay
chầy chaafy
chẩy chaary
chấy chaasy
chậy chaajy
chè chef
chẻ cher
chẽ chex
ché ches
chẹ chej
chèm chefm
chẻm cherm
chém chesm
chèn chefn
chẻn chern
chẽn chexn
chén chesn
chẹn chejn
chéng chesng
chèo chefo
chẻo chero
chẽo chexo
chéo cheso
chẹo chejo
chép chesp
chẹp chejp
chét chest
chẹt chejt
chê chee
chề cheef
chễ cheex
chế chees
chệ cheej
chệc cheejc
chếch cheesch
chệch cheejch
chêm cheem
chềm cheefm
chễm cheexm
chên cheen
chện cheejn
chênh cheenh
chềnh cheefnh
chểnh cheernh
chễnh cheexnh
chếnh cheesnh
chệnh cheejnh
chếp cheesp
chệp cheejp
chết cheest
chệt cheejt
chêu cheeu
chì chif
chỉ chir
chĩ chix
chí chis
chị chij
chìa chifa
chỉa chira
chĩa chixa
chịa chija
chích chisch
chịch chijch
chiếc chieesc
chiêm chieem
chiểm chieerm
chiếm chieesm
chiên chieen
chiền chieefn
chiển chieern
chiến chieesn
chiện chieejn
chiêng chieeng
chiềng chieefng
chiếng chieesng
chiếp chieesp
chiệp chieejp
chiết chieest
chiệt chieejt
chiêu chieeu
chiều chieefu
chiểu chieeru
chiếu chieesu
chìm chifm
chỉm chirm
chím chism
chỉn chirn
chĩn chixn
chín chisn
chình chifnh
chỉnh chirnh
chĩnh chixnh
chính chisnh
chíp chisp
chít chist
chịt chijt
chìu chifu
chĩu chixu
chíu chisu
chịu chiju
chò chof
chỏ chor
chõ chox
chó chos
chọ choj
chỏa chora
chõa choxa
chóa chosa
choác choasc
choạc choajc
choách choasch
choài choafi
choãi choaxi
choái choasi
choại choaji
choán choasn
choàng choafng
choảng choarng
choáng choasng
choạng choajng
choãnh choaxnh
choạp choajp
choắc choawsc
choăn choawn
choắt choawst
chóc chosc
chọc chojc
choèn choefn
choẻn choern
choét choest
choẹt choejt
chòi chofi
chỏi chori
chõi choxi
chói chosi
chọi choji
chòm chofm
chỏm chorm
chõm choxm
chỏn chorn
chõn choxn
chón chosn
chọn chojn
chòng chofng
chỏng chorng
chõng choxng
chóng chosng
chóp chosp
chót chost
chọt chojt
chô choo
chồ choof
chổ choor
chỗ choox
chộ chooj
chốc choosc
chôi chooi
chồi choofi
chổi choori
chỗi chooxi
chối choosi
chội chooji
chôm choom
chồm choofm
chổm choorm
chỗm chooxm
chôn choon
chồn choofn
chổn choorn
chốn choosn
chộn choojn
chông choong
chồng choofng
chổng choorng
chống choosng
chốp choosp
chộp choojp
chốt choost
chột choojt
chơ chow
chờ chowf
chở chowr
chớ chows
chợ chowj
chơi chowi
chời chowfi
chới chowsi
chơm chowm
chờm chowfm
chởm chowrm
chớm chowsm
chơn chown
chờn chowfn
chớn chowsn
chợn chowjn
chớp chowsp
chợp chowjp
chớt chowst
chợt chowjt
chù chuf
chủ chur
chú chus
chụ chuj
chùa chufa
chúa chusa
chuáng chuasng
chuân chuaan
chuẩn chuaarn
chuất chuaast
chuật chuaajt
chúc chusc
chục chujc
chuế chuees
chuếch chueesch
chuệch chueejch
chuếnh chueesnh
chuệnh chueejnh
chùi chufi
chủi churi
chũi chuxi
chúi chusi
chùm chufm
chủm churm
chũm chuxm
chúm chusm
chụm chujm
chùn chufn
chủn churn
chũn chuxn
chùng chufng
chủng churng
chúng chusng
chuốc chuoosc
chuộc chuoojc
chuôi chuooi
chuồi chuoofi
chuỗi chuooxi
chuối chuoosi
chuội chuooji
chuôm chuoom
chuốm chuoosm
chuồn chuoofn
chuông chuoong
chuồng chuoofng
chuộng chuoojng
chuốt chuoost
chuột chuoojt
chụp chujp
chút chust
chụt chujt
chuyên chuyeen
chuyền chuyeefn
chuyển chuyeern
chuyến chuyeesn
chuyện chuyeejn
chuyết chuyeest
chư chuw
chừ chuwf
chử chuwr
chữ chuwx
chứ chuws
chưa chuwa
chừa chuwfa
chửa chuwra
chữa chuwxa
chứa chuwsa
chức chuwsc
chực chuwjc
chửi chuwri
chưn chuwn
chưng chuwng
chừng chuwfng
chửng chuwrng
chững chuwxng
chứng chuwsng
chựng chuwjng
chước chuwowsc
chược chuwowjc
chưởi chuwowri
chườm chuwowfm
chương chuwowng
chường chuwowfng
chưởng chuwowrng
chưỡng chuwowxng
chướng chuwowsng
chượp chuwowjp
chứt chuwst
chưu chuwu
chửu chuwru
chữu chuwxu
chựu chuwju
cì cif
cí cis
cịt cijt
clé cles
clông cloong
cò cof
cỏ cor
cõ cox
có cos
cọ coj
cóc cosc
cọc cojc
còi cofi
cỏi cori
cõi coxi
cói cosi
còm cofm
cỏm corm
cọm cojm
còn cofn
cỏn corn
cón cosn
cọn cojn
còng cofng
cỏng corng
cõng coxng
cóng cosng
cọng cojng
cóp cosp
cọp cojp
cót cost
cọt cojt
cô coo
cồ coof
cổ coor
cỗ coox
cố coos
cộ cooj
cốc coosc
cộc coojc
côi cooi
cồi coofi
cổi coori
cỗi cooxi
cối coosi
cội cooji
côm coom
cồm coofm
cốm coosm
cộm coojm
côn coon
cồn coofn
cổn coorn
cốn coosn
cộn coojn
cône coone
công coong
cồng coofng
cổng coorng
cống coosng
cộng coojng
cốp coosp
cộp coojp
côt coot
cốt coost
cột coojt
cơ cow
cờ cowf
cỡ cowx
cớ cows
cơi cowi
cời cowfi
cởi cowri
cỡi cowxi
cới cowsi
cơm cowm
cỡm cowxm
cớm cowsm
cợm cowjm
cơn cown
cờn cowfn
cởn cowrn
cỡn cowxn
cớn cowsn
cợn cowjn
cợp cowjp
cớt cowst
cợt cowjt
crô croo
crôm croom
crông croong
crưm cruwm
cù cuf
củ cur
cũ cux
cú cus
cụ cuj
cùa cufa
của cura
cúa cusa
cúc cusc
cục cujc
cùi cufi
củi curi
cũi cuxi
cúi cusi
cụi cuji
cùm cufm
củm curm
cúm cusm
cụm cujm
cùn cufn
củn curn
cũn cuxn
cùng cufng
củng curng
cũng cuxng
cúng cusng
cụng cujng
cuốc cuoosc
cuộc cuoojc
cuồi cuoofi
cuối cuoosi
cuội cuooji
cuỗm cuooxm
cuồn cuoofn
cuốn cuoosn
cuộn cuoojn
cuông cuoong
cuồng cuoofng
cuống cuoosng
cuộng cuoojng
cuôr cuoor
cúp cusp
cụp cujp
cút cust
cụt cujt
cư cuw
cừ cuwf
cử cuwr
cữ cuwx
cứ cuws
cự cuwj
cưa cuwa
cửa cuwra
cứa cuwsa
cựa cuwja
cức cuwsc
cực cuwjc
cửi cuwri
cưng cuwng
cửng cuwrng
cứng cuwsng
cước cuwowsc
cược cuwowjc
cười cuwowfi
cưỡi cuwowxi
cưới cuwowsi
cườm cuwowfm
cương cuwowng
cường cuwowfng
cưỡng cuwowxng
cướp cuwowsp
cứt cuwst
cưu cuwu
cừu cuwfu
cửu cuwru
cữu cuwxu
cứu cuwsu
cựu cuwju
dà daf
dả dar
dã dax
dá das
dạ daj
dác dasc
dạc dajc
dách dasch
dạch dajch
dài dafi
dải dari
dãi daxi
dái dasi
dại daji
dàm dafm
dảm darm
dám dasm
dạm dajm
dàn dafn
dản darn
dãn daxn
dán dasn
dạn dajn
dàng dafng
dáng dasng
dạng dajng
dành dafnh
dảnh darnh
dánh dasnh
dào dafo
dáo daso
dạo dajo
dáp dasp
dát dast
dạt dajt
dàu dafu
dáu dasu
dày dafy
dảy dary
dãy daxy
dáy dasy
dạy dajy
dắc dawsc
dặc dawjc
dăm dawm
dằm dawfm
dặm dawjm
dăn dawn
dằn dawfn
dẳn dawrn
dẵn dawxn
dặn dawjn
dăng dawng
dằng dawfng
dẳng dawrng
dẵng dawxng
dắng dawsng
dặng dawjng
dắt dawst
dặt dawjt
dâ daa
dậ daaj
dâm daam
dầm daafm
dẩm daarm
dẫm daaxm
dấm daasm
dậm daajm
dân daan
dần daafn
dẩn daarn
dẫn daaxn
dấn daasn
dận daajn
dâne daane
dâng daang
dậng daajng
dấp daasp
dập daajp
dật daajt
dâu daau
dầu daafu
dẩu daaru
dẫu daaxu
dấu daasu
dậu daaju
dây daay
dầy daafy
dẩy daary
dẫy daaxy
dấy daasy
dậy daajy
dè def
dẻ der
dẽ dex
dé des
dẹ dej
déc desc
dèm defm
dẻm derm
dém desm
dẹm dejm
dèn defn
dèo defo
dẻo dero
déo deso
dẹo dejo
dép desp
dẹp dejp
dẹt dejt
dê dee
dề deef
dể deer
dễ deex
dế dees
dệ deej
dềm deefm
dền deefn
dện deejn
dềng deefng
dênh deenh
dềnh deefnh
dết deest
dệt deejt
dêu deeu
dều deefu
dệu deeju
dì dif
dỉ dir
dĩ dix
dí dis
dị dij
dìa difa
dĩa dixa
día disa
dịa dija
dích disch
dịch dijch
diếc dieesc
diệc dieejc
diêm dieem
diềm dieefm
diễm dieexm
diếm dieesm
diệm dieejm
diên dieen
diển dieern
diễn dieexn
diến dieesn
diện dieejn
diềng dieefng
diếp dieesp
diệp dieejp
diết dieest
diệt dieejt
diêu dieeu
diều dieefu
diểu dieeru
diễu dieexu
diếu dieesu
diệu dieeju
dìm difm
dím dism
dĩn dixn
dín disn
dĩnh dixnh
dính disnh
dịnh dijnh
díp disp
dịp dijp
dìt dift
dít dist
dịt dijt
dìu difu
díu disu
dịu diju
dliê dliee
dò dof
dỏ dor
dó dos
dọ doj
doãi doaxi
doãn doaxn
doãng doaxng
doạng doajng
doành doafnh
dóc dosc
dọc dojc
dòi dofi
dỏi dori
dõi doxi
dói dosi
dọi doji
dòm dofm
dỏm dorm
dóm dosm
dòn dofn
dón dosn
dọn dojn
dòng dofng
dỏng dorng
dõng doxng
dóng dosng
dọng dojng
dọp dojp
dót dost
dô doo
dồ doof
dổ door
dỗ doox
dộ dooj
dốc doosc
dộc doojc
dôi dooi
dồi doofi
dổi doori
dỗi dooxi
dối doosi
dội dooji
dôn doon
dồn doofn
dốn doosn
dộn doojn
dông doong
dỗng dooxng
dống doosng
dộng doojng
dộp doojp
dốt doost
dột doojt
dơ dow
dờ dowf
dở dowr
dỡ dowx
dớ dows
dợ dowj
dơi dowi
dời dowfi
dới dowsi
dợi dowji
dởm dowrm
dơn down
dờn dowfn
dỡn dowxn
dớn dowsn
dợn dowjn
dớp dowsp
dợp dowjp
dớt dowst
drăm drawm
drăng drawng
dù duf
dủ dur
dũ dux
dú dus
dụ duj
dùa dufa
dũa duxa
dúa dusa
dụa duja
duân duaan
duẩn duaarn
duẫn duaaxn
duật duaajt
dục dujc
duệ dueej
duềnh dueefnh
dùi dufi
dủi duri
dũi duxi
dúi dusi
dụi duji
dùm dufm
dúm dusm
dụm dujm
dùn dufn
dún dusn
dùng dufng
dũng duxng
dúng dusng
dụng dujng
duốc duoosc
duộc duoojc
duôi duooi
duổi duoori
duỗi duooxi
duối duoosi
duồn duoofn
duông duoong
duồng duoofng
dút dust
dụt dujt
dụy dujy
duyên duyeen
duyến duyeesn
duyện duyeejn
duyệt duyeejt
dư duw
dừ duwf
dử duwr
dữ duwx
dứ duws
dự duwj
dưa duwa
dừa duwfa
dứa duwsa
dựa duwja
dức duwsc
dực duwjc
dưng duwng
dừng duwfng
dửng duwrng
dững duwxng
dứng duwsng
dựng duwjng
dược duwowjc
dười duwowfi
dưới duwowsi
dượi duwowji
dương duwowng
dường duwowfng
dưỡng duwowxng
dướng duwowsng
dượng duwowjng
dượt duwowjt
dứt duwst
dựt duwjt
dửu duwru
dữu duwxu
dứu duwsu
dựu duwju
dýn dysn
đ dd
đa dda
đà ddaf
đả ddar
đã ddax
đá ddas
đạ ddaj
đac ddac
đác ddasc
đạc ddajc
đách ddasch
đạch ddajch
đai ddai
đài ddafi
đãi ddaxi
đái ddasi
đại ddaji
đam ddam
đàm ddafm
đảm ddarm
đám ddasm
đạm ddajm
đan ddan
đàn ddafn
đản ddarn
đán ddasn
đạn ddajn
đang ddang
đàng ddafng
đảng ddarng
đãng ddaxng
đáng ddasng
đanh ddanh
đành ddafnh
đảnh ddarnh
đánh ddasnh
đao ddao
đào ddafo
đảo ddaro
đáo ddaso
đạo ddajo
đáp ddasp
đạp ddajp
đát ddast
đạt ddajt
đau ddau
đáu ddasu
đay dday
đày ddafy
đảy ddary
đãy ddaxy
đáy ddasy
đẵ ddawx
đắc ddawsc
đặc ddawjc
đăk ddawk
đắk ddawsk
đăm ddawm
đằm ddawfm
đẵm ddawxm
đắm ddawsm
đằn ddawfn
đẵn ddawxn
đắn ddawsn
đặn ddawjn
đăng ddawng
đằng ddawfng
đẳng ddawrng
đẵng ddawxng
đắng ddawsng
đặng ddawjng
đắp ddawsp
đắt ddawst
đặt ddawjt
đằu ddawfu
đâm ddaam
đầm ddaafm
đẫm ddaaxm
đấm ddaasm
đậm ddaajm
đần ddaafn
đẫn ddaaxn
đấn ddaasn
đận ddaajn
đâng ddaang
đấng ddaasng
đập ddaajp
đất ddaast
đật ddaajt
đâu ddaau
đầu ddaafu
đẩu ddaaru
đấu ddaasu
đậu ddaaju
đây ddaay
đầy ddaafy
đẩy ddaary
đẫy ddaaxy
đấy ddaasy
đậy ddaajy
đe dde
đè ddef
đẻ dder
đẽ ddex
đéc ddesc
đem ddem
đèm ddefm
đen dden
đèn ddefn
đẹn ddejn
đeng ddeng
đeo ddeo
đèo ddefo
đẽo ddexo
đéo ddeso
đẹp ddejp
đét ddest
đẹt ddejt
đê ddee
đề ddeef
để ddeer
đễ ddeex
đế ddees
đệ ddeej
đếch ddeesch
đêh ddeeh
đêm ddeem
đềm ddeefm
đếm ddeesm
đệm ddeejm
đên ddeen
đền ddeefn
đến ddeesn
đênh ddeenh
đềnh ddeefnh
đểnh ddeernh
đễnh ddeexnh
đệp ddeejp
đêu ddeeu
đều ddeefu
đểu ddeeru
đg ddg
đgt ddgt
đhur ddhur
đi ddi
đì ddif
đĩ ddix
đị ddij
đìa ddifa
đỉa ddira
đĩa ddixa
đía ddisa
địa ddija
đích ddisch
địch ddijch
đien ddien
điếc ddieesc
điềm ddieefm
điểm ddieerm
điếm ddieesm
điệm ddieejm
điên ddieen
điền ddieefn
điển ddieern
điện ddieejn
điêng ddieeng
điếng ddieesng
điệp ddieejp
điệt ddieejt
điêu ddieeu
điều ddieefu
điểu ddieeru
điếu ddieesu
điệu ddieeju
đin ddin
đìn ddifn
đinh ddinh
đình ddifnh
đỉnh ddirnh
đĩnh ddixnh
đính ddisnh
định ddijnh
đip ddip
đít ddist
địt ddijt
điu ddiu
đìu ddifu
địu ddiju
đo ddo
đò ddof
đỏ ddor
đõ ddox
đó ddos
đọ ddoj
đoa ddoa
đoác ddoasc
đoài ddoafi
đoái ddoasi
đoan ddoan
đoàn ddoafn
đoản ddoarn
đoán ddoasn
đoạn ddoajn
đoàng ddoafng
đoảng ddoarng
đoãng ddoaxng
đoành ddoafnh
đoạt ddoajt
đoc ddoc
đóc ddosc
đọc ddojc
đoi ddoi
đòi ddofi
đỏi ddori
đói ddosi
đọi ddoji
đom ddom
đòm ddofm
đỏm ddorm
đóm ddosm
đon ddon
đòn ddofn
đón ddosn
đọn ddojn
đong ddong
đòng ddofng
đỏng ddorng
đóng ddosng
đọng ddojng
đọp ddojp
đót ddost
đọt ddojt
đô ddoo
đồ ddoof
đổ ddoor
đỗ ddoox
đố ddoos
độ ddooj
đôc ddooc
đốc ddoosc
độc ddoojc
đôi ddooi
đồi ddoofi
đổi ddoori
đỗi ddooxi
đối ddoosi
đội ddooji
đôm ddoom
đồm ddoofm
đốm ddoosm
đôn ddoon
đồn ddoofn
đốn ddoosn
độn ddoojn
đông ddoong
đồng ddoofng
đổng ddoorng
đỗng ddooxng
đống ddoosng
động ddoojng
đốp ddoosp
độp ddoojp
đốt ddoost
đột ddoojt
đơ ddow
đờ ddowf
đở ddowr
đỡ ddowx
đớ ddows
đợ ddowj
đời ddowfi
đới ddowsi
đợi ddowji
đơm ddowm
đờm ddowfm
đởm ddowrm
đơn ddown
đờn ddowfn
đởn ddowrn
đớn ddowsn
đớp ddowsp
đợp ddowjp
đớt ddowst
đợt ddowjt
đpcm ddpcm
đpctntư ddpctntuw
đph ddph
đphg ddphg
đqg ddqg
đqgtnn ddqgtnn
đqt ddqt
đr ddr
đrá ddras
đrao ddrao
đrăk ddrawk
đrắk ddrawsk
đrong ddrong
đrô ddroo
đrung ddrung
đs dds
đsp ddsp
đt ddt
đtb ddtb
đtbxh ddtbxh
đtl ddtl
đtla ddtla
đtlx ddtlx
đtm ddtm
đtntl ddtntl
đtpt ddtpt
đts ddts
đtt ddtt
đttp ddttp
đttpmt ddttpmt
đttqg ddttqg
đu ddu
đù dduf
đủ ddur
đú ddus
đụ dduj
đua ddua
đùa ddufa
đũa dduxa
đúa ddusa
đúc ddusc
đục ddujc
đuểnh ddueernh
đui ddui
đùi ddufi
đủi dduri
đũi dduxi
đum ddum
đùm ddufm
đúm ddusm
đun ddun
đùn ddufn
đún ddusn
đụn ddujn
đung ddung
đùng ddufng
đủng ddurng
đũng dduxng
đúng ddusng
đụng ddujng
đuốc dduoosc
đuôi dduooi
đuổi dduoori
đuối dduoosi
đuồn dduoofn
đuỗn dduooxn
đuống dduoosng
đuột dduoojt
đup ddup
đúp ddusp
đụp ddujp
đút ddust
đụt ddujt
đừ dduwf
đử dduwr
đứ dduws
đưa dduwa
đừa dduwfa
đứa dduwsa
đức dduwsc
đực dduwjc
đưng dduwng
đừng dduwfng
đứng dduwsng
đựng dduwjng
đước dduwowsc
được dduwowjc
đười dduwowfi
đượm dduwowjm
đườn dduwowfn
đưỡn dduwowxn
đương dduwowng
đường dduwowfng
đứt dduwst
đv ddv
đvn ddvn
đvqg ddvqg
đxx ddxx
è ef
ẻ er
ẽ ex
é es
ẹ ej
éc esc
ẹc ejc
ẻh erh
éh esh
èm efm
ẻm erm
ẽm exm
ém esm
ẹm ejm
èn efn
ẻn ern
ẽn exn
én esn
ẹn ejn
èng efng
ẻng erng
éng esng
èo efo
ẻo ero
ẽo exo
éo eso
ẹo ejo
ép esp
ẹp ejp
ét est
ẹt ejt
ê ee
ề eef
ể eer
ễ eex
ế ees
ệ eej
êa eea
êbur eebur
êc eec
ếc eesc
ệc eejc
ếch eesch
ệch eejch
êh eeh
êm eem
ềm eefm
ểm eerm
ễm eexm
ếm eesm
ệm eejm
ên een
ền eefn
ển eern
ễn eexn
ến eesn
ện eejn
êng eeng
ềng eefng
ểng eerng
ễng eexng
ếng eesng
ệng eejng
ênh eenh
ềnh eefnh
ểnh eernh
ễnh eexnh
ếnh eesnh
ệnh eejnh
ếp eesp
ệp eejp
êpôc eepooc
êpốc eepoosc
êt eet
ết eest
ệt eejt
êtan eetan
ête eete
êu eeu
ều eefu
ểu eeru
ễu eexu
ếu eesu
ệu eeju
êy eey
fà faf
frăng frawng
fría frisa
fù fuf
fú fus
fútbol fustbol
gà gaf
gả gar
gã gax
gá gas
gạ gaj
gác gasc
gạc gajc
gạch gajch
gài gafi
gãi gaxi
gái gasi
galông galoong
gàn gafn
gán gasn
gạn gajn
gàng gafng
gành gafnh
gảnh garnh
gánh gasnh
gạnh gajnh
gào gafo
gáo gaso
gạo gajo
gáp gasp
gát gast
gạt gajt
gàu gafu
gáu gasu
gày gafy
gảy gary
gãy gaxy
gáy gasy
gạy gajy
gặc gawjc
găm gawm
gằm gawfm
gắm gawsm
gặm gawjm
găn gawn
gằn gawfn
gắn gawsn
gặn gawjn
găng gawng
gắng gawsng
gặng gawjng
gắp gawsp
gặp gawjp
gắt gawst
gặt gawjt
gấc gaasc
gâm gaam
gầm gaafm
gẩm gaarm
gẫm gaaxm
gấm gaasm
gậm gaajm
gân gaan
gần gaafn
gấn gaasn
gận gaajn
gầng gaafng
gấp gaasp
gập gaajp
gất gaast
gật gaajt
gâu gaau
gầu gaafu
gẫu gaaxu
gấu gaasu
gây gaay
gầy gaafy
gẩy gaary
gẫy gaaxy
gấy gaasy
gậy gaajy
gẻ ger
gém gesm
gép gesp
gềnh geefnh
gệt geejt
ghè ghef
ghẻ gher
ghẽ ghex
ghé ghes
ghẹ ghej
ghém ghesm
ghèn ghefn
ghẹn ghejn
ghẹo ghejo
ghép ghesp
ghét ghest
ghê ghee
ghề gheef
ghế ghees
ghệ gheej
ghếch gheesch
ghềnh gheefnh
ghểnh gheernh
ghệt gheejt
ghì ghif
ghĩa ghixa
ghiếc ghieesc
ghiền ghieefn
ghìm ghifm
ghín ghisn
ghinê ghinee
ghình ghifnh
gì gif
gỉ gir
gĩ gix
gí gis
già giaf
giả giar
giã giax
giá gias
giạ giaj
giác giasc
giạc giajc
giải giari
giãi giaxi
giái giasi
giại giaji
giàm giafm
giảm giarm
giám giasm
giạm giajm
giàn giafn
giản giarn
giãn giaxn
gián giasn
giàng giafng
giảng giarng
giáng giasng
giạng giajng
giành giafnh
giảnh giarnh
giào giafo
giảo giaro
giáo giaso
giáp giasp
giát giast
giạt giajt
giàu giafu
giảu giaru
giavê giavee
giày giafy
giãy giaxy
giáy giasy
giặc giawjc
giăm giawm
giằm giawfm
giẵm giawxm
giắm giawsm
giặm giawjm
giằn giawfn
giẵn giawxn
giắn giawsn
giặn giawjn
giăng giawng
giằng giawfng
giắng giawsng
giặng giawjng
giặp giawjp
giắt giawst
giặt giawjt
giâ giaa
giấc giaasc
giâm giaam
giầm giaafm
giẫm giaaxm
giấm giaasm
giậm giaajm
giân giaan
giần giaafn
giấn giaasn
giận giaajn
giầng giaafng
giẩng giaarng
giầnh giaafnh
giấp giaasp
giập giaajp
giất giaast
giật giaajt
giâu giaau
giầu giaafu
giấu giaasu
giậu giaaju
giây giaay
giầy giaafy
giẩy giaary
giẫy giaaxy
giấy giaasy
gíc gisc
gích gisch
giẻ gier
giẽ giex
gié gies
giéc giesc
gièm giefm
giém giesm
giẻo giero
giéo gieso
giẹo giejo
giép giesp
giẹp giejp
giẹt giejt
giê giee
giề gieef
giếc gieesc
giệch gieejch
giếm gieesm
giền gieefn
giêng gieeng
giềng gieefng
giếng gieesng
giềnh gieefnh
giệnh gieejnh
giết gieest
giệt gieejt
giễu gieexu
giếu gieesu
giệu gieeju
gìm gifm
gìn gifn
giò giof
giỏ gior
giõ giox
gió gios
giọ gioj
gióc giosc
giọc giojc
giòi giofi
giỏi giori
giõi gioxi
giói giosi
giọi gioji
giòn giofn
giỏn giorn
gión giosn
giọn giojn
giòng giofng
giỏng giorng
giõng gioxng
gióng giosng
giọng giojng
giót giost
giọt giojt
giô gioo
giồ gioof
giổ gioor
giỗ gioox
giộ giooj
giốc gioosc
giôi giooi
giồi gioofi
giổi gioori
giỗi giooxi
giối gioosi
giội giooji
giôn gioon
giông gioong
giồng gioofng
giống gioosng
giộng gioojng
giộp gioojp
giốt gioost
giột gioojt
giơ giow
giờ giowf
giở giowr
giỡ giowx
giớ giows
giời giowfi
giới giowsi
giớm giowsm
giợm giowjm
giờn giowfn
giởn giowrn
giỡn giowxn
giợn giowjn
giợt giowjt
gíp gisp
gít gist
gịt gijt
giù giuf
giũ giux
giú gius
giùa giufa
giũa giuxa
giụa giuja
giục giujc
giùi giufi
giủi giuri
giúi giusi
giụi giuji
giùm giufm
giúm giusm
giụm giujm
giùn giufn
giún giusn
giùng giufng
giủng giurng
giuộc giuoojc
giuỗi giuooxi
giuộm giuoojm
giúp giusp
giư giuw
giừ giuwf
giữ giuwx
giưa giuwa
giữa giuwxa
giứa giuwsa
giương giuwowng
giường giuwowfng
giướng giuwowsng
giượng giuwowjng
giựt giuwjt
glây glaay
gò gof
gõ gox
gó gos
gọ goj
góc gosc
gòi gofi
gỏi gori
gõi goxi
gói gosi
gọi goji
gỏl gorl
gòn gofn
gón gosn
gọn gojn
gòng gofng
gỏng gorng
gọng gojng
góp gosp
gót gost
gọt gojt
gô goo
gồ goof
gổ goor
gỗ goox
gộ gooj
gốc goosc
gộc goojc
gồi goofi
gối goosi
gội gooji
gôm goom
gồm goofm
gốm goosm
gôn goon
gông goong
gồng goofng
gống goosng
gốp goosp
gộp goojp
gột goojt
gơ gow
gờ gowf
gở gowr
gỡ gowx
gớc gowsc
gởi gowri
gới gowsi
gợi gowji
gờm gowfm
gớm gowsm
gơn gown
gờn gowfn
gợn gowjn
gợt gowjt
grát grast
gù guf
gũ gux
gú gus
gụ guj
gục gujc
guê guee
gùi gufi
gũi guxi
gụi guji
gùn gufn
gún gusn
gùng gufng
gúng gusng
guó guos
guốc guoosc
guộc guoojc
guồi guoofi
guồng guoofng
guột guoojt
gút gust
gụt gujt
gư guw
gừ guwf
gừa guwfa
gửi guwri
gừng guwfng
gứng guwsng
gươm guwowm
gườm guwowfm
gượm guwowjm
gương guwowng
gường guwowfng
gưỡng guwowxng
gượng guwowjng
gỵa gyja
hà haf
hả har
há has
hạ haj
hác hasc
hạc hajc
hách hasch
hạch hajch
hài hafi
hải hari
hãi haxi
hái hasi
hại haji
haló halos
hàm hafm
hảm harm
hãm haxm
hám hasm
hạm hajm
hàn hafn
hản harn
hãn haxn
hán hasn
hạn hajn
hàng hafng
hảng harng
hãng haxng
háng hasng
hạng hajng
hành hafnh
hảnh harnh
hãnh haxnh
hánh hasnh
hạnh hajnh
hào hafo
hảo haro
hão haxo
háo haso
hạo hajo
háp hasp
hạp hajp
hát hast
hạt hajt
hàu hafu
háu hasu
hảy hary
hãy haxy
háy hasy
hạy hajy
hắ haws
hắc hawsc
hặc hawjc
hăm hawm
hằm hawfm
hẳm hawrm
hằn hawfn
hẳn hawrn
hắn hawsn
hăng hawng
hằng hawfng
hẵng hawxng
hắng hawsng
hắt hawst
hấc haasc
hậc haajc
hâm haam
hầm haafm
hẩm haarm
hẫm haaxm
hấm haasm
hậm haajm
hân haan
hẫn haaxn
hấn haasn
hận haajn
hâng haang
hẩng haarng
hẫng haaxng
hấng haasng
hấp haasp
hập haajp
hất haast
hật haajt
hâu haau
hầu haafu
hẩu haaru
hẫu haaxu
hấu haasu
hậu haaju
hây haay
hầy haafy
hẩy haary
hẫy haaxy
hấy haasy
hđbt hddbt
hè hef
hẻ her
hẽ hex
hé hes
hẹ hej
héc hesc
hécta hescta
hèm hefm
hẻm herm
hẹm hejm
hèn hefn
hẻn hern
hẹn hejn
hẹng hejng
hèo hefo
hẻo hero
héo heso
hép hesp
hẹp hejp
hét hest
hẹt hejt
hê hee
hề heef
hể heer
hễ heex
hế hees
hệ heej
hếch heesch
hệch heejch
hêli heeli
hềm heefm
hên heen
hển heern
hến heesn
hênh heenh
hềnh heefnh
hểnh heernh
hết heest
hệt heejt
hêu heeu
hều heefu
hểu heeru
hếu heesu
hì hif
hỉ hir
hĩ hix
hí his
hích hisch
hịch hijch
hiêm hieem
hiềm hieefm
hiểm hieerm
hiếm hieesm
hiên hieen
hiền hieefn
hiển hieern
hiến hieesn
hiện hieejn
hiêng hieeng
hiểng hieerng
hiếng hieesng
hiếp hieesp
hiệp hieejp
hiết hieest
hiệt hieejt
hiêu hieeu
hiều hieefu
hiểu hieeru
hiếu hieesu
hiệu hieeju
hĩm hixm
hỉn hirn
hình hifnh
hỉnh hirnh
hĩnh hixnh
híp hisp
hít hist
hìu hifu
hmông hmoong
hnđ hndd
hò hof
hỏ hor
hó hos
họ hoj
hoác hoasc
hoách hoasch
hoạch hoajch
hoài hoafi
hoải hoari
hoãi hoaxi
hoái hoasi
hoại hoaji
hoàn hoafn
hoản hoarn
hoãn hoaxn
hoán hoasn
hoạn hoajn
hoàng hoafng
hoảng hoarng
hoãng hoaxng
hoáng hoasng
hoành hoafnh
hoảnh hoarnh
hoánh hoasnh
hoạnh hoajnh
hoát hoast
hoạt hoajt
hoáy hoasy
hoắc hoawsc
hoặc hoawjc
hoăm hoawm
hoắm hoawsm
hoằn hoawfn
hoẳn hoawrn
hoăng hoawng
hoằng hoawfng
hoẵng hoawxng
hoắt hoawst
hoân hoaan
hóc hosc
học hojc
hoẻn hoern
hoét hoest
hoẹt hoejt
hòi hofi
hỏi hori
hói hosi
hòm hofm
hỏm horm
hõm hoxm
hóm hosm
hòn hofn
hỏn horn
hón hosn
hòng hofng
hỏng horng
hóng hosng
họng hojng
hóp hosp
họp hojp
hót host
hô hoo
hồ hoof
hổ hoor
hỗ hoox
hố hoos
hộ hooj
hốc hoosc
hộc hoojc
hôi hooi
hồi hoofi
hổi hoori
hối hoosi
hội hooji
hôm hoom
hồm hoofm
hổm hoorm
hỗm hooxm
hôn hoon
hồn hoofn
hổn hoorn
hỗn hooxn
hộn hoojn
hông hoong
hồng hoofng
hổng hoorng
hỗng hooxng
hống hoosng
hốp hoosp
hộp hoojp
hốt hoost
hột hoojt
hôtel hootel
hơ how
hờ howf
hở howr
hớ hows
hơi howi
hời howfi
hởi howri
hỡi howxi
hới howsi
hợi howji
hờm howfm
hớm howsm
hợm howjm
hơn hown
hờn howfn
hớn howsn
hơng howng
hớp howsp
hợp howjp
hớt howst
hợt howjt
hrê hree
hrệ hreej
hù huf
hủ hur
hũ hux
hú hus
hụ huj
hùa hufa
húa husa
huân huaan
huẩn huaarn
huấn huaasn
huất huaast
huầy huaafy
húc husc
hục hujc
huê huee
huề hueef
huế huees
huệ hueej
huếch hueesch
huênh hueenh
huểnh hueernh
huếnh hueesnh
hùi hufi
hủi huri
húi husi
hụi huji
hùm hufm
hũm huxm
húm husm
hụm hujm
hùn hufn
hủn hurn
hùng hufng
hủng hurng
húng husng
huổi huoori
huông huoong
huồng huoofng
huống huoosng
huơ huow
huờ huowf
huơn huown
huờn huowfn
huỡn huowxn
húp husp
hụp hujp
hút hust
hụt hujt
huých huysch
huỵch huyjch
huyên huyeen
huyền huyeefn
huyển huyeern
huyễn huyeexn
huyến huyeesn
huyện huyeejn
huyết huyeest
huyệt huyeejt
huỳnh huyfnh
huỷnh huyrnh
huýnh huysnh
huýt huyst
hư huw
hừ huwf
hử huwr
hữ huwx
hứ huws
hự huwj
hưa huwa
hừa huwfa
hữa huwxa
hứa huwsa
hức huwsc
hực huwjc
hừm huwfm
hưn huwn
hưng huwng
hừng huwfng
hửng huwrng
hững huwxng
hứng huwsng
hước huwowsc
hướm huwowsm
hượm huwowjm
hương huwowng
hường huwowfng
hưởng huwowrng
hướng huwowsng
hươu huwowu
hưu huwu
hữu huwxu
hựu huwju
hỷ hyr
hỹ hyx
hý hys
hyđro hyddro
ì if
ỉ ir
ĩ ix
í is
ị ij
ìa ifa
ỉa ira
ĩa ixa
ía isa
ịa ija
íc isc
ỉch irch
ích isch
ịch ijch
ìh ifh
ìi ifi
ìm ifm
ỉm irm
ĩm ixm
ím ism
ịm ijm
ìn ifn
ỉn irn
ĩn ixn
ín isn
ịn ijn
ỉng irng
íng isng
ịng ijng
ình ifnh
ỉnh irnh
ĩnh ixnh
ính isnh
ịnh ijnh
iốt ioost
iới iowsi
íp isp
ịp ijp
ít ist
ịt ijt
ìu ifu
ỉu iru
ĩu ixu
íu isu
ịu iju
iý iys
jà jaf
jì jif
jí jis
jó jos
josé joses
jú jus
jút just
jữ juwx
kách kasch
kađai kaddai
kài kafi
kalá kalas
kalú kalus
kạn kajn
kcách kcasch
kđrao kddrao
kè kef
kẻ ker
kẽ kex
ké kes
kẹ kej
kéc kesc
kèm kefm
kẻm kerm
kẽm kexm
kém kesm
kèn kefn
kén kesn
kẹn kejn
kẻng kerng
kèo kefo
kẻo kero
kẽo kexo
kéo keso
kẹo kejo
kép kesp
kẹp kejp
két kest
kẹt kejt
kê kee
kề keef
kể keer
kế kees
kệ keej
kếch keesch
kệch keejch
kềm keefm
kên keen
kền keefn
kêng keeng
kênh keenh
kềnh keefnh
kễnh keexnh
kệnh keejnh
kếp keesp
kết keest
kêu keeu
kều keefu
kgông kgoong
khà khaf
khả khar
khá khas
khạ khaj
khác khasc
khạc khajc
khách khasch
khải khari
khái khasi
khại khaji
khảm kharm
khám khasm
khàn khafn
khản kharn
khán khasn
khàng khafng
khảng kharng
kháng khasng
khạng khajng
khành khafnh
khảnh kharnh
khánh khasnh
khào khafo
khảo kharo
kháo khaso
khạo khajo
kháp khasp
khạp khajp
khát khast
khạt khajt
kháu khasu
khảy khary
kháy khasy
khắ khaws
khắc khawsc
khặc khawjc
khăm khawm
khẳm khawrm
khắm khawsm
khăn khawn
khằn khawfn
khẳn khawrn
khắn khawsn
khăng khawng
khằng khawfng
khẳng khawrng
khắng khawsng
khắp khawsp
khắt khawst
khấc khaasc
khâm khaam
khẩm khaarm
khấm khaasm
khân khaan
khẩn khaarn
khấn khaasn
khẩng khaarng
khấng khaasng
khấp khaasp
khập khaajp
khất khaast
khật khaajt
khâu khaau
khẩu khaaru
khấu khaasu
khậu khaaju
khẩy khaary
khè khef
khẻ kher
khẽ khex
khé khes
khẹ khej
khẹc khejc
khém khesm
khèn khefn
khén khesn
khèo khefo
khẻo khero
khéo kheso
khép khesp
khét khest
khẹt khejt
khê khee
khề kheef
khể kheer
khế khees
khệ kheej
khến kheesn
khệng kheejng
khênh kheenh
khềnh kheefnh
khểnh kheernh
khệnh kheejnh
khêu kheeu
khều kheefu
khểu kheeru
khì khif
khỉ khir
khí khis
khị khij
khìa khifa
khỉa khira
khía khisa
khịa khija
khích khisch
khiêm khieem
khiểm khieerm
khiếm khieesm
khiệm khieejm
khiên khieen
khiền khieefn
khiển khieern
khiến khieesn
khiêng khieeng
khiễng khieexng
khiếp khieesp
khiết khieest
khiêu khieeu
khiều khieefu
khiếu khieesu
khìn khifn
khín khisn
khỉnh khirnh
khĩnh khixnh
khít khist
khịt khijt
khìu khifu
khỉu khiru
khíu khisu
khịu khiju
khlá khlas
khò khof
khỏ khor
khó khos
khoác khoasc
khoạc khoajc
khoách khoasch
khoải khoari
khoái khoasi
khoản khoarn
khoán khoasn
khoảng khoarng
khoáng khoasng
khoảnh khoarnh
khoào khoafo
khoát khoast
khoạt khoajt
khoáy khoasy
khoắc khoawsc
khoăm khoawm
khoằm khoawfm
khoắm khoawsm
khoăn khoawn
khoắn khoawsn
khoắng khoawsng
khoắt khoawst
khóc khosc
khoèn khoefn
khoèo khoefo
khoẻo khoero
khoét khoest
khỏi khori
khói khosi
khòm khofm
khóm khosm
khọm khojm
khòn khofn
khọn khojn
khòng khofng
khỏng khorng
khót khost
khô khoo
khổ khoor
khố khoos
khốc khoosc
khôg khoog
khôi khooi
khổi khoori
khối khoosi
khôn khoon
khổn khoorn
khốn khoosn
không khoong
khổng khoorng
khống khoosng
khốt khoost
khơ khow
khờ khowf
khớ khows
khơi khowi
khởi khowri
khới khowsi
khơm khowm
khớm khowsm
khơme khowme
khờn khowfn
khớn khowsn
khớp khowsp
khù khuf
khủ khur
khũ khux
khú khus
khụ khuj
khùa khufa
khủa khura
khúa khusa
khuân khuaan
khuẩn khuaarn
khuẫn khuaaxn
khuâng khuaang
khuất khuaast
khuây khuaay
khuấy khuaasy
khúc khusc
khục khujc
khuê khuee
khuể khueer
khuếch khueesch
khúm khusm
khùng khufng
khủng khurng
khuôn khuoon
khuông khuoong
khuơ khuow
khụt khujt
khuých khuysch
khuyên khuyeen
khuyển khuyeern
khuyến khuyeesn
khuyết khuyeest
khuỳnh khuyfnh
khuýnh khuysnh
khuỷu khuyru
khuỵu khuyju
khư khuw
khừ khuwf
khử khuwr
khứ khuws
khự khuwj
khừa khuwfa
khứa khuwsa
khựa khuwja
khừng khuwfng
khửng khuwrng
khứng khuwsng
khựng khuwjng
khước khuwowsc
khươi khuwowi
khươm khuwowm
khươn khuwown
khương khuwowng
khưỡng khuwowxng
khướt khuwowst
khướu khuwowsu
khưu khuwu
khứu khuwsu
khyển khyeern
kì kif
kỉ kir
kĩ kix
kí kis
kị kij
kìa kifa
kỉch kirch
kích kisch
kịch kijch
kiệ kieej
kiêm kieem
kiềm kieefm
kiểm kieerm
kiếm kieesm
kiệm kieejm
kiên kieen
kiền kieefn
kiển kieern
kiến kieesn
kiện kieejn
kiêng kieeng
kiềng kieefng
kiểng kieerng
kiễng kieexng
kiếng kieesng
kiếp kieesp
kiệp kieejp
kiết kieest
kiệt kieejt
kiêu kieeu
kiều kieefu
kiểu kieeru
kiếu kieesu
kiệu kieeju
kiló kilos
kilô kiloo
kilôgam kiloogam
kilôm kiloom
kilômet kiloomet
kìm kifm
kìn kifn
kín kisn
kịn kijn
kình kifnh
kỉnh kirnh
kính kisnh
kinó kinos
kíp kisp
kịp kijp
kít kist
kịt kijt
kitô kitoo
kĩu kixu
kíu kisu
kò kof
kó kos
kòp kofp
kót kost
kô koo
kốc koosc
kôn koon
kông koong
kơ kow
kơi kowi
kpă kpaw
kpăng kpawng
kráp krasp
krăng krawng
krẹ krej
krêy kreey
krôm kroom
krông kroong
ktlê ktlee
kủ kur
kúba kusba
kúc kusc
kuênh kueenh
kỳ kyf
kỷ kyr
kỹ kyx
ký kys
kỵ kyj
là laf
lả lar
lã lax
lá las
lạ laj
lác lasc
lạc lajc
lách lasch
lạch lajch
lài lafi
lải lari
lãi laxi
lái lasi
lại laji
làm lafm
lảm larm
lãm laxm
lạm lajm
làn lafn
lãn laxn
lán lasn
lạn lajn
làng lafng
lảng larng
lãng laxng
láng lasng
lạng lajng
lành lafnh
lảnh larnh
lãnh laxnh
lánh lasnh
lạnh lajnh
lào lafo
lảo laro
lão laxo
láo laso
lạo lajo
láp lasp
lạp lajp
lát last
lạt lajt
làu lafu
lảu laru
láu lasu
lạu laju
lày lafy
lảy lary
láy lasy
lạy lajy
lắc lawsc
lặc lawjc
lăk lawk
lắk lawsk
lăm lawm
lằm lawfm
lẳm lawrm
lắm lawsm
lặm lawjm
lăn lawn
lằn lawfn
lẳn lawrn
lặn lawjn
lăng lawng
lằng lawfng
lẳng lawrng
lẵng lawxng
lắng lawsng
lặng lawjng
lắp lawsp
lặp lawjp
lắt lawst
lặt lawjt
lấc laasc
lâm laam
lầm laafm
lẩm laarm
lẫm laaxm
lấm laasm
lậm laajm
lân laan
lần laafn
lẩn laarn
lẫn laaxn
lấn laasn
lận laajn
lâng laang
lấng laasng
lâp laap
lấp laasp
lập laajp
lất laast
lật laajt
lâu laau
lầu laafu
lẩu laaru
lấu laasu
lậu laaju
lây laay
lầy laafy
lẩy laary
lẫy laaxy
lấy laasy
lậy laajy
lè lef
lẻ ler
lẽ lex
lé les
lẹ lej
léc lesc
lèm lefm
lẻm lerm
lém lesm
lẹm lejm
lèn lefn
lẻn lern
lẽn lexn
lén lesn
lẹn lejn
lèng lefng
lẻng lerng
léng lesng
lèo lefo
lẻo lero
lẽo lexo
léo leso
lẹo lejo
lép lesp
lẹp lejp
lét lest
lẹt lejt
lê lee
lề leef
lể leer
lễ leex
lệ leej
lếch leesch
lệch leejch
lên leen
lênh leenh
lềnh leefnh
lểnh leernh
lễnh leexnh
lệnh leejnh
lênin leenin
lết leest
lệt leejt
lêu leeu
lều leefu
lểu leeru
lễu leexu
lếu leesu
lệu leeju
lểy leery
lếy leesy
lì lif
lí lis
lị lij
lìa lifa
lía lisa
lịa lija
líc lisc
lích lisch
lịch lijch
liếc lieesc
liêm lieem
liềm lieefm
liễm lieexm
liếm lieesm
liệm lieejm
liên lieen
liền lieefn
liễn lieexn
liến lieesn
liêng lieeng
liềng lieefng
liểng lieerng
liếng lieesng
liệng lieejng
liếp lieesp
liệp lieejp
liệt lieejt
liêu lieeu
liều lieefu
liểu lieeru
liễu lieexu
liếu lieesu
liệu lieeju
lìm lifm
lỉm lirm
lịm lijm
lìn lifn
lình lifnh
lỉnh lirnh
lĩnh lixnh
lính lisnh
lịnh lijnh
líp lisp
lịp lijp
lít list
lịt lijt
litô litoo
lìu lifu
líu lisu
lịu liju
lò lof
lõ lox
ló los
lọ loj
loạc loajc
loách loasch
loài loafi
loại loaji
loàn loafn
loán loasn
loạn loajn
loàng loafng
loảng loarng
loãng loaxng
loáng loasng
loạng loajng
loát loast
loạt loajt
loăn loawn
loăng loawng
loằng loawfng
loắt loawst
lóc losc
lọc lojc
loẻn loern
loét loest
loẹt loejt
lòi lofi
lỏi lori
lõi loxi
lói losi
lọi loji
lòm lofm
lỏm lorm
lõm loxm
lóm losm
lọm lojm
lòn lofn
lỏn lorn
lọn lojn
lòng lofng
lỏng lorng
lõng loxng
lóng losng
lọng lojng
lóp losp
lọp lojp
lót lost
lọt lojt
lô loo
lồ loof
lổ loor
lỗ loox
lố loos
lộ looj
lôc looc
lốc loosc
lộc loojc
lôgic loogic
lôi looi
lồi loofi
lỗi looxi
lối loosi
lội looji
lôm loom
lồm loofm
lổm loorm
lốm loosm
lộm loojm
lôn loon
lồn loofn
lổn loorn
lốn loosn
lộn loojn
lông loong
lồng loofng
lổng loorng
lộng loojng
lốp loosp
lộp loojp
lốt loost
lột loojt
lơ low
lờ lowf
lở lowr
lỡ lowx
lớ lows
lợ lowj
lơi lowi
lời lowfi
lởi lowri
lỡi lowxi
lới lowsi
lợi lowji
lờm lowfm
lởm lowrm
lỡm lowxm
lợm lowjm
lơn lown
lờn lowfn
lởn lowrn
lớn lowsn
lợn lowjn
lơng lowng
lớp lowsp
lợp lowjp
lớt lowst
lợt lowjt
lù luf
lủ lur
lũ lux
lú lus
lụ luj
lùa lufa
lũa luxa
lúa lusa
lụa luja
luán luasn
luân luaan
luẩn luaarn
luấn luaasn
luận luaajn
luật luaajt
lúc lusc
lục lujc
lùi lufi
lủi luri
lũi luxi
lúi lusi
lụi luji
lùm lufm
lủm lurm
lũm luxm
lúm lusm
lụm lujm
lùn lufn
lủn lurn
lũn luxn
lún lusn
lụn lujn
lùng lufng
lủng lurng
lũng luxng
lúng lusng
lụng lujng
luóm luosm
luốc luoosc
luộc luoojc
luỗi luooxi
luôm luoom
luộm luoojm
luôn luoon
luồn luoofn
luông luoong
luồng luoofng
luỗng luooxng
luống luoosng
luốt luoost
luột luoojt
lúp lusp
lụp lujp
lút lust
lụt lujt
luyên luyeen
luyến luyeesn
luyện luyeejn
luyệt luyeejt
luýnh luysnh
lư luw
lừ luwf
lử luwr
lữ luwx
lự luwj
lưa luwa
lừa luwfa
lửa luwra
lữa luwxa
lứa luwsa
lựa luwja
lưc luwc
lức luwsc
lực luwjc
lừm luwfm
lưng luwng
lừng luwfng
lửng luwrng
lững luwxng
lứng luwsng
lựng luwjng
lược luwowjc
lười luwowfi
lưỡi luwowxi
lưới luwowsi
lươm luwowm
lườm luwowfm
lượm luwowjm
lươn luwown
lườn luwowfn
lượn luwowjn
lương luwowng
lường luwowfng
lưỡng luwowxng
lướng luwowsng
lượng luwowjng
lướt luwowst
lượt luwowjt
lứt luwst
lưu luwu
lữu luwxu
lựu luwju
lỳ lyf
lỹ lyx
lý lys
lỵ lyj
mà maf
mả mar
mã max
má mas
mạ maj
mác masc
mạc majc
mách masch
mạch majch
mài mafi
mải mari
mãi maxi
mái masi
mại maji
màn mafn
mản marn
mãn maxn
mán masn
mạn majn
màng mafng
mảng marng
mãng maxng
máng masng
mạng majng
mành mafnh
mảnh marnh
mãnh maxnh
mánh masnh
mạnh majnh
mào mafo
mão maxo
máo maso
mạo majo
mạp majp
mát mast
mạt majt
matê matee
matrác matrasc
màu mafu
máu masu
mày mafy
mảy mary
máy masy
mạy majy
mă maw
mắc mawsc
mặc mawjc
măk mawk
măm mawm
mắm mawsm
măn mawn
mằn mawfn
mẳn mawrn
mắn mawsn
mặn mawjn
măng mawng
mắng mawsng
mặp mawjp
mắt mawst
mặt mawjt
mâm maam
mầm maafm
mẩm maarm
mẫm maaxm
mấm maasm
mậm maajm
mân maan
mần maafn
mẩn maarn
mẫn maaxn
mấn maasn
mận maajn
mâng maang
mầng maafng
mâp maap
mấp maasp
mập maajp
mất maast
mật maajt
mâu maau
mầu maafu
mẩu maaru
mẫu maaxu
mấu maasu
mậu maaju
mây maay
mầy maafy
mẩy maary
mấy maasy
mè mef
mẻ mer
mẽ mex
mé mes
mẹ mej
méc mesc
mèm mefm
mém mesm
mèn mefn
mén mesn
mèng mefng
méng mesng
menú menus
mèo mefo
mẻo mero
mẽo mexo
méo meso
mẹo mejo
mép mesp
mẹp mejp
mét mest
mẹt mejt
mê mee
mề meef
mể meer
mễ meex
mế mees
mệ meej
mếch meesch
mêga meega
mềm meefm
mễm meexm
mên meen
mền meefn
mễn meexn
mến meesn
mênh meenh
mềnh meefnh
mệnh meejnh
mết meest
mệt meejt
mêtan meetan
mểu meeru
mếu meesu
mì mif
mỉ mir
mĩ mix
mí mis
mị mij
mỉa mira
mĩa mixa
mía misa
mích misch
mịch mijch
miẻo miero
miên mieen
miền mieefn
miễn mieexn
miến mieesn
miện mieejn
miêng mieeng
miểng mieerng
miếng mieesng
miệng mieejng
miết mieest
miệt mieejt
miêu mieeu
miều mieefu
miểu mieeru
miễu mieexu
miếu mieesu
mỉm mirm
mĩm mixm
mím mism
mìn mifn
mịn mijn
míng misng
mình mifnh
mỉnh mirnh
mính misnh
mịnh mijnh
míp misp
mít mist
mịt mijt
mìu mifu
míu misu
mlài mlafi
mlời mlowfi
mluộm mluoojm
mnhời mnhowfi
mní mnis
mò mof
mỏ mor
mõ mox
mó mos
mọ moj
móc mosc
mọc mojc
mòi mofi
mỏi mori
mõi moxi
mói mosi
mọi moji
mòm mofm
mỏm morm
mõm moxm
móm mosm
mòn mofn
món mosn
mọn mojn
moná monas
mòng mofng
mỏng morng
móng mosng
mọng mojng
móp mosp
mọp mojp
mót most
mọt mojt
mô moo
mồ moof
mổ moor
mỗ moox
mố moos
mộ mooj
môc mooc
mốc moosc
mộc moojc
môi mooi
mồi moofi
mỗi mooxi
mối moosi
mội mooji
mộl moojl
môm moom
mồm moofm
mômen moomen
môn moon
mồn moofn
mông moong
mồng moofng
mổng moorng
mỗng mooxng
mống moosng
mộng moojng
môt moot
mốt moost
một moojt
mơ mow
mờ mowf
mở mowr
mỡ mowx
mớ mows
mợ mowj
mơi mowi
mời mowfi
mới mowsi
mợi mowji
mơm mowm
mờm mowfm
mớm mowsm
mơn mown
mởn mowrn
mỡn mowxn
mớn mowsn
mớp mowsp
mrơn mrown
mù muf
mủ mur
mũ mux
mú mus
mụ muj
mùa mufa
múa musa
múc musc
mục mujc
mùi mufi
mủi muri
mũi muxi
múi musi
mụi muji
mủm murm
mũm muxm
múm musm
mùn mufn
mủn murn
mún musn
mụn mujn
mùng mufng
mủng murng
muôi muooi
muồi muoofi
muỗi muooxi
muối muoosi
muội muooji
muỗm muooxm
muôn muoon
muốn muoosn
muộn muoojn
muông muoong
muồng muoofng
muổng muoorng
muỗng muooxng
muống muoosng
muốt muoost
múp musp
mụp mujp
muséum musesum
mút must
mụt mujt
mư muw
mự muwj
mưa muwa
mửa muwra
mứa muwsa
mựa muwja
mức muwsc
mực muwjc
mứn muwsn
mưng muwng
mừng muwfng
mững muwxng
mược muwowjc
mươi muwowi
mười muwowfi
mươn muwown
mướn muwowsn
mượn muwowjn
mương muwowng
mường muwowfng
mướp muwowsp
mướt muwowst
mượt muwowjt
mưỡu muwowxu
mứt muwst
mưu muwu
mứu muwsu
mỳ myf
mỹ myx
mỵ myj
nà naf
nả nar
nã nax
ná nas
nạ naj
nác nasc
nạc najc
nách nasch
nạch najch
nài nafi
nải nari
nãi naxi
nái nasi
nại naji
nàm nafm
nảm narm
nám nasm
nạm najm
nàn nafn
nản narn
nãn naxn
nán nasn
nạn najn
nàng nafng
nãng naxng
náng nasng
nạng najng
nành nafnh
nánh nasnh
nạnh najnh
nào nafo
não naxo
náo naso
nạo najo
nạp najp
nát nast
nạt najt
náu nasu
này nafy
nảy nary
nãy naxy
náy nasy
nạy najy
nắc nawsc
nặc nawjc
năm nawm
nằm nawfm
nẳm nawrm
nắm nawsm
năn nawn
nằn nawfn
nắn nawsn
nặn nawjn
năng nawng
nằng nawfng
nẵng nawxng
nắng nawsng
nặng nawjng
nắp nawsp
nấc naasc
nâm naam
nầm naafm
nẫm naaxm
nấm naasm
nậm naajm
nân naan
nần naafn
nẫn naaxn
nấn naasn
nâng naang
nẫng naaxng
nấng naasng
nậng naajng
nấp naasp
nập naajp
nất naast
nật naajt
nâu naau
nẫu naaxu
nấu naasu
nậu naaju
nây naay
nầy naafy
nẩy naary
nẫy naaxy
nấy naasy
nậy naajy
nđm nddm
nè nef
nẻ ner
né nes
ném nesm
nén nesn
nẹn nejn
nèo nefo
nẻo nero
nẽo nexo
néo neso
nẹo nejo
nép nesp
nẹp nejp
nét nest
nẹt nejt
nê nee
nề neef
nể neer
nễ neex
nệ neej
nêm neem
nếm neesm
nệm neejm
nên neen
nền neefn
nến neesn
nện neejn
nếp neesp
nết neest
nêu neeu
nếu neesu
nếy neesy
ngà ngaf
ngả ngar
ngã ngax
ngá ngas
ngạ ngaj
ngác ngasc
ngạc ngajc
ngách ngasch
ngạch ngajch
ngài ngafi
ngải ngari
ngãi ngaxi
ngái ngasi
ngại ngaji
ngàm ngafm
ngám ngasm
ngàn ngafn
ngán ngasn
ngạn ngajn
ngàng ngafng
ngãng ngaxng
ngáng ngasng
ngạng ngajng
ngành ngafnh
ngảnh ngarnh
ngánh ngasnh
ngạnh ngajnh
ngào ngafo
ngảo ngaro
ngão ngaxo
ngáo ngaso
ngạo ngajo
ngáp ngasp
ngát ngast
ngạt ngajt
ngàu ngafu
ngáu ngasu
ngày ngafy
ngáy ngasy
ngắc ngawsc
ngăm ngawm
ngằm ngawfm
ngắm ngawsm
ngăn ngawn
ngằn ngawfn
ngắn ngawsn
ngẳng ngawrng
ngẵng ngawxng
ngặp ngawjp
ngắt ngawst
ngặt ngawjt
ngấc ngaasc
ngâm ngaam
ngầm ngaafm
ngẩm ngaarm
ngẫm ngaaxm
ngấm ngaasm
ngậm ngaajm
ngân ngaan
ngần ngaafn
ngẩn ngaarn
ngẫn ngaaxn
ngấn ngaasn
ngận ngaajn
ngẩng ngaarng
ngẫng ngaaxng
ngấp ngaasp
ngập ngaajp
ngất ngaast
ngật ngaajt
ngâu ngaau
ngầu ngaafu
ngẩu ngaaru
ngẫu ngaaxu
ngấu ngaasu
ngậu ngaaju
ngây ngaay
ngầy ngaafy
ngấy ngaasy
ngậy ngaajy
ngèo ngefo
ngẹt ngejt
ngệch ngeejch
nghè nghef
nghé nghes
nghẹ nghej
nghèn nghefn
nghẽn nghexn
nghén nghesn
nghẹn nghejn
nghèo nghefo
nghẻo nghero
nghẽo nghexo
nghéo ngheso
nghẹo nghejo
nghét nghest
nghẹt nghejt
nghê nghee
nghề ngheef
nghể ngheer
nghễ ngheex
nghế nghees
nghệ ngheej
nghếch ngheesch
nghệch ngheejch
nghển ngheern
nghễn ngheexn
nghến ngheesn
nghện ngheejn
nghênh ngheenh
nghểnh ngheernh
nghễnh ngheexnh
nghệt ngheejt
nghêu ngheeu
nghều ngheefu
nghểu ngheeru
nghễu ngheexu
nghệu ngheeju
nghì nghif
nghỉ nghir
nghĩ nghix
nghí nghis
nghị nghij
nghĩa nghixa
nghía nghisa
nghích nghisch
nghịch nghijch
nghiêm nghieem
nghiễm nghieexm
nghiệm nghieejm
nghiên nghieen
nghiền nghieefn
nghiễn nghieexn
nghiến nghieesn
nghiện nghieejn
nghiêng nghieeng
nghiênh nghieenh
nghiệp nghieejp
nghiệt nghieejt
nghiêu nghieeu
nghìm nghifm
nghỉm nghirm
nghìn nghifn
nghỉn nghirn
nghỉnh nghirnh
nghĩnh nghixnh
nghít nghist
nghịt nghijt
nghỉu nghiru
nghịu nghiju
nghoèo nghoefo
nghồng nghoofng
ngích ngisch
ngịu ngiju
ngò ngof
ngỏ ngor
ngõ ngox
ngó ngos
ngọ ngoj
ngoác ngoasc
ngoạc ngoajc
ngoách ngoasch
ngoạch ngoajch
ngoài ngoafi
ngoải ngoari
ngoái ngoasi
ngoại ngoaji
ngoàm ngoafm
ngoảm ngoarm
ngoạm ngoajm
ngoãn ngoaxn
ngoạn ngoajn
ngoảng ngoarng
ngoảnh ngoarnh
ngoãnh ngoaxnh
ngoáo ngoaso
ngoáp ngoasp
ngoạt ngoajt
ngoảy ngoary
ngoáy ngoasy
ngoạy ngoajy
ngoắc ngoawsc
ngoặc ngoawjc
ngoằn ngoawfn
ngoẳn ngoawrn
ngoằng ngoawfng
ngoẵng ngoawxng
ngoắng ngoawsng
ngoắt ngoawst
ngoặt ngoawjt
ngóc ngosc
ngọc ngojc
ngoẻm ngoerm
ngoém ngoesm
ngoẻn ngoern
ngoèo ngoefo
ngoẻo ngoero
ngoéo ngoeso
ngoẹo ngoejo
ngoét ngoest
ngòi ngofi
ngõi ngoxi
ngói ngosi
ngòm ngofm
ngỏm ngorm
ngóm ngosm
ngọm ngojm
ngòn ngofn
ngỏn ngorn
ngón ngosn
ngọn ngojn
ngòng ngofng
ngỏng ngorng
ngõng ngoxng
ngóng ngosng
ngọng ngojng
ngóp ngosp
ngót ngost
ngọt ngojt
ngô ngoo
ngồ ngoof
ngổ ngoor
ngỗ ngoox
ngố ngoos
ngộ ngooj
ngốc ngoosc
ngộc ngoojc
ngôi ngooi
ngồi ngoofi
ngỗi ngooxi
ngội ngooji
ngôm ngoom
ngồm ngoofm
ngổm ngoorm
ngôn ngoon
ngồn ngoofn
ngổn ngoorn
ngốn ngoosn
ngộn ngoojn
ngông ngoong
ngồng ngoofng
ngổng ngoorng
ngỗng ngooxng
ngộp ngoojp
ngốt ngoost
ngột ngoojt
ngơ ngow
ngờ ngowf
ngỡ ngowx
ngớ ngows
ngợ ngowj
ngơi ngowi
ngời ngowfi
ngợi ngowji
ngơm ngowm
ngờm ngowfm
ngỡm ngowxm
ngợm ngowjm
ngơn ngown
ngớn ngowsn
ngớp ngowsp
ngợp ngowjp
ngớt ngowst
ngù nguf
ngủ ngur
ngũ ngux
ngú ngus
ngụ nguj
ngụa nguja
nguây nguaay
nguầy nguaafy
nguẩy nguaary
nguấy nguaasy
nguậy nguaajy
ngúc ngusc
ngục ngujc
nguếch ngueesch
nguệch ngueejch
ngùi ngufi
ngủi nguri
ngũi nguxi
ngủm ngurm
ngụm ngujm
ngùn ngufn
ngủn ngurn
ngùng ngufng
ngủng ngurng
ngúng ngusng
nguôi nguooi
nguồi nguoofi
nguội nguooji
nguồn nguoofn
nguơ nguow
ngụp ngujp
ngút ngust
ngụt ngujt
nguyên nguyeen
nguyền nguyeefn
nguyễn nguyeexn
nguyện nguyeejn
nguyệt nguyeejt
nguýt nguyst
nguỷu nguyru
ngư nguw
ngừ nguwf
ngữ nguwx
ngứ nguws
ngự nguwj
ngưa nguwa
ngừa nguwfa
ngửa nguwra
ngữa nguwxa
ngứa nguwsa
ngựa nguwja
ngực nguwjc
ngửi nguwri
ngưng nguwng
ngừng nguwfng
ngửng nguwrng
ngứng nguwsng
ngước nguwowsc
ngược nguwowjc
ngươi nguwowi
người nguwowfi
ngưởi nguwowri
ngươn nguwown
ngường nguwowfng
ngưởng nguwowrng
ngưỡng nguwowxng
ngượng nguwowjng
ngưt nguwt
ngứt nguwst
ngưu nguwu
nhà nhaf
nhả nhar
nhã nhax
nhá nhas
nhạ nhaj
nhác nhasc
nhạc nhajc
nhách nhasch
nhài nhafi
nhải nhari
nhãi nhaxi
nhái nhasi
nhại nhaji
nhàm nhafm
nhảm nharm
nhám nhasm
nhàn nhafn
nhản nharn
nhãn nhaxn
nhạn nhajn
nhàng nhafng
nhãng nhaxng
nháng nhasng
nhạng nhajng
nhành nhafnh
nhảnh nharnh
nhánh nhasnh
nhạnh nhajnh
nhào nhafo
nhão nhaxo
nháo nhaso
nhạo nhajo
nháp nhasp
nhạp nhajp
nhát nhast
nhạt nhajt
nhàu nhafu
nhảu nharu
nháu nhasu
nhạu nhaju
nhày nhafy
nhảy nhary
nháy nhasy
nhạy nhajy
nhắc nhawsc
nhăm nhawm
nhằm nhawfm
nhắm nhawsm
nhặm nhawjm
nhăn nhawn
nhằn nhawfn
nhẳn nhawrn
nhẵn nhawxn
nhắn nhawsn
nhặn nhawjn
nhăng nhawng
nhằng nhawfng
nhẳng nhawrng
nhẵng nhawxng
nhắng nhawsng
nhặng nhawjng
nhắp nhawsp
nhắt nhawst
nhặt nhawjt
nhấc nhaasc
nhâm nhaam
nhầm nhaafm
nhẩm nhaarm
nhẫm nhaaxm
nhấm nhaasm
nhậm nhaajm
nhân nhaan
nhần nhaafn
nhẩn nhaarn
nhẫn nhaaxn
nhấn nhaasn
nhận nhaajn
nhâng nhaang
nhấp nhaasp
nhập nhaajp
nhất nhaast
nhật nhaajt
nhâu nhaau
nhầu nhaafu
nhẩu nhaaru
nhậu nhaaju
nhây nhaay
nhầy nhaafy
nhẩy nhaary
nhẫy nhaaxy
nhấy nhaasy
nhậy nhaajy
nhđm nhddm
nhè nhef
nhẻ nher
nhẽ nhex
nhé nhes
nhẹ nhej
nhèm nhefm
nhẻm nherm
nhém nhesm
nhẹm nhejm
nhèn nhefn
nhén nhesn
nhẹn nhejn
nhèo nhefo
nhẻo nhero
nhẽo nhexo
nhéo nheso
nhẹo nhejo
nhép nhesp
nhẹp nhejp
nhét nhest
nhẹt nhejt
nhê nhee
nhể nheer
nhễ nheex
nhếch nheesch
nhệch nheejch
nhện nheejn
nhênh nheenh
nhểu nheeru
nhếu nheesu
nhệu nheeju
nhì nhif
nhỉ nhir
nhĩ nhix
nhí nhis
nhị nhij
nhía nhisa
nhích nhisch
nhiếc nhieesc
nhiêm nhieem
nhiễm nhieexm
nhiệm nhieejm
nhiên nhieen
nhiễn nhieexn
nhiếp nhieesp
nhiệp nhieejp
nhiêt nhieet
nhiết nhieest
nhiệt nhieejt
nhiêu nhieeu
nhiều nhieefu
nhiểu nhieeru
nhiễu nhieexu
nhiếu nhieesu
nhím nhism
nhìn nhifn
nhín nhisn
nhịn nhijn
nhỉnh nhirnh
nhíp nhisp
nhịp nhijp
nhít nhist
nhịt nhijt
nhìu nhifu
nhíu nhisu
nhịu nhiju
nhò nhof
nhỏ nhor
nhõ nhox
nhó nhos
nhọ nhoj
nhoài nhoafi
nhoái nhoasi
nhoàm nhoafm
nhoạm nhoajm
nhoáng nhoasng
nhoạng nhoajng
nhoáy nhoasy
nhoằng nhoawfng
nhóc nhosc
nhọc nhojc
nhoèn nhoefn
nhoẻn nhoern
nhoét nhoest
nhoẹt nhoejt
nhõi nhoxi
nhói nhosi
nhọi nhoji
nhòm nhofm
nhỏm nhorm
nhõm nhoxm
nhóm nhosm
nhòn nhofn
nhỏn nhorn
nhõn nhoxn
nhón nhosn
nhọn nhojn
nhòng nhofng
nhỏng nhorng
nhõng nhoxng
nhóng nhosng
nhóp nhosp
nhọp nhojp
nhót nhost
nhọt nhojt
nhô nhoo
nhổ nhoor
nhỗ nhoox
nhố nhoos
nhốc nhoosc
nhôi nhooi
nhồi nhoofi
nhối nhoosi
nhội nhooji
nhôm nhoom
nhồm nhoofm
nhổm nhoorm
nhôn nhoon
nhồn nhoofn
nhổn nhoorn
nhốn nhoosn
nhộn nhoojn
nhông nhoong
nhồng nhoofng
nhộng nhoojng
nhốt nhoost
nhột nhoojt
nhơ nhow
nhờ nhowf
nhở nhowr
nhỡ nhowx
nhớ nhows
nhợ nhowj
nhơi nhowi
nhời nhowfi
nhởi nhowri
nhơm nhowm
nhởm nhowrm
nhớm nhowsm
nhơn nhown
nhờn nhowfn
nhởn nhowrn
nhỡn nhowxn
nhớn nhowsn
nhợn nhowjn
nhớp nhowsp
nhớt nhowst
nhợt nhowjt
nhtư nhtuw
nhù nhuf
nhủ nhur
nhũ nhux
nhú nhus
nhụ nhuj
nhúa nhusa
nhụa nhuja
nhuân nhuaan
nhuần nhuaafn
nhuận nhuaajn
nhúc nhusc
nhục nhujc
nhuế nhuees
nhuệ nhueej
nhùi nhufi
nhủi nhuri
nhúi nhusi
nhụi nhuji
nhúm nhusm
nhùn nhufn
nhủn nhurn
nhũn nhuxn
nhún nhusn
nhùng nhufng
nhủng nhurng
nhũng nhuxng
nhúng nhusng
nhụng nhujng
nhuốc nhuoosc
nhuôm nhuoom
nhuốm nhuoosm
nhuộm nhuoojm
nhuồn nhuoofn
nhút nhust
nhụt nhujt
nhuyên nhuyeen
nhuyễn nhuyeexn
như nhuw
nhừ nhuwf
nhử nhuwr
nhữ nhuwx
nhứ nhuws
nhự nhuwj
nhừa nhuwfa
nhựa nhuwja
nhức nhuwsc
nhưng nhuwng
nhửng nhuwrng
những nhuwxng
nhứng nhuwsng
nhựng nhuwjng
nhược nhuwowjc
nhương nhuwowng
nhường nhuwowfng
nhưỡng nhuwowxng
nhướng nhuwowsng
nhượng nhuwowjng
nhứt nhuwst
nhựt nhuwjt
nhữu nhuwxu
nhựu nhuwju
nì nif
nỉ nir
ní nis
nị nij
nỉa nira
nĩa nixa
ních nisch
nịch nijch
niêm nieem
niềm nieefm
niệm nieejm
niên nieen
niền nieefn
niển nieern
niễn nieexn
niến nieesn
niện nieejn
niềng nieefng
niễng nieexng
niếp nieesp
niệp nieejp
niết nieest
niệt nieejt
niêu nieeu
niểu nieeru
niễu nieexu
niếu nieesu
niệu nieeju
ním nism
nín nisn
nình nifnh
nính nisnh
nịnh nijnh
níp nisp
nít nist
nịt nijt
níu nisu
nịu niju
niutơn niutown
nò nof
nỏ nor
nõ nox
nó nos
nọ noj
noản noarn
noãn noaxn
nóc nosc
nọc nojc
nòi nofi
nỏi nori
nói nosi
nọi noji
nòm nofm
nỏm norm
nỏn norn
nõn noxn
nón nosn
nọn nojn
nòng nofng
nóng nosng
nọng nojng
nóp nosp
nót nost
nọt nojt
nô noo
nồ noof
nổ noor
nỗ noox
nố noos
nộ nooj
nôben nooben
nốc noosc
nôi nooi
nồi noofi
nổi noori
nỗi nooxi
nối noosi
nội nooji
nôm noom
nồm noofm
nộm noojm
nôn noon
nồn noofn
nộn noojn
nông noong
nồng noofng
nỗng nooxng
nống noosng
nốp noosp
nộp noojp
nốt noost
nột noojt
nơ now
nờ nowf
nở nowr
nỡ nowx
nớ nows
nợ nowj
nơi nowi
nới nowsi
nơm nowm
nờm nowfm
nỡm nowxm
nớp nowsp
nợp nowjp
nớt nowst
nơtron nowtron
nũ nux
nú nus
nụ nuj
nủa nura
nũa nuxa
núa nusa
núc nusc
nục nujc
núcleo nuscleo
nùi nufi
nũi nuxi
núi nusi
nụi nuji
núm nusm
nùn nufn
nùng nufng
nủng nurng
nũng nuxng
núng nusng
nuốc nuoosc
nuộc nuoojc
nuôi nuooi
nuối nuoosi
nuốm nuoosm
nuông nuoong
nuốt nuoost
nuột nuoojt
núp nusp
nút nust
nư nuw
nử nuwr
nữ nuwx
nứ nuws
nự nuwj
nưa nuwa
nửa nuwra
nữa nuwxa
nứa nuwsa
nức nuwsc
nực nuwjc
nưng nuwng
nừng nuwfng
nứng nuwsng
nựng nuwjng
nước nuwowsc
nược nuwowjc
nườm nuwowfm
nương nuwowng
nường nuwowfng
nướng nuwowsng
nượp nuwowjp
nướu nuwowsu
nứt nuwst
nưu nuwu
nữu nuwxu
nứu nuwsu
nựu nuwju
ò of
ỏ or
õ ox
ó os
ọ oj
oác oasc
oạc oajc
oách oasch
oạch oajch
oải oari
oái oasi
oại oaji
oàm oafm
oản oarn
oán oasn
oàng oafng
oảng oarng
oành oafnh
oánh oasnh
oạp oajp
oát oast
oạt oajt
oắc oawsc
oăm oawm
oằn oawfn
oẳn oawrn
oăng oawng
oẳng oawrng
oắt oawst
oặt oawjt
óc osc
ọc ojc
òi ofi
ỏi ori
õi oxi
ói osi
ọi oji
olá olas
òm ofm
ỏm orm
õm oxm
óm osm
ọm ojm
òn ofn
ỏn orn
õn oxn
ón osn
ọn ojn
òng ofng
ỏng orng
õng oxng
óng osng
ọng ojng
óp osp
ọp ojp
ót ost
ọt ojt
ô oo
ồ oof
ổ oor
ỗ oox
ố oos
ộ ooj
ôb oob
ôben ooben
ôc ooc
ốc oosc
ộc oojc
ôca ooca
ôgam oogam
ôhai oohai
ôi ooi
ồi oofi
ổi oori
ỗi ooxi
ối oosi
ội ooji
ôin ooin
ộl oojl
ôla oola
ôliu ooliu
ôm oom
ồm oofm
ổm oorm
ỗm ooxm
ốm oosm
ộm oojm
ômet oomet
ômi oomi
ôn oon
ồn oofn
ổn oorn
ỗn ooxn
ốn oosn
ộn oojn
ône oone
ông oong
ồng oofng
ổng oorng
ỗng ooxng
ống oosng
ộng oojng
ốp oosp
ộp oojp
ôt oot
ốt oost
ột oojt
ôtel ootel
ơ ow
ờ owf
ở owr
ỡ owx
ớ ows
ợ owj
ơc owc
ờc owfc
ớc owsc
ợc owjc
ơi owi
ời owfi
ởi owri
ỡi owxi
ới owsi
ợi owji
ờl owfl
ơm owm
ờm owfm
ởm owrm
ỡm owxm
ớm owsm
ợm owjm
ơme owme
ơmi owmi
ơn own
ờn owfn
ởn owrn
ỡn owxn
ớn owsn
ợn owjn
ơng owng
ờng owfng
ởng owrng
ỡng owxng
ớng owsng
ợng owjng
ơngen owngen
ớp owsp
ợp owjp
ơt owt
ớt owst
ợt owjt
ơu owu
ờu owfu
ỡu owxu
ớu owsu
ợu owju
pà paf
pả par
pạ paj
pác pasc
pạc pajc
pảh parh
pài pafi
palăng palawng
pán pasn
pàng pafng
panô panoo
pào pafo
páo paso
páp pasp
pát past
pắc pawsc
păh pawh
pằn pawfn
păng pawng
pấc paasc
pâu paau
pẻ per
péc pesc
pẻng perng
péo peso
pê pee
phà phaf
phả phar
phá phas
phạ phaj
phác phasc
phạc phajc
phách phasch
phạch phajch
phài phafi
phải phari
phái phasi
phàm phafm
phạm phajm
phàn phafn
phản pharn
phãn phaxn
phán phasn
phạn phajn
phàng phafng
phảng pharng
phạng phajng
phành phafnh
phảnh pharnh
phạnh phajnh
phào phafo
phảo pharo
pháo phaso
phaolô phaoloo
pháp phasp
phạp phajp
phát phast
phạt phajt
phảy phary
pháy phasy
phắc phawsc
phăm phawm
phăn phawn
phắn phawsn
phăng phawng
phẳng phawrng
phặng phawjng
phắp phawsp
phặp phawjp
phắt phawst
phâm phaam
phầm phaafm
phẩm phaarm
phân phaan
phần phaafn
phẩn phaarn
phẫn phaaxn
phấn phaasn
phận phaajn
phấp phaasp
phập phaajp
phất phaast
phật phaajt
phầu phaafu
phẩu phaaru
phẫu phaaxu
phấu phaasu
phây phaay
phẩy phaary
phè phef
phé phes
phéc phesc
phẹc phejc
phèn phefn
phèng phefng
phéng phesng
phèo phefo
phép phesp
phét phest
phẹt phejt
phê phee
phề pheef
phế phees
phệ pheej
phếch pheesch
phệch pheejch
phên pheen
phễn pheexn
phện pheejn
phềnh pheefnh
phễnh pheexnh
phệnh pheejnh
phết pheest
phệt pheejt
phều pheefu
phễu pheexu
phếu pheesu
phì phif
phỉ phir
phí phis
phị phij
phìa phifa
phía phisa
phịa phija
phích phisch
phịch phijch
phiêm phieem
phiếm phieesm
phiên phieen
phiền phieefn
phiến phieesn
phiện phieejn
phiêng phieeng
phiết phieest
phiệt phieejt
phiêu phieeu
phiểu phieeru
phiếu phieesu
phiệu phieeju
phím phism
phìn phifn
phình phifnh
phỉnh phirnh
phĩnh phixnh
phính phisnh
phịt phijt
phịu phiju
phlạo phlajo
phlắc phlawsc
phò phof
phó phos
phóc phosc
phọc phojc
phòi phofi
phón phosn
phòng phofng
phỏng phorng
phóng phosng
phọng phojng
phót phost
phọt phojt
phô phoo
phồ phoof
phổ phoor
phố phoos
phốc phoosc
phộc phoojc
phôi phooi
phổi phoori
phối phoosi
phôm phoom
phồm phoofm
phôn phoon
phồn phoofn
phông phoong
phồng phoofng
phổng phoorng
phỗng phooxng
phộng phoojng
phốp phoosp
phốt phoost
phơ phow
phờ phowf
phở phowr
phớ phows
phơi phowi
phời phowfi
phới phowsi
phơn phown
phởn phowrn
phỡn phowxn
phớn phowsn
phớt phowst
phrăng phrawng
phù phuf
phủ phur
phũ phux
phú phus
phụ phuj
phúc phusc
phục phujc
phủi phuri
phùn phufn
phún phusn
phùng phufng
phủng phurng
phúng phusng
phụng phujng
phúp phusp
phụp phujp
phút phust
phụt phujt
phư phuw
phứa phuwsa
phựa phuwja
phức phuwsc
phưng phuwng
phừng phuwfng
phước phuwowsc
phưỡn phuwowxn
phướn phuwowsn
phương phuwowng
phường phuwowfng
phướng phuwowsng
phượng phuwowjng
phượt phuwowjt
phượu phuwowju
phứt phuwst
phựt phuwjt
phữu phuwxu
phựu phuwju
phvđ phvdd
pí pis
pianô pianoo
pích pisch
pín pisn
píp pisp
pisát pisast
pít pist
plây plaay
plông ploong
plơi plowi
pó pos
pótay postay
pô poo
pôc pooc
pôn poon
pông poong
pốp poosp
pốt poost
pơ pow
pờ powf
pơng powng
prâng praang
prô proo
prông proong
pù puf
pú pus
pụa puja
púc pusc
puộc puoojc
pút pust
pư puw
pươi puwowi
qì qif
quà quaf
quả quar
quã quax
quá quas
quạ quaj
quác quasc
quạc quajc
quách quasch
quạch quajch
quài quafi
quải quari
quái quasi
quại quaji
quàn quafn
quản quarn
quán quasn
quàng quafng
quảng quarng
quãng quaxng
quáng quasng
quạng quajng
quành quafnh
quảnh quarnh
quánh quasnh
quạnh quajnh
quào quafo
quáo quaso
quát quast
quạt quajt
quàu quafu
quảu quaru
quáu quasu
quạu quaju
quày quafy
quảy quary
quáy quasy
quạy quajy
quắc quawsc
quặc quawjc
quăm quawm
quằm quawfm
quẳm quawrm
quắm quawsm
quặm quawjm
quăn quawn
quằn quawfn
quẳn quawrn
quắn quawsn
quặn quawjn
quăng quawng
quằng quawfng
quẳng quawrng
quẵng quawxng
quặng quawjng
quắp quawsp
quặp quawjp
quắt quawst
quặt quawjt
quấc quaasc
quân quaan
quần quaafn
quẩn quaarn
quẫn quaaxn
quấn quaasn
quận quaajn
quâng quaang
quầng quaafng
quẩng quaarng
quẫng quaaxng
quất quaast
quật quaajt
quây quaay
quầy quaafy
quẩy quaary
quẫy quaaxy
quấy quaasy
quậy quaajy
què quef
quẻ quer
quẽ quex
qué ques
quèn quefn
quén quesn
quẹn quejn
quèo quefo
quéo queso
quẹo quejo
quẹp quejp
quét quest
quẹt quejt
quê quee
quế quees
quệ queej
quệch queejch
quên queen
quện queejn
quềnh queefnh
quệnh queejnh
quết queest
quệt queejt
quều queefu
quếu queesu
quì quif
quỉ quir
quĩ quix
quí quis
quị quij
quình quifnh
quít quist
quịt quijt
quíu quisu
quọ quoj
quoàng quoafng
quoạng quoajng
quoắt quoawst
quốc quoosc
quơ quow
quờ quowf
quở quowr
quớ quows
quới quowsi
quờn quowfn
quởn quowrn
quởng quowrng
quớt quowst
quỳ quyf
quỷ quyr
quỹ quyx
quý quys
quỵ quyj
quých quysch
quyên quyeen
quyền quyeefn
quyển quyeern
quyến quyeesn
quyện quyeejn
quyết quyeest
quyệt quyeejt
quỳng quyfng
quỳnh quyfnh
quỷnh quyrnh
quýnh quysnh
quýt quyst
quỵt quyjt
rà raf
rả rar
rã rax
rá ras
rạ raj
rác rasc
rạc rajc
rách rasch
rạch rajch
rađi raddi
rađio raddio
raglây raglaay
rài rafi
rải rari
rãi raxi
rái rasi
rại raji
ràm rafm
rám rasm
rạm rajm
ràn rafn
rán rasn
rạn rajn
ràng rafng
rảng rarng
ráng rasng
rạng rajng
rành rafnh
rảnh rarnh
rãnh raxnh
rạnh rajnh
ráno rasno
rào rafo
rảo raro
rão raxo
ráo raso
rạo rajo
ráp rasp
rạp rajp
rápida raspida
rápido raspido
rát rast
rạt rajt
ràu rafu
rảu raru
ráu rasu
rày rafy
rảy rary
rãy raxy
ráy rasy
rạy rajy
rắc rawsc
rặc rawjc
răm rawm
rằm rawfm
rắm rawsm
rặm rawjm
răn rawn
rằn rawfn
rắn rawsn
rặn rawjn
răng rawng
rằng rawfng
rặng rawjng
rắp rawsp
rắt rawst
rặt rawjt
râm raam
rầm raafm
rẩm raarm
rẫm raaxm
rấm raasm
rậm raajm
rân raan
rần raafn
rẫn raaxn
rấn raasn
rận raajn
râng raang
rậng raajng
rấp raasp
rập raajp
rất raast
rật raajt
râu raau
rầu raafu
rẫu raaxu
rậu raaju
rây raay
rầy raafy
rẩy raary
rẫy raaxy
rcăm rcawm
rè ref
rẻ rer
rẽ rex
ré res
rẹc rejc
rèm refm
rèn refn
rén resn
rẻng rerng
rèo refo
rẻo rero
réo reso
rẹo rejo
rép resp
rẹp rejp
rét rest
rẹt rejt
rê ree
rề reef
rể reer
rễ reex
rế rees
rệ reej
rếch reesch
rệch reejch
rêm reem
rên reen
rền reefn
rến reesn
rện reejn
rềnh reefnh
rểnh reernh
rếp reesp
rệp reejp
rết reest
rệt reejt
rêu reeu
rều reefu
rểu reeru
rệu reeju
rì rif
rỉ rir
rĩ rix
rí ris
rị rij
rìa rifa
rỉa rira
rịa rija
ríc risc
rích risch
rịch rijch
riếc rieesc
riềm rieefm
riêng rieeng
riềng rieefng
riếp rieesp
riết rieest
riệt rieejt
riêu rieeu
riếu rieesu
rím rism
rĩn rixn
rịn rijn
rình rifnh
rỉnh rirnh
rĩnh rixnh
rịp rijp
rít rist
rịt rijt
rítra ristra
rìu rifu
ríu risu
rivê rivee
rlâm rlaam
rò rof
rỏ ror
rõ rox
ró ros
rọ roj
roàng roafng
róc rosc
rọc rojc
ròi rofi
rỏi rori
rõi roxi
rói rosi
rọi roji
ròm rofm
rỏm rorm
róm rosm
rọm rojm
ròn rofn
rỏn rorn
rón rosn
rọn rojn
ròng rofng
rỏng rorng
róng rosng
rọng rojng
rót rost
rọt rojt
rô roo
rồ roof
rổ roor
rỗ roox
rố roos
rộ rooj
rốc roosc
rộc roojc
rồi roofi
rổi roori
rỗi rooxi
rối roosi
rội rooji
rôm room
rồm roofm
rộm roojm
rôma rooma
rôn roon
rổn roorn
rốn roosn
rộn roojn
rông roong
rồng roofng
rổng roorng
rỗng rooxng
rống roosng
rộng roojng
rốp roosp
rộp roojp
rốt roost
rơ row
rờ rowf
rở rowr
rỡ rowx
rớ rows
rợ rowj
rơi rowi
rời rowfi
rợi rowji
rơm rowm
rờm rowfm
rởm rowrm
rớm rowsm
rợm rowjm
rơn rown
rờn rowfn
rởn rowrn
rỡn rowxn
rớn rowsn
rợn rowjn
rơngen rowngen
rớp rowsp
rợp rowjp
rớt rowst
rợt rowjt
rù ruf
rủ rur
rũ rux
rú rus
rùa rufa
rủa rura
rũa ruxa
rụa ruja
rúc rusc
rục rujc
ruê ruee
rùi rufi
rủi ruri
rũi ruxi
rúi rusi
rụi ruji
rùm rufm
rúm rusm
rùn rufn
rủn rurn
rún rusn
rùng rufng
rủng rurng
rúng rusng
rụng rujng
ruốc ruoosc
ruồi ruoofi
ruổi ruoori
ruỗi ruooxi
ruối ruoosi
ruộm ruoojm
ruồng ruoofng
ruỗng ruooxng
ruộng ruoojng
ruột ruoojt
rúp rusp
rút rust
rụt rujt
rư ruw
rừ ruwf
rứ ruws
rưa ruwa
rừa ruwfa
rửa ruwra
rữa ruwxa
rứa ruwsa
rựa ruwja
rức ruwsc
rực ruwjc
rưng ruwng
rừng ruwfng
rửng ruwrng
rước ruwowsc
rươi ruwowi
rười ruwowfi
rưởi ruwowri
rưỡi ruwowxi
rưới ruwowsi
rượi ruwowji
rươm ruwowm
rườm ruwowfm
rướm ruwowsm
rườn ruwowfn
rướn ruwowsn
rượn ruwowjn
rương ruwowng
rường ruwowfng
rượt ruwowjt
rượu ruwowju
rứt ruwst
rựt ruwjt
rỵn ryjn
sà saf
sả sar
sã sax
sá sas
sạ saj
sác sasc
sạc sajc
sách sasch
sạch sajch
sài safi
sải sari
sãi saxi
sái sasi
sại saji
saigón saigosn
sakê sakee
salát salast
salâm salaam
sàm safm
sảm sarm
sám sasm
sạm sajm
sàn safn
sản sarn
sán sasn
sạn sajn
sàng safng
sảng sarng
sáng sasng
sành safnh
sảnh sarnh
sánh sasnh
sào safo
sảo saro
são saxo
sáo saso
sạo sajo
sáp sasp
sạp sajp
sát sast
sạt sajt
sáu sasu
sảy sary
sãy saxy
sắc sawsc
sặc sawjc
săm sawm
sắm sawsm
sặm sawjm
săn sawn
sằn sawfn
sẳn sawrn
sẵn sawxn
sắn sawsn
săng sawng
sằng sawfng
sẵng sawxng
sắng sawsng
sắp sawsp
sặp sawjp
săt sawt
sắt sawst
sặt sawjt
sắu sawsu
sâm saam
sầm saafm
sẩm saarm
sẫm saaxm
sấm saasm
sậm saajm
sân saan
sần saafn
sẩn saarn
sẫn saaxn
sấn saasn
sận saajn
sâng saang
sấp saasp
sập saajp
sất saast
sật saajt
sâu saau
sầu saafu
sẩu saaru
sấu saasu
sậu saaju
sây saay
sầy saafy
sẩy saary
sấy saasy
sậy saajy
sè sef
sẻ ser
sẽ sex
sé ses
sẹ sej
séc sesc
sém sesm
sẹm sejm
sèn sefn
sẻn sern
sẻng serng
sèo sefo
sẹo sejo
sét sest
sẹt sejt
sê see
sề seef
sể seer
sễ seex
sế sees
sệ seej
sếch seesch
sệch seejch
sên seen
sền seefn
sến seesn
sênh seenh
sềnh seefnh
sểnh seernh
sếp seesp
sệp seejp
sết seest
sệt seejt
sêu seeu
sếu seesu
sgần sgaafn
sì sif
sỉ sir
sĩ six
sí sis
sị sij
sỉa sira
sịa sija
sích sisch
sịch sijch
sidét sidest
siđa sidda
siêm sieem
siểm sieerm
siên sieen
siển sieern
siễn sieexn
siêng sieeng
siểng sieerng
siếp sieesp
siệp sieejp
siết sieest
siêu sieeu
siếu sieesu
sìn sifn
sỉn sirn
sín sisn
síne sisne
sình sifnh
sỉnh sirnh
sính sisnh
sịp sijp
sít sist
sịt sijt
slìn slifn
sò sof
sỏ sor
só sos
sọ soj
soạc soajc
soài soafi
soải soari
soái soasi
soại soaji
soàn soafn
soán soasn
soạn soajn
soảng soarng
soạng soajng
soát soast
soạt soajt
sóc sosc
sọc sojc
sòi sofi
sỏi sori
sõi soxi
sói sosi
sòm sofm
sóm sosm
sọm sojm
sòn sofn
sỏn sorn
són sosn
sòng sofng
sõng soxng
sóng sosng
sót sost
sọt sojt
sô soo
sồ soof
sổ soor
sỗ soox
số soos
sộ sooj
sôc sooc
sốc soosc
sộc soojc
sôi sooi
sồi soofi
sổi soori
sồm soofm
sôn soon
sồn soofn
sông soong
sồng soofng
sổng soorng
sống soosng
sốp soosp
sộp soojp
sốt soost
sột soojt
sôvanh soovanh
sơ sow
sờ sowf
sở sowr
sỡ sowx
sớ sows
sợ sowj
sởi sowri
sỡi sowxi
sới sowsi
sợi sowji
sơm sowm
sờm sowfm
sớm sowsm
sơmi sowmi
sơn sown
sờn sowfn
sởn sowrn
sớn sowsn
sớt sowst
srêpốc sreepoosc
sró sros
sù suf
sủ sur
sũ sux
sú sus
sụ suj
sủa sura
sụa suja
suân suaan
suất suaast
súc susc
sục sujc
suê suee
sùi sufi
sủi suri
sùm sufm
sụm sujm
sún susn
sụn sujn
sùng sufng
sủng surng
sũng suxng
súng susng
sụng sujng
suôi suooi
suối suoosi
suôn suoon
suông suoong
suồng suoofng
suống suoosng
suốt suoost
súp susp
sụp sujp
sút sust
sụt sujt
sủy sury
súy susy
suyền suyeefn
suyển suyeern
suyễn suyeexn
suyến suyeesn
suýt suyst
suỵt suyjt
sư suw
sừ suwf
sử suwr
sữ suwx
sứ suws
sự suwj
sưa suwa
sửa suwra
sữa suwxa
sứa suwsa
sức suwsc
sực suwjc
sửi suwri
sừn suwfn
sưng suwng
sừng suwfng
sửng suwrng
sững suwxng
sựng suwjng
sưởi suwowri
sườn suwowfn
sương suwowng
sường suwowfng
sướng suwowsng
sượng suwowjng
sướt suwowst
sượt suwowjt
sứt suwst
sựt suwjt
sưu suwu
sửu suwru
sứu suwsu
sỹ syx
sý sys
tà taf
tả tar
tã tax
tá tas
tạ taj
tác tasc
tạc tajc
tách tasch
tạch tajch
tài tafi
tải tari
tãi taxi
tái tasi
tại taji
tàm tafm
tảm tarm
tám tasm
tạm tajm
tàn tafn
tản tarn
tán tasn
tạn tajn
tàng tafng
tảng tarng
táng tasng
tạng tajng
tành tafnh
tảnh tarnh
tánh tasnh
tạnh tajnh
tào tafo
tảo taro
táo taso
tạo tajo
táp tasp
tạp tajp
tát tast
tạt tajt
tàu tafu
táu tasu
tày tafy
tảy tary
táy tasy
tạy tajy
tắc tawsc
tặc tawjc
tăk tawk
tăm tawm
tằm tawfm
tắm tawsm
tăn tawn
tằn tawfn
tẳn tawrn
tắn tawsn
tặn tawjn
tăng tawng
tằng tawfng
tắng tawsng
tặng tawjng
tắp tawsp
tắt tawst
tấc taasc
tâm taam
tầm taafm
tẩm taarm
tấm taasm
tân taan
tần taafn
tẩn taarn
tẫn taaxn
tấn taasn
tận taajn
tâng taang
tầng taafng
tấp taasp
tập taajp
tất taast
tật taajt
tâu taau
tầu taafu
tẩu taaru
tấu taasu
tậu taaju
tây taay
tầy taafy
tẩy taary
tấy taasy
tbuăn tbuawn
tè tef
tẻ ter
tẽ tex
té tes
téc tesc
tẻh terh
tèm tefm
tẻm term
tém tesm
tèn tefn
tẽn texn
tén tesn
tèo tefo
tẻo tero
téo teso
tẹo tejo
tép tesp
tẹp tejp
tét test
tẹt tejt
tê tee
tề teef
tể teer
tễ teex
tế tees
tệ teej
tếch teesch
têm teem
tên teen
tênh teenh
tềnh teefnh
tểnh teernh
tễnh teexnh
tệp teejp
têt teet
tết teest
tête teete
têu teeu
tếu teesu
thà thaf
thả thar
thá thas
thác thasc
thạc thajc
thách thasch
thạch thajch
thài thafi
thải thari
thãi thaxi
thái thasi
thại thaji
thàm thafm
thảm tharm
thám thasm
thản tharn
thán thasn
thàng thafng
thảng tharng
thãng thaxng
tháng thasng
thành thafnh
thảnh tharnh
thánh thasnh
thạnh thajnh
thào thafo
thảo tharo
tháo thaso
thạo thajo
tháp thasp
thạp thajp
thát thast
thạt thajt
tháu thasu
thày thafy
thảy thary
tháy thasy
thắc thawsc
thặc thawjc
thăm thawm
thẳm thawrm
thắm thawsm
thăn thawn
thằn thawfn
thắn thawsn
thăng thawng
thằng thawfng
thẳng thawrng
thắng thawsng
thặng thawjng
thắp thawsp
thắt thawst
thâm thaam
thầm thaafm
thẩm thaarm
thẫm thaaxm
thấm thaasm
thậm thaajm
thân thaan
thần thaafn
thẩn thaarn
thẫn thaaxn
thấn thaasn
thận thaajn
thấp thaasp
thập thaajp
thất thaast
thật thaajt
thâu thaau
thầu thaafu
thẩu thaaru
thấu thaasu
thây thaay
thầy thaafy
thẩy thaary
thấy thaasy
thè thef
thẻ ther
thẽ thex
thé thes
thèm thefm
thém thesm
thèn thefn
thẻn thern
thẹn thejn
thèo thefo
thẻo thero
thẹo thejo
thép thesp
thẹp thejp
thét thest
thê thee
thề theef
thể theer
thế thees
thệ theej
thếch theesch
thêm theem
thềm theefm
thến theesn
thện theejn
thênh theenh
thểnh theernh
thếp theesp
thết theest
thêu theeu
thều theefu
thểu theeru
thì thif
thỉ thir
thĩ thix
thí this
thị thij
thìa thifa
thía thisa
thích thisch
thịch thijch
thiếc thieesc
thiêm thieem
thiềm thieefm
thiểm thieerm
thiễm thieexm
thiệm thieejm
thiên thieen
thiền thieefn
thiển thieern
thiến thieesn
thiện thieejn
thiêng thieeng
thiềng thieefng
thiếp thieesp
thiệp thieejp
thiết thieest
thiệt thieejt
thiêu thieeu
thiều thieefu
thiểu thieeru
thiễu thieexu
thiếu thieesu
thiệu thieeju
thím thism
thìn thifn
thín thisn
thình thifnh
thỉnh thirnh
thính thisnh
thịnh thijnh
thíp thisp
thít thist
thịt thijt
thìu thifu
thỉu thiru
thịu thiju
thò thof
thỏ thor
thó thos
thọ thoj
thoải thoari
thoái thoasi
thoại thoaji
thoàn thoafn
thoản thoarn
thoán thoasn
thoảng thoarng
thoáng thoasng
thoát thoast
thoạt thoajt
thoăn thoawn
thoắng thoawsng
thoắt thoawst
thóc thosc
thọc thojc
thòi thofi
thỏi thori
thói thosi
thòm thofm
thỏm thorm
thóm thosm
thõn thoxn
thòng thofng
thõng thoxng
thóp thosp
thót thost
thọt thojt
thô thoo
thồ thoof
thổ thoor
thố thoos
thộ thooj
thốc thoosc
thộc thoojc
thôi thooi
thồi thoofi
thổi thoori
thối thoosi
thồm thoofm
thôn thoon
thồn thoofn
thổn thoorn
thỗn thooxn
thốn thoosn
thộn thoojn
thông thoong
thổng thoorng
thống thoosng
thốp thoosp
thộp thoojp
thốt thoost
thột thoojt
thơ thow
thờ thowf
thở thowr
thớ thows
thợ thowj
thơi thowi
thời thowfi
thởi thowri
thới thowsi
thơm thowm
thớm thowsm
thơn thown
thờn thowfn
thớt thowst
thợt thowjt
thtục thtujc
thù thuf
thủ thur
thú thus
thụ thuj
thùa thufa
thủa thura
thuân thuaan
thuần thuaafn
thuẩn thuaarn
thuẫn thuaaxn
thuấn thuaasn
thuận thuaajn
thuật thuaajt
thúc thusc
thục thujc
thuê thuee
thuể thueer
thuế thuees
thùi thufi
thủi thuri
thúi thusi
thụi thuji
thùm thufm
thủm thurm
thùn thufn
thùng thufng
thủng thurng
thũng thuxng
thúng thusng
thụng thujng
thuốc thuoosc
thuộc thuoojc
thuộm thuoojm
thuôn thuoon
thuồn thuoofn
thuỗn thuooxn
thuốn thuoosn
thuồng thuoofng
thuổng thuoorng
thuột thuoojt
thuở thuowr
thụp thujp
thút thust
thụt thujt
thuyên thuyeen
thuyền thuyeefn
thuyết thuyeest
thư thuw
thừ thuwf
thử thuwr
thữ thuwx
thứ thuws
thự thuwj
thưa thuwa
thừa thuwfa
thửa thuwra
thứa thuwsa
thữc thuwxc
thức thuwsc
thực thuwjc
thưng thuwng
thừng thuwfng
thửng thuwrng
thững thuwxng
thứng thuwsng
thước thuwowsc
thược thuwowjc
thưỡi thuwowxi
thườn thuwowfn
thưỡn thuwowxn
thương thuwowng
thường thuwowfng
thưởng thuwowrng
thướng thuwowsng
thượng thuwowjng
thướt thuwowst
thượt thuwowjt
thưu thuwu
thứu thuwsu
tì tif
tỉ tir
tĩ tix
tí tis
tị tij
tỉa tira
tía tisa
tích tisch
tịch tijch
tiẻn tiern
tiếc tieesc
tiệc tieejc
tiêm tieem
tiềm tieefm
tiếm tieesm
tiệm tieejm
tiên tieen
tiền tieefn
tiển tieern
tiễn tieexn
tiến tieesn
tiện tieejn
tiêng tieeng
tiềng tieefng
tiếng tieesng
tiếp tieesp
tiệp tieejp
tiết tieest
tiệt tieejt
tiêu tieeu
tiều tieefu
tiểu tieeru
tiễu tieexu
tiếu tieesu
tiệu tieeju
tìm tifm
tỉm tirm
tím tism
tỉn tirn
tĩn tixn
tín tisn
tịn tijn
tỉng tirng
tình tifnh
tỉnh tirnh
tĩnh tixnh
tính tisnh
tịnh tijnh
típ tisp
tít tist
tịt tijt
tĩu tixu
tíu tisu
tịu tiju
tlẻ tler
tlộm tloojm
tnđ tndd
tò tof
tỏ tor
tó tos
tọ toj
toác toasc
toạc toajc
toài toafi
toái toasi
toại toaji
toàn toafn
toản toarn
toán toasn
toàng toafng
toáng toasng
toạng toajng
toánh toasnh
toát toast
toáy toasy
toắt toawst
tóc tosc
tọc tojc
toèn toefn
toét toest
toẹt toejt
tòi tofi
tỏi tori
tõi toxi
tói tosi
tòm tofm
tỏm torm
tõm toxm
tóm tosm
tòn tofn
tỏn torn
tòng tofng
tỏng torng
tọng tojng
tóp tosp
tọp tojp
tót tost
tọt tojt
tô too
tồ toof
tổ toor
tố toos
tộ tooj
tốc toosc
tộc toojc
tôi tooi
tồi toofi
tối toosi
tội tooji
tôm toom
tôn toon
tồn toofn
tổn toorn
tỗn tooxn
tốn toosn
tông toong
tồng toofng
tổng toorng
tống toosng
tộng toojng
tốp toosp
tôt toot
tốt toost
tột toojt
tơ tow
tờ towf
tở towr
tớ tows
tợ towj
tơi towi
tời towfi
tới towsi
tởm towrm
tơn town
tởn towrn
tớn towsn
tợn towjn
tớp towsp
tợp towjp
tớt towst
trà traf
trả trar
trã trax
trá tras
trạ traj
trác trasc
trạc trajc
trách trasch
trạch trajch
trài trafi
trải trari
trãi traxi
trái trasi
trại traji
tràm trafm
trảm trarm
trám trasm
trạm trajm
tràn trafn
trản trarn
trán trasn
trạn trajn
tràng trafng
trảng trarng
tráng trasng
trạng trajng
trành trafnh
tránh trasnh
trạnh trajnh
trào trafo
trảo traro
tráo traso
trạo trajo
tráp trasp
trát trast
trạt trajt
tràu trafu
trảu traru
trày trafy
trảy trary
trạy trajy
trắc trawsc
trặc trawjc
trăm trawm
trằm trawfm
trắm trawsm
trặm trawjm
trăn trawn
trằn trawfn
trặn trawjn
trăng trawng
trắng trawsng
trắp trawsp
trắt trawst
trâ traa
trâm traam
trầm traafm
trẩm traarm
trẫm traaxm
trấm traasm
trậm traajm
trân traan
trần traafn
trẩn traarn
trấn traasn
trận traajn
trâng traang
trấp traasp
trập traajp
trất traast
trật traajt
trâu traau
trầu traafu
trẩu traaru
trấu traasu
trây traay
trầy traafy
trẩy traary
trè tref
trẻ trer
trẽ trex
trẹ trej
trèm trefm
trém tresm
trèn trefn
trẽn trexn
trèo trefo
trẻo trero
trẽo trexo
tréo treso
trẹo trejo
trét trest
trẹt trejt
trê tree
trề treef
trể treer
trễ treex
trệ treej
trếch treesch
trệch treejch
trên treen
trênh treenh
trếnh treesnh
trết treest
trệt treejt
trêu treeu
trều treefu
trếu treesu
trệu treeju
trì trif
trỉ trir
trĩ trix
trí tris
trị trij
trìa trifa
trỉa trira
tría trisa
trịa trija
trích trisch
trịch trijch
triêm trieem
triền trieefn
triển trieern
triến trieesn
triện trieejn
triêng trieeng
triềng trieefng
triệng trieejng
triếp trieesp
triệp trieejp
triết trieest
triệt trieejt
triêu trieeu
triều trieefu
triệu trieeju
trịng trijng
trình trifnh
trĩnh trixnh
trính trisnh
trịnh trijnh
trít trist
trịt trijt
trìu trifu
trĩu trixu
tríu trisu
trịu triju
trò trof
trỏ tror
trọ troj
tróc trosc
trọc trojc
tròi trofi
trỏi trori
trói trosi
trọi troji
tròm trofm
trõm troxm
tróm trosm
tròn trofn
trõn troxn
trọn trojn
tròng trofng
trỏng trorng
tróng trosng
trọng trojng
trót trost
trọt trojt
trô troo
trồ troof
trổ troor
trỗ troox
trố troos
trộ trooj
trốc troosc
trộc troojc
trôi trooi
trồi troofi
trổi troori
trỗi trooxi
trối troosi
trội trooji
trôm troom
trộm troojm
trôn troon
trốn troosn
trộn troojn
trông troong
trồng troofng
trổng troorng
trống troosng
trộng troojng
trốt troost
trơ trow
trờ trowf
trở trowr
trớ trows
trợ trowj
trơi trowi
trời trowfi
trới trowsi
trờm trowfm
trớm trowsm
trợm trowjm
trơn trown
trờn trowfn
trớn trowsn
trợn trowjn
trơng trowng
trớp trowsp
trớt trowst
trợt trowjt
trù truf
trủ trur
trú trus
trụ truj
trụa truja
truân truaan
truất truaast
truật truaajt
trúc trusc
trục trujc
trùi trufi
trũi truxi
trụi truji
trùm trufm
trũm truxm
trúm trusm
trụm trujm
trùn trufn
trụn trujn
trùng trufng
trủng trurng
trũng truxng
trúng trusng
trụng trujng
truồi truoofi
truông truoong
truồng truoofng
truột truoojt
trụp trujp
trút trust
trụt trujt
truyên truyeen
truyền truyeefn
truyện truyeejn
trư truw
trừ truwf
trử truwr
trữ truwx
trứ truws
trự truwj
trưa truwa
trừa truwfa
trữa truwxa
trức truwsc
trực truwjc
trưng truwng
trừng truwfng
trửng truwrng
trứng truwsng
trước truwowsc
trươi truwowi
trườn truwowfn
trương truwowng
trường truwowfng
trưởng truwowrng
trưỡng truwowxng
trướng truwowsng
trượng truwowjng
trượt truwowjt
trừu truwfu
trửu truwru
trữu truwxu
trứu truwsu
tryền tryeefn
tù tuf
tủ tur
tú tus
tụ tuj
tùa tufa
tủa tura
túa tusa
tuân tuaan
tuần tuaafn
tuẩn tuaarn
tuẫn tuaaxn
tuấn tuaasn
tuận tuaajn
tuất tuaast
túc tusc
tục tujc
tuế tuees
tuệ tueej
tuếch tueesch
tuệch tueejch
tuềnh tueefnh
tùi tufi
tủi turi
túi tusi
tụi tuji
tùm tufm
tủm turm
tũm tuxm
túm tusm
tụm tujm
tủn turn
tùng tufng
tủng turng
túng tusng
tụng tujng
tuốc tuoosc
tuộc tuoojc
tuồi tuoofi
tuổi tuoori
tuồm tuoofm
tuôn tuoon
tuồn tuoofn
tuông tuoong
tuồng tuoofng
tuốt tuoost
tuột tuoojt
túp tusp
tút tust
tụt tujt
tuyên tuyeen
tuyền tuyeefn
tuyển tuyeern
tuyến tuyeesn
tuyết tuyeest
tuyệt tuyeejt
tuýp tuysp
tuýt tuyst
tư tuw
từ tuwf
tử tuwr
tữ tuwx
tứ tuws
tự tuwj
tưa tuwa
từa tuwfa
tửa tuwra
tứa tuwsa
tựa tuwja
tức tuwsc
tưng tuwng
từng tuwfng
tửng tuwrng
tước tuwowsc
tược tuwowjc
tươi tuwowi
tưởi tuwowri
tưới tuwowsi
tươm tuwowm
tườm tuwowfm
tướn tuwowsn
tương tuwowng
tường tuwowfng
tưởng tuwowrng
tướng tuwowsng
tượng tuwowjng
tướp tuwowsp
tượp tuwowjp
tướt tuwowst
tượt tuwowjt
tườu tuwowfu
tưu tuwu
tửu tuwru
tựu tuwju
tỳ tyf
tỷ tyr
tý tys
tỵ tyj
ù uf
ủ ur
ũ ux
ú us
ụ uj
ùa ufa
ủa ura
ũa uxa
úa usa
ụa uja
uân uaan
uẩn uaarn
uấn uaasn
uất uaast
uẩy uaary
ubtư ubtuw
úc usc
ục ujc
uê uee
uể ueer
uế uees
ùi ufi
ủi uri
ũi uxi
úi usi
ụi uji
úk usk
ùm ufm
ủm urm
ũm uxm
úm usm
ụm ujm
ùn ufn
ủn urn
ũn uxn
ún usn
ụn ujn
ùng ufng
ủng urng
ũng uxng
úng usng
ụng ujng
uôm uoom
uốn uoosn
uông uoong
uổng uoorng
uống uoosng
uốt uoost
uột uoojt
uở uowr
úp usp
ụp ujp
út ust
ụt ujt
uvtư uvtuw
uých uysch
uỵch uyjch
uyên uyeen
uyển uyeern
uyết uyeest
uỳnh uyfnh
uýnh uysnh
uýt uyst
ư uw
ừ uwf
ử uwr
ữ uwx
ứ uws
ự uwj
ưa uwa
ừa uwfa
ửa uwra
ữa uwxa
ứa uwsa
ựa uwja
ưc uwc
ữc uwxc
ức uwsc
ực uwjc
ưcv uwcv
ưd uwd
ửi uwri
ừm uwfm
ưn uwn
ừn uwfn
ứn uwsn
ưng uwng
ừng uwfng
ửng uwrng
ững uwxng
ứng uwsng
ựng uwjng
ước uwowsc
ược uwowjc
ươi uwowi
ười uwowfi
ưởi uwowri
ưỡi uwowxi
ưới uwowsi
ượi uwowji
ươm uwowm
ườm uwowfm
ướm uwowsm
ượm uwowjm
ươn uwown
ườn uwowfn
ưỡn uwowxn
ướn uwowsn
ượn uwowjn
ương uwowng
ường uwowfng
ưởng uwowrng
ưỡng uwowxng
ướng uwowsng
ượng uwowjng
ướp uwowsp
ượp uwowjp
ướt uwowst
ượt uwowjt
ươu uwowu
ườu uwowfu
ưỡu uwowxu
ướu uwowsu
ượu uwowju
ưt uwt
ứt uwst
ựt uwjt
ưu uwu
ừu uwfu
ửu uwru
ữu uwxu
ứu uwsu
ựu uwju
và vaf
vả var
vã vax
vá vas
vạ vaj
vác vasc
vạc vajc
vách vasch
vạch vajch
vài vafi
vải vari
vãi vaxi
vái vasi
vại vaji
vàm vafm
vạm vajm
vàn vafn
vãn vaxn
ván vasn
vạn vajn
vàng vafng
vảng varng
vãng vaxng
váng vasng
vạng vajng
vành vafnh
vảnh varnh
vãnh vaxnh
vánh vasnh
vạnh vajnh
vào vafo
váo vaso
vàp vafp
váp vasp
vạp vajp
vát vast
vạt vajt
vàu vafu
vày vafy
vảy vary
vãy vaxy
váy vasy
vạy vajy
vắc vawsc
vặc vawjc
văm vawm
vằm vawfm
văn vawn
vằn vawfn
vắn vawsn
vặn vawjn
văng vawng
vằng vawfng
vẳng vawrng
vắng vawsng
vặng vawjng
vắp vawsp
vắt vawst
vặt vawjt
vâm vaam
vậm vaajm
vân vaan
vần vaafn
vẩn vaarn
vẫn vaaxn
vấn vaasn
vận vaajn
vâng vaang
vầng vaafng
vấp vaasp
vập vaajp
vất vaast
vật vaajt
vầu vaafu
vẩu vaaru
vấu vaasu
vây vaay
vầy vaafy
vẩy vaary
vẫy vaaxy
vấy vaasy
vậy vaajy
vè vef
vẻ ver
vẽ vex
vé ves
véc vesc
vẹm vejm
vèn vefn
vẻn vern
vén vesn
vẹn vejn
vèo vefo
vẻo vero
véo veso
vẹo vejo
vét vest
vẹt vejt
vê vee
về veef
vế vees
vệ veej
vếch veesch
vệch veejch
vên veen
vền veefn
vện veejn
vênh veenh
vểnh veernh
vết veest
vệt veejt
vêtu veetu
vêu veeu
vều veefu
vếu veesu
vì vif
vỉ vir
vĩ vix
ví vis
vị vij
vỉa vira
vía visa
vích visch
viêc vieec
việc vieejc
viêm vieem
viên vieen
viền vieefn
viển vieern
viễn vieexn
viện vieejn
viêng vieeng
viếng vieesng
việp vieejp
viêt vieet
viết vieest
việt vieejt
vịm vijm
vín visn
vịn vijn
vĩnh vixnh
vính visnh
vịnh vijnh
viọng viojng
vít vist
vịt vijt
víu visu
vò vof
vỏ vor
võ vox
vó vos
vọ voj
vóc vosc
vọc vojc
vòi vofi
vỏi vori
vói vosi
vọi voji
vòm vofm
vòn vofn
vỏn vorn
vón vosn
vòng vofng
vỏng vorng
võng voxng
vóng vosng
vọng vojng
vọp vojp
vót vost
vọt vojt
vô voo
vồ voof
vổ voor
vỗ voox
vố voos
vốc voosc
vôi vooi
vồi voofi
vối voosi
vội vooji
vôn voon
vồn voofn
vốn voosn
vông voong
vồng voofng
vổng voorng
vống voosng
vốt voost
vơ vow
vờ vowf
vở vowr
vỡ vowx
vớ vows
vợ vowj
vơi vowi
vời vowfi
với vowsi
vợi vowji
vờn vowfn
vởn vowrn
vớt vowst
vợt vowjt
vù vuf
vũ vux
vú vus
vụ vuj
vùa vufa
vúc vusc
vục vujc
vùi vufi
vũm vuxm
vùn vufn
vụn vujn
vùng vufng
vũng vuxng
vụng vujng
vuối vuoosi
vuông vuoong
vuốt vuoost
vuột vuoojt
vút vust
vụt vujt
vư vuw
vừa vuwfa
vữa vuwxa
vựa vuwja
vức vuwsc
vực vuwjc
vưng vuwng
vừng vuwfng
vửng vuwrng
vững vuwxng
vựng vuwjng
vược vuwowjc
vươn vuwown
vườn vuwowfn
vượn vuwowjn
vương vuwowng
vưởng vuwowrng
vướng vuwowsng
vượng vuwowjng
vượt vuwowjt
vứt vuwst
vưu vuwu
vỹ vyx
vý vys
xà xaf
xả xar
xã xax
xá xas
xạ xaj
xác xasc
xạc xajc
xách xasch
xạch xajch
xài xafi
xải xari
xái xasi
xàm xafm
xảm xarm
xám xasm
xạm xajm
xán xasn
xàng xafng
xáng xasng
xành xafnh
xảnh xarnh
xào xafo
xảo xaro
xáo xaso
xạo xajo
xáp xasp
xạp xajp
xát xast
xàu xafu
xảu xaru
xạu xaju
xảy xary
xáy xasy
xắc xawsc
xăm xawm
xắm xawsm
xăn xawn
xắn xawsn
xăng xawng
xằng xawfng
xẳng xawrng
xẵng xawxng
xắng xawsng
xắp xawsp
xắt xawst
xấ xaas
xấc xaasc
xâm xaam
xầm xaafm
xẩm xaarm
xân xaan
xẩn xaarn
xấn xaasn
xấp xaasp
xập xaajp
xâu xaau
xầu xaafu
xẩu xaaru
xấu xaasu
xây xaay
xầy xaafy
xẩy xaary
xcô xcoo
xè xef
xẻ xer
xé xes
xẹ xej
xéc xesc
xẹc xejc
xém xesm
xèn xefn
xẻn xern
xén xesn
xèng xefng
xẻng xerng
xèo xefo
xẻo xero
xẽo xexo
xéo xeso
xẹo xejo
xép xesp
xẹp xejp
xét xest
xẹt xejt
xê xee
xề xeef
xể xeer
xễ xeex
xế xees
xệ xeej
xếch xeesch
xệch xeejch
xềm xeefm
xên xeen
xển xeern
xênh xeenh
xềnh xeefnh
xểnh xeernh
xếp xeesp
xệp xeejp
xệt xeejt
xêu xeeu
xều xeefu
xệu xeeju
xì xif
xỉ xir
xí xis
xị xij
xỉa xira
xía xisa
xịa xija
xích xisch
xịch xijch
xiếc xieesc
xiệc xieejc
xiêm xieem
xiểm xieerm
xiên xieen
xiển xieern
xiễn xieexn
xiềng xieefng
xiểng xieerng
xiếp xieesp
xiệp xieejp
xiết xieest
xiêu xieeu
xiều xieefu
xiểu xieeru
xiếu xieesu
ximăng ximawng
xỉn xirn
xín xisn
xịn xijn
xinê xinee
xíng xisng
xình xifnh
xỉnh xirnh
xĩnh xixnh
xính xisnh
xíp xisp
xít xist
xịt xijt
xìu xifu
xỉu xiru
xíu xisu
xịu xiju
xò xof
xỏ xor
xó xos
xọ xoj
xoác xoasc
xoạc xoajc
xoạch xoajch
xoài xoafi
xoải xoari
xoàm xoafm
xoàn xoafn
xoán xoasn
xoàng xoafng
xoảng xoarng
xoạng xoajng
xoành xoafnh
xoát xoast
xoạt xoajt
xoáy xoasy
xoăn xoawn
xoẳn xoawrn
xoắn xoawsn
xoắt xoawst
xóc xosc
xọc xojc
xoèn xoefn
xoẻng xoerng
xoét xoest
xoẹt xoejt
xòi xofi
xói xosi
xòm xofm
xõm xoxm
xóm xosm
xón xosn
xòng xofng
xỏng xorng
xõng xoxng
xóng xosng
xóp xosp
xọp xojp
xót xost
xô xoo
xồ xoof
xổ xoor
xố xoos
xộ xooj
xốc xoosc
xộc xoojc
xôi xooi
xồi xoofi
xổi xoori
xối xoosi
xôm xoom
xồm xoofm
xổm xoorm
xôn xoon
xồn xoofn
xổn xoorn
xốn xoosn
xộn xoojn
xông xoong
xồng xoofng
xổng xoorng
xống xoosng
xốp xoosp
xộp xoojp
xốt xoost
xơ xow
xờ xowf
xở xowr
xỡ xowx
xớ xows
xơi xowi
xời xowfi
xởi xowri
xới xowsi
xơm xowm
xờm xowfm
xớm xowsm
xơn xown
xởn xowrn
xớn xowsn
xớp xowsp
xợp xowjp
xớt xowst
xợt xowjt
xrê xree
xrêpôc xreepooc
xtiêng xtieeng
xtơ xtow
xtrây xtraay
xù xuf
xủ xur
xũ xux
xú xus
xụ xuj
xùa xufa
xúa xusa
xuân xuaan
xuẩn xuaarn
xuất xuaast
xuây xuaay
xúc xusc
xục xujc
xuê xuee
xuề xueef
xuể xueer
xuế xuees
xuệch xueejch
xuềnh xueefnh
xùi xufi
xủi xuri
xúi xusi
xụi xuji
xùm xufm
xúm xusm
xùng xufng
xủng xurng
xúng xusng
xuôi xuooi
xuông xuoong
xuồng xuoofng
xuổng xuoorng
xuống xuoosng
xúp xusp
xụp xujp
xút xust
xụt xujt
xuyên xuyeen
xuyền xuyeefn
xuyển xuyeern
xuyễn xuyeexn
xuyến xuyeesn
xuyết xuyeest
xuýt xuyst
xuỵt xuyjt
xư xuw
xừ xuwf
xử xuwr
xứ xuws
xự xuwj
xưa xuwa
xửa xuwra
xứa xuwsa
xức xuwsc
xực xuwjc
xưng xuwng
xừng xuwfng
xửng xuwrng
xứng xuwsng
xước xuwowsc
xược xuwowjc
xười xuwowfi
xương xuwowng
xường xuwowfng
xưởng xuwowrng
xướng xuwowsng
xýt xyst
ỳ yf
ỷ yr
ỹ yx
ý ys
ỵ yj
ỵa yja
yàm yafm
yán yasn
ých ysch
ỵch yjch
yếc yeesc
yêm yeem
yểm yeerm
yếm yeesm
yên yeen
yển yeern
yến yeesn
yêng yeeng
yểng yeerng
yếng yeesng
yếp yeesp
yết yeest
yêu yeeu
yều yeefu
yểu yeeru
yếu yeesu
yì yif
ýn ysn
ỵn yjn
ỳnh yfnh
ỷnh yrnh
ýnh ysnh
yò yof
yó yos
ýp ysp
ýt yst
ỵt yjt
yú yus
ỷu yru
ỵu yju
yùm yufm
zà zaf
zabân zabaan
zài zafi
zắc zawsc
zăg zawg
zăng zawng
zép zesp
zéro zesro
zê zee
zỏm zorm
zô zoo
================================================
FILE: test-data/vietnamese.cm.dict.telex2.tdata
================================================
à af
ả ar
ã ax
á as
ạ aj
ác acs
ạc acj
ácbon acbons
ách achs
ạch achj
ácxtơ acxtosw
ảh ahr
ài aif
ải air
ãi aix
ái ais
ại aij
alô aloo
àm amf
ảm amr
ãm amx
ám ams
ạm amj
àn anf
ản anr
ãn anx
án ans
ạn anj
àng angf
ảng angr
ãng angx
áng angs
ạng angj
ành anhf
ảnh anhr
ãnh anhx
ánh anhs
ạnh anhj
ào aof
ảo aor
ão aox
áo aos
ạo aoj
aỏi aoir
àp apf
áp aps
ạp apj
át ats
ạt atj
àu auf
ảu aur
áu aus
ạu auj
ày ayf
ảy ayr
ãy ayx
áy ays
ạy ayj
ă aw
ằ awf
ẳ awr
ẵ awx
ắ aws
ặ awj
ăc acw
ắc acws
ặc acwj
ăcr acrw
ăh ahw
ăk akw
ắk akws
ăm amw
ằm amwf
ẳm amwr
ẵm amwx
ắm amws
ặm amwj
ăn anw
ằn anwf
ẳn anwr
ẵn anwx
ắn anws
ặn anwj
ăng angw
ằng angwf
ẳng angwr
ẵng angwx
ắng angws
ặng angwj
ăngten angtenw
ắp apws
ặp apwj
ắt atws
ặt atwj
ằu auwf
â aa
ầ aaf
ẩ aar
ẫ aax
ấ aas
ậ aaj
ấc acas
ậc acaj
âm ama
ầm amaf
ẩm amar
ẫm amax
ấm amas
ậm amaj
ân ana
ần anaf
ẩn anar
ẫn anax
ấn anas
ận anaj
âng anga
ầng angaf
ẩng angar
ẫng angax
ấng angas
ậng angaj
âp apa
ấp apas
ập apaj
ất atas
ật ataj
âu aua
ầu auaf
ẩu auar
ẫu auax
ấu auas
ậu auaj
ây aya
ầy ayaf
ẩy ayar
ẫy ayax
ấy ayas
ậy ayaj
bà baf
bả bar
bã bax
bá bas
bạ baj
bác bacs
bạc bacj
bách bachs
bạch bachj
bài baif
bải bair
bãi baix
bái bais
bại baij
bàm bamf
bãm bamx
bám bams
bạm bamj
bàn banf
bản banr
bán bans
bạn banj
bàng bangf
bảng bangr
bãng bangx
báng bangs
bạng bangj
bành banhf
bảnh banhr
bánh banhs
bạnh banhj
bào baof
bảo baor
bão baox
báo baos
bạo baoj
báp baps
bạp bapj
bát bats
bạt batj
bàu bauf
bảu baur
báu baus
bạu bauj
bày bayf
bảy bayr
báy bays
bayơ bayow
bắc bacws
bặc bacwj
băm bamw
bằm bamwf
bẳm bamwr
bẵm bamwx
bặm bamwj
băn banw
bằn banwf
bẳn banwr
bắn banws
bặn banwj
băng bangw
bằng bangwf
bẳng bangwr
bẵng bangwx
bắng bangws
bặng bangwj
bắp bapws
bặp bapwj
bắt batws
bặt batwj
bấc bacas
bậc bacaj
bâm bama
bầm bamaf
bẩm bamar
bẫm bamax
bấm bamas
bậm bamaj
bân bana
bần banaf
bẩn banar
bấn banas
bận banaj
bâng banga
bầng bangaf
bẩng bangar
bẫng bangax
bấp bapas
bập bapaj
bất batas
bật bataj
bâu baua
bầu bauaf
bẩu bauar
bẫu bauax
bấu bauas
bậu bauaj
bây baya
bầy bayaf
bẩy bayar
bẫy bayax
bấy bayas
bậy bayaj
bè bef
bẻ ber
bẽ bex
bé bes
bẹ bej
béc becs
bèm bemf
bẻm bemr
bèn benf
bẽn benx
bén bens
bẹn benj
béng bengs
bẻnh benhr
bèo beof
bẻo beor
bẽo beox
béo beos
bẹo beoj
bép beps
bẹp bepj
bét bets
bẹt betj
bê bee
bề beef
bể beer
bễ beex
bế bees
bệ beej
bệch bechej
bên bene
bền benef
bến benes
bện benej
bênh benhe
bềnh benhef
bệnh benhej
bếp bepes
bêt bete
bết betes
bệt betej
bête betee
bêu beue
bều beuef
bễu beuex
bếu beues
bệu beuej
bì bif
bỉ bir
bĩ bix
bí bis
bị bij
bìa biaf
bịa biaj
bích bichs
bịch bichj
biếc bieces
biêm bieme
biểm biemer
biếm biemes
biên biene
biền bienef
biển biener
biến bienes
biện bienej
biêng bienge
biếng bienges
biêt biete
biết bietes
biệt bietej
biêu bieue
biều bieuef
biểu bieuer
biễu bieuex
biếu bieues
bìh bihf
bìm bimf
bỉm bimr
bím bims
bìn binf
bịn binj
bình binhf
bỉnh binhr
bĩnh binhx
bính binhs
bịnh binhj
bịp bipj
bít bits
bịt bitj
bìu biuf
bỉu biur
bĩu biux
bíu bius
bịu biuj
blá blas
blái blais
blăng blangw
blâu blaua
blóm bloms
blóma blomas
blọn blonj
blô bloo
blúc blucs
bluộm bluomoj
bnđc bndcd
bò bof
bỏ bor
bõ box
bó bos
bọ boj
boạt boatj
bóc bocs
bọc bocj
bòi boif
bỏi boir
bõi boix
bói bois
bòm bomf
bỏm bomr
bõm bomx
bòn bonf
bỏn bonr
bón bons
bọn bonj
bòng bongf
bỏng bongr
bõng bongx
bóng bongs
bọng bongj
bóp bops
bọp bopj
bót bots
bọt botj
bô boo
bồ boof
bổ boor
bỗ boox
bố boos
bộ booj
bốc bocos
bộc bocoj
bôi boio
bồi boiof
bổi boior
bối boios
bội boioj
bôm bomo
bồm bomof
bôn bono
bồn bonof
bổn bonor
bốn bonos
bộn bonoj
bông bongo
bồng bongof
bổng bongor
bỗng bongox
bống bongos
bộng bongoj
bốp bopos
bộp bopoj
bốt botos
bột botoj
bơ bow
bờ bowf
bở bowr
bỡ bowx
bớ bows
bợ bowj
bớc bocws
bơi boiw
bời boiwf
bởi boiwr
bỡi boiwx
bới boiws
bơm bomw
bờm bomwf
bợm bomwj
bơn bonw
bờn bonwf
bởn bonwr
bỡn bonwx
bớn bonws
bợn bonwj
bớp bopws
bợp bopwj
bớt botws
bợt botwj
bợu bouwj
brâu braua
brôm bromo
brơ brow
bù buf
bủ bur
bú bus
bụ buj
bùa buaf
bủa buar
búa buas
bụa buaj
búc bucs
bục bucj
bùi buif
bủi buir
búi buis
bụi buij
búk buks
bulông bulongo
bùm bumf
bủm bumr
bũm bumx
bụm bumj
bùn bunf
bủn bunr
bún buns
bùng bungf
bủng bungr
búng bungs
bụng bungj
buộc buocoj
buồi buoiof
buổi buoior
buối buoios
buội buoioj
buồm buomof
buôn buono
buồn buonof
buông buongo
buồng buongof
buốt buotos
buột buotoj
búp bups
bụp bupj
bút buts
bụt butj
buýt buyts
bư buw
bứ buws
bự buwj
bưa buaw
bừa buawf
bửa buawr
bữa buawx
bứa buaws
bựa buawj
bức bucws
bực bucwj
bưng bungw
bừng bungwf
bửng bungwr
bứng bungws
bựng bungwj
bước buocws
bươi buoiw
bưởi buoiwr
bươm buomw
bướm buomws
bươn buonw
bương buongw
bường buongwf
bướng buongws
bướp buopws
bượt buotwj
bươu buouw
bướu buouws
bứt butws
bựt butwj
bưu buuw
bửu buuwr
cà caf
cả car
cá cas
cạ caj
các cacs
cạc cacj
cácbon cacbons
cách cachs
cạch cachj
cácxt cacxts
cacxtơ cacxtow
cácxtơ cacxtosw
café cafes
cài caif
cải cair
cãi caix
cái cais
cại caij
calô caloo
càm camf
cảm camr
cãm camx
cám cams
cạm camj
campôt campoto
càn canf
cản canr
cán cans
cạn canj
càng cangf
cảng cangr
cáng cangs
cành canhf
cảnh canhr
cánh canhs
cạnh canhj
canô canoo
canxít canxits
cào caof
cảo caor
cão caox
cáo caos
cạo caoj
cáp caps
cạp capj
carbón carbons
cartón cartons
cát cats
cạt catj
càu cauf
cảu caur
cáu caus
cạu cauj
cày cayf
cảy cayr
cáy cays
cạy cayj
că caw
cắc cacws
cặc cacwj
căm camw
cằm camwf
cắm camws
cặm camwj
căn canw
cằn canwf
cẳn canwr
cắn canws
cặn canwj
căng cangw
cằng cangwf
cẳng cangwr
cẵng cangwx
cắng cangws
căo caow
cắp capws
cặp capwj
cắt catws
cặt catwj
câ caa
cầ caaf
câble cablea
cấc cacas
câm cama
cầm camaf
cẩm camar
cẫm camax
cấm camas
cân cana
cần canaf
cẩn canar
cẫn canax
cấn canas
cận canaj
câng canga
cẫng cangax
cấp capas
cập capaj
cất catas
cật cataj
câu caua
cầu cauaf
cẩu cauar
cẫu cauax
cấu cauas
cậu cauaj
cây caya
cầy cayaf
cẩy cayar
cấy cayas
cậy cayaj
céng cengs
cê cee
chà chaf
chả char
chã chax
chá chas
chạ chaj
chác chacs
chạc chacj
chách chachs
chạch chachj
chài chaif
chải chair
chãi chaix
chái chais
chàm chamf
chảm chamr
chãm chamx
chám chams
chạm chamj
chán chans
chạn chanj
chàng changf
chảng changr
cháng changs
chạng changj
chành chanhf
chảnh chanhr
chánh chanhs
chạnh chanhj
chào chaof
chảo chaor
chão chaox
cháo chaos
chạo chaoj
cháp chaps
chạp chapj
chát chats
chạt chatj
chàu chauf
chảu chaur
cháu chaus
chày chayf
chảy chayr
cháy chays
chạy chayj
chắc chacws
chặc chacwj
chăm chamw
chằm chamwf
chẳm chamwr
chắm chamws
chặm chamwj
chăn chanw
chằn chanwf
chẳn chanwr
chẵn chanwx
chắn chanws
chặn chanwj
chăng changw
chằng changwf
chẳng changwr
chắng changws
chặng changwj
chắp chapws
chặp chapwj
chắt chatws
chặt chatwj
chấ chaas
chậc chacaj
châm chama
chầm chamaf
chẩm chamar
chẫm chamax
chấm chamas
chậm chamaj
chân chana
chần chanaf
chẩn chanar
chấn chanas
chận chanaj
chẩng changar
chấng changas
chấp chapas
chập chapaj
chất chatas
chật chataj
châu chaua
chầu chauaf
chẩu chauar
chẫu chauax
chấu chauas
chậu chauaj
chây chaya
chầy chayaf
chẩy chayar
chấy chayas
chậy chayaj
chè chef
chẻ cher
chẽ chex
ché ches
chẹ chej
chèm chemf
chẻm chemr
chém chems
chèn chenf
chẻn chenr
chẽn chenx
chén chens
chẹn chenj
chéng chengs
chèo cheof
chẻo cheor
chẽo cheox
chéo cheos
chẹo cheoj
chép cheps
chẹp chepj
chét chets
chẹt chetj
chê chee
chề cheef
chễ cheex
chế chees
chệ cheej
chệc checej
chếch cheches
chệch chechej
chêm cheme
chềm chemef
chễm chemex
chên chene
chện chenej
chênh chenhe
chềnh chenhef
chểnh chenher
chễnh chenhex
chếnh chenhes
chệnh chenhej
chếp chepes
chệp chepej
chết chetes
chệt chetej
chêu cheue
chì chif
chỉ chir
chĩ chix
chí chis
chị chij
chìa chiaf
chỉa chiar
chĩa chiax
chịa chiaj
chích chichs
chịch chichj
chiếc chieces
chiêm chieme
chiểm chiemer
chiếm chiemes
chiên chiene
chiền chienef
chiển chiener
chiến chienes
chiện chienej
chiêng chienge
chiềng chiengef
chiếng chienges
chiếp chiepes
chiệp chiepej
chiết chietes
chiệt chietej
chiêu chieue
chiều chieuef
chiểu chieuer
chiếu chieues
chìm chimf
chỉm chimr
chím chims
chỉn chinr
chĩn chinx
chín chins
chình chinhf
chỉnh chinhr
chĩnh chinhx
chính chinhs
chíp chips
chít chits
chịt chitj
chìu chiuf
chĩu chiux
chíu chius
chịu chiuj
chò chof
chỏ chor
chõ chox
chó chos
chọ choj
chỏa choar
chõa choax
chóa choas
choác choacs
choạc choacj
choách choachs
choài choaif
choãi choaix
choái choais
choại choaij
choán choans
choàng choangf
choảng choangr
choáng choangs
choạng choangj
choãnh choanhx
choạp choapj
choắc choacws
choăn choanw
choắt choatws
chóc chocs
chọc chocj
choèn choenf
choẻn choenr
choét choets
choẹt choetj
chòi choif
chỏi choir
chõi choix
chói chois
chọi choij
chòm chomf
chỏm chomr
chõm chomx
chỏn chonr
chõn chonx
chón chons
chọn chonj
chòng chongf
chỏng chongr
chõng chongx
chóng chongs
chóp chops
chót chots
chọt chotj
chô choo
chồ choof
chổ choor
chỗ choox
chộ chooj
chốc chocos
chôi choio
chồi choiof
chổi choior
chỗi choiox
chối choios
chội choioj
chôm chomo
chồm chomof
chổm chomor
chỗm chomox
chôn chono
chồn chonof
chổn chonor
chốn chonos
chộn chonoj
chông chongo
chồng chongof
chổng chongor
chống chongos
chốp chopos
chộp chopoj
chốt chotos
chột chotoj
chơ chow
chờ chowf
chở chowr
chớ chows
chợ chowj
chơi choiw
chời choiwf
chới choiws
chơm chomw
chờm chomwf
chởm chomwr
chớm chomws
chơn chonw
chờn chonwf
chớn chonws
chợn chonwj
chớp chopws
chợp chopwj
chớt chotws
chợt chotwj
chù chuf
chủ chur
chú chus
chụ chuj
chùa chuaf
chúa chuas
chuáng chuangs
chuân chuana
chuẩn chuanar
chuất chuatas
chuật chuataj
chúc chucs
chục chucj
chuế chuees
chuếch chueches
chuệch chuechej
chuếnh chuenhes
chuệnh chuenhej
chùi chuif
chủi chuir
chũi chuix
chúi chuis
chùm chumf
chủm chumr
chũm chumx
chúm chums
chụm chumj
chùn chunf
chủn chunr
chũn chunx
chùng chungf
chủng chungr
chúng chungs
chuốc chuocos
chuộc chuocoj
chuôi chuoio
chuồi chuoiof
chuỗi chuoiox
chuối chuoios
chuội chuoioj
chuôm chuomo
chuốm chuomos
chuồn chuonof
chuông chuongo
chuồng chuongof
chuộng chuongoj
chuốt chuotos
chuột chuotoj
chụp chupj
chút chuts
chụt chutj
chuyên chuyene
chuyền chuyenef
chuyển chuyener
chuyến chuyenes
chuyện chuyenej
chuyết chuyetes
chư chuw
chừ chuwf
chử chuwr
chữ chuwx
chứ chuws
chưa chuaw
chừa chuawf
chửa chuawr
chữa chuawx
chứa chuaws
chức chucws
chực chucwj
chửi chuiwr
chưn chunw
chưng chungw
chừng chungwf
chửng chungwr
chững chungwx
chứng chungws
chựng chungwj
chước chuocws
chược chuocwj
chưởi chuoiwr
chườm chuomwf
chương chuongw
chường chuongwf
chưởng chuongwr
chưỡng chuongwx
chướng chuongws
chượp chuopwj
chứt chutws
chưu chuuw
chửu chuuwr
chữu chuuwx
chựu chuuwj
cì cif
cí cis
cịt citj
clé cles
clông clongo
cò cof
cỏ cor
cõ cox
có cos
cọ coj
cóc cocs
cọc cocj
còi coif
cỏi coir
cõi coix
cói cois
còm comf
cỏm comr
cọm comj
còn conf
cỏn conr
cón cons
cọn conj
còng congf
cỏng congr
cõng congx
cóng congs
cọng congj
cóp cops
cọp copj
cót cots
cọt cotj
cô coo
cồ coof
cổ coor
cỗ coox
cố coos
cộ cooj
cốc cocos
cộc cocoj
côi coio
cồi coiof
cổi coior
cỗi coiox
cối coios
cội coioj
côm como
cồm comof
cốm comos
cộm comoj
côn cono
cồn conof
cổn conor
cốn conos
cộn conoj
cône coneo
công congo
cồng congof
cổng congor
cống congos
cộng congoj
cốp copos
cộp copoj
côt coto
cốt cotos
cột cotoj
cơ cow
cờ cowf
cỡ cowx
cớ cows
cơi coiw
cời coiwf
cởi coiwr
cỡi coiwx
cới coiws
cơm comw
cỡm comwx
cớm comws
cợm comwj
cơn conw
cờn conwf
cởn conwr
cỡn conwx
cớn conws
cợn conwj
cợp copwj
cớt cotws
cợt cotwj
crô croo
crôm cromo
crông crongo
crưm crumw
cù cuf
củ cur
cũ cux
cú cus
cụ cuj
cùa cuaf
của cuar
cúa cuas
cúc cucs
cục cucj
cùi cuif
củi cuir
cũi cuix
cúi cuis
cụi cuij
cùm cumf
củm cumr
cúm cums
cụm cumj
cùn cunf
củn cunr
cũn cunx
cùng cungf
củng cungr
cũng cungx
cúng cungs
cụng cungj
cuốc cuocos
cuộc cuocoj
cuồi cuoiof
cuối cuoios
cuội cuoioj
cuỗm cuomox
cuồn cuonof
cuốn cuonos
cuộn cuonoj
cuông cuongo
cuồng cuongof
cuống cuongos
cuộng cuongoj
cuôr cuoro
cúp cups
cụp cupj
cút cuts
cụt cutj
cư cuw
cừ cuwf
cử cuwr
cữ cuwx
cứ cuws
cự cuwj
cưa cuaw
cửa cuawr
cứa cuaws
cựa cuawj
cức cucws
cực cucwj
cửi cuiwr
cưng cungw
cửng cungwr
cứng cungws
cước cuocws
cược cuocwj
cười cuoiwf
cưỡi cuoiwx
cưới cuoiws
cườm cuomwf
cương cuongw
cường cuongwf
cưỡng cuongwx
cướp cuopws
cứt cutws
cưu cuuw
cừu cuuwf
cửu cuuwr
cữu cuuwx
cứu cuuws
cựu cuuwj
dà daf
dả dar
dã dax
dá das
dạ daj
dác dacs
dạc dacj
dách dachs
dạch dachj
dài daif
dải dair
dãi daix
dái dais
dại daij
dàm damf
dảm damr
dám dams
dạm damj
dàn danf
dản danr
dãn danx
dán dans
dạn danj
dàng dangf
dáng dangs
dạng dangj
dành danhf
dảnh danhr
dánh danhs
dào daof
dáo daos
dạo daoj
dáp daps
dát dats
dạt datj
dàu dauf
dáu daus
dày dayf
dảy dayr
dãy dayx
dáy days
dạy dayj
dắc dacws
dặc dacwj
dăm damw
dằm damwf
dặm damwj
dăn danw
dằn danwf
dẳn danwr
dẵn danwx
dặn danwj
dăng dangw
dằng dangwf
dẳng dangwr
dẵng dangwx
dắng dangws
dặng dangwj
dắt datws
dặt datwj
dâ daa
dậ daaj
dâm dama
dầm damaf
dẩm damar
dẫm damax
dấm damas
dậm damaj
dân dana
dần danaf
dẩn danar
dẫn danax
dấn danas
dận danaj
dâne danea
dâng danga
dậng dangaj
dấp dapas
dập dapaj
dật dataj
dâu daua
dầu dauaf
dẩu dauar
dẫu dauax
dấu dauas
dậu dauaj
dây daya
dầy dayaf
dẩy dayar
dẫy dayax
dấy dayas
dậy dayaj
dè def
dẻ der
dẽ dex
dé des
dẹ dej
déc decs
dèm demf
dẻm demr
dém dems
dẹm demj
dèn denf
dèo deof
dẻo deor
déo deos
dẹo deoj
dép deps
dẹp depj
dẹt detj
dê dee
dề deef
dể deer
dễ deex
dế dees
dệ deej
dềm demef
dền denef
dện denej
dềng dengef
dênh denhe
dềnh denhef
dết detes
dệt detej
dêu deue
dều deuef
dệu deuej
dì dif
dỉ dir
dĩ dix
dí dis
dị dij
dìa diaf
dĩa diax
día dias
dịa diaj
dích dichs
dịch dichj
diếc dieces
diệc diecej
diêm dieme
diềm diemef
diễm diemex
diếm diemes
diệm diemej
diên diene
diển diener
diễn dienex
diến dienes
diện dienej
diềng diengef
diếp diepes
diệp diepej
diết dietes
diệt dietej
diêu dieue
diều dieuef
diểu dieuer
diễu dieuex
diếu dieues
diệu dieuej
dìm dimf
dím dims
dĩn dinx
dín dins
dĩnh dinhx
dính dinhs
dịnh dinhj
díp dips
dịp dipj
dìt ditf
dít dits
dịt ditj
dìu diuf
díu dius
dịu diuj
dliê dliee
dò dof
dỏ dor
dó dos
dọ doj
doãi doaix
doãn doanx
doãng doangx
doạng doangj
doành doanhf
dóc docs
dọc docj
dòi doif
dỏi doir
dõi doix
dói dois
dọi doij
dòm domf
dỏm domr
dóm doms
dòn donf
dón dons
dọn donj
dòng dongf
dỏng dongr
dõng dongx
dóng dongs
dọng dongj
dọp dopj
dót dots
dô doo
dồ doof
dổ door
dỗ doox
dộ dooj
dốc docos
dộc docoj
dôi doio
dồi doiof
dổi doior
dỗi doiox
dối doios
dội doioj
dôn dono
dồn donof
dốn donos
dộn donoj
dông dongo
dỗng dongox
dống dongos
dộng dongoj
dộp dopoj
dốt dotos
dột dotoj
dơ dow
dờ dowf
dở dowr
dỡ dowx
dớ dows
dợ dowj
dơi doiw
dời doiwf
dới doiws
dợi doiwj
dởm domwr
dơn donw
dờn donwf
dỡn donwx
dớn donws
dợn donwj
dớp dopws
dợp dopwj
dớt dotws
drăm dramw
drăng drangw
dù duf
dủ dur
dũ dux
dú dus
dụ duj
dùa duaf
dũa duax
dúa duas
dụa duaj
duân duana
duẩn duanar
duẫn duanax
duật duataj
dục ducj
duệ dueej
duềnh duenhef
dùi duif
dủi duir
dũi duix
dúi duis
dụi duij
dùm dumf
dúm dums
dụm dumj
dùn dunf
dún duns
dùng dungf
dũng dungx
dúng dungs
dụng dungj
duốc duocos
duộc duocoj
duôi duoio
duổi duoior
duỗi duoiox
duối duoios
duồn duonof
duông duongo
duồng duongof
dút duts
dụt dutj
dụy duyj
duyên duyene
duyến duyenes
duyện duyenej
duyệt duyetej
dư duw
dừ duwf
dử duwr
dữ duwx
dứ duws
dự duwj
dưa duaw
dừa duawf
dứa duaws
dựa duawj
dức ducws
dực ducwj
dưng dungw
dừng dungwf
dửng dungwr
dững dungwx
dứng dungws
dựng dungwj
dược duocwj
dười duoiwf
dưới duoiws
dượi duoiwj
dương duongw
dường duongwf
dưỡng duongwx
dướng duongws
dượng duongwj
dượt duotwj
dứt dutws
dựt dutwj
dửu duuwr
dữu duuwx
dứu duuws
dựu duuwj
dýn dyns
đ dd
đa dad
đà dadf
đả dadr
đã dadx
đá dads
đạ dadj
đac dacd
đác dacds
đạc dacdj
đách dachds
đạch dachdj
đai daid
đài daidf
đãi daidx
đái daids
đại daidj
đam damd
đàm damdf
đảm damdr
đám damds
đạm damdj
đan dand
đàn dandf
đản dandr
đán dands
đạn dandj
đang dangd
đàng dangdf
đảng dangdr
đãng dangdx
đáng dangds
đanh danhd
đành danhdf
đảnh danhdr
đánh danhds
đao daod
đào daodf
đảo daodr
đáo daods
đạo daodj
đáp dapds
đạp dapdj
đát datds
đạt datdj
đau daud
đáu dauds
đay dayd
đày daydf
đảy daydr
đãy daydx
đáy dayds
đẵ dadwx
đắc dacdws
đặc dacdwj
đăk dakdw
đắk dakdws
đăm damdw
đằm damdwf
đẵm damdwx
đắm damdws
đằn dandwf
đẵn dandwx
đắn dandws
đặn dandwj
đăng dangdw
đằng dangdwf
đẳng dangdwr
đẵng dangdwx
đắng dangdws
đặng dangdwj
đắp dapdws
đắt datdws
đặt datdwj
đằu daudwf
đâm damda
đầm damdaf
đẫm damdax
đấm damdas
đậm damdaj
đần dandaf
đẫn dandax
đấn dandas
đận dandaj
đâng dangda
đấng dangdas
đập dapdaj
đất datdas
đật datdaj
đâu dauda
đầu daudaf
đẩu daudar
đấu daudas
đậu daudaj
đây dayda
đầy daydaf
đẩy daydar
đẫy daydax
đấy daydas
đậy daydaj
đe ded
đè dedf
đẻ dedr
đẽ dedx
đéc decds
đem demd
đèm demdf
đen dend
đèn dendf
đẹn dendj
đeng dengd
đeo deod
đèo deodf
đẽo deodx
đéo deods
đẹp depdj
đét detds
đẹt detdj
đê dede
đề dedef
để deder
đễ dedex
đế dedes
đệ dedej
đếch dechdes
đêh dehde
đêm demde
đềm demdef
đếm demdes
đệm demdej
đên dende
đền dendef
đến dendes
đênh denhde
đềnh denhdef
đểnh denhder
đễnh denhdex
đệp depdej
đêu deude
đều deudef
đểu deuder
đg dgd
đgt dgtd
đhur dhurd
đi did
đì didf
đĩ didx
đị didj
đìa diadf
đỉa diadr
đĩa diadx
đía diads
địa diadj
đích dichds
địch dichdj
đien diend
điếc diecdes
điềm diemdef
điểm diemder
điếm diemdes
điệm diemdej
điên diende
điền diendef
điển diender
điện diendej
điêng diengde
điếng diengdes
điệp diepdej
điệt dietdej
điêu dieude
điều dieudef
điểu dieuder
điếu dieudes
điệu dieudej
đin dind
đìn dindf
đinh dinhd
đình dinhdf
đỉnh dinhdr
đĩnh dinhdx
đính dinhds
định dinhdj
đip dipd
đít ditds
địt ditdj
điu diud
đìu diudf
địu diudj
đo dod
đò dodf
đỏ dodr
đõ dodx
đó dods
đọ dodj
đoa doad
đoác doacds
đoài doaidf
đoái doaids
đoan doand
đoàn doandf
đoản doandr
đoán doands
đoạn doandj
đoàng doangdf
đoảng doangdr
đoãng doangdx
đoành doanhdf
đoạt doatdj
đoc docd
đóc docds
đọc docdj
đoi doid
đòi doidf
đỏi doidr
đói doids
đọi doidj
đom domd
đòm domdf
đỏm domdr
đóm domds
đon dond
đòn dondf
đón donds
đọn dondj
đong dongd
đòng dongdf
đỏng dongdr
đóng dongds
đọng dongdj
đọp dopdj
đót dotds
đọt dotdj
đô dodo
đồ dodof
đổ dodor
đỗ dodox
đố dodos
độ dodoj
đôc docdo
đốc docdos
độc docdoj
đôi doido
đồi doidof
đổi doidor
đỗi doidox
đối doidos
đội doidoj
đôm domdo
đồm domdof
đốm domdos
đôn dondo
đồn dondof
đốn dondos
độn dondoj
đông dongdo
đồng dongdof
đổng dongdor
đỗng dongdox
đống dongdos
động dongdoj
đốp dopdos
độp dopdoj
đốt dotdos
đột dotdoj
đơ dodw
đờ dodwf
đở dodwr
đỡ dodwx
đớ dodws
đợ dodwj
đời doidwf
đới doidws
đợi doidwj
đơm domdw
đờm domdwf
đởm domdwr
đơn dondw
đờn dondwf
đởn dondwr
đớn dondws
đớp dopdws
đợp dopdwj
đớt dotdws
đợt dotdwj
đpcm dpcmd
đpctntư dpctntudw
đph dphd
đphg dphgd
đqg dqgd
đqgtnn dqgtnnd
đqt dqtd
đr drd
đrá drads
đrao draod
đrăk drakdw
đrắk drakdws
đrong drongd
đrô drodo
đrung drungd
đs dsd
đsp dspd
đt dtd
đtb dtbd
đtbxh dtbxhd
đtl dtld
đtla dtlad
đtlx dtlxd
đtm dtmd
đtntl dtntld
đtpt dtptd
đts dtsd
đtt dttd
đttp dttpd
đttpmt dttpmtd
đttqg dttqgd
đu dud
đù dudf
đủ dudr
đú duds
đụ dudj
đua duad
đùa duadf
đũa duadx
đúa duads
đúc ducds
đục ducdj
đuểnh duenhder
đui duid
đùi duidf
đủi duidr
đũi duidx
đum dumd
đùm dumdf
đúm dumds
đun dund
đùn dundf
đún dunds
đụn dundj
đung dungd
đùng dungdf
đủng dungdr
đũng dungdx
đúng dungds
đụng dungdj
đuốc duocdos
đuôi duoido
đuổi duoidor
đuối duoidos
đuồn duondof
đuỗn duondox
đuống duongdos
đuột duotdoj
đup dupd
đúp dupds
đụp dupdj
đút dutds
đụt dutdj
đừ dudwf
đử dudwr
đứ dudws
đưa duadw
đừa duadwf
đứa duadws
đức ducdws
đực ducdwj
đưng dungdw
đừng dungdwf
đứng dungdws
đựng dungdwj
đước duocdws
được duocdwj
đười duoidwf
đượm duomdwj
đườn duondwf
đưỡn duondwx
đương duongdw
đường duongdwf
đứt dutdws
đv dvd
đvn dvnd
đvqg dvqgd
đxx dxxd
è ef
ẻ er
ẽ ex
é es
ẹ ej
éc ecs
ẹc ecj
ẻh ehr
éh ehs
èm emf
ẻm emr
ẽm emx
ém ems
ẹm emj
èn enf
ẻn enr
ẽn enx
én ens
ẹn enj
èng engf
ẻng engr
éng engs
èo eof
ẻo eor
ẽo eox
éo eos
ẹo eoj
ép eps
ẹp epj
ét ets
ẹt etj
ê ee
ề eef
ể eer
ễ eex
ế ees
ệ eej
êa eae
êbur ebure
êc ece
ếc eces
ệc ecej
ếch eches
ệch echej
êh ehe
êm eme
ềm emef
ểm emer
ễm emex
ếm emes
ệm emej
ên ene
ền enef
ển ener
ễn enex
ến enes
ện enej
êng enge
ềng engef
ểng enger
ễng engex
ếng enges
ệng engej
ênh enhe
ềnh enhef
ểnh enher
ễnh enhex
ếnh enhes
ệnh enhej
ếp epes
ệp epej
êpôc epoceo
êpốc epoceos
êt ete
ết etes
ệt etej
êtan etane
ête etee
êu eue
ều euef
ểu euer
ễu euex
ếu eues
ệu euej
êy eye
fà faf
frăng frangw
fría frias
fù fuf
fú fus
fútbol futbols
gà gaf
gả gar
gã gax
gá gas
gạ gaj
gác gacs
gạc gacj
gạch gachj
gài gaif
gãi gaix
gái gais
galông galongo
gàn ganf
gán gans
gạn ganj
gàng gangf
gành ganhf
gảnh ganhr
gánh ganhs
gạnh ganhj
gào gaof
gáo gaos
gạo gaoj
gáp gaps
gát gats
gạt gatj
gàu gauf
gáu gaus
gày gayf
gảy gayr
gãy gayx
gáy gays
gạy gayj
gặc gacwj
găm gamw
gằm gamwf
gắm gamws
gặm gamwj
găn ganw
gằn ganwf
gắn ganws
gặn ganwj
găng gangw
gắng gangws
gặng gangwj
gắp gapws
gặp gapwj
gắt gatws
gặt gatwj
gấc gacas
gâm gama
gầm gamaf
gẩm gamar
gẫm gamax
gấm gamas
gậm gamaj
gân gana
gần ganaf
gấn ganas
gận ganaj
gầng gangaf
gấp gapas
gập gapaj
gất gatas
gật gataj
gâu gaua
gầu gauaf
gẫu gauax
gấu gauas
gây gaya
gầy gayaf
gẩy gayar
gẫy gayax
gấy gayas
gậy gayaj
gẻ ger
gém gems
gép geps
gềnh genhef
gệt getej
ghè ghef
ghẻ gher
ghẽ ghex
ghé ghes
ghẹ ghej
ghém ghems
ghèn ghenf
ghẹn ghenj
ghẹo gheoj
ghép gheps
ghét ghets
ghê ghee
ghề gheef
ghế ghees
ghệ gheej
ghếch gheches
ghềnh ghenhef
ghểnh ghenher
ghệt ghetej
ghì ghif
ghĩa ghiax
ghiếc ghieces
ghiền ghienef
ghìm ghimf
ghín ghins
ghinê ghinee
ghình ghinhf
gì gif
gỉ gir
gĩ gix
gí gis
già giaf
giả giar
giã giax
giá gias
giạ giaj
giác giacs
giạc giacj
giải giair
giãi giaix
giái giais
giại giaij
giàm giamf
giảm giamr
giám giams
giạm giamj
giàn gianf
giản gianr
giãn gianx
gián gians
giàng giangf
giảng giangr
giáng giangs
giạng giangj
giành gianhf
giảnh gianhr
giào giaof
giảo giaor
giáo giaos
giáp giaps
giát giats
giạt giatj
giàu giauf
giảu giaur
giavê giavee
giày giayf
giãy giayx
giáy giays
giặc giacwj
giăm giamw
giằm giamwf
giẵm giamwx
giắm giamws
giặm giamwj
giằn gianwf
giẵn gianwx
giắn gianws
giặn gianwj
giăng giangw
giằng giangwf
giắng giangws
giặng giangwj
giặp giapwj
giắt giatws
giặt giatwj
giâ giaa
giấc giacas
giâm giama
giầm giamaf
giẫm giamax
giấm giamas
giậm giamaj
giân giana
giần gianaf
giấn gianas
giận gianaj
giầng giangaf
giẩng giangar
giầnh gianhaf
giấp giapas
giập giapaj
giất giatas
giật giataj
giâu giaua
giầu giauaf
giấu giauas
giậu giauaj
giây giaya
giầy giayaf
giẩy giayar
giẫy giayax
giấy giayas
gíc gics
gích gichs
giẻ gier
giẽ giex
gié gies
giéc giecs
gièm giemf
giém giems
giẻo gieor
giéo gieos
giẹo gieoj
giép gieps
giẹp giepj
giẹt gietj
giê giee
giề gieef
giếc gieces
giệch giechej
giếm giemes
giền gienef
giêng gienge
giềng giengef
giếng gienges
giềnh gienhef
giệnh gienhej
giết gietes
giệt gietej
giễu gieuex
giếu gieues
giệu gieuej
gìm gimf
gìn ginf
giò giof
giỏ gior
giõ giox
gió gios
giọ gioj
gióc giocs
giọc giocj
giòi gioif
giỏi gioir
giõi gioix
giói giois
giọi gioij
giòn gionf
giỏn gionr
gión gions
giọn gionj
giòng giongf
giỏng giongr
giõng giongx
gióng giongs
giọng giongj
giót giots
giọt giotj
giô gioo
giồ gioof
giổ gioor
giỗ gioox
giộ giooj
giốc giocos
giôi gioio
giồi gioiof
giổi gioior
giỗi gioiox
giối gioios
giội gioioj
giôn giono
giông giongo
giồng giongof
giống giongos
giộng giongoj
giộp giopoj
giốt giotos
giột giotoj
giơ giow
giờ giowf
giở giowr
giỡ giowx
giớ giows
giời gioiwf
giới gioiws
giớm giomws
giợm giomwj
giờn gionwf
giởn gionwr
giỡn gionwx
giợn gionwj
giợt giotwj
gíp gips
gít gits
gịt gitj
giù giuf
giũ giux
giú gius
giùa giuaf
giũa giuax
giụa giuaj
giục giucj
giùi giuif
giủi giuir
giúi giuis
giụi giuij
giùm giumf
giúm giums
giụm giumj
giùn giunf
giún giuns
giùng giungf
giủng giungr
giuộc giuocoj
giuỗi giuoiox
giuộm giuomoj
giúp giups
giư giuw
giừ giuwf
giữ giuwx
giưa giuaw
giữa giuawx
giứa giuaws
giương giuongw
giường giuongwf
giướng giuongws
giượng giuongwj
giựt giutwj
glây glaya
gò gof
gõ gox
gó gos
gọ goj
góc gocs
gòi goif
gỏi goir
gõi goix
gói gois
gọi goij
gỏl golr
gòn gonf
gón gons
gọn gonj
gòng gongf
gỏng gongr
gọng gongj
góp gops
gót gots
gọt gotj
gô goo
gồ goof
gổ goor
gỗ goox
gộ gooj
gốc gocos
gộc gocoj
gồi goiof
gối goios
gội goioj
gôm gomo
gồm gomof
gốm gomos
gôn gono
gông gongo
gồng gongof
gống gongos
gốp gopos
gộp gopoj
gột gotoj
gơ gow
gờ gowf
gở gowr
gỡ gowx
gớc gocws
gởi goiwr
gới goiws
gợi goiwj
gờm gomwf
gớm gomws
gơn gonw
gờn gonwf
gợn gonwj
gợt gotwj
grát grats
gù guf
gũ gux
gú gus
gụ guj
gục gucj
guê guee
gùi guif
gũi guix
gụi guij
gùn gunf
gún guns
gùng gungf
gúng gungs
guó guos
guốc guocos
guộc guocoj
guồi guoiof
guồng guongof
guột guotoj
gút guts
gụt gutj
gư guw
gừ guwf
gừa guawf
gửi guiwr
gừng gungwf
gứng gungws
gươm guomw
gườm guomwf
gượm guomwj
gương guongw
gường guongwf
gưỡng guongwx
gượng guongwj
gỵa gyaj
hà haf
hả har
há has
hạ haj
hác hacs
hạc hacj
hách hachs
hạch hachj
hài haif
hải hair
hãi haix
hái hais
hại haij
haló halos
hàm hamf
hảm hamr
hãm hamx
hám hams
hạm hamj
hàn hanf
hản hanr
hãn hanx
hán hans
hạn hanj
hàng hangf
hảng hangr
hãng hangx
háng hangs
hạng hangj
hành hanhf
hảnh hanhr
hãnh hanhx
hánh hanhs
hạnh hanhj
hào haof
hảo haor
hão haox
háo haos
hạo haoj
háp haps
hạp hapj
hát hats
hạt hatj
hàu hauf
háu haus
hảy hayr
hãy hayx
háy hays
hạy hayj
hắ haws
hắc hacws
hặc hacwj
hăm hamw
hằm hamwf
hẳm hamwr
hằn hanwf
hẳn hanwr
hắn hanws
hăng hangw
hằng hangwf
hẵng hangwx
hắng hangws
hắt hatws
hấc hacas
hậc hacaj
hâm hama
hầm hamaf
hẩm hamar
hẫm hamax
hấm hamas
hậm hamaj
hân hana
hẫn hanax
hấn hanas
hận hanaj
hâng hanga
hẩng hangar
hẫng hangax
hấng hangas
hấp hapas
hập hapaj
hất hatas
hật hataj
hâu haua
hầu hauaf
hẩu hauar
hẫu hauax
hấu hauas
hậu hauaj
hây haya
hầy hayaf
hẩy hayar
hẫy hayax
hấy hayas
hđbt hdbtd
hè hef
hẻ her
hẽ hex
hé hes
hẹ hej
héc hecs
hécta hectas
hèm hemf
hẻm hemr
hẹm hemj
hèn henf
hẻn henr
hẹn henj
hẹng hengj
hèo heof
hẻo heor
héo heos
hép heps
hẹp hepj
hét hets
hẹt hetj
hê hee
hề heef
hể heer
hễ heex
hế hees
hệ heej
hếch heches
hệch hechej
hêli helie
hềm hemef
hên hene
hển hener
hến henes
hênh henhe
hềnh henhef
hểnh henher
hết hetes
hệt hetej
hêu heue
hều heuef
hểu heuer
hếu heues
hì hif
hỉ hir
hĩ hix
hí his
hích hichs
hịch hichj
hiêm hieme
hiềm hiemef
hiểm hiemer
hiếm hiemes
hiên hiene
hiền hienef
hiển hiener
hiến hienes
hiện hienej
hiêng hienge
hiểng hienger
hiếng hienges
hiếp hiepes
hiệp hiepej
hiết hietes
hiệt hietej
hiêu hieue
hiều hieuef
hiểu hieuer
hiếu hieues
hiệu hieuej
hĩm himx
hỉn hinr
hình hinhf
hỉnh hinhr
hĩnh hinhx
híp hips
hít hits
hìu hiuf
hmông hmongo
hnđ hndd
hò hof
hỏ hor
hó hos
họ hoj
hoác hoacs
hoách hoachs
hoạch hoachj
hoài hoaif
hoải hoair
hoãi hoaix
hoái hoais
hoại hoaij
hoàn hoanf
hoản hoanr
hoãn hoanx
hoán hoans
hoạn hoanj
hoàng hoangf
hoảng hoangr
hoãng hoangx
hoáng hoangs
hoành hoanhf
hoảnh hoanhr
hoánh hoanhs
hoạnh hoanhj
hoát hoats
hoạt hoatj
hoáy hoays
hoắc hoacws
hoặc hoacwj
hoăm hoamw
hoắm hoamws
hoằn hoanwf
hoẳn hoanwr
hoăng hoangw
hoằng hoangwf
hoẵng hoangwx
hoắt hoatws
hoân hoana
hóc hocs
học hocj
hoẻn hoenr
hoét hoets
hoẹt hoetj
hòi hoif
hỏi hoir
hói hois
hòm homf
hỏm homr
hõm homx
hóm homs
hòn honf
hỏn honr
hón hons
hòng hongf
hỏng hongr
hóng hongs
họng hongj
hóp hops
họp hopj
hót hots
hô hoo
hồ hoof
hổ hoor
hỗ hoox
hố hoos
hộ hooj
hốc hocos
hộc hocoj
hôi hoio
hồi hoiof
hổi hoior
hối hoios
hội hoioj
hôm homo
hồm homof
hổm homor
hỗm homox
hôn hono
hồn honof
hổn honor
hỗn honox
hộn honoj
hông hongo
hồng hongof
hổng hongor
hỗng hongox
hống hongos
hốp hopos
hộp hopoj
hốt hotos
hột hotoj
hôtel hotelo
hơ how
hờ howf
hở howr
hớ hows
hơi hoiw
hời hoiwf
hởi hoiwr
hỡi hoiwx
hới hoiws
hợi hoiwj
hờm homwf
hớm homws
hợm homwj
hơn honw
hờn honwf
hớn honws
hơng hongw
hớp hopws
hợp hopwj
hớt hotws
hợt hotwj
hrê hree
hrệ hreej
hù huf
hủ hur
hũ hux
hú hus
hụ huj
hùa huaf
húa huas
huân huana
huẩn huanar
huấn huanas
huất huatas
huầy huayaf
húc hucs
hục hucj
huê huee
huề hueef
huế huees
huệ hueej
huếch hueches
huênh huenhe
huểnh huenher
huếnh huenhes
hùi huif
hủi huir
húi huis
hụi huij
hùm humf
hũm humx
húm hums
hụm humj
hùn hunf
hủn hunr
hùng hungf
hủng hungr
húng hungs
huổi huoior
huông huongo
huồng huongof
huống huongos
huơ huow
huờ huowf
huơn huonw
huờn huonwf
huỡn huonwx
húp hups
hụp hupj
hút huts
hụt hutj
huých huychs
huỵch huychj
huyên huyene
huyền huyenef
huyển huyener
huyễn huyenex
huyến huyenes
huyện huyenej
huyết huyetes
huyệt huyetej
huỳnh huynhf
huỷnh huynhr
huýnh huynhs
huýt huyts
hư huw
hừ huwf
hử huwr
hữ huwx
hứ huws
hự huwj
hưa huaw
hừa huawf
hữa huawx
hứa huaws
hức hucws
hực hucwj
hừm humwf
hưn hunw
hưng hungw
hừng hungwf
hửng hungwr
hững hungwx
hứng hungws
hước huocws
hướm huomws
hượm huomwj
hương huongw
hường huongwf
hưởng huongwr
hướng huongws
hươu huouw
hưu huuw
hữu huuwx
hựu huuwj
hỷ hyr
hỹ hyx
hý hys
hyđro hydrod
ì if
ỉ ir
ĩ ix
í is
ị ij
ìa iaf
ỉa iar
ĩa iax
ía ias
ịa iaj
íc ics
ỉch ichr
ích ichs
ịch ichj
ìh ihf
ìi iif
ìm imf
ỉm imr
ĩm imx
ím ims
ịm imj
ìn inf
ỉn inr
ĩn inx
ín ins
ịn inj
ỉng ingr
íng ings
ịng ingj
ình inhf
ỉnh inhr
ĩnh inhx
ính inhs
ịnh inhj
iốt iotos
iới ioiws
íp ips
ịp ipj
ít its
ịt itj
ìu iuf
ỉu iur
ĩu iux
íu ius
ịu iuj
iý iys
jà jaf
jì jif
jí jis
jó jos
josé joses
jú jus
jút juts
jữ juwx
kách kachs
kađai kadaid
kài kaif
kalá kalas
kalú kalus
kạn kanj
kcách kcachs
kđrao kdraod
kè kef
kẻ ker
kẽ kex
ké kes
kẹ kej
kéc kecs
kèm kemf
kẻm kemr
kẽm kemx
kém kems
kèn kenf
kén kens
kẹn kenj
kẻng kengr
kèo keof
kẻo keor
kẽo keox
kéo keos
kẹo keoj
kép keps
kẹp kepj
két kets
kẹt ketj
kê kee
kề keef
kể keer
kế kees
kệ keej
kếch keches
kệch kechej
kềm kemef
kên kene
kền kenef
kêng kenge
kênh kenhe
kềnh kenhef
kễnh kenhex
kệnh kenhej
kếp kepes
kết ketes
kêu keue
kều keuef
kgông kgongo
khà khaf
khả khar
khá khas
khạ khaj
khác khacs
khạc khacj
khách khachs
khải khair
khái khais
khại khaij
khảm khamr
khám khams
khàn khanf
khản khanr
khán khans
khàng khangf
khảng khangr
kháng khangs
khạng khangj
khành khanhf
khảnh khanhr
khánh khanhs
khào khaof
khảo khaor
kháo khaos
khạo khaoj
kháp khaps
khạp khapj
khát khats
khạt khatj
kháu khaus
khảy khayr
kháy khays
khắ khaws
khắc khacws
khặc khacwj
khăm khamw
khẳm khamwr
khắm khamws
khăn khanw
khằn khanwf
khẳn khanwr
khắn khanws
khăng khangw
khằng khangwf
khẳng khangwr
khắng khangws
khắp khapws
khắt khatws
khấc khacas
khâm khama
khẩm khamar
khấm khamas
khân khana
khẩn khanar
khấn khanas
khẩng khangar
khấng khangas
khấp khapas
khập khapaj
khất khatas
khật khataj
khâu khaua
khẩu khauar
khấu khauas
khậu khauaj
khẩy khayar
khè khef
khẻ kher
khẽ khex
khé khes
khẹ khej
khẹc khecj
khém khems
khèn khenf
khén khens
khèo kheof
khẻo kheor
khéo kheos
khép kheps
khét khets
khẹt khetj
khê khee
khề kheef
khể kheer
khế khees
khệ kheej
khến khenes
khệng khengej
khênh khenhe
khềnh khenhef
khểnh khenher
khệnh khenhej
khêu kheue
khều kheuef
khểu kheuer
khì khif
khỉ khir
khí khis
khị khij
khìa khiaf
khỉa khiar
khía khias
khịa khiaj
khích khichs
khiêm khieme
khiểm khiemer
khiếm khiemes
khiệm khiemej
khiên khiene
khiền khienef
khiển khiener
khiến khienes
khiêng khienge
khiễng khiengex
khiếp khiepes
khiết khietes
khiêu khieue
khiều khieuef
khiếu khieues
khìn khinf
khín khins
khỉnh khinhr
khĩnh khinhx
khít khits
khịt khitj
khìu khiuf
khỉu khiur
khíu khius
khịu khiuj
khlá khlas
khò khof
khỏ khor
khó khos
khoác khoacs
khoạc khoacj
khoách khoachs
khoải khoair
khoái khoais
khoản khoanr
khoán khoans
khoảng khoangr
khoáng khoangs
khoảnh khoanhr
khoào khoaof
khoát khoats
khoạt khoatj
khoáy khoays
khoắc khoacws
khoăm khoamw
khoằm khoamwf
khoắm khoamws
khoăn khoanw
khoắn khoanws
khoắng khoangws
khoắt khoatws
khóc khocs
khoèn khoenf
khoèo khoeof
khoẻo khoeor
khoét khoets
khỏi khoir
khói khois
khòm khomf
khóm khoms
khọm khomj
khòn khonf
khọn khonj
khòng khongf
khỏng khongr
khót khots
khô khoo
khổ khoor
khố khoos
khốc khocos
khôg khogo
khôi khoio
khổi khoior
khối khoios
khôn khono
khổn khonor
khốn khonos
không khongo
khổng khongor
khống khongos
khốt khotos
khơ khow
khờ khowf
khớ khows
khơi khoiw
khởi khoiwr
khới khoiws
khơm khomw
khớm khomws
khơme khomew
khờn khonwf
khớn khonws
khớp khopws
khù khuf
khủ khur
khũ khux
khú khus
khụ khuj
khùa khuaf
khủa khuar
khúa khuas
khuân khuana
khuẩn khuanar
khuẫn khuanax
khuâng khuanga
khuất khuatas
khuây khuaya
khuấy khuayas
khúc khucs
khục khucj
khuê khuee
khuể khueer
khuếch khueches
khúm khums
khùng khungf
khủng khungr
khuôn khuono
khuông khuongo
khuơ khuow
khụt khutj
khuých khuychs
khuyên khuyene
khuyển khuyener
khuyến khuyenes
khuyết khuyetes
khuỳnh khuynhf
khuýnh khuynhs
khuỷu khuyur
khuỵu khuyuj
khư khuw
khừ khuwf
khử khuwr
khứ khuws
khự khuwj
khừa khuawf
khứa khuaws
khựa khuawj
khừng khungwf
khửng khungwr
khứng khungws
khựng khungwj
khước khuocws
khươi khuoiw
khươm khuomw
khươn khuonw
khương khuongw
khưỡng khuongwx
khướt khuotws
khướu khuouws
khưu khuuw
khứu khuuws
khyển khyener
kì kif
kỉ kir
kĩ kix
kí kis
kị kij
kìa kiaf
kỉch kichr
kích kichs
kịch kichj
kiệ kieej
kiêm kieme
kiềm kiemef
kiểm kiemer
kiếm kiemes
kiệm kiemej
kiên kiene
kiền kienef
kiển kiener
kiến kienes
kiện kienej
kiêng kienge
kiềng kiengef
kiểng kienger
kiễng kiengex
kiếng kienges
kiếp kiepes
kiệp kiepej
kiết kietes
kiệt kietej
kiêu kieue
kiều kieuef
kiểu kieuer
kiếu kieues
kiệu kieuej
kiló kilos
kilô kiloo
kilôgam kilogamo
kilôm kilomo
kilômet kilometo
kìm kimf
kìn kinf
kín kins
kịn kinj
kình kinhf
kỉnh kinhr
kính kinhs
kinó kinos
kíp kips
kịp kipj
kít kits
kịt kitj
kitô kitoo
kĩu kiux
kíu kius
kò kof
kó kos
kòp kopf
kót kots
kô koo
kốc kocos
kôn kono
kông kongo
kơ kow
kơi koiw
kpă kpaw
kpăng kpangw
kráp kraps
krăng krangw
krẹ krej
krêy kreye
krôm kromo
krông krongo
ktlê ktlee
kủ kur
kúba kubas
kúc kucs
kuênh kuenhe
kỳ kyf
kỷ kyr
kỹ kyx
ký kys
kỵ kyj
là laf
lả lar
lã lax
lá las
lạ laj
lác lacs
lạc lacj
lách lachs
lạch lachj
lài laif
lải lair
lãi laix
lái lais
lại laij
làm lamf
lảm lamr
lãm lamx
lạm lamj
làn lanf
lãn lanx
lán lans
lạn lanj
làng langf
lảng langr
lãng langx
láng langs
lạng langj
lành lanhf
lảnh lanhr
lãnh lanhx
lánh lanhs
lạnh lanhj
lào laof
lảo laor
lão laox
láo laos
lạo laoj
láp laps
lạp lapj
lát lats
lạt latj
làu lauf
lảu laur
láu laus
lạu lauj
lày layf
lảy layr
láy lays
lạy layj
lắc lacws
lặc lacwj
lăk lakw
lắk lakws
lăm lamw
lằm lamwf
lẳm lamwr
lắm lamws
lặm lamwj
lăn lanw
lằn lanwf
lẳn lanwr
lặn lanwj
lăng langw
lằng langwf
lẳng langwr
lẵng langwx
lắng langws
lặng langwj
lắp lapws
lặp lapwj
lắt latws
lặt latwj
lấc lacas
lâm lama
lầm lamaf
lẩm lamar
lẫm lamax
lấm lamas
lậm lamaj
lân lana
lần lanaf
lẩn lanar
lẫn lanax
lấn lanas
lận lanaj
lâng langa
lấng langas
lâp lapa
lấp lapas
lập lapaj
lất latas
lật lataj
lâu laua
lầu lauaf
lẩu lauar
lấu lauas
lậu lauaj
lây laya
lầy layaf
lẩy layar
lẫy layax
lấy layas
lậy layaj
lè lef
lẻ ler
lẽ lex
lé les
lẹ lej
léc lecs
lèm lemf
lẻm lemr
lém lems
lẹm lemj
lèn lenf
lẻn lenr
lẽn lenx
lén lens
lẹn lenj
lèng lengf
lẻng lengr
léng lengs
lèo leof
lẻo leor
lẽo leox
léo leos
lẹo leoj
lép leps
lẹp lepj
lét lets
lẹt letj
lê lee
lề leef
lể leer
lễ leex
lệ leej
lếch leches
lệch lechej
lên lene
lênh lenhe
lềnh lenhef
lểnh lenher
lễnh lenhex
lệnh lenhej
lênin lenine
lết letes
lệt letej
lêu leue
lều leuef
lểu leuer
lễu leuex
lếu leues
lệu leuej
lểy leyer
lếy leyes
lì lif
lí lis
lị lij
lìa liaf
lía lias
lịa liaj
líc lics
lích lichs
lịch lichj
liếc lieces
liêm lieme
liềm liemef
liễm liemex
liếm liemes
liệm liemej
liên liene
liền lienef
liễn lienex
liến lienes
liêng lienge
liềng liengef
liểng lienger
liếng lienges
liệng liengej
liếp liepes
liệp liepej
liệt lietej
liêu lieue
liều lieuef
liểu lieuer
liễu lieuex
liếu lieues
liệu lieuej
lìm limf
lỉm limr
lịm limj
lìn linf
lình linhf
lỉnh linhr
lĩnh linhx
lính linhs
lịnh linhj
líp lips
lịp lipj
lít lits
lịt litj
litô litoo
lìu liuf
líu lius
lịu liuj
lò lof
lõ lox
ló los
lọ loj
loạc loacj
loách loachs
loài loaif
loại loaij
loàn loanf
loán loans
loạn loanj
loàng loangf
loảng loangr
loãng loangx
loáng loangs
loạng loangj
loát loats
loạt loatj
loăn loanw
loăng loangw
loằng loangwf
loắt loatws
lóc locs
lọc locj
loẻn loenr
loét loets
loẹt loetj
lòi loif
lỏi loir
lõi loix
lói lois
lọi loij
lòm lomf
lỏm lomr
lõm lomx
lóm loms
lọm lomj
lòn lonf
lỏn lonr
lọn lonj
lòng longf
lỏng longr
lõng longx
lóng longs
lọng longj
lóp lops
lọp lopj
lót lots
lọt lotj
lô loo
lồ loof
lổ loor
lỗ loox
lố loos
lộ looj
lôc loco
lốc locos
lộc locoj
lôgic logico
lôi loio
lồi loiof
lỗi loiox
lối loios
lội loioj
lôm lomo
lồm lomof
lổm lomor
lốm lomos
lộm lomoj
lôn lono
lồn lonof
lổn lonor
lốn lonos
lộn lonoj
lông longo
lồng longof
lổng longor
lộng longoj
lốp lopos
lộp lopoj
lốt lotos
lột lotoj
lơ low
lờ lowf
lở lowr
lỡ lowx
lớ lows
lợ lowj
lơi loiw
lời loiwf
lởi loiwr
lỡi loiwx
lới loiws
lợi loiwj
lờm lomwf
lởm lomwr
lỡm lomwx
lợm lomwj
lơn lonw
lờn lonwf
lởn lonwr
lớn lonws
lợn lonwj
lơng longw
lớp lopws
lợp lopwj
lớt lotws
lợt lotwj
lù luf
lủ lur
lũ lux
lú lus
lụ luj
lùa luaf
lũa luax
lúa luas
lụa luaj
luán luans
luân luana
luẩn luanar
luấn luanas
luận luanaj
luật luataj
lúc lucs
lục lucj
lùi luif
lủi luir
lũi luix
lúi luis
lụi luij
lùm lumf
lủm lumr
lũm lumx
lúm lums
lụm lumj
lùn lunf
lủn lunr
lũn lunx
lún luns
lụn lunj
lùng lungf
lủng lungr
lũng lungx
lúng lungs
lụng lungj
luóm luoms
luốc luocos
luộc luocoj
luỗi luoiox
luôm luomo
luộm luomoj
luôn luono
luồn luonof
luông luongo
luồng luongof
luỗng luongox
luống luongos
luốt luotos
luột luotoj
lúp lups
lụp lupj
lút luts
lụt lutj
luyên luyene
luyến luyenes
luyện luyenej
luyệt luyetej
luýnh luynhs
lư luw
lừ luwf
lử luwr
lữ luwx
lự luwj
lưa luaw
lừa luawf
lửa luawr
lữa luawx
lứa luaws
lựa luawj
lưc lucw
lức lucws
lực lucwj
lừm lumwf
lưng lungw
lừng lungwf
lửng lungwr
lững lungwx
lứng lungws
lựng lungwj
lược luocwj
lười luoiwf
lưỡi luoiwx
lưới luoiws
lươm luomw
lườm luomwf
lượm luomwj
lươn luonw
lườn luonwf
lượn luonwj
lương luongw
lường luongwf
lưỡng luongwx
lướng luongws
lượng luongwj
lướt luotws
lượt luotwj
lứt lutws
lưu luuw
lữu luuwx
lựu luuwj
lỳ lyf
lỹ lyx
lý lys
lỵ lyj
mà maf
mả mar
mã max
má mas
mạ maj
mác macs
mạc macj
mách machs
mạch machj
mài maif
mải mair
mãi maix
mái mais
mại maij
màn manf
mản manr
mãn manx
mán mans
mạn manj
màng mangf
mảng mangr
mãng mangx
máng mangs
mạng mangj
mành manhf
mảnh manhr
mãnh manhx
mánh manhs
mạnh manhj
mào maof
mão maox
máo maos
mạo maoj
mạp mapj
mát mats
mạt matj
matê matee
matrác matracs
màu mauf
máu maus
mày mayf
mảy mayr
máy mays
mạy mayj
mă maw
mắc macws
mặc macwj
măk makw
măm mamw
mắm mamws
măn manw
mằn manwf
mẳn manwr
mắn manws
mặn manwj
măng mangw
mắng mangws
mặp mapwj
mắt matws
mặt matwj
mâm mama
mầm mamaf
mẩm mamar
mẫm mamax
mấm mamas
mậm mamaj
mân mana
mần manaf
mẩn manar
mẫn manax
mấn manas
mận manaj
mâng manga
mầng mangaf
mâp mapa
mấp mapas
mập mapaj
mất matas
mật mataj
mâu maua
mầu mauaf
mẩu mauar
mẫu mauax
mấu mauas
mậu mauaj
mây maya
mầy mayaf
mẩy mayar
mấy mayas
mè mef
mẻ mer
mẽ mex
mé mes
mẹ mej
méc mecs
mèm memf
mém mems
mèn menf
mén mens
mèng mengf
méng mengs
menú menus
mèo meof
mẻo meor
mẽo meox
méo meos
mẹo meoj
mép meps
mẹp mepj
mét mets
mẹt metj
mê mee
mề meef
mể meer
mễ meex
mế mees
mệ meej
mếch meches
mêga megae
mềm memef
mễm memex
mên mene
mền menef
mễn menex
mến menes
mênh menhe
mềnh menhef
mệnh menhej
mết metes
mệt metej
mêtan metane
mểu meuer
mếu meues
mì mif
mỉ mir
mĩ mix
mí mis
mị mij
mỉa miar
mĩa miax
mía mias
mích michs
mịch michj
miẻo mieor
miên miene
miền mienef
miễn mienex
miến mienes
miện mienej
miêng mienge
miểng mienger
miếng mienges
miệng miengej
miết mietes
miệt mietej
miêu mieue
miều mieuef
miểu mieuer
miễu mieuex
miếu mieues
mỉm mimr
mĩm mimx
mím mims
mìn minf
mịn minj
míng mings
mình minhf
mỉnh minhr
mính minhs
mịnh minhj
míp mips
mít mits
mịt mitj
mìu miuf
míu mius
mlài mlaif
mlời mloiwf
mluộm mluomoj
mnhời mnhoiwf
mní mnis
mò mof
mỏ mor
mõ mox
mó mos
mọ moj
móc mocs
mọc mocj
mòi moif
mỏi moir
mõi moix
mói mois
mọi moij
mòm momf
mỏm momr
mõm momx
móm moms
mòn monf
món mons
mọn monj
moná monas
mòng mongf
mỏng mongr
móng mongs
mọng mongj
móp mops
mọp mopj
mót mots
mọt motj
mô moo
mồ moof
mổ moor
mỗ moox
mố moos
mộ mooj
môc moco
mốc mocos
mộc mocoj
môi moio
mồi moiof
mỗi moiox
mối moios
mội moioj
mộl moloj
môm momo
mồm momof
mômen momeno
môn mono
mồn monof
mông mongo
mồng mongof
mổng mongor
mỗng mongox
mống mongos
mộng mongoj
môt moto
mốt motos
một motoj
mơ mow
mờ mowf
mở mowr
mỡ mowx
mớ mows
mợ mowj
mơi moiw
mời moiwf
mới moiws
mợi moiwj
mơm momw
mờm momwf
mớm momws
mơn monw
mởn monwr
mỡn monwx
mớn monws
mớp mopws
mrơn mronw
mù muf
mủ mur
mũ mux
mú mus
mụ muj
mùa muaf
múa muas
múc mucs
mục mucj
mùi muif
mủi muir
mũi muix
múi muis
mụi muij
mủm mumr
mũm mumx
múm mums
mùn munf
mủn munr
mún muns
mụn munj
mùng mungf
mủng mungr
muôi muoio
muồi muoiof
muỗi muoiox
muối muoios
muội muoioj
muỗm muomox
muôn muono
muốn muonos
muộn muonoj
muông muongo
muồng muongof
muổng muongor
muỗng muongox
muống muongos
muốt muotos
múp mups
mụp mupj
muséum museums
mút muts
mụt mutj
mư muw
mự muwj
mưa muaw
mửa muawr
mứa muaws
mựa muawj
mức mucws
mực mucwj
mứn munws
mưng mungw
mừng mungwf
mững mungwx
mược muocwj
mươi muoiw
mười muoiwf
mươn muonw
mướn muonws
mượn muonwj
mương muongw
mường muongwf
mướp muopws
mướt muotws
mượt muotwj
mưỡu muouwx
mứt mutws
mưu muuw
mứu muuws
mỳ myf
mỹ myx
mỵ myj
nà naf
nả nar
nã nax
ná nas
nạ naj
nác nacs
nạc nacj
nách nachs
nạch nachj
nài naif
nải nair
nãi naix
nái nais
nại naij
nàm namf
nảm namr
nám nams
nạm namj
nàn nanf
nản nanr
nãn nanx
nán nans
nạn nanj
nàng nangf
nãng nangx
náng nangs
nạng nangj
nành nanhf
nánh nanhs
nạnh nanhj
nào naof
não naox
náo naos
nạo naoj
nạp napj
nát nats
nạt natj
náu naus
này nayf
nảy nayr
nãy nayx
náy nays
nạy nayj
nắc nacws
nặc nacwj
năm namw
nằm namwf
nẳm namwr
nắm namws
năn nanw
nằn nanwf
nắn nanws
nặn nanwj
năng nangw
nằng nangwf
nẵng nangwx
nắng nangws
nặng nangwj
nắp napws
nấc nacas
nâm nama
nầm namaf
nẫm namax
nấm namas
nậm namaj
nân nana
nần nanaf
nẫn nanax
nấn nanas
nâng nanga
nẫng nangax
nấng nangas
nậng nangaj
nấp napas
nập napaj
nất natas
nật nataj
nâu naua
nẫu nauax
nấu nauas
nậu nauaj
nây naya
nầy nayaf
nẩy nayar
nẫy nayax
nấy nayas
nậy nayaj
nđm ndmd
nè nef
nẻ ner
né nes
ném nems
nén nens
nẹn nenj
nèo neof
nẻo neor
nẽo neox
néo neos
nẹo neoj
nép neps
nẹp nepj
nét nets
nẹt netj
nê nee
nề neef
nể neer
nễ neex
nệ neej
nêm neme
nếm nemes
nệm nemej
nên nene
nền nenef
nến nenes
nện nenej
nếp nepes
nết netes
nêu neue
nếu neues
nếy neyes
ngà ngaf
ngả ngar
ngã ngax
ngá ngas
ngạ ngaj
ngác ngacs
ngạc ngacj
ngách ngachs
ngạch ngachj
ngài ngaif
ngải ngair
ngãi ngaix
ngái ngais
ngại ngaij
ngàm ngamf
ngám ngams
ngàn nganf
ngán ngans
ngạn nganj
ngàng ngangf
ngãng ngangx
ngáng ngangs
ngạng ngangj
ngành nganhf
ngảnh nganhr
ngánh nganhs
ngạnh nganhj
ngào ngaof
ngảo ngaor
ngão ngaox
ngáo ngaos
ngạo ngaoj
ngáp ngaps
ngát ngats
ngạt ngatj
ngàu ngauf
ngáu ngaus
ngày ngayf
ngáy ngays
ngắc ngacws
ngăm ngamw
ngằm ngamwf
ngắm ngamws
ngăn nganw
ngằn nganwf
ngắn nganws
ngẳng ngangwr
ngẵng ngangwx
ngặp ngapwj
ngắt ngatws
ngặt ngatwj
ngấc ngacas
ngâm ngama
ngầm ngamaf
ngẩm ngamar
ngẫm ngamax
ngấm ngamas
ngậm ngamaj
ngân ngana
ngần nganaf
ngẩn nganar
ngẫn nganax
ngấn nganas
ngận nganaj
ngẩng ngangar
ngẫng ngangax
ngấp ngapas
ngập ngapaj
ngất ngatas
ngật ngataj
ngâu ngaua
ngầu ngauaf
ngẩu ngauar
ngẫu ngauax
ngấu ngauas
ngậu ngauaj
ngây ngaya
ngầy ngayaf
ngấy ngayas
ngậy ngayaj
ngèo ngeof
ngẹt ngetj
ngệch ngechej
nghè nghef
nghé nghes
nghẹ nghej
nghèn nghenf
nghẽn nghenx
nghén nghens
nghẹn nghenj
nghèo ngheof
nghẻo ngheor
nghẽo ngheox
nghéo ngheos
nghẹo ngheoj
nghét nghets
nghẹt nghetj
nghê nghee
nghề ngheef
nghể ngheer
nghễ ngheex
nghế nghees
nghệ ngheej
nghếch ngheches
nghệch nghechej
nghển nghener
nghễn nghenex
nghến nghenes
nghện nghenej
nghênh nghenhe
nghểnh nghenher
nghễnh nghenhex
nghệt nghetej
nghêu ngheue
nghều ngheuef
nghểu ngheuer
nghễu ngheuex
nghệu ngheuej
nghì nghif
nghỉ nghir
nghĩ nghix
nghí nghis
nghị nghij
nghĩa nghiax
nghía nghias
nghích nghichs
nghịch nghichj
nghiêm nghieme
nghiễm nghiemex
nghiệm nghiemej
nghiên nghiene
nghiền nghienef
nghiễn nghienex
nghiến nghienes
nghiện nghienej
nghiêng nghienge
nghiênh nghienhe
nghiệp nghiepej
nghiệt nghietej
nghiêu nghieue
nghìm nghimf
nghỉm nghimr
nghìn nghinf
nghỉn nghinr
nghỉnh nghinhr
nghĩnh nghinhx
nghít nghits
nghịt nghitj
nghỉu nghiur
nghịu nghiuj
nghoèo nghoeof
nghồng nghongof
ngích ngichs
ngịu ngiuj
ngò ngof
ngỏ ngor
ngõ ngox
ngó ngos
ngọ ngoj
ngoác ngoacs
ngoạc ngoacj
ngoách ngoachs
ngoạch ngoachj
ngoài ngoaif
ngoải ngoair
ngoái ngoais
ngoại ngoaij
ngoàm ngoamf
ngoảm ngoamr
ngoạm ngoamj
ngoãn ngoanx
ngoạn ngoanj
ngoảng ngoangr
ngoảnh ngoanhr
ngoãnh ngoanhx
ngoáo ngoaos
ngoáp ngoaps
ngoạt ngoatj
ngoảy ngoayr
ngoáy ngoays
ngoạy ngoayj
ngoắc ngoacws
ngoặc ngoacwj
ngoằn ngoanwf
ngoẳn ngoanwr
ngoằng ngoangwf
ngoẵng ngoangwx
ngoắng ngoangws
ngoắt ngoatws
ngoặt ngoatwj
ngóc ngocs
ngọc ngocj
ngoẻm ngoemr
ngoém ngoems
ngoẻn ngoenr
ngoèo ngoeof
ngoẻo ngoeor
ngoéo ngoeos
ngoẹo ngoeoj
ngoét ngoets
ngòi ngoif
ngõi ngoix
ngói ngois
ngòm ngomf
ngỏm ngomr
ngóm ngoms
ngọm ngomj
ngòn ngonf
ngỏn ngonr
ngón ngons
ngọn ngonj
ngòng ngongf
ngỏng ngongr
ngõng ngongx
ngóng ngongs
ngọng ngongj
ngóp ngops
ngót ngots
ngọt ngotj
ngô ngoo
ngồ ngoof
ngổ ngoor
ngỗ ngoox
ngố ngoos
ngộ ngooj
ngốc ngocos
ngộc ngocoj
ngôi ngoio
ngồi ngoiof
ngỗi ngoiox
ngội ngoioj
ngôm ngomo
ngồm ngomof
ngổm ngomor
ngôn ngono
ngồn ngonof
ngổn ngonor
ngốn ngonos
ngộn ngonoj
ngông ngongo
ngồng ngongof
ngổng ngongor
ngỗng ngongox
ngộp ngopoj
ngốt ngotos
ngột ngotoj
ngơ ngow
ngờ ngowf
ngỡ ngowx
ngớ ngows
ngợ ngowj
ngơi ngoiw
ngời ngoiwf
ngợi ngoiwj
ngơm ngomw
ngờm ngomwf
ngỡm ngomwx
ngợm ngomwj
ngơn ngonw
ngớn ngonws
ngớp ngopws
ngợp ngopwj
ngớt ngotws
ngù nguf
ngủ ngur
ngũ ngux
ngú ngus
ngụ nguj
ngụa nguaj
nguây nguaya
nguầy nguayaf
nguẩy nguayar
nguấy nguayas
nguậy nguayaj
ngúc ngucs
ngục ngucj
nguếch ngueches
nguệch nguechej
ngùi nguif
ngủi nguir
ngũi nguix
ngủm ngumr
ngụm ngumj
ngùn ngunf
ngủn ngunr
ngùng ngungf
ngủng ngungr
ngúng ngungs
nguôi nguoio
nguồi nguoiof
nguội nguoioj
nguồn nguonof
nguơ nguow
ngụp ngupj
ngút nguts
ngụt ngutj
nguyên nguyene
nguyền nguyenef
nguyễn nguyenex
nguyện nguyenej
nguyệt nguyetej
nguýt nguyts
nguỷu nguyur
ngư nguw
ngừ nguwf
ngữ nguwx
ngứ nguws
ngự nguwj
ngưa nguaw
ngừa nguawf
ngửa nguawr
ngữa nguawx
ngứa nguaws
ngựa nguawj
ngực ngucwj
ngửi nguiwr
ngưng ngungw
ngừng ngungwf
ngửng ngungwr
ngứng ngungws
ngước nguocws
ngược nguocwj
ngươi nguoiw
người nguoiwf
ngưởi nguoiwr
ngươn nguonw
ngường nguongwf
ngưởng nguongwr
ngưỡng nguongwx
ngượng nguongwj
ngưt ngutw
ngứt ngutws
ngưu nguuw
nhà nhaf
nhả nhar
nhã nhax
nhá nhas
nhạ nhaj
nhác nhacs
nhạc nhacj
nhách nhachs
nhài nhaif
nhải nhair
nhãi nhaix
nhái nhais
nhại nhaij
nhàm nhamf
nhảm nhamr
nhám nhams
nhàn nhanf
nhản nhanr
nhãn nhanx
nhạn nhanj
nhàng nhangf
nhãng nhangx
nháng nhangs
nhạng nhangj
nhành nhanhf
nhảnh nhanhr
nhánh nhanhs
nhạnh nhanhj
nhào nhaof
nhão nhaox
nháo nhaos
nhạo nhaoj
nháp nhaps
nhạp nhapj
nhát nhats
nhạt nhatj
nhàu nhauf
nhảu nhaur
nháu nhaus
nhạu nhauj
nhày nhayf
nhảy nhayr
nháy nhays
nhạy nhayj
nhắc nhacws
nhăm nhamw
nhằm nhamwf
nhắm nhamws
nhặm nhamwj
nhăn nhanw
nhằn nhanwf
nhẳn nhanwr
nhẵn nhanwx
nhắn nhanws
nhặn nhanwj
nhăng nhangw
nhằng nhangwf
nhẳng nhangwr
nhẵng nhangwx
nhắng nhangws
nhặng nhangwj
nhắp nhapws
nhắt nhatws
nhặt nhatwj
nhấc nhacas
nhâm nhama
nhầm nhamaf
nhẩm nhamar
nhẫm nhamax
nhấm nhamas
nhậm nhamaj
nhân nhana
nhần nhanaf
nhẩn nhanar
nhẫn nhanax
nhấn nhanas
nhận nhanaj
nhâng nhanga
nhấp nhapas
nhập nhapaj
nhất nhatas
nhật nhataj
nhâu nhaua
nhầu nhauaf
nhẩu nhauar
nhậu nhauaj
nhây nhaya
nhầy nhayaf
nhẩy nhayar
nhẫy nhayax
nhấy nhayas
nhậy nhayaj
nhđm nhdmd
nhè nhef
nhẻ nher
nhẽ nhex
nhé nhes
nhẹ nhej
nhèm nhemf
nhẻm nhemr
nhém nhems
nhẹm nhemj
nhèn nhenf
nhén nhens
nhẹn nhenj
nhèo nheof
nhẻo nheor
nhẽo nheox
nhéo nheos
nhẹo nheoj
nhép nheps
nhẹp nhepj
nhét nhets
nhẹt nhetj
nhê nhee
nhể nheer
nhễ nheex
nhếch nheches
nhệch nhechej
nhện nhenej
nhênh nhenhe
nhểu nheuer
nhếu nheues
nhệu nheuej
nhì nhif
nhỉ nhir
nhĩ nhix
nhí nhis
nhị nhij
nhía nhias
nhích nhichs
nhiếc nhieces
nhiêm nhieme
nhiễm nhiemex
nhiệm nhiemej
nhiên nhiene
nhiễn nhienex
nhiếp nhiepes
nhiệp nhiepej
nhiêt nhiete
nhiết nhietes
nhiệt nhietej
nhiêu nhieue
nhiều nhieuef
nhiểu nhieuer
nhiễu nhieuex
nhiếu nhieues
nhím nhims
nhìn nhinf
nhín nhins
nhịn nhinj
nhỉnh nhinhr
nhíp nhips
nhịp nhipj
nhít nhits
nhịt nhitj
nhìu nhiuf
nhíu nhius
nhịu nhiuj
nhò nhof
nhỏ nhor
nhõ nhox
nhó nhos
nhọ nhoj
nhoài nhoaif
nhoái nhoais
nhoàm nhoamf
nhoạm nhoamj
nhoáng nhoangs
nhoạng nhoangj
nhoáy nhoays
nhoằng nhoangwf
nhóc nhocs
nhọc nhocj
nhoèn nhoenf
nhoẻn nhoenr
nhoét nhoets
nhoẹt nhoetj
nhõi nhoix
nhói nhois
nhọi nhoij
nhòm nhomf
nhỏm nhomr
nhõm nhomx
nhóm nhoms
nhòn nhonf
nhỏn nhonr
nhõn nhonx
nhón nhons
nhọn nhonj
nhòng nhongf
nhỏng nhongr
nhõng nhongx
nhóng nhongs
nhóp nhops
nhọp nhopj
nhót nhots
nhọt nhotj
nhô nhoo
nhổ nhoor
nhỗ nhoox
nhố nhoos
nhốc nhocos
nhôi nhoio
nhồi nhoiof
nhối nhoios
nhội nhoioj
nhôm nhomo
nhồm nhomof
nhổm nhomor
nhôn nhono
nhồn nhonof
nhổn nhonor
nhốn nhonos
nhộn nhonoj
nhông nhongo
nhồng nhongof
nhộng nhongoj
nhốt nhotos
nhột nhotoj
nhơ nhow
nhờ nhowf
nhở nhowr
nhỡ nhowx
nhớ nhows
nhợ nhowj
nhơi nhoiw
nhời nhoiwf
nhởi nhoiwr
nhơm nhomw
nhởm nhomwr
nhớm nhomws
nhơn nhonw
nhờn nhonwf
nhởn nhonwr
nhỡn nhonwx
nhớn nhonws
nhợn nhonwj
nhớp nhopws
nhớt nhotws
nhợt nhotwj
nhtư nhtuw
nhù nhuf
nhủ nhur
nhũ nhux
nhú nhus
nhụ nhuj
nhúa nhuas
nhụa nhuaj
nhuân nhuana
nhuần nhuanaf
nhuận nhuanaj
nhúc nhucs
nhục nhucj
nhuế nhuees
nhuệ nhueej
nhùi nhuif
nhủi nhuir
nhúi nhuis
nhụi nhuij
nhúm nhums
nhùn nhunf
nhủn nhunr
nhũn nhunx
nhún nhuns
nhùng nhungf
nhủng nhungr
nhũng nhungx
nhúng nhungs
nhụng nhungj
nhuốc nhuocos
nhuôm nhuomo
nhuốm nhuomos
nhuộm nhuomoj
nhuồn nhuonof
nhút nhuts
nhụt nhutj
nhuyên nhuyene
nhuyễn nhuyenex
như nhuw
nhừ nhuwf
nhử nhuwr
nhữ nhuwx
nhứ nhuws
nhự nhuwj
nhừa nhuawf
nhựa nhuawj
nhức nhucws
nhưng nhungw
nhửng nhungwr
những nhungwx
nhứng nhungws
nhựng nhungwj
nhược nhuocwj
nhương nhuongw
nhường nhuongwf
nhưỡng nhuongwx
nhướng nhuongws
nhượng nhuongwj
nhứt nhutws
nhựt nhutwj
nhữu nhuuwx
nhựu nhuuwj
nì nif
nỉ nir
ní nis
nị nij
nỉa niar
nĩa niax
ních nichs
nịch nichj
niêm nieme
niềm niemef
niệm niemej
niên niene
niền nienef
niển niener
niễn nienex
niến nienes
niện nienej
niềng niengef
niễng niengex
niếp niepes
niệp niepej
niết nietes
niệt nietej
niêu nieue
niểu nieuer
niễu nieuex
niếu nieues
niệu nieuej
ním nims
nín nins
nình ninhf
nính ninhs
nịnh ninhj
níp nips
nít nits
nịt nitj
níu nius
nịu niuj
niutơn niutonw
nò nof
nỏ nor
nõ nox
nó nos
nọ noj
noản noanr
noãn noanx
nóc nocs
nọc nocj
nòi noif
nỏi noir
nói nois
nọi noij
nòm nomf
nỏm nomr
nỏn nonr
nõn nonx
nón nons
nọn nonj
nòng nongf
nóng nongs
nọng nongj
nóp nops
nót nots
nọt notj
nô noo
nồ noof
nổ noor
nỗ noox
nố noos
nộ nooj
nôben nobeno
nốc nocos
nôi noio
nồi noiof
nổi noior
nỗi noiox
nối noios
nội noioj
nôm nomo
nồm nomof
nộm nomoj
nôn nono
nồn nonof
nộn nonoj
nông nongo
nồng nongof
nỗng nongox
nống nongos
nốp nopos
nộp nopoj
nốt notos
nột notoj
nơ now
nờ nowf
nở nowr
nỡ nowx
nớ nows
nợ nowj
nơi noiw
nới noiws
nơm nomw
nờm nomwf
nỡm nomwx
nớp nopws
nợp nopwj
nớt notws
nơtron notronw
nũ nux
nú nus
nụ nuj
nủa nuar
nũa nuax
núa nuas
núc nucs
nục nucj
núcleo nucleos
nùi nuif
nũi nuix
núi nuis
nụi nuij
núm nums
nùn nunf
nùng nungf
nủng nungr
nũng nungx
núng nungs
nuốc nuocos
nuộc nuocoj
nuôi nuoio
nuối nuoios
nuốm nuomos
nuông nuongo
nuốt nuotos
nuột nuotoj
núp nups
nút nuts
nư nuw
nử nuwr
nữ nuwx
nứ nuws
nự nuwj
nưa nuaw
nửa nuawr
nữa nuawx
nứa nuaws
nức nucws
nực nucwj
nưng nungw
nừng nungwf
nứng nungws
nựng nungwj
nước nuocws
nược nuocwj
nườm nuomwf
nương nuongw
nường nuongwf
nướng nuongws
nượp nuopwj
nướu nuouws
nứt nutws
nưu nuuw
nữu nuuwx
nứu nuuws
nựu nuuwj
ò of
ỏ or
õ ox
ó os
ọ oj
oác oacs
oạc oacj
oách oachs
oạch oachj
oải oair
oái oais
oại oaij
oàm oamf
oản oanr
oán oans
oàng oangf
oảng oangr
oành oanhf
oánh oanhs
oạp oapj
oát oats
oạt oatj
oắc oacws
oăm oamw
oằn oanwf
oẳn oanwr
oăng oangw
oẳng oangwr
oắt oatws
oặt oatwj
óc ocs
ọc ocj
òi oif
ỏi oir
õi oix
ói ois
ọi oij
olá olas
òm omf
ỏm omr
õm omx
óm oms
ọm omj
òn onf
ỏn onr
õn onx
ón ons
ọn onj
òng ongf
ỏng ongr
õng ongx
óng ongs
ọng ongj
óp ops
ọp opj
ót ots
ọt otj
ô oo
ồ oof
ổ oor
ỗ oox
ố oos
ộ ooj
ôb obo
ôben obeno
ôc oco
ốc ocos
ộc ocoj
ôca ocao
ôgam ogamo
ôhai ohaio
ôi oio
ồi oiof
ổi oior
ỗi oiox
ối oios
ội oioj
ôin oino
ộl oloj
ôla olao
ôliu oliuo
ôm omo
ồm omof
ổm omor
ỗm omox
ốm omos
ộm omoj
ômet ometo
ômi omio
ôn ono
ồn onof
ổn onor
ỗn onox
ốn onos
ộn onoj
ône oneo
ông ongo
ồng ongof
ổng ongor
ỗng ongox
ống ongos
ộng ongoj
ốp opos
ộp opoj
ôt oto
ốt otos
ột otoj
ôtel otelo
ơ ow
ờ owf
ở owr
ỡ owx
ớ ows
ợ owj
ơc ocw
ờc ocwf
ớc ocws
ợc ocwj
ơi oiw
ời oiwf
ởi oiwr
ỡi oiwx
ới oiws
ợi oiwj
ờl olwf
ơm omw
ờm omwf
ởm omwr
ỡm omwx
ớm omws
ợm omwj
ơme omew
ơmi omiw
ơn onw
ờn onwf
ởn onwr
ỡn onwx
ớn onws
ợn onwj
ơng ongw
ờng ongwf
ởng ongwr
ỡng ongwx
ớng ongws
ợng ongwj
ơngen ongenw
ớp opws
ợp opwj
ơt otw
ớt otws
ợt otwj
ơu ouw
ờu ouwf
ỡu ouwx
ớu ouws
ợu ouwj
pà paf
pả par
pạ paj
pác pacs
pạc pacj
pảh pahr
pài paif
palăng palangw
pán pans
pàng pangf
panô panoo
pào paof
páo paos
páp paps
pát pats
pắc pacws
păh pahw
pằn panwf
păng pangw
pấc pacas
pâu paua
pẻ per
péc pecs
pẻng pengr
péo peos
pê pee
phà phaf
phả phar
phá phas
phạ phaj
phác phacs
phạc phacj
phách phachs
phạch phachj
phài phaif
phải phair
phái phais
phàm phamf
phạm phamj
phàn phanf
phản phanr
phãn phanx
phán phans
phạn phanj
phàng phangf
phảng phangr
phạng phangj
phành phanhf
phảnh phanhr
phạnh phanhj
phào phaof
phảo phaor
pháo phaos
phaolô phaoloo
pháp phaps
phạp phapj
phát phats
phạt phatj
phảy phayr
pháy phays
phắc phacws
phăm phamw
phăn phanw
phắn phanws
phăng phangw
phẳng phangwr
phặng phangwj
phắp phapws
phặp phapwj
phắt phatws
phâm phama
phầm phamaf
phẩm phamar
phân phana
phần phanaf
phẩn phanar
phẫn phanax
phấn phanas
phận phanaj
phấp phapas
phập phapaj
phất phatas
phật phataj
phầu phauaf
phẩu phauar
phẫu phauax
phấu phauas
phây phaya
phẩy phayar
phè phef
phé phes
phéc phecs
phẹc phecj
phèn phenf
phèng phengf
phéng phengs
phèo pheof
phép pheps
phét phets
phẹt phetj
phê phee
phề pheef
phế phees
phệ pheej
phếch pheches
phệch phechej
phên phene
phễn phenex
phện phenej
phềnh phenhef
phễnh phenhex
phệnh phenhej
phết phetes
phệt phetej
phều pheuef
phễu pheuex
phếu pheues
phì phif
phỉ phir
phí phis
phị phij
phìa phiaf
phía phias
phịa phiaj
phích phichs
phịch phichj
phiêm phieme
phiếm phiemes
phiên phiene
phiền phienef
phiến phienes
phiện phienej
phiêng phienge
phiết phietes
phiệt phietej
phiêu phieue
phiểu phieuer
phiếu phieues
phiệu phieuej
phím phims
phìn phinf
phình phinhf
phỉnh phinhr
phĩnh phinhx
phính phinhs
phịt phitj
phịu phiuj
phlạo phlaoj
phlắc phlacws
phò phof
phó phos
phóc phocs
phọc phocj
phòi phoif
phón phons
phòng phongf
phỏng phongr
phóng phongs
phọng phongj
phót phots
phọt photj
phô phoo
phồ phoof
phổ phoor
phố phoos
phốc phocos
phộc phocoj
phôi phoio
phổi phoior
phối phoios
phôm phomo
phồm phomof
phôn phono
phồn phonof
phông phongo
phồng phongof
phổng phongor
phỗng phongox
phộng phongoj
phốp phopos
phốt photos
phơ phow
phờ phowf
phở phowr
phớ phows
phơi phoiw
phời phoiwf
phới phoiws
phơn phonw
phởn phonwr
phỡn phonwx
phớn phonws
phớt photws
phrăng phrangw
phù phuf
phủ phur
phũ phux
phú phus
phụ phuj
phúc phucs
phục phucj
phủi phuir
phùn phunf
phún phuns
phùng phungf
phủng phungr
phúng phungs
phụng phungj
phúp phups
phụp phupj
phút phuts
phụt phutj
phư phuw
phứa phuaws
phựa phuawj
phức phucws
phưng phungw
phừng phungwf
phước phuocws
phưỡn phuonwx
phướn phuonws
phương phuongw
phường phuongwf
phướng phuongws
phượng phuongwj
phượt phuotwj
phượu phuouwj
phứt phutws
phựt phutwj
phữu phuuwx
phựu phuuwj
phvđ phvdd
pí pis
pianô pianoo
pích pichs
pín pins
píp pips
pisát pisats
pít pits
plây playa
plông plongo
plơi ploiw
pó pos
pótay potays
pô poo
pôc poco
pôn pono
pông pongo
pốp popos
pốt potos
pơ pow
pờ powf
pơng pongw
prâng pranga
prô proo
prông prongo
pù puf
pú pus
pụa puaj
púc pucs
puộc puocoj
pút puts
pư puw
pươi puoiw
qì qif
quà quaf
quả quar
quã quax
quá quas
quạ quaj
quác quacs
quạc quacj
quách quachs
quạch quachj
quài quaif
quải quair
quái quais
quại quaij
quàn quanf
quản quanr
quán quans
quàng quangf
quảng quangr
quãng quangx
quáng quangs
quạng quangj
quành quanhf
quảnh quanhr
quánh quanhs
quạnh quanhj
quào quaof
quáo quaos
quát quats
quạt quatj
quàu quauf
quảu quaur
quáu quaus
quạu quauj
quày quayf
quảy quayr
quáy quays
quạy quayj
quắc quacws
quặc quacwj
quăm quamw
quằm quamwf
quẳm quamwr
quắm quamws
quặm quamwj
quăn quanw
quằn quanwf
quẳn quanwr
quắn quanws
quặn quanwj
quăng quangw
quằng quangwf
quẳng quangwr
quẵng quangwx
quặng quangwj
quắp quapws
quặp quapwj
quắt quatws
quặt quatwj
quấc quacas
quân quana
quần quanaf
quẩn quanar
quẫn quanax
quấn quanas
quận quanaj
quâng quanga
quầng quangaf
quẩng quangar
quẫng quangax
quất quatas
quật quataj
quây quaya
quầy quayaf
quẩy quayar
quẫy quayax
quấy quayas
quậy quayaj
què quef
quẻ quer
quẽ quex
qué ques
quèn quenf
quén quens
quẹn quenj
quèo queof
quéo queos
quẹo queoj
quẹp quepj
quét quets
quẹt quetj
quê quee
quế quees
quệ queej
quệch quechej
quên quene
quện quenej
quềnh quenhef
quệnh quenhej
quết quetes
quệt quetej
quều queuef
quếu queues
quì quif
quỉ quir
quĩ quix
quí quis
quị quij
quình quinhf
quít quits
quịt quitj
quíu quius
quọ quoj
quoàng quoangf
quoạng quoangj
quoắt quoatws
quốc quocos
quơ quow
quờ quowf
quở quowr
quớ quows
quới quoiws
quờn quonwf
quởn quonwr
quởng quongwr
quớt quotws
quỳ quyf
quỷ quyr
quỹ quyx
quý quys
quỵ quyj
quých quychs
quyên quyene
quyền quyenef
quyển quyener
quyến quyenes
quyện quyenej
quyết quyetes
quyệt quyetej
quỳng quyngf
quỳnh quynhf
quỷnh quynhr
quýnh quynhs
quýt quyts
quỵt quytj
rà raf
rả rar
rã rax
rá ras
rạ raj
rác racs
rạc racj
rách rachs
rạch rachj
rađi radid
rađio radiod
raglây raglaya
rài raif
rải rair
rãi raix
rái rais
rại raij
ràm ramf
rám rams
rạm ramj
ràn ranf
rán rans
rạn ranj
ràng rangf
rảng rangr
ráng rangs
rạng rangj
rành ranhf
rảnh ranhr
rãnh ranhx
rạnh ranhj
ráno ranos
rào raof
rảo raor
rão raox
ráo raos
rạo raoj
ráp raps
rạp rapj
rápida rapidas
rápido rapidos
rát rats
rạt ratj
ràu rauf
rảu raur
ráu raus
rày rayf
rảy rayr
rãy rayx
ráy rays
rạy rayj
rắc racws
rặc racwj
răm ramw
rằm ramwf
rắm ramws
rặm ramwj
răn ranw
rằn ranwf
rắn ranws
rặn ranwj
răng rangw
rằng rangwf
rặng rangwj
rắp rapws
rắt ratws
rặt ratwj
râm rama
rầm ramaf
rẩm ramar
rẫm ramax
rấm ramas
rậm ramaj
rân rana
rần ranaf
rẫn ranax
rấn ranas
rận ranaj
râng ranga
rậng rangaj
rấp rapas
rập rapaj
rất ratas
rật rataj
râu raua
rầu rauaf
rẫu rauax
rậu rauaj
rây raya
rầy rayaf
rẩy rayar
rẫy rayax
rcăm rcamw
rè ref
rẻ rer
rẽ rex
ré res
rẹc recj
rèm remf
rèn renf
rén rens
rẻng rengr
rèo reof
rẻo reor
réo reos
rẹo reoj
rép reps
rẹp repj
rét rets
rẹt retj
rê ree
rề reef
rể reer
rễ reex
rế rees
rệ reej
rếch reches
rệch rechej
rêm reme
rên rene
rền renef
rến renes
rện renej
rềnh renhef
rểnh renher
rếp repes
rệp repej
rết retes
rệt retej
rêu reue
rều reuef
rểu reuer
rệu reuej
rì rif
rỉ rir
rĩ rix
rí ris
rị rij
rìa riaf
rỉa riar
rịa riaj
ríc rics
rích richs
rịch richj
riếc rieces
riềm riemef
riêng rienge
riềng riengef
riếp riepes
riết rietes
riệt rietej
riêu rieue
riếu rieues
rím rims
rĩn rinx
rịn rinj
rình rinhf
rỉnh rinhr
rĩnh rinhx
rịp ripj
rít rits
rịt ritj
rítra ritras
rìu riuf
ríu rius
rivê rivee
rlâm rlama
rò rof
rỏ ror
rõ rox
ró ros
rọ roj
roàng roangf
róc rocs
rọc rocj
ròi roif
rỏi roir
rõi roix
rói rois
rọi roij
ròm romf
rỏm romr
róm roms
rọm romj
ròn ronf
rỏn ronr
rón rons
rọn ronj
ròng rongf
rỏng rongr
róng rongs
rọng rongj
rót rots
rọt rotj
rô roo
rồ roof
rổ roor
rỗ roox
rố roos
rộ rooj
rốc rocos
rộc rocoj
rồi roiof
rổi roior
rỗi roiox
rối roios
rội roioj
rôm romo
rồm romof
rộm romoj
rôma romao
rôn rono
rổn ronor
rốn ronos
rộn ronoj
rông rongo
rồng rongof
rổng rongor
rỗng rongox
rống rongos
rộng rongoj
rốp ropos
rộp ropoj
rốt rotos
rơ row
rờ rowf
rở rowr
rỡ rowx
rớ rows
rợ rowj
rơi roiw
rời roiwf
rợi roiwj
rơm romw
rờm romwf
rởm romwr
rớm romws
rợm romwj
rơn ronw
rờn ronwf
rởn ronwr
rỡn ronwx
rớn ronws
rợn ronwj
rơngen rongenw
rớp ropws
rợp ropwj
rớt rotws
rợt rotwj
rù ruf
rủ rur
rũ rux
rú rus
rùa ruaf
rủa ruar
rũa ruax
rụa ruaj
rúc rucs
rục rucj
ruê ruee
rùi ruif
rủi ruir
rũi ruix
rúi ruis
rụi ruij
rùm rumf
rúm rums
rùn runf
rủn runr
rún runs
rùng rungf
rủng rungr
rúng rungs
rụng rungj
ruốc ruocos
ruồi ruoiof
ruổi ruoior
ruỗi ruoiox
ruối ruoios
ruộm ruomoj
ruồng ruongof
ruỗng ruongox
ruộng ruongoj
ruột ruotoj
rúp rups
rút ruts
rụt rutj
rư ruw
rừ ruwf
rứ ruws
rưa ruaw
rừa ruawf
rửa ruawr
rữa ruawx
rứa ruaws
rựa ruawj
rức rucws
rực rucwj
rưng rungw
rừng rungwf
rửng rungwr
rước ruocws
rươi ruoiw
rười ruoiwf
rưởi ruoiwr
rưỡi ruoiwx
rưới ruoiws
rượi ruoiwj
rươm ruomw
rườm ruomwf
rướm ruomws
rườn ruonwf
rướn ruonws
rượn ruonwj
rương ruongw
rường ruongwf
rượt ruotwj
rượu ruouwj
rứt rutws
rựt rutwj
rỵn rynj
sà saf
sả sar
sã sax
sá sas
sạ saj
sác sacs
sạc sacj
sách sachs
sạch sachj
sài saif
sải sair
sãi saix
sái sais
sại saij
saigón saigons
sakê sakee
salát salats
salâm salama
sàm samf
sảm samr
sám sams
sạm samj
sàn sanf
sản sanr
sán sans
sạn sanj
sàng sangf
sảng sangr
sáng sangs
sành sanhf
sảnh sanhr
sánh sanhs
sào saof
sảo saor
são saox
sáo saos
sạo saoj
sáp saps
sạp sapj
sát sats
sạt satj
sáu saus
sảy sayr
sãy sayx
sắc sacws
sặc sacwj
săm samw
sắm samws
sặm samwj
săn sanw
sằn sanwf
sẳn sanwr
sẵn sanwx
sắn sanws
săng sangw
sằng sangwf
sẵng sangwx
sắng sangws
sắp sapws
sặp sapwj
săt satw
sắt satws
sặt satwj
sắu sauws
sâm sama
sầm samaf
sẩm samar
sẫm samax
sấm samas
sậm samaj
sân sana
sần sanaf
sẩn sanar
sẫn sanax
sấn sanas
sận sanaj
sâng sanga
sấp sapas
sập sapaj
sất satas
sật sataj
sâu saua
sầu sauaf
sẩu sauar
sấu sauas
sậu sauaj
sây saya
sầy sayaf
sẩy sayar
sấy sayas
sậy sayaj
sè sef
sẻ ser
sẽ sex
sé ses
sẹ sej
séc secs
sém sems
sẹm semj
sèn senf
sẻn senr
sẻng sengr
sèo seof
sẹo seoj
sét sets
sẹt setj
sê see
sề seef
sể seer
sễ seex
sế sees
sệ seej
sếch seches
sệch sechej
sên sene
sền senef
sến senes
sênh senhe
sềnh senhef
sểnh senher
sếp sepes
sệp sepej
sết setes
sệt setej
sêu seue
sếu seues
sgần sganaf
sì sif
sỉ sir
sĩ six
sí sis
sị sij
sỉa siar
sịa siaj
sích sichs
sịch sichj
sidét sidets
siđa sidad
siêm sieme
siểm siemer
siên siene
siển siener
siễn sienex
siêng sienge
siểng sienger
siếp siepes
siệp siepej
siết sietes
siêu sieue
siếu sieues
sìn sinf
sỉn sinr
sín sins
síne sines
sình sinhf
sỉnh sinhr
sính sinhs
sịp sipj
sít sits
sịt sitj
slìn slinf
sò sof
sỏ sor
só sos
sọ soj
soạc soacj
soài soaif
soải soair
soái soais
soại soaij
soàn soanf
soán soans
soạn soanj
soảng soangr
soạng soangj
soát soats
soạt soatj
sóc socs
sọc socj
sòi soif
sỏi soir
sõi soix
sói sois
sòm somf
sóm soms
sọm somj
sòn sonf
sỏn sonr
són sons
sòng songf
sõng songx
sóng songs
sót sots
sọt sotj
sô soo
sồ soof
sổ soor
sỗ soox
số soos
sộ sooj
sôc soco
sốc socos
sộc socoj
sôi soio
sồi soiof
sổi soior
sồm somof
sôn sono
sồn sonof
sông songo
sồng songof
sổng songor
sống songos
sốp sopos
sộp sopoj
sốt sotos
sột sotoj
sôvanh sovanho
sơ sow
sờ sowf
sở sowr
sỡ sowx
sớ sows
sợ sowj
sởi soiwr
sỡi soiwx
sới soiws
sợi soiwj
sơm somw
sờm somwf
sớm somws
sơmi somiw
sơn sonw
sờn sonwf
sởn sonwr
sớn sonws
sớt sotws
srêpốc srepoceos
sró sros
sù suf
sủ sur
sũ sux
sú sus
sụ suj
sủa suar
sụa suaj
suân suana
suất suatas
súc sucs
sục sucj
suê suee
sùi suif
sủi suir
sùm sumf
sụm sumj
sún suns
sụn sunj
sùng sungf
sủng sungr
sũng sungx
súng sungs
sụng sungj
suôi suoio
suối suoios
suôn suono
suông suongo
suồng suongof
suống suongos
suốt suotos
súp sups
sụp supj
sút suts
sụt sutj
sủy suyr
súy suys
suyền suyenef
suyển suyener
suyễn suyenex
suyến suyenes
suýt suyts
suỵt suytj
sư suw
sừ suwf
sử suwr
sữ suwx
sứ suws
sự suwj
sưa suaw
sửa suawr
sữa suawx
sứa suaws
sức sucws
sực sucwj
sửi suiwr
sừn sunwf
sưng sungw
sừng sungwf
sửng sungwr
sững sungwx
sựng sungwj
sưởi suoiwr
sườn suonwf
sương suongw
sường suongwf
sướng suongws
sượng suongwj
sướt suotws
sượt suotwj
sứt sutws
sựt sutwj
sưu suuw
sửu suuwr
sứu suuws
sỹ syx
sý sys
tà taf
tả tar
tã tax
tá tas
tạ taj
tác tacs
tạc tacj
tách tachs
tạch tachj
tài taif
tải tair
tãi taix
tái tais
tại taij
tàm tamf
tảm tamr
tám tams
tạm tamj
tàn tanf
tản tanr
tán tans
tạn tanj
tàng tangf
tảng tangr
táng tangs
tạng tangj
tành tanhf
tảnh tanhr
tánh tanhs
tạnh tanhj
tào taof
tảo taor
táo taos
tạo taoj
táp taps
tạp tapj
tát tats
tạt tatj
tàu tauf
táu taus
tày tayf
tảy tayr
táy tays
tạy tayj
tắc tacws
tặc tacwj
tăk takw
tăm tamw
tằm tamwf
tắm tamws
tăn tanw
tằn tanwf
tẳn tanwr
tắn tanws
tặn tanwj
tăng tangw
tằng tangwf
tắng tangws
tặng tangwj
tắp tapws
tắt tatws
tấc tacas
tâm tama
tầm tamaf
tẩm tamar
tấm tamas
tân tana
tần tanaf
tẩn tanar
tẫn tanax
tấn tanas
tận tanaj
tâng tanga
tầng tangaf
tấp tapas
tập tapaj
tất tatas
tật tataj
tâu taua
tầu tauaf
tẩu tauar
tấu tauas
tậu tauaj
tây taya
tầy tayaf
tẩy tayar
tấy tayas
tbuăn tbuanw
tè tef
tẻ ter
tẽ tex
té tes
téc tecs
tẻh tehr
tèm temf
tẻm temr
tém tems
tèn tenf
tẽn tenx
tén tens
tèo teof
tẻo teor
téo teos
tẹo teoj
tép teps
tẹp tepj
tét tets
tẹt tetj
tê tee
tề teef
tể teer
tễ teex
tế tees
tệ teej
tếch teches
têm teme
tên tene
tênh tenhe
tềnh tenhef
tểnh tenher
tễnh tenhex
tệp tepej
têt tete
tết tetes
tête tetee
têu teue
tếu teues
thà thaf
thả thar
thá thas
thác thacs
thạc thacj
thách thachs
thạch thachj
thài thaif
thải thair
thãi thaix
thái thais
thại thaij
thàm thamf
thảm thamr
thám thams
thản thanr
thán thans
thàng thangf
thảng thangr
thãng thangx
tháng thangs
thành thanhf
thảnh thanhr
thánh thanhs
thạnh thanhj
thào thaof
thảo thaor
tháo thaos
thạo thaoj
tháp thaps
thạp thapj
thát thats
thạt thatj
tháu thaus
thày thayf
thảy thayr
tháy thays
thắc thacws
thặc thacwj
thăm thamw
thẳm thamwr
thắm thamws
thăn thanw
thằn thanwf
thắn thanws
thăng thangw
thằng thangwf
thẳng thangwr
thắng thangws
thặng thangwj
thắp thapws
thắt thatws
thâm thama
thầm thamaf
thẩm thamar
thẫm thamax
thấm thamas
thậm thamaj
thân thana
thần thanaf
thẩn thanar
thẫn thanax
thấn thanas
thận thanaj
thấp thapas
thập thapaj
thất thatas
thật thataj
thâu thaua
thầu thauaf
thẩu thauar
thấu thauas
thây thaya
thầy thayaf
thẩy thayar
thấy thayas
thè thef
thẻ ther
thẽ thex
thé thes
thèm themf
thém thems
thèn thenf
thẻn thenr
thẹn thenj
thèo theof
thẻo theor
thẹo theoj
thép theps
thẹp thepj
thét thets
thê thee
thề theef
thể theer
thế thees
thệ theej
thếch theches
thêm theme
thềm themef
thến thenes
thện thenej
thênh thenhe
thểnh thenher
thếp thepes
thết thetes
thêu theue
thều theuef
thểu theuer
thì thif
thỉ thir
thĩ thix
thí this
thị thij
thìa thiaf
thía thias
thích thichs
thịch thichj
thiếc thieces
thiêm thieme
thiềm thiemef
thiểm thiemer
thiễm thiemex
thiệm thiemej
thiên thiene
thiền thienef
thiển thiener
thiến thienes
thiện thienej
thiêng thienge
thiềng thiengef
thiếp thiepes
thiệp thiepej
thiết thietes
thiệt thietej
thiêu thieue
thiều thieuef
thiểu thieuer
thiễu thieuex
thiếu thieues
thiệu thieuej
thím thims
thìn thinf
thín thins
thình thinhf
thỉnh thinhr
thính thinhs
thịnh thinhj
thíp thips
thít thits
thịt thitj
thìu thiuf
thỉu thiur
thịu thiuj
thò thof
thỏ thor
thó thos
thọ thoj
thoải thoair
thoái thoais
thoại thoaij
thoàn thoanf
thoản thoanr
thoán thoans
thoảng thoangr
thoáng thoangs
thoát thoats
thoạt thoatj
thoăn thoanw
thoắng thoangws
thoắt thoatws
thóc thocs
thọc thocj
thòi thoif
thỏi thoir
thói thois
thòm thomf
thỏm thomr
thóm thoms
thõn thonx
thòng thongf
thõng thongx
thóp thops
thót thots
thọt thotj
thô thoo
thồ thoof
thổ thoor
thố thoos
thộ thooj
thốc thocos
thộc thocoj
thôi thoio
thồi thoiof
thổi thoior
thối thoios
thồm thomof
thôn thono
thồn thonof
thổn thonor
thỗn thonox
thốn thonos
thộn thonoj
thông thongo
thổng thongor
thống thongos
thốp thopos
thộp thopoj
thốt thotos
thột thotoj
thơ thow
thờ thowf
thở thowr
thớ thows
thợ thowj
thơi thoiw
thời thoiwf
thởi thoiwr
thới thoiws
thơm thomw
thớm thomws
thơn thonw
thờn thonwf
thớt thotws
thợt thotwj
thtục thtucj
thù thuf
thủ thur
thú thus
thụ thuj
thùa thuaf
thủa thuar
thuân thuana
thuần thuanaf
thuẩn thuanar
thuẫn thuanax
thuấn thuanas
thuận thuanaj
thuật thuataj
thúc thucs
thục thucj
thuê thuee
thuể thueer
thuế thuees
thùi thuif
thủi thuir
thúi thuis
thụi thuij
thùm thumf
thủm thumr
thùn thunf
thùng thungf
thủng thungr
thũng thungx
thúng thungs
thụng thungj
thuốc thuocos
thuộc thuocoj
thuộm thuomoj
thuôn thuono
thuồn thuonof
thuỗn thuonox
thuốn thuonos
thuồng thuongof
thuổng thuongor
thuột thuotoj
thuở thuowr
thụp thupj
thút thuts
thụt thutj
thuyên thuyene
thuyền thuyenef
thuyết thuyetes
thư thuw
thừ thuwf
thử thuwr
thữ thuwx
thứ thuws
thự thuwj
thưa thuaw
thừa thuawf
thửa thuawr
thứa thuaws
thữc thucwx
thức thucws
thực thucwj
thưng thungw
thừng thungwf
thửng thungwr
thững thungwx
thứng thungws
thước thuocws
thược thuocwj
thưỡi thuoiwx
thườn thuonwf
thưỡn thuonwx
thương thuongw
thường thuongwf
thưởng thuongwr
thướng thuongws
thượng thuongwj
thướt thuotws
thượt thuotwj
thưu thuuw
thứu thuuws
tì tif
tỉ tir
tĩ tix
tí tis
tị tij
tỉa tiar
tía tias
tích tichs
tịch tichj
tiẻn tienr
tiếc tieces
tiệc tiecej
tiêm tieme
tiềm tiemef
tiếm tiemes
tiệm tiemej
tiên tiene
tiền tienef
tiển tiener
tiễn tienex
tiến tienes
tiện tienej
tiêng tienge
tiềng tiengef
tiếng tienges
tiếp tiepes
tiệp tiepej
tiết tietes
tiệt tietej
tiêu tieue
tiều tieuef
tiểu tieuer
tiễu tieuex
tiếu tieues
tiệu tieuej
tìm timf
tỉm timr
tím tims
tỉn tinr
tĩn tinx
tín tins
tịn tinj
tỉng tingr
tình tinhf
tỉnh tinhr
tĩnh tinhx
tính tinhs
tịnh tinhj
típ tips
tít tits
tịt titj
tĩu tiux
tíu tius
tịu tiuj
tlẻ tler
tlộm tlomoj
tnđ tndd
tò tof
tỏ tor
tó tos
tọ toj
toác toacs
toạc toacj
toài toaif
toái toais
toại toaij
toàn toanf
toản toanr
toán toans
toàng toangf
toáng toangs
toạng toangj
toánh toanhs
toát toats
toáy toays
toắt toatws
tóc tocs
tọc tocj
toèn toenf
toét toets
toẹt toetj
tòi toif
tỏi toir
tõi toix
tói tois
tòm tomf
tỏm tomr
tõm tomx
tóm toms
tòn tonf
tỏn tonr
tòng tongf
tỏng tongr
tọng tongj
tóp tops
tọp topj
tót tots
tọt totj
tô too
tồ toof
tổ toor
tố toos
tộ tooj
tốc tocos
tộc tocoj
tôi toio
tồi toiof
tối toios
tội toioj
tôm tomo
tôn tono
tồn tonof
tổn tonor
tỗn tonox
tốn tonos
tông tongo
tồng tongof
tổng tongor
tống tongos
tộng tongoj
tốp topos
tôt toto
tốt totos
tột totoj
tơ tow
tờ towf
tở towr
tớ tows
tợ towj
tơi toiw
tời toiwf
tới toiws
tởm tomwr
tơn tonw
tởn tonwr
tớn tonws
tợn tonwj
tớp topws
tợp topwj
tớt totws
trà traf
trả trar
trã trax
trá tras
trạ traj
trác tracs
trạc tracj
trách trachs
trạch trachj
trài traif
trải trair
trãi traix
trái trais
trại traij
tràm tramf
trảm tramr
trám trams
trạm tramj
tràn tranf
trản tranr
trán trans
trạn tranj
tràng trangf
trảng trangr
tráng trangs
trạng trangj
trành tranhf
tránh tranhs
trạnh tranhj
trào traof
trảo traor
tráo traos
trạo traoj
tráp traps
trát trats
trạt tratj
tràu trauf
trảu traur
trày trayf
trảy trayr
trạy trayj
trắc tracws
trặc tracwj
trăm tramw
trằm tramwf
trắm tramws
trặm tramwj
trăn tranw
trằn tranwf
trặn tranwj
trăng trangw
trắng trangws
trắp trapws
trắt tratws
trâ traa
trâm trama
trầm tramaf
trẩm tramar
trẫm tramax
trấm tramas
trậm tramaj
trân trana
trần tranaf
trẩn tranar
trấn tranas
trận tranaj
trâng tranga
trấp trapas
trập trapaj
trất tratas
trật trataj
trâu traua
trầu trauaf
trẩu trauar
trấu trauas
trây traya
trầy trayaf
trẩy trayar
trè tref
trẻ trer
trẽ trex
trẹ trej
trèm tremf
trém trems
trèn trenf
trẽn trenx
trèo treof
trẻo treor
trẽo treox
tréo treos
trẹo treoj
trét trets
trẹt tretj
trê tree
trề treef
trể treer
trễ treex
trệ treej
trếch treches
trệch trechej
trên trene
trênh trenhe
trếnh trenhes
trết tretes
trệt tretej
trêu treue
trều treuef
trếu treues
trệu treuej
trì trif
trỉ trir
trĩ trix
trí tris
trị trij
trìa triaf
trỉa triar
tría trias
trịa triaj
trích trichs
trịch trichj
triêm trieme
triền trienef
triển triener
triến trienes
triện trienej
triêng trienge
triềng triengef
triệng triengej
triếp triepes
triệp triepej
triết trietes
triệt trietej
triêu trieue
triều trieuef
triệu trieuej
trịng tringj
trình trinhf
trĩnh trinhx
trính trinhs
trịnh trinhj
trít trits
trịt tritj
trìu triuf
trĩu triux
tríu trius
trịu triuj
trò trof
trỏ tror
trọ troj
tróc trocs
trọc trocj
tròi troif
trỏi troir
trói trois
trọi troij
tròm tromf
trõm tromx
tróm troms
tròn tronf
trõn tronx
trọn tronj
tròng trongf
trỏng trongr
tróng trongs
trọng trongj
trót trots
trọt trotj
trô troo
trồ troof
trổ troor
trỗ troox
trố troos
trộ trooj
trốc trocos
trộc trocoj
trôi troio
trồi troiof
trổi troior
trỗi troiox
trối troios
trội troioj
trôm tromo
trộm tromoj
trôn trono
trốn tronos
trộn tronoj
trông trongo
trồng trongof
trổng trongor
trống trongos
trộng trongoj
trốt trotos
trơ trow
trờ trowf
trở trowr
trớ trows
trợ trowj
trơi troiw
trời troiwf
trới troiws
trờm tromwf
trớm tromws
trợm tromwj
trơn tronw
trờn tronwf
trớn tronws
trợn tronwj
trơng trongw
trớp tropws
trớt trotws
trợt trotwj
trù truf
trủ trur
trú trus
trụ truj
trụa truaj
truân truana
truất truatas
truật truataj
trúc trucs
trục trucj
trùi truif
trũi truix
trụi truij
trùm trumf
trũm trumx
trúm trums
trụm trumj
trùn trunf
trụn trunj
trùng trungf
trủng trungr
trũng trungx
trúng trungs
trụng trungj
truồi truoiof
truông truongo
truồng truongof
truột truotoj
trụp trupj
trút truts
trụt trutj
truyên truyene
truyền truyenef
truyện truyenej
trư truw
trừ truwf
trử truwr
trữ truwx
trứ truws
trự truwj
trưa truaw
trừa truawf
trữa truawx
trức trucws
trực trucwj
trưng trungw
trừng trungwf
trửng trungwr
trứng trungws
trước truocws
trươi truoiw
trườn truonwf
trương truongw
trường truongwf
trưởng truongwr
trưỡng truongwx
trướng truongws
trượng truongwj
trượt truotwj
trừu truuwf
trửu truuwr
trữu truuwx
trứu truuws
tryền tryenef
tù tuf
tủ tur
tú tus
tụ tuj
tùa tuaf
tủa tuar
túa tuas
tuân tuana
tuần tuanaf
tuẩn tuanar
tuẫn tuanax
tuấn tuanas
tuận tuanaj
tuất tuatas
túc tucs
tục tucj
tuế tuees
tuệ tueej
tuếch tueches
tuệch tuechej
tuềnh tuenhef
tùi tuif
tủi tuir
túi tuis
tụi tuij
tùm tumf
tủm tumr
tũm tumx
túm tums
tụm tumj
tủn tunr
tùng tungf
tủng tungr
túng tungs
tụng tungj
tuốc tuocos
tuộc tuocoj
tuồi tuoiof
tuổi tuoior
tuồm tuomof
tuôn tuono
tuồn tuonof
tuông tuongo
tuồng tuongof
tuốt tuotos
tuột tuotoj
túp tups
tút tuts
tụt tutj
tuyên tuyene
tuyền tuyenef
tuyển tuyener
tuyến tuyenes
tuyết tuyetes
tuyệt tuyetej
tuýp tuyps
tuýt tuyts
tư tuw
từ tuwf
tử tuwr
tữ tuwx
tứ tuws
tự tuwj
tưa tuaw
từa tuawf
tửa tuawr
tứa tuaws
tựa tuawj
tức tucws
tưng tungw
từng tungwf
tửng tungwr
tước tuocws
tược tuocwj
tươi tuoiw
tưởi tuoiwr
tưới tuoiws
tươm tuomw
tườm tuomwf
tướn tuonws
tương tuongw
tường tuongwf
tưởng tuongwr
tướng tuongws
tượng tuongwj
tướp tuopws
tượp tuopwj
tướt tuotws
tượt tuotwj
tườu tuouwf
tưu tuuw
tửu tuuwr
tựu tuuwj
tỳ tyf
tỷ tyr
tý tys
tỵ tyj
ù uf
ủ ur
ũ ux
ú us
ụ uj
ùa uaf
ủa uar
ũa uax
úa uas
ụa uaj
uân uana
uẩn uanar
uấn uanas
uất uatas
uẩy uayar
ubtư ubtuw
úc ucs
ục ucj
uê uee
uể ueer
uế uees
ùi uif
ủi uir
ũi uix
úi uis
ụi uij
úk uks
ùm umf
ủm umr
ũm umx
úm ums
ụm umj
ùn unf
ủn unr
ũn unx
ún uns
ụn unj
ùng ungf
ủng ungr
ũng ungx
úng ungs
ụng ungj
uôm uomo
uốn uonos
uông uongo
uổng uongor
uống uongos
uốt uotos
uột uotoj
uở uowr
úp ups
ụp upj
út uts
ụt utj
uvtư uvtuw
uých uychs
uỵch uychj
uyên uyene
uyển uyener
uyết uyetes
uỳnh uynhf
uýnh uynhs
uýt uyts
ư uw
ừ uwf
ử uwr
ữ uwx
ứ uws
ự uwj
ưa uaw
ừa uawf
ửa uawr
ữa uawx
ứa uaws
ựa uawj
ưc ucw
ữc ucwx
ức ucws
ực ucwj
ưcv ucvw
ưd udw
ửi uiwr
ừm umwf
ưn unw
ừn unwf
ứn unws
ưng ungw
ừng ungwf
ửng ungwr
ững ungwx
ứng ungws
ựng ungwj
ước uocws
ược uocwj
ươi uoiw
ười uoiwf
ưởi uoiwr
ưỡi uoiwx
ưới uoiws
ượi uoiwj
ươm uomw
ườm uomwf
ướm uomws
ượm uomwj
ươn uonw
ườn uonwf
ưỡn uonwx
ướn uonws
ượn uonwj
ương uongw
ường uongwf
ưởng uongwr
ưỡng uongwx
ướng uongws
ượng uongwj
ướp uopws
ượp uopwj
ướt uotws
ượt uotwj
ươu uouw
ườu uouwf
ưỡu uouwx
ướu uouws
ượu uouwj
ưt utw
ứt utws
ựt utwj
ưu uuw
ừu uuwf
ửu uuwr
ữu uuwx
ứu uuws
ựu uuwj
và vaf
vả var
vã vax
vá vas
vạ vaj
vác vacs
vạc vacj
vách vachs
vạch vachj
vài vaif
vải vair
vãi vaix
vái vais
vại vaij
vàm vamf
vạm vamj
vàn vanf
vãn vanx
ván vans
vạn vanj
vàng vangf
vảng vangr
vãng vangx
váng vangs
vạng vangj
vành vanhf
vảnh vanhr
vãnh vanhx
vánh vanhs
vạnh vanhj
vào vaof
váo vaos
vàp vapf
váp vaps
vạp vapj
vát vats
vạt vatj
vàu vauf
vày vayf
vảy vayr
vãy vayx
váy vays
vạy vayj
vắc vacws
vặc vacwj
văm vamw
vằm vamwf
văn vanw
vằn vanwf
vắn vanws
vặn vanwj
văng vangw
vằng vangwf
vẳng vangwr
vắng vangws
vặng vangwj
vắp vapws
vắt vatws
vặt vatwj
vâm vama
vậm vamaj
vân vana
vần vanaf
vẩn vanar
vẫn vanax
vấn vanas
vận vanaj
vâng vanga
vầng vangaf
vấp vapas
vập vapaj
vất vatas
vật vataj
vầu vauaf
vẩu vauar
vấu vauas
vây vaya
vầy vayaf
vẩy vayar
vẫy vayax
vấy vayas
vậy vayaj
vè vef
vẻ ver
vẽ vex
vé ves
véc vecs
vẹm vemj
vèn venf
vẻn venr
vén vens
vẹn venj
vèo veof
vẻo veor
véo veos
vẹo veoj
vét vets
vẹt vetj
vê vee
về veef
vế vees
vệ veej
vếch veches
vệch vechej
vên vene
vền venef
vện venej
vênh venhe
vểnh venher
vết vetes
vệt vetej
vêtu vetue
vêu veue
vều veuef
vếu veues
vì vif
vỉ vir
vĩ vix
ví vis
vị vij
vỉa viar
vía vias
vích vichs
viêc viece
việc viecej
viêm vieme
viên viene
viền vienef
viển viener
viễn vienex
viện vienej
viêng vienge
viếng vienges
việp viepej
viêt viete
viết vietes
việt vietej
vịm vimj
vín vins
vịn vinj
vĩnh vinhx
vính vinhs
vịnh vinhj
viọng viongj
vít vits
vịt vitj
víu vius
vò vof
vỏ vor
võ vox
vó vos
vọ voj
vóc vocs
vọc vocj
vòi voif
vỏi voir
vói vois
vọi voij
vòm vomf
vòn vonf
vỏn vonr
vón vons
vòng vongf
vỏng vongr
võng vongx
vóng vongs
vọng vongj
vọp vopj
vót vots
vọt votj
vô voo
vồ voof
vổ voor
vỗ voox
vố voos
vốc vocos
vôi voio
vồi voiof
vối voios
vội voioj
vôn vono
vồn vonof
vốn vonos
vông vongo
vồng vongof
vổng vongor
vống vongos
vốt votos
vơ vow
vờ vowf
vở vowr
vỡ vowx
vớ vows
vợ vowj
vơi voiw
vời voiwf
với voiws
vợi voiwj
vờn vonwf
vởn vonwr
vớt votws
vợt votwj
vù vuf
vũ vux
vú vus
vụ vuj
vùa vuaf
vúc vucs
vục vucj
vùi vuif
vũm vumx
vùn vunf
vụn vunj
vùng vungf
vũng vungx
vụng vungj
vuối vuoios
vuông vuongo
vuốt vuotos
vuột vuotoj
vút vuts
vụt vutj
vư vuw
vừa vuawf
vữa vuawx
vựa vuawj
vức vucws
vực vucwj
vưng vungw
vừng vungwf
vửng vungwr
vững vungwx
vựng vungwj
vược vuocwj
vươn vuonw
vườn vuonwf
vượn vuonwj
vương vuongw
vưởng vuongwr
vướng vuongws
vượng vuongwj
vượt vuotwj
vứt vutws
vưu vuuw
vỹ vyx
vý vys
xà xaf
xả xar
xã xax
xá xas
xạ xaj
xác xacs
xạc xacj
xách xachs
xạch xachj
xài xaif
xải xair
xái xais
xàm xamf
xảm xamr
xám xams
xạm xamj
xán xans
xàng xangf
xáng xangs
xành xanhf
xảnh xanhr
xào xaof
xảo xaor
xáo xaos
xạo xaoj
xáp xaps
xạp xapj
xát xats
xàu xauf
xảu xaur
xạu xauj
xảy xayr
xáy xays
xắc xacws
xăm xamw
xắm xamws
xăn xanw
xắn xanws
xăng xangw
xằng xangwf
xẳng xangwr
xẵng xangwx
xắng xangws
xắp xapws
xắt xatws
xấ xaas
xấc xacas
xâm xama
xầm xamaf
xẩm xamar
xân xana
xẩn xanar
xấn xanas
xấp xapas
xập xapaj
xâu xaua
xầu xauaf
xẩu xauar
xấu xauas
xây xaya
xầy xayaf
xẩy xayar
xcô xcoo
xè xef
xẻ xer
xé xes
xẹ xej
xéc xecs
xẹc xecj
xém xems
xèn xenf
xẻn xenr
xén xens
xèng xengf
xẻng xengr
xèo xeof
xẻo xeor
xẽo xeox
xéo xeos
xẹo xeoj
xép xeps
xẹp xepj
xét xets
xẹt xetj
xê xee
xề xeef
xể xeer
xễ xeex
xế xees
xệ xeej
xếch xeches
xệch xechej
xềm xemef
xên xene
xển xener
xênh xenhe
xềnh xenhef
xểnh xenher
xếp xepes
xệp xepej
xệt xetej
xêu xeue
xều xeuef
xệu xeuej
xì xif
xỉ xir
xí xis
xị xij
xỉa xiar
xía xias
xịa xiaj
xích xichs
xịch xichj
xiếc xieces
xiệc xiecej
xiêm xieme
xiểm xiemer
xiên xiene
xiển xiener
xiễn xienex
xiềng xiengef
xiểng xienger
xiếp xiepes
xiệp xiepej
xiết xietes
xiêu xieue
xiều xieuef
xiểu xieuer
xiếu xieues
ximăng ximangw
xỉn xinr
xín xins
xịn xinj
xinê xinee
xíng xings
xình xinhf
xỉnh xinhr
xĩnh xinhx
xính xinhs
xíp xips
xít xits
xịt xitj
xìu xiuf
xỉu xiur
xíu xius
xịu xiuj
xò xof
xỏ xor
xó xos
xọ xoj
xoác xoacs
xoạc xoacj
xoạch xoachj
xoài xoaif
xoải xoair
xoàm xoamf
xoàn xoanf
xoán xoans
xoàng xoangf
xoảng xoangr
xoạng xoangj
xoành xoanhf
xoát xoats
xoạt xoatj
xoáy xoays
xoăn xoanw
xoẳn xoanwr
xoắn xoanws
xoắt xoatws
xóc xocs
xọc xocj
xoèn xoenf
xoẻng xoengr
xoét xoets
xoẹt xoetj
xòi xoif
xói xois
xòm xomf
xõm xomx
xóm xoms
xón xons
xòng xongf
xỏng xongr
xõng xongx
xóng xongs
xóp xops
xọp xopj
xót xots
xô xoo
xồ xoof
xổ xoor
xố xoos
xộ xooj
xốc xocos
xộc xocoj
xôi xoio
xồi xoiof
xổi xoior
xối xoios
xôm xomo
xồm xomof
xổm xomor
xôn xono
xồn xonof
xổn xonor
xốn xonos
xộn xonoj
xông xongo
xồng xongof
xổng xongor
xống xongos
xốp xopos
xộp xopoj
xốt xotos
xơ xow
xờ xowf
xở xowr
xỡ xowx
xớ xows
xơi xoiw
xời xoiwf
xởi xoiwr
xới xoiws
xơm xomw
xờm xomwf
xớm xomws
xơn xonw
xởn xonwr
xớn xonws
xớp xopws
xợp xopwj
xớt xotws
xợt xotwj
xrê xree
xrêpôc xrepoceo
xtiêng xtienge
xtơ xtow
xtrây xtraya
xù xuf
xủ xur
xũ xux
xú xus
xụ xuj
xùa xuaf
xúa xuas
xuân xuana
xuẩn xuanar
xuất xuatas
xuây xuaya
xúc xucs
xục xucj
xuê xuee
xuề xueef
xuể xueer
xuế xuees
xuệch xuechej
xuềnh xuenhef
xùi xuif
xủi xuir
xúi xuis
xụi xuij
xùm xumf
xúm xums
xùng xungf
xủng xungr
xúng xungs
xuôi xuoio
xuông xuongo
xuồng xuongof
xuổng xuongor
xuống xuongos
xúp xups
xụp xupj
xút xuts
xụt xutj
xuyên xuyene
xuyền xuyenef
xuyển xuyener
xuyễn xuyenex
xuyến xuyenes
xuyết xuyetes
xuýt xuyts
xuỵt xuytj
xư xuw
xừ xuwf
xử xuwr
xứ xuws
xự xuwj
xưa xuaw
xửa xuawr
xứa xuaws
xức xucws
xực xucwj
xưng xungw
xừng xungwf
xửng xungwr
xứng xungws
xước xuocws
xược xuocwj
xười xuoiwf
xương xuongw
xường xuongwf
xưởng xuongwr
xướng xuongws
xýt xyts
ỳ yf
ỷ yr
ỹ yx
ý ys
ỵ yj
ỵa yaj
yàm yamf
yán yans
ých ychs
ỵch ychj
yếc yeces
yêm yeme
yểm yemer
yếm yemes
yên yene
yển yener
yến yenes
yêng yenge
yểng yenger
yếng yenges
yếp yepes
yết yetes
yêu yeue
yều yeuef
yểu yeuer
yếu yeues
yì yif
ýn yns
ỵn ynj
ỳnh ynhf
ỷnh ynhr
ýnh ynhs
yò yof
yó yos
ýp yps
ýt yts
ỵt ytj
yú yus
ỷu yur
ỵu yuj
yùm yumf
zà zaf
zabân zabana
zài zaif
zắc zacws
zăg zagw
zăng zangw
zép zeps
zéro zeros
zê zee
zỏm zomr
zô zoo
================================================
FILE: test-data/vietnamese.cm.dict.telex3.tdata
================================================
à af
ả ar
ã ax
á as
ạ aj
ác acs
ạc acj
ácbon acbons
ách achs
ạch achj
ácxtơ acxtosw
ảh ahr
ài aif
ải air
ãi aix
ái ais
ại aij
alô aloo
àm amf
ảm amr
ãm amx
ám ams
ạm amj
àn anf
ản anr
ãn anx
án ans
ạn anj
àng angf
ảng angr
ãng angx
áng angs
ạng angj
ành anhf
ảnh anhr
ãnh anhx
ánh anhs
ạnh anhj
ào aof
ảo aor
ão aox
áo aos
ạo aoj
aỏi aoir
àp apf
áp aps
ạp apj
át ats
ạt atj
àu auf
ảu aur
áu aus
ạu auj
ày ayf
ảy ayr
ãy ayx
áy ays
ạy ayj
ă aw
ằ awf
ẳ awr
ẵ awx
ắ aws
ặ awj
ăc acw
ắc awcs
ặc awcj
ăcr acrw
ăh ahw
ăk akw
ắk awks
ăm amw
ằm awmf
ẳm awmr
ẵm awmx
ắm awms
ặm awmj
ăn anw
ằn awnf
ẳn awnr
ẵn awnx
ắn awns
ặn awnj
ăng angw
ằng awngf
ẳng awngr
ẵng awngx
ắng awngs
ặng awngj
ăngten angtenw
ắp awps
ặp awpj
ắt awts
ặt awtj
ằu awuf
â aa
ầ aaf
ẩ aar
ẫ aax
ấ aas
ậ aaj
ấc aacs
ậc aacj
âm ama
ầm aamf
ẩm aamr
ẫm aamx
ấm aams
ậm aamj
ân ana
ần aanf
ẩn aanr
ẫn aanx
ấn aans
ận aanj
âng anga
ầng aangf
ẩng aangr
ẫng aangx
ấng aangs
ậng aangj
âp apa
ấp aaps
ập aapj
ất aats
ật aatj
âu aua
ầu aauf
ẩu aaur
ẫu aaux
ấu aaus
ậu aauj
ây aya
ầy aayf
ẩy aayr
ẫy aayx
ấy aays
ậy aayj
bà baf
bả bar
bã bax
bá bas
bạ baj
bác bacs
bạc bacj
bách bachs
bạch bachj
bài baif
bải bair
bãi baix
bái bais
bại baij
bàm bamf
bãm bamx
bám bams
bạm bamj
bàn banf
bản banr
bán bans
bạn banj
bàng bangf
bảng bangr
bãng bangx
báng bangs
bạng bangj
bành banhf
bảnh banhr
bánh banhs
bạnh banhj
bào baof
bảo baor
bão baox
báo baos
bạo baoj
báp baps
bạp bapj
bát bats
bạt batj
bàu bauf
bảu baur
báu baus
bạu bauj
bày bayf
bảy bayr
báy bays
bayơ bayow
bắc bawcs
bặc bawcj
băm bamw
bằm bawmf
bẳm bawmr
bẵm bawmx
bặm bawmj
băn banw
bằn bawnf
bẳn bawnr
bắn bawns
bặn bawnj
băng bangw
bằng bawngf
bẳng bawngr
bẵng bawngx
bắng bawngs
bặng bawngj
bắp bawps
bặp bawpj
bắt bawts
bặt bawtj
bấc baacs
bậc baacj
bâm bama
bầm baamf
bẩm baamr
bẫm baamx
bấm baams
bậm baamj
bân bana
bần baanf
bẩn baanr
bấn baans
bận baanj
bâng banga
bầng baangf
bẩng baangr
bẫng baangx
bấp baaps
bập baapj
bất baats
bật baatj
bâu baua
bầu baauf
bẩu baaur
bẫu baaux
bấu baaus
bậu baauj
bây baya
bầy baayf
bẩy baayr
bẫy baayx
bấy baays
bậy baayj
bè bef
bẻ ber
bẽ bex
bé bes
bẹ bej
béc becs
bèm bemf
bẻm bemr
bèn benf
bẽn benx
bén bens
bẹn benj
béng bengs
bẻnh benhr
bèo beof
bẻo beor
bẽo beox
béo beos
bẹo beoj
bép beps
bẹp bepj
bét bets
bẹt betj
bê bee
bề beef
bể beer
bễ beex
bế bees
bệ beej
bệch beechj
bên bene
bền beenf
bến beens
bện beenj
bênh benhe
bềnh beenhf
bệnh beenhj
bếp beeps
bêt bete
bết beets
bệt beetj
bête betee
bêu beue
bều beeuf
bễu beeux
bếu beeus
bệu beeuj
bì bif
bỉ bir
bĩ bix
bí bis
bị bij
bìa biaf
bịa biaj
bích bichs
bịch bichj
biếc bieecs
biêm bieme
biểm bieemr
biếm bieems
biên biene
biền bieenf
biển bieenr
biến bieens
biện bieenj
biêng bienge
biếng bieengs
biêt biete
biết bieets
biệt bieetj
biêu bieue
biều bieeuf
biểu bieeur
biễu bieeux
biếu bieeus
bìh bihf
bìm bimf
bỉm bimr
bím bims
bìn binf
bịn binj
bình binhf
bỉnh binhr
bĩnh binhx
bính binhs
bịnh binhj
bịp bipj
bít bits
bịt bitj
bìu biuf
bỉu biur
bĩu biux
bíu bius
bịu biuj
blá blas
blái blais
blăng blangw
blâu blaua
blóm bloms
blóma blomas
blọn blonj
blô bloo
blúc blucs
bluộm bluoomj
bnđc bndcd
bò bof
bỏ bor
bõ box
bó bos
bọ boj
boạt boatj
bóc bocs
bọc bocj
bòi boif
bỏi boir
bõi boix
bói bois
bòm bomf
bỏm bomr
bõm bomx
bòn bonf
bỏn bonr
bón bons
bọn bonj
bòng bongf
bỏng bongr
bõng bongx
bóng bongs
bọng bongj
bóp bops
bọp bopj
bót bots
bọt botj
bô boo
bồ boof
bổ boor
bỗ boox
bố boos
bộ booj
bốc boocs
bộc boocj
bôi boio
bồi booif
bổi booir
bối boois
bội booij
bôm bomo
bồm boomf
bôn bono
bồn boonf
bổn boonr
bốn boons
bộn boonj
bông bongo
bồng boongf
bổng boongr
bỗng boongx
bống boongs
bộng boongj
bốp boops
bộp boopj
bốt boots
bột bootj
bơ bow
bờ bowf
bở bowr
bỡ bowx
bớ bows
bợ bowj
bớc bowcs
bơi boiw
bời bowif
bởi bowir
bỡi bowix
bới bowis
bơm bomw
bờm bowmf
bợm bowmj
bơn bonw
bờn bownf
bởn bownr
bỡn bownx
bớn bowns
bợn bownj
bớp bowps
bợp bowpj
bớt bowts
bợt bowtj
bợu bowuj
brâu braua
brôm bromo
brơ brow
bù buf
bủ bur
bú bus
bụ buj
bùa buaf
bủa buar
búa buas
bụa buaj
búc bucs
bục bucj
bùi buif
bủi buir
búi buis
bụi buij
búk buks
bulông bulongo
bùm bumf
bủm bumr
bũm bumx
bụm bumj
bùn bunf
bủn bunr
bún buns
bùng bungf
bủng bungr
búng bungs
bụng bungj
buộc buoocj
buồi buooif
buổi buooir
buối buoois
buội buooij
buồm buoomf
buôn buono
buồn buoonf
buông buongo
buồng buoongf
buốt buoots
buột buootj
búp bups
bụp bupj
bút buts
bụt butj
buýt buyts
bư buw
bứ buws
bự buwj
bưa buaw
bừa buwaf
bửa buwar
bữa buwax
bứa buwas
bựa buwaj
bức buwcs
bực buwcj
bưng bungw
bừng buwngf
bửng buwngr
bứng buwngs
bựng buwngj
bước buowcs
bươi buoiw
bưởi buowir
bươm buomw
bướm buowms
bươn buonw
bương buongw
bường buowngf
bướng buowngs
bướp buowps
bượt buowtj
bươu buouw
bướu buowus
bứt buwts
bựt buwtj
bưu buuw
bửu buwur
cà caf
cả car
cá cas
cạ caj
các cacs
cạc cacj
cácbon cacbons
cách cachs
cạch cachj
cácxt cacxts
cacxtơ cacxtow
cácxtơ cacxtosw
café cafes
cài caif
cải cair
cãi caix
cái cais
cại caij
calô caloo
càm camf
cảm camr
cãm camx
cám cams
cạm camj
campôt campoto
càn canf
cản canr
cán cans
cạn canj
càng cangf
cảng cangr
cáng cangs
cành canhf
cảnh canhr
cánh canhs
cạnh canhj
canô canoo
canxít canxits
cào caof
cảo caor
cão caox
cáo caos
cạo caoj
cáp caps
cạp capj
carbón carbons
cartón cartons
cát cats
cạt catj
càu cauf
cảu caur
cáu caus
cạu cauj
cày cayf
cảy cayr
cáy cays
cạy cayj
că caw
cắc cawcs
cặc cawcj
căm camw
cằm cawmf
cắm cawms
cặm cawmj
căn canw
cằn cawnf
cẳn cawnr
cắn cawns
cặn cawnj
căng cangw
cằng cawngf
cẳng cawngr
cẵng cawngx
cắng cawngs
căo caow
cắp cawps
cặp cawpj
cắt cawts
cặt cawtj
câ caa
cầ caaf
câble cablea
cấc caacs
câm cama
cầm caamf
cẩm caamr
cẫm caamx
cấm caams
cân cana
cần caanf
cẩn caanr
cẫn caanx
cấn caans
cận caanj
câng canga
cẫng caangx
cấp caaps
cập caapj
cất caats
cật caatj
câu caua
cầu caauf
cẩu caaur
cẫu caaux
cấu caaus
cậu caauj
cây caya
cầy caayf
cẩy caayr
cấy caays
cậy caayj
céng cengs
cê cee
chà chaf
chả char
chã chax
chá chas
chạ chaj
chác chacs
chạc chacj
chách chachs
chạch chachj
chài chaif
chải chair
chãi chaix
chái chais
chàm chamf
chảm chamr
chãm chamx
chám chams
chạm chamj
chán chans
chạn chanj
chàng changf
chảng changr
cháng changs
chạng changj
chành chanhf
chảnh chanhr
chánh chanhs
chạnh chanhj
chào chaof
chảo chaor
chão chaox
cháo chaos
chạo chaoj
cháp chaps
chạp chapj
chát chats
chạt chatj
chàu chauf
chảu chaur
cháu chaus
chày chayf
chảy chayr
cháy chays
chạy chayj
chắc chawcs
chặc chawcj
chăm chamw
chằm chawmf
chẳm chawmr
chắm chawms
chặm chawmj
chăn chanw
chằn chawnf
chẳn chawnr
chẵn chawnx
chắn chawns
chặn chawnj
chăng changw
chằng chawngf
chẳng chawngr
chắng chawngs
chặng chawngj
chắp chawps
chặp chawpj
chắt chawts
chặt chawtj
chấ chaas
chậc chaacj
châm chama
chầm chaamf
chẩm chaamr
chẫm chaamx
chấm chaams
chậm chaamj
chân chana
chần chaanf
chẩn chaanr
chấn chaans
chận chaanj
chẩng chaangr
chấng chaangs
chấp chaaps
chập chaapj
chất chaats
chật chaatj
châu chaua
chầu chaauf
chẩu chaaur
chẫu chaaux
chấu chaaus
chậu chaauj
chây chaya
chầy chaayf
chẩy chaayr
chấy chaays
chậy chaayj
chè chef
chẻ cher
chẽ chex
ché ches
chẹ chej
chèm chemf
chẻm chemr
chém chems
chèn chenf
chẻn chenr
chẽn chenx
chén chens
chẹn chenj
chéng chengs
chèo cheof
chẻo cheor
chẽo cheox
chéo cheos
chẹo cheoj
chép cheps
chẹp chepj
chét chets
chẹt chetj
chê chee
chề cheef
chễ cheex
chế chees
chệ cheej
chệc cheecj
chếch cheechs
chệch cheechj
chêm cheme
chềm cheemf
chễm cheemx
chên chene
chện cheenj
chênh chenhe
chềnh cheenhf
chểnh cheenhr
chễnh cheenhx
chếnh cheenhs
chệnh cheenhj
chếp cheeps
chệp cheepj
chết cheets
chệt cheetj
chêu cheue
chì chif
chỉ chir
chĩ chix
chí chis
chị chij
chìa chiaf
chỉa chiar
chĩa chiax
chịa chiaj
chích chichs
chịch chichj
chiếc chieecs
chiêm chieme
chiểm chieemr
chiếm chieems
chiên chiene
chiền chieenf
chiển chieenr
chiến chieens
chiện chieenj
chiêng chienge
chiềng chieengf
chiếng chieengs
chiếp chieeps
chiệp chieepj
chiết chieets
chiệt chieetj
chiêu chieue
chiều chieeuf
chiểu chieeur
chiếu chieeus
chìm chimf
chỉm chimr
chím chims
chỉn chinr
chĩn chinx
chín chins
chình chinhf
chỉnh chinhr
chĩnh chinhx
chính chinhs
chíp chips
chít chits
chịt chitj
chìu chiuf
chĩu chiux
chíu chius
chịu chiuj
chò chof
chỏ chor
chõ chox
chó chos
chọ choj
chỏa choar
chõa choax
chóa choas
choác choacs
choạc choacj
choách choachs
choài choaif
choãi choaix
choái choais
choại choaij
choán choans
choàng choangf
choảng choangr
choáng choangs
choạng choangj
choãnh choanhx
choạp choapj
choắc choawcs
choăn choanw
choắt choawts
chóc chocs
chọc chocj
choèn choenf
choẻn choenr
choét choets
choẹt choetj
chòi choif
chỏi choir
chõi choix
chói chois
chọi choij
chòm chomf
chỏm chomr
chõm chomx
chỏn chonr
chõn chonx
chón chons
chọn chonj
chòng chongf
chỏng chongr
chõng chongx
chóng chongs
chóp chops
chót chots
chọt chotj
chô choo
chồ choof
chổ choor
chỗ choox
chộ chooj
chốc choocs
chôi choio
chồi chooif
chổi chooir
chỗi chooix
chối choois
chội chooij
chôm chomo
chồm choomf
chổm choomr
chỗm choomx
chôn chono
chồn choonf
chổn choonr
chốn choons
chộn choonj
chông chongo
chồng choongf
chổng choongr
chống choongs
chốp choops
chộp choopj
chốt choots
chột chootj
chơ chow
chờ chowf
chở chowr
chớ chows
chợ chowj
chơi choiw
chời chowif
chới chowis
chơm chomw
chờm chowmf
chởm chowmr
chớm chowms
chơn chonw
chờn chownf
chớn chowns
chợn chownj
chớp chowps
chợp chowpj
chớt chowts
chợt chowtj
chù chuf
chủ chur
chú chus
chụ chuj
chùa chuaf
chúa chuas
chuáng chuangs
chuân chuana
chuẩn chuaanr
chuất chuaats
chuật chuaatj
chúc chucs
chục chucj
chuế chuees
chuếch chueechs
chuệch chueechj
chuếnh chueenhs
chuệnh chueenhj
chùi chuif
chủi chuir
chũi chuix
chúi chuis
chùm chumf
chủm chumr
chũm chumx
chúm chums
chụm chumj
chùn chunf
chủn chunr
chũn chunx
chùng chungf
chủng chungr
chúng chungs
chuốc chuoocs
chuộc chuoocj
chuôi chuoio
chuồi chuooif
chuỗi chuooix
chuối chuoois
chuội chuooij
chuôm chuomo
chuốm chuooms
chuồn chuoonf
chuông chuongo
chuồng chuoongf
chuộng chuoongj
chuốt chuoots
chuột chuootj
chụp chupj
chút chuts
chụt chutj
chuyên chuyene
chuyền chuyeenf
chuyển chuyeenr
chuyến chuyeens
chuyện chuyeenj
chuyết chuyeets
chư chuw
chừ chuwf
chử chuwr
chữ chuwx
chứ chuws
chưa chuaw
chừa chuwaf
chửa chuwar
chữa chuwax
chứa chuwas
chức chuwcs
chực chuwcj
chửi chuwir
chưn chunw
chưng chungw
chừng chuwngf
chửng chuwngr
chững chuwngx
chứng chuwngs
chựng chuwngj
chước chuowcs
chược chuowcj
chưởi chuowir
chườm chuowmf
chương chuongw
chường chuowngf
chưởng chuowngr
chưỡng chuowngx
chướng chuowngs
chượp chuowpj
chứt chuwts
chưu chuuw
chửu chuwur
chữu chuwux
chựu chuwuj
cì cif
cí cis
cịt citj
clé cles
clông clongo
cò cof
cỏ cor
cõ cox
có cos
cọ coj
cóc cocs
cọc cocj
còi coif
cỏi coir
cõi coix
cói cois
còm comf
cỏm comr
cọm comj
còn conf
cỏn conr
cón cons
cọn conj
còng congf
cỏng congr
cõng congx
cóng congs
cọng congj
cóp cops
cọp copj
cót cots
cọt cotj
cô coo
cồ coof
cổ coor
cỗ coox
cố coos
cộ cooj
cốc coocs
cộc coocj
côi coio
cồi cooif
cổi cooir
cỗi cooix
cối coois
cội cooij
côm como
cồm coomf
cốm cooms
cộm coomj
côn cono
cồn coonf
cổn coonr
cốn coons
cộn coonj
cône coneo
công congo
cồng coongf
cổng coongr
cống coongs
cộng coongj
cốp coops
cộp coopj
côt coto
cốt coots
cột cootj
cơ cow
cờ cowf
cỡ cowx
cớ cows
cơi coiw
cời cowif
cởi cowir
cỡi cowix
cới cowis
cơm comw
cỡm cowmx
cớm cowms
cợm cowmj
cơn conw
cờn cownf
cởn cownr
cỡn cownx
cớn cowns
cợn cownj
cợp cowpj
cớt cowts
cợt cowtj
crô croo
crôm cromo
crông crongo
crưm crumw
cù cuf
củ cur
cũ cux
cú cus
cụ cuj
cùa cuaf
của cuar
cúa cuas
cúc cucs
cục cucj
cùi cuif
củi cuir
cũi cuix
cúi cuis
cụi cuij
cùm cumf
củm cumr
cúm cums
cụm cumj
cùn cunf
củn cunr
cũn cunx
cùng cungf
củng cungr
cũng cungx
cúng cungs
cụng cungj
cuốc cuoocs
cuộc cuoocj
cuồi cuooif
cuối cuoois
cuội cuooij
cuỗm cuoomx
cuồn cuoonf
cuốn cuoons
cuộn cuoonj
cuông cuongo
cuồng cuoongf
cuống cuoongs
cuộng cuoongj
cuôr cuoro
cúp cups
cụp cupj
cút cuts
cụt cutj
cư cuw
cừ cuwf
cử cuwr
cữ cuwx
cứ cuws
cự cuwj
cưa cuaw
cửa cuwar
cứa cuwas
cựa cuwaj
cức cuwcs
cực cuwcj
cửi cuwir
cưng cungw
cửng cuwngr
cứng cuwngs
cước cuowcs
cược cuowcj
cười cuowif
cưỡi cuowix
cưới cuowis
cườm cuowmf
cương cuongw
cường cuowngf
cưỡng cuowngx
cướp cuowps
cứt cuwts
cưu cuuw
cừu cuwuf
cửu cuwur
cữu cuwux
cứu cuwus
cựu cuwuj
dà daf
dả dar
dã dax
dá das
dạ daj
dác dacs
dạc dacj
dách dachs
dạch dachj
dài daif
dải dair
dãi daix
dái dais
dại daij
dàm damf
dảm damr
dám dams
dạm damj
dàn danf
dản danr
dãn danx
dán dans
dạn danj
dàng dangf
dáng dangs
dạng dangj
dành danhf
dảnh danhr
dánh danhs
dào daof
dáo daos
dạo daoj
dáp daps
dát dats
dạt datj
dàu dauf
dáu daus
dày dayf
dảy dayr
dãy dayx
dáy days
dạy dayj
dắc dawcs
dặc dawcj
dăm damw
dằm dawmf
dặm dawmj
dăn danw
dằn dawnf
dẳn dawnr
dẵn dawnx
dặn dawnj
dăng dangw
dằng dawngf
dẳng dawngr
dẵng dawngx
dắng dawngs
dặng dawngj
dắt dawts
dặt dawtj
dâ daa
dậ daaj
dâm dama
dầm daamf
dẩm daamr
dẫm daamx
dấm daams
dậm daamj
dân dana
dần daanf
dẩn daanr
dẫn daanx
dấn daans
dận daanj
dâne danea
dâng danga
dậng daangj
dấp daaps
dập daapj
dật daatj
dâu daua
dầu daauf
dẩu daaur
dẫu daaux
dấu daaus
dậu daauj
dây daya
dầy daayf
dẩy daayr
dẫy daayx
dấy daays
dậy daayj
dè def
dẻ der
dẽ dex
dé des
dẹ dej
déc decs
dèm demf
dẻm demr
dém dems
dẹm demj
dèn denf
dèo deof
dẻo deor
déo deos
dẹo deoj
dép deps
dẹp depj
dẹt detj
dê dee
dề deef
dể deer
dễ deex
dế dees
dệ deej
dềm deemf
dền deenf
dện deenj
dềng deengf
dênh denhe
dềnh deenhf
dết deets
dệt deetj
dêu deue
dều deeuf
dệu deeuj
dì dif
dỉ dir
dĩ dix
dí dis
dị dij
dìa diaf
dĩa diax
día dias
dịa diaj
dích dichs
dịch dichj
diếc dieecs
diệc dieecj
diêm dieme
diềm dieemf
diễm dieemx
diếm dieems
diệm dieemj
diên diene
diển dieenr
diễn dieenx
diến dieens
diện dieenj
diềng dieengf
diếp dieeps
diệp dieepj
diết dieets
diệt dieetj
diêu dieue
diều dieeuf
diểu dieeur
diễu dieeux
diếu dieeus
diệu dieeuj
dìm dimf
dím dims
dĩn dinx
dín dins
dĩnh dinhx
dính dinhs
dịnh dinhj
díp dips
dịp dipj
dìt ditf
dít dits
dịt ditj
dìu diuf
díu dius
dịu diuj
dliê dliee
dò dof
dỏ dor
dó dos
dọ doj
doãi doaix
doãn doanx
doãng doangx
doạng doangj
doành doanhf
dóc docs
dọc docj
dòi doif
dỏi doir
dõi doix
dói dois
dọi doij
dòm domf
dỏm domr
dóm doms
dòn donf
dón dons
dọn donj
dòng dongf
dỏng dongr
dõng dongx
dóng dongs
dọng dongj
dọp dopj
dót dots
dô doo
dồ doof
dổ door
dỗ doox
dộ dooj
dốc doocs
dộc doocj
dôi doio
dồi dooif
dổi dooir
dỗi dooix
dối doois
dội dooij
dôn dono
dồn doonf
dốn doons
dộn doonj
dông dongo
dỗng doongx
dống doongs
dộng doongj
dộp doopj
dốt doots
dột dootj
dơ dow
dờ dowf
dở dowr
dỡ dowx
dớ dows
dợ dowj
dơi doiw
dời dowif
dới dowis
dợi dowij
dởm dowmr
dơn donw
dờn downf
dỡn downx
dớn downs
dợn downj
dớp dowps
dợp dowpj
dớt dowts
drăm dramw
drăng drangw
dù duf
dủ dur
dũ dux
dú dus
dụ duj
dùa duaf
dũa duax
dúa duas
dụa duaj
duân duana
duẩn duaanr
duẫn duaanx
duật duaatj
dục ducj
duệ dueej
duềnh dueenhf
dùi duif
dủi duir
dũi duix
dúi duis
dụi duij
dùm dumf
dúm dums
dụm dumj
dùn dunf
dún duns
dùng dungf
dũng dungx
dúng dungs
dụng dungj
duốc duoocs
duộc duoocj
duôi duoio
duổi duooir
duỗi duooix
duối duoois
duồn duoonf
duông duongo
duồng duoongf
dút duts
dụt dutj
dụy duyj
duyên duyene
duyến duyeens
duyện duyeenj
duyệt duyeetj
dư duw
dừ duwf
dử duwr
dữ duwx
dứ duws
dự duwj
dưa duaw
dừa duwaf
dứa duwas
dựa duwaj
dức duwcs
dực duwcj
dưng dungw
dừng duwngf
dửng duwngr
dững duwngx
dứng duwngs
dựng duwngj
dược duowcj
dười duowif
dưới duowis
dượi duowij
dương duongw
dường duowngf
dưỡng duowngx
dướng duowngs
dượng duowngj
dượt duowtj
dứt duwts
dựt duwtj
dửu duwur
dữu duwux
dứu duwus
dựu duwuj
dýn dyns
đ dd
đa dad
đà dadf
đả dadr
đã dadx
đá dads
đạ dadj
đac dacd
đác dacds
đạc dacdj
đách dachds
đạch dachdj
đai daid
đài daidf
đãi daidx
đái daids
đại daidj
đam damd
đàm damdf
đảm damdr
đám damds
đạm damdj
đan dand
đàn dandf
đản dandr
đán dands
đạn dandj
đang dangd
đàng dangdf
đảng dangdr
đãng dangdx
đáng dangds
đanh danhd
đành danhdf
đảnh danhdr
đánh danhds
đao daod
đào daodf
đảo daodr
đáo daods
đạo daodj
đáp dapds
đạp dapdj
đát datds
đạt datdj
đau daud
đáu dauds
đay dayd
đày daydf
đảy daydr
đãy daydx
đáy dayds
đẵ dawdx
đắc dawcds
đặc dawcdj
đăk dakdw
đắk dawkds
đăm damdw
đằm dawmdf
đẵm dawmdx
đắm dawmds
đằn dawndf
đẵn dawndx
đắn dawnds
đặn dawndj
đăng dangdw
đằng dawngdf
đẳng dawngdr
đẵng dawngdx
đắng dawngds
đặng dawngdj
đắp dawpds
đắt dawtds
đặt dawtdj
đằu dawudf
đâm damda
đầm daamdf
đẫm daamdx
đấm daamds
đậm daamdj
đần daandf
đẫn daandx
đấn daands
đận daandj
đâng dangda
đấng daangds
đập daapdj
đất daatds
đật daatdj
đâu dauda
đầu daaudf
đẩu daaudr
đấu daauds
đậu daaudj
đây dayda
đầy daaydf
đẩy daaydr
đẫy daaydx
đấy daayds
đậy daaydj
đe ded
đè dedf
đẻ dedr
đẽ dedx
đéc decds
đem demd
đèm demdf
đen dend
đèn dendf
đẹn dendj
đeng dengd
đeo deod
đèo deodf
đẽo deodx
đéo deods
đẹp depdj
đét detds
đẹt detdj
đê dede
đề deedf
để deedr
đễ deedx
đế deeds
đệ deedj
đếch deechds
đêh dehde
đêm demde
đềm deemdf
đếm deemds
đệm deemdj
đên dende
đền deendf
đến deends
đênh denhde
đềnh deenhdf
đểnh deenhdr
đễnh deenhdx
đệp deepdj
đêu deude
đều deeudf
đểu deeudr
đg dgd
đgt dgtd
đhur dhurd
đi did
đì didf
đĩ didx
đị didj
đìa diadf
đỉa diadr
đĩa diadx
đía diads
địa diadj
đích dichds
địch dichdj
đien diend
điếc dieecds
điềm dieemdf
điểm dieemdr
điếm dieemds
điệm dieemdj
điên diende
điền dieendf
điển dieendr
điện dieendj
điêng diengde
điếng dieengds
điệp dieepdj
điệt dieetdj
điêu dieude
điều dieeudf
điểu dieeudr
điếu dieeuds
điệu dieeudj
đin dind
đìn dindf
đinh dinhd
đình dinhdf
đỉnh dinhdr
đĩnh dinhdx
đính dinhds
định dinhdj
đip dipd
đít ditds
địt ditdj
điu diud
đìu diudf
địu diudj
đo dod
đò dodf
đỏ dodr
đõ dodx
đó dods
đọ dodj
đoa doad
đoác doacds
đoài doaidf
đoái doaids
đoan doand
đoàn doandf
đoản doandr
đoán doands
đoạn doandj
đoàng doangdf
đoảng doangdr
đoãng doangdx
đoành doanhdf
đoạt doatdj
đoc docd
đóc docds
đọc docdj
đoi doid
đòi doidf
đỏi doidr
đói doids
đọi doidj
đom domd
đòm domdf
đỏm domdr
đóm domds
đon dond
đòn dondf
đón donds
đọn dondj
đong dongd
đòng dongdf
đỏng dongdr
đóng dongds
đọng dongdj
đọp dopdj
đót dotds
đọt dotdj
đô dodo
đồ doodf
đổ doodr
đỗ doodx
đố doods
độ doodj
đôc docdo
đốc doocds
độc doocdj
đôi doido
đồi dooidf
đổi dooidr
đỗi dooidx
đối dooids
đội dooidj
đôm domdo
đồm doomdf
đốm doomds
đôn dondo
đồn doondf
đốn doonds
độn doondj
đông dongdo
đồng doongdf
đổng doongdr
đỗng doongdx
đống doongds
động doongdj
đốp doopds
độp doopdj
đốt dootds
đột dootdj
đơ dodw
đờ dowdf
đở dowdr
đỡ dowdx
đớ dowds
đợ dowdj
đời dowidf
đới dowids
đợi dowidj
đơm domdw
đờm dowmdf
đởm dowmdr
đơn dondw
đờn downdf
đởn downdr
đớn downds
đớp dowpds
đợp dowpdj
đớt dowtds
đợt dowtdj
đpcm dpcmd
đpctntư dpctntudw
đph dphd
đphg dphgd
đqg dqgd
đqgtnn dqgtnnd
đqt dqtd
đr drd
đrá drads
đrao draod
đrăk drakdw
đrắk drawkds
đrong drongd
đrô drodo
đrung drungd
đs dsd
đsp dspd
đt dtd
đtb dtbd
đtbxh dtbxhd
đtl dtld
đtla dtlad
đtlx dtlxd
đtm dtmd
đtntl dtntld
đtpt dtptd
đts dtsd
đtt dttd
đttp dttpd
đttpmt dttpmtd
đttqg dttqgd
đu dud
đù dudf
đủ dudr
đú duds
đụ dudj
đua duad
đùa duadf
đũa duadx
đúa duads
đúc ducds
đục ducdj
đuểnh dueenhdr
đui duid
đùi duidf
đủi duidr
đũi duidx
đum dumd
đùm dumdf
đúm dumds
đun dund
đùn dundf
đún dunds
đụn dundj
đung dungd
đùng dungdf
đủng dungdr
đũng dungdx
đúng dungds
đụng dungdj
đuốc duoocds
đuôi duoido
đuổi duooidr
đuối duooids
đuồn duoondf
đuỗn duoondx
đuống duoongds
đuột duootdj
đup dupd
đúp dupds
đụp dupdj
đút dutds
đụt dutdj
đừ duwdf
đử duwdr
đứ duwds
đưa duadw
đừa duwadf
đứa duwads
đức duwcds
đực duwcdj
đưng dungdw
đừng duwngdf
đứng duwngds
đựng duwngdj
đước duowcds
được duowcdj
đười duowidf
đượm duowmdj
đườn duowndf
đưỡn duowndx
đương duongdw
đường duowngdf
đứt duwtds
đv dvd
đvn dvnd
đvqg dvqgd
đxx dxxd
è ef
ẻ er
ẽ ex
é es
ẹ ej
éc ecs
ẹc ecj
ẻh ehr
éh ehs
èm emf
ẻm emr
ẽm emx
ém ems
ẹm emj
èn enf
ẻn enr
ẽn enx
én ens
ẹn enj
èng engf
ẻng engr
éng engs
èo eof
ẻo eor
ẽo eox
éo eos
ẹo eoj
ép eps
ẹp epj
ét ets
ẹt etj
ê ee
ề eef
ể eer
ễ eex
ế ees
ệ eej
êa eae
êbur ebure
êc ece
ếc eecs
ệc eecj
ếch eechs
ệch eechj
êh ehe
êm eme
ềm eemf
ểm eemr
ễm eemx
ếm eems
ệm eemj
ên ene
ền eenf
ển eenr
ễn eenx
ến eens
ện eenj
êng enge
ềng eengf
ểng eengr
ễng eengx
ếng eengs
ệng eengj
ênh enhe
ềnh eenhf
ểnh eenhr
ễnh eenhx
ếnh eenhs
ệnh eenhj
ếp eeps
ệp eepj
êpôc epoceo
êpốc epooces
êt ete
ết eets
ệt eetj
êtan etane
ête etee
êu eue
ều eeuf
ểu eeur
ễu eeux
ếu eeus
ệu eeuj
êy eye
fà faf
frăng frangw
fría frias
fù fuf
fú fus
fútbol futbols
gà gaf
gả gar
gã gax
gá gas
gạ gaj
gác gacs
gạc gacj
gạch gachj
gài gaif
gãi gaix
gái gais
galông galongo
gàn ganf
gán gans
gạn ganj
gàng gangf
gành ganhf
gảnh ganhr
gánh ganhs
gạnh ganhj
gào gaof
gáo gaos
gạo gaoj
gáp gaps
gát gats
gạt gatj
gàu gauf
gáu gaus
gày gayf
gảy gayr
gãy gayx
gáy gays
gạy gayj
gặc gawcj
găm gamw
gằm gawmf
gắm gawms
gặm gawmj
găn ganw
gằn gawnf
gắn gawns
gặn gawnj
găng gangw
gắng gawngs
gặng gawngj
gắp gawps
gặp gawpj
gắt gawts
gặt gawtj
gấc gaacs
gâm gama
gầm gaamf
gẩm gaamr
gẫm gaamx
gấm gaams
gậm gaamj
gân gana
gần gaanf
gấn gaans
gận gaanj
gầng gaangf
gấp gaaps
gập gaapj
gất gaats
gật gaatj
gâu gaua
gầu gaauf
gẫu gaaux
gấu gaaus
gây gaya
gầy gaayf
gẩy gaayr
gẫy gaayx
gấy gaays
gậy gaayj
gẻ ger
gém gems
gép geps
gềnh geenhf
gệt geetj
ghè ghef
ghẻ gher
ghẽ ghex
ghé ghes
ghẹ ghej
ghém ghems
ghèn ghenf
ghẹn ghenj
ghẹo gheoj
ghép gheps
ghét ghets
ghê ghee
ghề gheef
ghế ghees
ghệ gheej
ghếch gheechs
ghềnh gheenhf
ghểnh gheenhr
ghệt gheetj
ghì ghif
ghĩa ghiax
ghiếc ghieecs
ghiền ghieenf
ghìm ghimf
ghín ghins
ghinê ghinee
ghình ghinhf
gì gif
gỉ gir
gĩ gix
gí gis
già giaf
giả giar
giã giax
giá gias
giạ giaj
giác giacs
giạc giacj
giải giair
giãi giaix
giái giais
giại giaij
giàm giamf
giảm giamr
giám giams
giạm giamj
giàn gianf
giản gianr
giãn gianx
gián gians
giàng giangf
giảng giangr
giáng giangs
giạng giangj
giành gianhf
giảnh gianhr
giào giaof
giảo giaor
giáo giaos
giáp giaps
giát giats
giạt giatj
giàu giauf
giảu giaur
giavê giavee
giày giayf
giãy giayx
giáy giays
giặc giawcj
giăm giamw
giằm giawmf
giẵm giawmx
giắm giawms
giặm giawmj
giằn giawnf
giẵn giawnx
giắn giawns
giặn giawnj
giăng giangw
giằng giawngf
giắng giawngs
giặng giawngj
giặp giawpj
giắt giawts
giặt giawtj
giâ giaa
giấc giaacs
giâm giama
giầm giaamf
giẫm giaamx
giấm giaams
giậm giaamj
giân giana
giần giaanf
giấn giaans
giận giaanj
giầng giaangf
giẩng giaangr
giầnh giaanhf
giấp giaaps
giập giaapj
giất giaats
giật giaatj
giâu giaua
giầu giaauf
giấu giaaus
giậu giaauj
giây giaya
giầy giaayf
giẩy giaayr
giẫy giaayx
giấy giaays
gíc gics
gích gichs
giẻ gier
giẽ giex
gié gies
giéc giecs
gièm giemf
giém giems
giẻo gieor
giéo gieos
giẹo gieoj
giép gieps
giẹp giepj
giẹt gietj
giê giee
giề gieef
giếc gieecs
giệch gieechj
giếm gieems
giền gieenf
giêng gienge
giềng gieengf
giếng gieengs
giềnh gieenhf
giệnh gieenhj
giết gieets
giệt gieetj
giễu gieeux
giếu gieeus
giệu gieeuj
gìm gimf
gìn ginf
giò giof
giỏ gior
giõ giox
gió gios
giọ gioj
gióc giocs
giọc giocj
giòi gioif
giỏi gioir
giõi gioix
giói giois
giọi gioij
giòn gionf
giỏn gionr
gión gions
giọn gionj
giòng giongf
giỏng giongr
giõng giongx
gióng giongs
giọng giongj
giót giots
giọt giotj
giô gioo
giồ gioof
giổ gioor
giỗ gioox
giộ giooj
giốc gioocs
giôi gioio
giồi giooif
giổi giooir
giỗi giooix
giối gioois
giội giooij
giôn giono
giông giongo
giồng gioongf
giống gioongs
giộng gioongj
giộp gioopj
giốt gioots
giột giootj
giơ giow
giờ giowf
giở giowr
giỡ giowx
giớ giows
giời giowif
giới giowis
giớm giowms
giợm giowmj
giờn giownf
giởn giownr
giỡn giownx
giợn giownj
giợt giowtj
gíp gips
gít gits
gịt gitj
giù giuf
giũ giux
giú gius
giùa giuaf
giũa giuax
giụa giuaj
giục giucj
giùi giuif
giủi giuir
giúi giuis
giụi giuij
giùm giumf
giúm giums
giụm giumj
giùn giunf
giún giuns
giùng giungf
giủng giungr
giuộc giuoocj
giuỗi giuooix
giuộm giuoomj
giúp giups
giư giuw
giừ giuwf
giữ giuwx
giưa giuaw
giữa giuwax
giứa giuwas
giương giuongw
giường giuowngf
giướng giuowngs
giượng giuowngj
giựt giuwtj
glây glaya
gò gof
gõ gox
gó gos
gọ goj
góc gocs
gòi goif
gỏi goir
gõi goix
gói gois
gọi goij
gỏl golr
gòn gonf
gón gons
gọn gonj
gòng gongf
gỏng gongr
gọng gongj
góp gops
gót gots
gọt gotj
gô goo
gồ goof
gổ goor
gỗ goox
gộ gooj
gốc goocs
gộc goocj
gồi gooif
gối goois
gội gooij
gôm gomo
gồm goomf
gốm gooms
gôn gono
gông gongo
gồng goongf
gống goongs
gốp goops
gộp goopj
gột gootj
gơ gow
gờ gowf
gở gowr
gỡ gowx
gớc gowcs
gởi gowir
gới gowis
gợi gowij
gờm gowmf
gớm gowms
gơn gonw
gờn gownf
gợn gownj
gợt gowtj
grát grats
gù guf
gũ gux
gú gus
gụ guj
gục gucj
guê guee
gùi guif
gũi guix
gụi guij
gùn gunf
gún guns
gùng gungf
gúng gungs
guó guos
guốc guoocs
guộc guoocj
guồi guooif
guồng guoongf
guột guootj
gút guts
gụt gutj
gư guw
gừ guwf
gừa guwaf
gửi guwir
gừng guwngf
gứng guwngs
gươm guomw
gườm guowmf
gượm guowmj
gương guongw
gường guowngf
gưỡng guowngx
gượng guowngj
gỵa gyaj
hà haf
hả har
há has
hạ haj
hác hacs
hạc hacj
hách hachs
hạch hachj
hài haif
hải hair
hãi haix
hái hais
hại haij
haló halos
hàm hamf
hảm hamr
hãm hamx
hám hams
hạm hamj
hàn hanf
hản hanr
hãn hanx
hán hans
hạn hanj
hàng hangf
hảng hangr
hãng hangx
háng hangs
hạng hangj
hành hanhf
hảnh hanhr
hãnh hanhx
hánh hanhs
hạnh hanhj
hào haof
hảo haor
hão haox
háo haos
hạo haoj
háp haps
hạp hapj
hát hats
hạt hatj
hàu hauf
háu haus
hảy hayr
hãy hayx
háy hays
hạy hayj
hắ haws
hắc hawcs
hặc hawcj
hăm hamw
hằm hawmf
hẳm hawmr
hằn hawnf
hẳn hawnr
hắn hawns
hăng hangw
hằng hawngf
hẵng hawngx
hắng hawngs
hắt hawts
hấc haacs
hậc haacj
hâm hama
hầm haamf
hẩm haamr
hẫm haamx
hấm haams
hậm haamj
hân hana
hẫn haanx
hấn haans
hận haanj
hâng hanga
hẩng haangr
hẫng haangx
hấng haangs
hấp haaps
hập haapj
hất haats
hật haatj
hâu haua
hầu haauf
hẩu haaur
hẫu haaux
hấu haaus
hậu haauj
hây haya
hầy haayf
hẩy haayr
hẫy haayx
hấy haays
hđbt hdbtd
hè hef
hẻ her
hẽ hex
hé hes
hẹ hej
héc hecs
hécta hectas
hèm hemf
hẻm hemr
hẹm hemj
hèn henf
hẻn henr
hẹn henj
hẹng hengj
hèo heof
hẻo heor
héo heos
hép heps
hẹp hepj
hét hets
hẹt hetj
hê hee
hề heef
hể heer
hễ heex
hế hees
hệ heej
hếch heechs
hệch heechj
hêli helie
hềm heemf
hên hene
hển heenr
hến heens
hênh henhe
hềnh heenhf
hểnh heenhr
hết heets
hệt heetj
hêu heue
hều heeuf
hểu heeur
hếu heeus
hì hif
hỉ hir
hĩ hix
hí his
hích hichs
hịch hichj
hiêm hieme
hiềm hieemf
hiểm hieemr
hiếm hieems
hiên hiene
hiền hieenf
hiển hieenr
hiến hieens
hiện hieenj
hiêng hienge
hiểng hieengr
hiếng hieengs
hiếp hieeps
hiệp hieepj
hiết hieets
hiệt hieetj
hiêu hieue
hiều hieeuf
hiểu hieeur
hiếu hieeus
hiệu hieeuj
hĩm himx
hỉn hinr
hình hinhf
hỉnh hinhr
hĩnh hinhx
híp hips
hít hits
hìu hiuf
hmông hmongo
hnđ hndd
hò hof
hỏ hor
hó hos
họ hoj
hoác hoacs
hoách hoachs
hoạch hoachj
hoài hoaif
hoải hoair
hoãi hoaix
hoái hoais
hoại hoaij
hoàn hoanf
hoản hoanr
hoãn hoanx
hoán hoans
hoạn hoanj
hoàng hoangf
hoảng hoangr
hoãng hoangx
hoáng hoangs
hoành hoanhf
hoảnh hoanhr
hoánh hoanhs
hoạnh hoanhj
hoát hoats
hoạt hoatj
hoáy hoays
hoắc hoawcs
hoặc hoawcj
hoăm hoamw
hoắm hoawms
hoằn hoawnf
hoẳn hoawnr
hoăng hoangw
hoằng hoawngf
hoẵng hoawngx
hoắt hoawts
hoân hoana
hóc hocs
học hocj
hoẻn hoenr
hoét hoets
hoẹt hoetj
hòi hoif
hỏi hoir
hói hois
hòm homf
hỏm homr
hõm homx
hóm homs
hòn honf
hỏn honr
hón hons
hòng hongf
hỏng hongr
hóng hongs
họng hongj
hóp hops
họp hopj
hót hots
hô hoo
hồ hoof
hổ hoor
hỗ hoox
hố hoos
hộ hooj
hốc hoocs
hộc hoocj
hôi hoio
hồi hooif
hổi hooir
hối hoois
hội hooij
hôm homo
hồm hoomf
hổm hoomr
hỗm hoomx
hôn hono
hồn hoonf
hổn hoonr
hỗn hoonx
hộn hoonj
hông hongo
hồng hoongf
hổng hoongr
hỗng hoongx
hống hoongs
hốp hoops
hộp hoopj
hốt hoots
hột hootj
hôtel hotelo
hơ how
hờ howf
hở howr
hớ hows
hơi hoiw
hời howif
hởi howir
hỡi howix
hới howis
hợi howij
hờm howmf
hớm howms
hợm howmj
hơn honw
hờn hownf
hớn howns
hơng hongw
hớp howps
hợp howpj
hớt howts
hợt howtj
hrê hree
hrệ hreej
hù huf
hủ hur
hũ hux
hú hus
hụ huj
hùa huaf
húa huas
huân huana
huẩn huaanr
huấn huaans
huất huaats
huầy huaayf
húc hucs
hục hucj
huê huee
huề hueef
huế huees
huệ hueej
huếch hueechs
huênh huenhe
huểnh hueenhr
huếnh hueenhs
hùi huif
hủi huir
húi huis
hụi huij
hùm humf
hũm humx
húm hums
hụm humj
hùn hunf
hủn hunr
hùng hungf
hủng hungr
húng hungs
huổi huooir
huông huongo
huồng huoongf
huống huoongs
huơ huow
huờ huowf
huơn huonw
huờn huownf
huỡn huownx
húp hups
hụp hupj
hút huts
hụt hutj
huých huychs
huỵch huychj
huyên huyene
huyền huyeenf
huyển huyeenr
huyễn huyeenx
huyến huyeens
huyện huyeenj
huyết huyeets
huyệt huyeetj
huỳnh huynhf
huỷnh huynhr
huýnh huynhs
huýt huyts
hư huw
hừ huwf
hử huwr
hữ huwx
hứ huws
hự huwj
hưa huaw
hừa huwaf
hữa huwax
hứa huwas
hức huwcs
hực huwcj
hừm huwmf
hưn hunw
hưng hungw
hừng huwngf
hửng huwngr
hững huwngx
hứng huwngs
hước huowcs
hướm huowms
hượm huowmj
hương huongw
hường huowngf
hưởng huowngr
hướng huowngs
hươu huouw
hưu huuw
hữu huwux
hựu huwuj
hỷ hyr
hỹ hyx
hý hys
hyđro hydrod
ì if
ỉ ir
ĩ ix
í is
ị ij
ìa iaf
ỉa iar
ĩa iax
ía ias
ịa iaj
íc ics
ỉch ichr
ích ichs
ịch ichj
ìh ihf
ìi iif
ìm imf
ỉm imr
ĩm imx
ím ims
ịm imj
ìn inf
ỉn inr
ĩn inx
ín ins
ịn inj
ỉng ingr
íng ings
ịng ingj
ình inhf
ỉnh inhr
ĩnh inhx
ính inhs
ịnh inhj
iốt ioots
iới iowis
íp ips
ịp ipj
ít its
ịt itj
ìu iuf
ỉu iur
ĩu iux
íu ius
ịu iuj
iý iys
jà jaf
jì jif
jí jis
jó jos
josé joses
jú jus
jút juts
jữ juwx
kách kachs
kađai kadaid
kài kaif
kalá kalas
kalú kalus
kạn kanj
kcách kcachs
kđrao kdraod
kè kef
kẻ ker
kẽ kex
ké kes
kẹ kej
kéc kecs
kèm kemf
kẻm kemr
kẽm kemx
kém kems
kèn kenf
kén kens
kẹn kenj
kẻng kengr
kèo keof
kẻo keor
kẽo keox
kéo keos
kẹo keoj
kép keps
kẹp kepj
két kets
kẹt ketj
kê kee
kề keef
kể keer
kế kees
kệ keej
kếch keechs
kệch keechj
kềm keemf
kên kene
kền keenf
kêng kenge
kênh kenhe
kềnh keenhf
kễnh keenhx
kệnh keenhj
kếp keeps
kết keets
kêu keue
kều keeuf
kgông kgongo
khà khaf
khả khar
khá khas
khạ khaj
khác khacs
khạc khacj
khách khachs
khải khair
khái khais
khại khaij
khảm khamr
khám khams
khàn khanf
khản khanr
khán khans
khàng khangf
khảng khangr
kháng khangs
khạng khangj
khành khanhf
khảnh khanhr
khánh khanhs
khào khaof
khảo khaor
kháo khaos
khạo khaoj
kháp khaps
khạp khapj
khát khats
khạt khatj
kháu khaus
khảy khayr
kháy khays
khắ khaws
khắc khawcs
khặc khawcj
khăm khamw
khẳm khawmr
khắm khawms
khăn khanw
khằn khawnf
khẳn khawnr
khắn khawns
khăng khangw
khằng khawngf
khẳng khawngr
khắng khawngs
khắp khawps
khắt khawts
khấc khaacs
khâm khama
khẩm khaamr
khấm khaams
khân khana
khẩn khaanr
khấn khaans
khẩng khaangr
khấng khaangs
khấp khaaps
khập khaapj
khất khaats
khật khaatj
khâu khaua
khẩu khaaur
khấu khaaus
khậu khaauj
khẩy khaayr
khè khef
khẻ kher
khẽ khex
khé khes
khẹ khej
khẹc khecj
khém khems
khèn khenf
khén khens
khèo kheof
khẻo kheor
khéo kheos
khép kheps
khét khets
khẹt khetj
khê khee
khề kheef
khể kheer
khế khees
khệ kheej
khến kheens
khệng kheengj
khênh khenhe
khềnh kheenhf
khểnh kheenhr
khệnh kheenhj
khêu kheue
khều kheeuf
khểu kheeur
khì khif
khỉ khir
khí khis
khị khij
khìa khiaf
khỉa khiar
khía khias
khịa khiaj
khích khichs
khiêm khieme
khiểm khieemr
khiếm khieems
khiệm khieemj
khiên khiene
khiền khieenf
khiển khieenr
khiến khieens
khiêng khienge
khiễng khieengx
khiếp khieeps
khiết khieets
khiêu khieue
khiều khieeuf
khiếu khieeus
khìn khinf
khín khins
khỉnh khinhr
khĩnh khinhx
khít khits
khịt khitj
khìu khiuf
khỉu khiur
khíu khius
khịu khiuj
khlá khlas
khò khof
khỏ khor
khó khos
khoác khoacs
khoạc khoacj
khoách khoachs
khoải khoair
khoái khoais
khoản khoanr
khoán khoans
khoảng khoangr
khoáng khoangs
khoảnh khoanhr
khoào khoaof
khoát khoats
khoạt khoatj
khoáy khoays
khoắc khoawcs
khoăm khoamw
khoằm khoawmf
khoắm khoawms
khoăn khoanw
khoắn khoawns
khoắng khoawngs
khoắt khoawts
khóc khocs
khoèn khoenf
khoèo khoeof
khoẻo khoeor
khoét khoets
khỏi khoir
khói khois
khòm khomf
khóm khoms
khọm khomj
khòn khonf
khọn khonj
khòng khongf
khỏng khongr
khót khots
khô khoo
khổ khoor
khố khoos
khốc khoocs
khôg khogo
khôi khoio
khổi khooir
khối khoois
khôn khono
khổn khoonr
khốn khoons
không khongo
khổng khoongr
khống khoongs
khốt khoots
khơ khow
khờ khowf
khớ khows
khơi khoiw
khởi khowir
khới khowis
khơm khomw
khớm khowms
khơme khomew
khờn khownf
khớn khowns
khớp khowps
khù khuf
khủ khur
khũ khux
khú khus
khụ khuj
khùa khuaf
khủa khuar
khúa khuas
khuân khuana
khuẩn khuaanr
khuẫn khuaanx
khuâng khuanga
khuất khuaats
khuây khuaya
khuấy khuaays
khúc khucs
khục khucj
khuê khuee
khuể khueer
khuếch khueechs
khúm khums
khùng khungf
khủng khungr
khuôn khuono
khuông khuongo
khuơ khuow
khụt khutj
khuých khuychs
khuyên khuyene
khuyển khuyeenr
khuyến khuyeens
khuyết khuyeets
khuỳnh khuynhf
khuýnh khuynhs
khuỷu khuyur
khuỵu khuyuj
khư khuw
khừ khuwf
khử khuwr
khứ khuws
khự khuwj
khừa khuwaf
khứa khuwas
khựa khuwaj
khừng khuwngf
khửng khuwngr
khứng khuwngs
khựng khuwngj
khước khuowcs
khươi khuoiw
khươm khuomw
khươn khuonw
khương khuongw
khưỡng khuowngx
khướt khuowts
khướu khuowus
khưu khuuw
khứu khuwus
khyển khyeenr
kì kif
kỉ kir
kĩ kix
kí kis
kị kij
kìa kiaf
kỉch kichr
kích kichs
kịch kichj
kiệ kieej
kiêm kieme
kiềm kieemf
kiểm kieemr
kiếm kieems
kiệm kieemj
kiên kiene
kiền kieenf
kiển kieenr
kiến kieens
kiện kieenj
kiêng kienge
kiềng kieengf
kiểng kieengr
kiễng kieengx
kiếng kieengs
kiếp kieeps
kiệp kieepj
kiết kieets
kiệt kieetj
kiêu kieue
kiều kieeuf
kiểu kieeur
kiếu kieeus
kiệu kieeuj
kiló kilos
kilô kiloo
kilôgam kilogamo
kilôm kilomo
kilômet kilometo
kìm kimf
kìn kinf
kín kins
kịn kinj
kình kinhf
kỉnh kinhr
kính kinhs
kinó kinos
kíp kips
kịp kipj
kít kits
kịt kitj
kitô kitoo
kĩu kiux
kíu kius
kò kof
kó kos
kòp kopf
kót kots
kô koo
kốc koocs
kôn kono
kông kongo
kơ kow
kơi koiw
kpă kpaw
kpăng kpangw
kráp kraps
krăng krangw
krẹ krej
krêy kreye
krôm kromo
krông krongo
ktlê ktlee
kủ kur
kúba kubas
kúc kucs
kuênh kuenhe
kỳ kyf
kỷ kyr
kỹ kyx
ký kys
kỵ kyj
là laf
lả lar
lã lax
lá las
lạ laj
lác lacs
lạc lacj
lách lachs
lạch lachj
lài laif
lải lair
lãi laix
lái lais
lại laij
làm lamf
lảm lamr
lãm lamx
lạm lamj
làn lanf
lãn lanx
lán lans
lạn lanj
làng langf
lảng langr
lãng langx
láng langs
lạng langj
lành lanhf
lảnh lanhr
lãnh lanhx
lánh lanhs
lạnh lanhj
lào laof
lảo laor
lão laox
láo laos
lạo laoj
láp laps
lạp lapj
lát lats
lạt latj
làu lauf
lảu laur
láu laus
lạu lauj
lày layf
lảy layr
láy lays
lạy layj
lắc lawcs
lặc lawcj
lăk lakw
lắk lawks
lăm lamw
lằm lawmf
lẳm lawmr
lắm lawms
lặm lawmj
lăn lanw
lằn lawnf
lẳn lawnr
lặn lawnj
lăng langw
lằng lawngf
lẳng lawngr
lẵng lawngx
lắng lawngs
lặng lawngj
lắp lawps
lặp lawpj
lắt lawts
lặt lawtj
lấc laacs
lâm lama
lầm laamf
lẩm laamr
lẫm laamx
lấm laams
lậm laamj
lân lana
lần laanf
lẩn laanr
lẫn laanx
lấn laans
lận laanj
lâng langa
lấng laangs
lâp lapa
lấp laaps
lập laapj
lất laats
lật laatj
lâu laua
lầu laauf
lẩu laaur
lấu laaus
lậu laauj
lây laya
lầy laayf
lẩy laayr
lẫy laayx
lấy laays
lậy laayj
lè lef
lẻ ler
lẽ lex
lé les
lẹ lej
léc lecs
lèm lemf
lẻm lemr
lém lems
lẹm lemj
lèn lenf
lẻn lenr
lẽn lenx
lén lens
lẹn lenj
lèng lengf
lẻng lengr
léng lengs
lèo leof
lẻo leor
lẽo leox
léo leos
lẹo leoj
lép leps
lẹp lepj
lét lets
lẹt letj
lê lee
lề leef
lể leer
lễ leex
lệ leej
lếch leechs
lệch leechj
lên lene
lênh lenhe
lềnh leenhf
lểnh leenhr
lễnh leenhx
lệnh leenhj
lênin lenine
lết leets
lệt leetj
lêu leue
lều leeuf
lểu leeur
lễu leeux
lếu leeus
lệu leeuj
lểy leeyr
lếy leeys
lì lif
lí lis
lị lij
lìa liaf
lía lias
lịa liaj
líc lics
lích lichs
lịch lichj
liếc lieecs
liêm lieme
liềm lieemf
liễm lieemx
liếm lieems
liệm lieemj
liên liene
liền lieenf
liễn lieenx
liến lieens
liêng lienge
liềng lieengf
liểng lieengr
liếng lieengs
liệng lieengj
liếp lieeps
liệp lieepj
liệt lieetj
liêu lieue
liều lieeuf
liểu lieeur
liễu lieeux
liếu lieeus
liệu lieeuj
lìm limf
lỉm limr
lịm limj
lìn linf
lình linhf
lỉnh linhr
lĩnh linhx
lính linhs
lịnh linhj
líp lips
lịp lipj
lít lits
lịt litj
litô litoo
lìu liuf
líu lius
lịu liuj
lò lof
lõ lox
ló los
lọ loj
loạc loacj
loách loachs
loài loaif
loại loaij
loàn loanf
loán loans
loạn loanj
loàng loangf
loảng loangr
loãng loangx
loáng loangs
loạng loangj
loát loats
loạt loatj
loăn loanw
loăng loangw
loằng loawngf
loắt loawts
lóc locs
lọc locj
loẻn loenr
loét loets
loẹt loetj
lòi loif
lỏi loir
lõi loix
lói lois
lọi loij
lòm lomf
lỏm lomr
lõm lomx
lóm loms
lọm lomj
lòn lonf
lỏn lonr
lọn lonj
lòng longf
lỏng longr
lõng longx
lóng longs
lọng longj
lóp lops
lọp lopj
lót lots
lọt lotj
lô loo
lồ loof
lổ loor
lỗ loox
lố loos
lộ looj
lôc loco
lốc loocs
lộc loocj
lôgic logico
lôi loio
lồi looif
lỗi looix
lối loois
lội looij
lôm lomo
lồm loomf
lổm loomr
lốm looms
lộm loomj
lôn lono
lồn loonf
lổn loonr
lốn loons
lộn loonj
lông longo
lồng loongf
lổng loongr
lộng loongj
lốp loops
lộp loopj
lốt loots
lột lootj
lơ low
lờ lowf
lở lowr
lỡ lowx
lớ lows
lợ lowj
lơi loiw
lời lowif
lởi lowir
lỡi lowix
lới lowis
lợi lowij
lờm lowmf
lởm lowmr
lỡm lowmx
lợm lowmj
lơn lonw
lờn lownf
lởn lownr
lớn lowns
lợn lownj
lơng longw
lớp lowps
lợp lowpj
lớt lowts
lợt lowtj
lù luf
lủ lur
lũ lux
lú lus
lụ luj
lùa luaf
lũa luax
lúa luas
lụa luaj
luán luans
luân luana
luẩn luaanr
luấn luaans
luận luaanj
luật luaatj
lúc lucs
lục lucj
lùi luif
lủi luir
lũi luix
lúi luis
lụi luij
lùm lumf
lủm lumr
lũm lumx
lúm lums
lụm lumj
lùn lunf
lủn lunr
lũn lunx
lún luns
lụn lunj
lùng lungf
lủng lungr
lũng lungx
lúng lungs
lụng lungj
luóm luoms
luốc luoocs
luộc luoocj
luỗi luooix
luôm luomo
luộm luoomj
luôn luono
luồn luoonf
luông luongo
luồng luoongf
luỗng luoongx
luống luoongs
luốt luoots
luột luootj
lúp lups
lụp lupj
lút luts
lụt lutj
luyên luyene
luyến luyeens
luyện luyeenj
luyệt luyeetj
luýnh luynhs
lư luw
lừ luwf
lử luwr
lữ luwx
lự luwj
lưa luaw
lừa luwaf
lửa luwar
lữa luwax
lứa luwas
lựa luwaj
lưc lucw
lức luwcs
lực luwcj
lừm luwmf
lưng lungw
lừng luwngf
lửng luwngr
lững luwngx
lứng luwngs
lựng luwngj
lược luowcj
lười luowif
lưỡi luowix
lưới luowis
lươm luomw
lườm luowmf
lượm luowmj
lươn luonw
lườn luownf
lượn luownj
lương luongw
lường luowngf
lưỡng luowngx
lướng luowngs
lượng luowngj
lướt luowts
lượt luowtj
lứt luwts
lưu luuw
lữu luwux
lựu luwuj
lỳ lyf
lỹ lyx
lý lys
lỵ lyj
mà maf
mả mar
mã max
má mas
mạ maj
mác macs
mạc macj
mách machs
mạch machj
mài maif
mải mair
mãi maix
mái mais
mại maij
màn manf
mản manr
mãn manx
mán mans
mạn manj
màng mangf
mảng mangr
mãng mangx
máng mangs
mạng mangj
mành manhf
mảnh manhr
mãnh manhx
mánh manhs
mạnh manhj
mào maof
mão maox
máo maos
mạo maoj
mạp mapj
mát mats
mạt matj
matê matee
matrác matracs
màu mauf
máu maus
mày mayf
mảy mayr
máy mays
mạy mayj
mă maw
mắc mawcs
mặc mawcj
măk makw
măm mamw
mắm mawms
măn manw
mằn mawnf
mẳn mawnr
mắn mawns
mặn mawnj
măng mangw
mắng mawngs
mặp mawpj
mắt mawts
mặt mawtj
mâm mama
mầm maamf
mẩm maamr
mẫm maamx
mấm maams
mậm maamj
mân mana
mần maanf
mẩn maanr
mẫn maanx
mấn maans
mận maanj
mâng manga
mầng maangf
mâp mapa
mấp maaps
mập maapj
mất maats
mật maatj
mâu maua
mầu maauf
mẩu maaur
mẫu maaux
mấu maaus
mậu maauj
mây maya
mầy maayf
mẩy maayr
mấy maays
mè mef
mẻ mer
mẽ mex
mé mes
mẹ mej
méc mecs
mèm memf
mém mems
mèn menf
mén mens
mèng mengf
méng mengs
menú menus
mèo meof
mẻo meor
mẽo meox
méo meos
mẹo meoj
mép meps
mẹp mepj
mét mets
mẹt metj
mê mee
mề meef
mể meer
mễ meex
mế mees
mệ meej
mếch meechs
mêga megae
mềm meemf
mễm meemx
mên mene
mền meenf
mễn meenx
mến meens
mênh menhe
mềnh meenhf
mệnh meenhj
mết meets
mệt meetj
mêtan metane
mểu meeur
mếu meeus
mì mif
mỉ mir
mĩ mix
mí mis
mị mij
mỉa miar
mĩa miax
mía mias
mích michs
mịch michj
miẻo mieor
miên miene
miền mieenf
miễn mieenx
miến mieens
miện mieenj
miêng mienge
miểng mieengr
miếng mieengs
miệng mieengj
miết mieets
miệt mieetj
miêu mieue
miều mieeuf
miểu mieeur
miễu mieeux
miếu mieeus
mỉm mimr
mĩm mimx
mím mims
mìn minf
mịn minj
míng mings
mình minhf
mỉnh minhr
mính minhs
mịnh minhj
míp mips
mít mits
mịt mitj
mìu miuf
míu mius
mlài mlaif
mlời mlowif
mluộm mluoomj
mnhời mnhowif
mní mnis
mò mof
mỏ mor
mõ mox
mó mos
mọ moj
móc mocs
mọc mocj
mòi moif
mỏi moir
mõi moix
mói mois
mọi moij
mòm momf
mỏm momr
mõm momx
móm moms
mòn monf
món mons
mọn monj
moná monas
mòng mongf
mỏng mongr
móng mongs
mọng mongj
móp mops
mọp mopj
mót mots
mọt motj
mô moo
mồ moof
mổ moor
mỗ moox
mố moos
mộ mooj
môc moco
mốc moocs
mộc moocj
môi moio
mồi mooif
mỗi mooix
mối moois
mội mooij
mộl moolj
môm momo
mồm moomf
mômen momeno
môn mono
mồn moonf
mông mongo
mồng moongf
mổng moongr
mỗng moongx
mống moongs
mộng moongj
môt moto
mốt moots
một mootj
mơ mow
mờ mowf
mở mowr
mỡ mowx
mớ mows
mợ mowj
mơi moiw
mời mowif
mới mowis
mợi mowij
mơm momw
mờm mowmf
mớm mowms
mơn monw
mởn mownr
mỡn mownx
mớn mowns
mớp mowps
mrơn mronw
mù muf
mủ mur
mũ mux
mú mus
mụ muj
mùa muaf
múa muas
múc mucs
mục mucj
mùi muif
mủi muir
mũi muix
múi muis
mụi muij
mủm mumr
mũm mumx
múm mums
mùn munf
mủn munr
mún muns
mụn munj
mùng mungf
mủng mungr
muôi muoio
muồi muooif
muỗi muooix
muối muoois
muội muooij
muỗm muoomx
muôn muono
muốn muoons
muộn muoonj
muông muongo
muồng muoongf
muổng muoongr
muỗng muoongx
muống muoongs
muốt muoots
múp mups
mụp mupj
muséum museums
mút muts
mụt mutj
mư muw
mự muwj
mưa muaw
mửa muwar
mứa muwas
mựa muwaj
mức muwcs
mực muwcj
mứn muwns
mưng mungw
mừng muwngf
mững muwngx
mược muowcj
mươi muoiw
mười muowif
mươn muonw
mướn muowns
mượn muownj
mương muongw
mường muowngf
mướp muowps
mướt muowts
mượt muowtj
mưỡu muowux
mứt muwts
mưu muuw
mứu muwus
mỳ myf
mỹ myx
mỵ myj
nà naf
nả nar
nã nax
ná nas
nạ naj
nác nacs
nạc nacj
nách nachs
nạch nachj
nài naif
nải nair
nãi naix
nái nais
nại naij
nàm namf
nảm namr
nám nams
nạm namj
nàn nanf
nản nanr
nãn nanx
nán nans
nạn nanj
nàng nangf
nãng nangx
náng nangs
nạng nangj
nành nanhf
nánh nanhs
nạnh nanhj
nào naof
não naox
náo naos
nạo naoj
nạp napj
nát nats
nạt natj
náu naus
này nayf
nảy nayr
nãy nayx
náy nays
nạy nayj
nắc nawcs
nặc nawcj
năm namw
nằm nawmf
nẳm nawmr
nắm nawms
năn nanw
nằn nawnf
nắn nawns
nặn nawnj
năng nangw
nằng nawngf
nẵng nawngx
nắng nawngs
nặng nawngj
nắp nawps
nấc naacs
nâm nama
nầm naamf
nẫm naamx
nấm naams
nậm naamj
nân nana
nần naanf
nẫn naanx
nấn naans
nâng nanga
nẫng naangx
nấng naangs
nậng naangj
nấp naaps
nập naapj
nất naats
nật naatj
nâu naua
nẫu naaux
nấu naaus
nậu naauj
nây naya
nầy naayf
nẩy naayr
nẫy naayx
nấy naays
nậy naayj
nđm ndmd
nè nef
nẻ ner
né nes
ném nems
nén nens
nẹn nenj
nèo neof
nẻo neor
nẽo neox
néo neos
nẹo neoj
nép neps
nẹp nepj
nét nets
nẹt netj
nê nee
nề neef
nể neer
nễ neex
nệ neej
nêm neme
nếm neems
nệm neemj
nên nene
nền neenf
nến neens
nện neenj
nếp neeps
nết neets
nêu neue
nếu neeus
nếy neeys
ngà ngaf
ngả ngar
ngã ngax
ngá ngas
ngạ ngaj
ngác ngacs
ngạc ngacj
ngách ngachs
ngạch ngachj
ngài ngaif
ngải ngair
ngãi ngaix
ngái ngais
ngại ngaij
ngàm ngamf
ngám ngams
ngàn nganf
ngán ngans
ngạn nganj
ngàng ngangf
ngãng ngangx
ngáng ngangs
ngạng ngangj
ngành nganhf
ngảnh nganhr
ngánh nganhs
ngạnh nganhj
ngào ngaof
ngảo ngaor
ngão ngaox
ngáo ngaos
ngạo ngaoj
ngáp ngaps
ngát ngats
ngạt ngatj
ngàu ngauf
ngáu ngaus
ngày ngayf
ngáy ngays
ngắc ngawcs
ngăm ngamw
ngằm ngawmf
ngắm ngawms
ngăn nganw
ngằn ngawnf
ngắn ngawns
ngẳng ngawngr
ngẵng ngawngx
ngặp ngawpj
ngắt ngawts
ngặt ngawtj
ngấc ngaacs
ngâm ngama
ngầm ngaamf
ngẩm ngaamr
ngẫm ngaamx
ngấm ngaams
ngậm ngaamj
ngân ngana
ngần ngaanf
ngẩn ngaanr
ngẫn ngaanx
ngấn ngaans
ngận ngaanj
ngẩng ngaangr
ngẫng ngaangx
ngấp ngaaps
ngập ngaapj
ngất ngaats
ngật ngaatj
ngâu ngaua
ngầu ngaauf
ngẩu ngaaur
ngẫu ngaaux
ngấu ngaaus
ngậu ngaauj
ngây ngaya
ngầy ngaayf
ngấy ngaays
ngậy ngaayj
ngèo ngeof
ngẹt ngetj
ngệch ngeechj
nghè nghef
nghé nghes
nghẹ nghej
nghèn nghenf
nghẽn nghenx
nghén nghens
nghẹn nghenj
nghèo ngheof
nghẻo ngheor
nghẽo ngheox
nghéo ngheos
nghẹo ngheoj
nghét nghets
nghẹt nghetj
nghê nghee
nghề ngheef
nghể ngheer
nghễ ngheex
nghế nghees
nghệ ngheej
nghếch ngheechs
nghệch ngheechj
nghển ngheenr
nghễn ngheenx
nghến ngheens
nghện ngheenj
nghênh nghenhe
nghểnh ngheenhr
nghễnh ngheenhx
nghệt ngheetj
nghêu ngheue
nghều ngheeuf
nghểu ngheeur
nghễu ngheeux
nghệu ngheeuj
nghì nghif
nghỉ nghir
nghĩ nghix
nghí nghis
nghị nghij
nghĩa nghiax
nghía nghias
nghích nghichs
nghịch nghichj
nghiêm nghieme
nghiễm nghieemx
nghiệm nghieemj
nghiên nghiene
nghiền nghieenf
nghiễn nghieenx
nghiến nghieens
nghiện nghieenj
nghiêng nghienge
nghiênh nghienhe
nghiệp nghieepj
nghiệt nghieetj
nghiêu nghieue
nghìm nghimf
nghỉm nghimr
nghìn nghinf
nghỉn nghinr
nghỉnh nghinhr
nghĩnh nghinhx
nghít nghits
nghịt nghitj
nghỉu nghiur
nghịu nghiuj
nghoèo nghoeof
nghồng nghoongf
ngích ngichs
ngịu ngiuj
ngò ngof
ngỏ ngor
ngõ ngox
ngó ngos
ngọ ngoj
ngoác ngoacs
ngoạc ngoacj
ngoách ngoachs
ngoạch ngoachj
ngoài ngoaif
ngoải ngoair
ngoái ngoais
ngoại ngoaij
ngoàm ngoamf
ngoảm ngoamr
ngoạm ngoamj
ngoãn ngoanx
ngoạn ngoanj
ngoảng ngoangr
ngoảnh ngoanhr
ngoãnh ngoanhx
ngoáo ngoaos
ngoáp ngoaps
ngoạt ngoatj
ngoảy ngoayr
ngoáy ngoays
ngoạy ngoayj
ngoắc ngoawcs
ngoặc ngoawcj
ngoằn ngoawnf
ngoẳn ngoawnr
ngoằng ngoawngf
ngoẵng ngoawngx
ngoắng ngoawngs
ngoắt ngoawts
ngoặt ngoawtj
ngóc ngocs
ngọc ngocj
ngoẻm ngoemr
ngoém ngoems
ngoẻn ngoenr
ngoèo ngoeof
ngoẻo ngoeor
ngoéo ngoeos
ngoẹo ngoeoj
ngoét ngoets
ngòi ngoif
ngõi ngoix
ngói ngois
ngòm ngomf
ngỏm ngomr
ngóm ngoms
ngọm ngomj
ngòn ngonf
ngỏn ngonr
ngón ngons
ngọn ngonj
ngòng ngongf
ngỏng ngongr
ngõng ngongx
ngóng ngongs
ngọng ngongj
ngóp ngops
ngót ngots
ngọt ngotj
ngô ngoo
ngồ ngoof
ngổ ngoor
ngỗ ngoox
ngố ngoos
ngộ ngooj
ngốc ngoocs
ngộc ngoocj
ngôi ngoio
ngồi ngooif
ngỗi ngooix
ngội ngooij
ngôm ngomo
ngồm ngoomf
ngổm ngoomr
ngôn ngono
ngồn ngoonf
ngổn ngoonr
ngốn ngoons
ngộn ngoonj
ngông ngongo
ngồng ngoongf
ngổng ngoongr
ngỗng ngoongx
ngộp ngoopj
ngốt ngoots
ngột ngootj
ngơ ngow
ngờ ngowf
ngỡ ngowx
ngớ ngows
ngợ ngowj
ngơi ngoiw
ngời ngowif
ngợi ngowij
ngơm ngomw
ngờm ngowmf
ngỡm ngowmx
ngợm ngowmj
ngơn ngonw
ngớn ngowns
ngớp ngowps
ngợp ngowpj
ngớt ngowts
ngù nguf
ngủ ngur
ngũ ngux
ngú ngus
ngụ nguj
ngụa nguaj
nguây nguaya
nguầy nguaayf
nguẩy nguaayr
nguấy nguaays
nguậy nguaayj
ngúc ngucs
ngục ngucj
nguếch ngueechs
nguệch ngueechj
ngùi nguif
ngủi nguir
ngũi nguix
ngủm ngumr
ngụm ngumj
ngùn ngunf
ngủn ngunr
ngùng ngungf
ngủng ngungr
ngúng ngungs
nguôi nguoio
nguồi nguooif
nguội nguooij
nguồn nguoonf
nguơ nguow
ngụp ngupj
ngút nguts
ngụt ngutj
nguyên nguyene
nguyền nguyeenf
nguyễn nguyeenx
nguyện nguyeenj
nguyệt nguyeetj
nguýt nguyts
nguỷu nguyur
ngư nguw
ngừ nguwf
ngữ nguwx
ngứ nguws
ngự nguwj
ngưa nguaw
ngừa nguwaf
ngửa nguwar
ngữa nguwax
ngứa nguwas
ngựa nguwaj
ngực nguwcj
ngửi nguwir
ngưng ngungw
ngừng nguwngf
ngửng nguwngr
ngứng nguwngs
ngước nguowcs
ngược nguowcj
ngươi nguoiw
người nguowif
ngưởi nguowir
ngươn nguonw
ngường nguowngf
ngưởng nguowngr
ngưỡng nguowngx
ngượng nguowngj
ngưt ngutw
ngứt nguwts
ngưu nguuw
nhà nhaf
nhả nhar
nhã nhax
nhá nhas
nhạ nhaj
nhác nhacs
nhạc nhacj
nhách nhachs
nhài nhaif
nhải nhair
nhãi nhaix
nhái nhais
nhại nhaij
nhàm nhamf
nhảm nhamr
nhám nhams
nhàn nhanf
nhản nhanr
nhãn nhanx
nhạn nhanj
nhàng nhangf
nhãng nhangx
nháng nhangs
nhạng nhangj
nhành nhanhf
nhảnh nhanhr
nhánh nhanhs
nhạnh nhanhj
nhào nhaof
nhão nhaox
nháo nhaos
nhạo nhaoj
nháp nhaps
nhạp nhapj
nhát nhats
nhạt nhatj
nhàu nhauf
nhảu nhaur
nháu nhaus
nhạu nhauj
nhày nhayf
nhảy nhayr
nháy nhays
nhạy nhayj
nhắc nhawcs
nhăm nhamw
nhằm nhawmf
nhắm nhawms
nhặm nhawmj
nhăn nhanw
nhằn nhawnf
nhẳn nhawnr
nhẵn nhawnx
nhắn nhawns
nhặn nhawnj
nhăng nhangw
nhằng nhawngf
nhẳng nhawngr
nhẵng nhawngx
nhắng nhawngs
nhặng nhawngj
nhắp nhawps
nhắt nhawts
nhặt nhawtj
nhấc nhaacs
nhâm nhama
nhầm nhaamf
nhẩm nhaamr
nhẫm nhaamx
nhấm nhaams
nhậm nhaamj
nhân nhana
nhần nhaanf
nhẩn nhaanr
nhẫn nhaanx
nhấn nhaans
nhận nhaanj
nhâng nhanga
nhấp nhaaps
nhập nhaapj
nhất nhaats
nhật nhaatj
nhâu nhaua
nhầu nhaauf
nhẩu nhaaur
nhậu nhaauj
nhây nhaya
nhầy nhaayf
nhẩy nhaayr
nhẫy nhaayx
nhấy nhaays
nhậy nhaayj
nhđm nhdmd
nhè nhef
nhẻ nher
nhẽ nhex
nhé nhes
nhẹ nhej
nhèm nhemf
nhẻm nhemr
nhém nhems
nhẹm nhemj
nhèn nhenf
nhén nhens
nhẹn nhenj
nhèo nheof
nhẻo nheor
nhẽo nheox
nhéo nheos
nhẹo nheoj
nhép nheps
nhẹp nhepj
nhét nhets
nhẹt nhetj
nhê nhee
nhể nheer
nhễ nheex
nhếch nheechs
nhệch nheechj
nhện nheenj
nhênh nhenhe
nhểu nheeur
nhếu nheeus
nhệu nheeuj
nhì nhif
nhỉ nhir
nhĩ nhix
nhí nhis
nhị nhij
nhía nhias
nhích nhichs
nhiếc nhieecs
nhiêm nhieme
nhiễm nhieemx
nhiệm nhieemj
nhiên nhiene
nhiễn nhieenx
nhiếp nhieeps
nhiệp nhieepj
nhiêt nhiete
nhiết nhieets
nhiệt nhieetj
nhiêu nhieue
nhiều nhieeuf
nhiểu nhieeur
nhiễu nhieeux
nhiếu nhieeus
nhím nhims
nhìn nhinf
nhín nhins
nhịn nhinj
nhỉnh nhinhr
nhíp nhips
nhịp nhipj
nhít nhits
nhịt nhitj
nhìu nhiuf
nhíu nhius
nhịu nhiuj
nhò nhof
nhỏ nhor
nhõ nhox
nhó nhos
nhọ nhoj
nhoài nhoaif
nhoái nhoais
nhoàm nhoamf
nhoạm nhoamj
nhoáng nhoangs
nhoạng nhoangj
nhoáy nhoays
nhoằng nhoawngf
nhóc nhocs
nhọc nhocj
nhoèn nhoenf
nhoẻn nhoenr
nhoét nhoets
nhoẹt nhoetj
nhõi nhoix
nhói nhois
nhọi nhoij
nhòm nhomf
nhỏm nhomr
nhõm nhomx
nhóm nhoms
nhòn nhonf
nhỏn nhonr
nhõn nhonx
nhón nhons
nhọn nhonj
nhòng nhongf
nhỏng nhongr
nhõng nhongx
nhóng nhongs
nhóp nhops
nhọp nhopj
nhót nhots
nhọt nhotj
nhô nhoo
nhổ nhoor
nhỗ nhoox
nhố nhoos
nhốc nhoocs
nhôi nhoio
nhồi nhooif
nhối nhoois
nhội nhooij
nhôm nhomo
nhồm nhoomf
nhổm nhoomr
nhôn nhono
nhồn nhoonf
nhổn nhoonr
nhốn nhoons
nhộn nhoonj
nhông nhongo
nhồng nhoongf
nhộng nhoongj
nhốt nhoots
nhột nhootj
nhơ nhow
nhờ nhowf
nhở nhowr
nhỡ nhowx
nhớ nhows
nhợ nhowj
nhơi nhoiw
nhời nhowif
nhởi nhowir
nhơm nhomw
nhởm nhowmr
nhớm nhowms
nhơn nhonw
nhờn nhownf
nhởn nhownr
nhỡn nhownx
nhớn nhowns
nhợn nhownj
nhớp nhowps
nhớt nhowts
nhợt nhowtj
nhtư nhtuw
nhù nhuf
nhủ nhur
nhũ nhux
nhú nhus
nhụ nhuj
nhúa nhuas
nhụa nhuaj
nhuân nhuana
nhuần nhuaanf
nhuận nhuaanj
nhúc nhucs
nhục nhucj
nhuế nhuees
nhuệ nhueej
nhùi nhuif
nhủi nhuir
nhúi nhuis
nhụi nhuij
nhúm nhums
nhùn nhunf
nhủn nhunr
nhũn nhunx
nhún nhuns
nhùng nhungf
nhủng nhungr
nhũng nhungx
nhúng nhungs
nhụng nhungj
nhuốc nhuoocs
nhuôm nhuomo
nhuốm nhuooms
nhuộm nhuoomj
nhuồn nhuoonf
nhút nhuts
nhụt nhutj
nhuyên nhuyene
nhuyễn nhuyeenx
như nhuw
nhừ nhuwf
nhử nhuwr
nhữ nhuwx
nhứ nhuws
nhự nhuwj
nhừa nhuwaf
nhựa nhuwaj
nhức nhuwcs
nhưng nhungw
nhửng nhuwngr
những nhuwngx
nhứng nhuwngs
nhựng nhuwngj
nhược nhuowcj
nhương nhuongw
nhường nhuowngf
nhưỡng nhuowngx
nhướng nhuowngs
nhượng nhuowngj
nhứt nhuwts
nhựt nhuwtj
nhữu nhuwux
nhựu nhuwuj
nì nif
nỉ nir
ní nis
nị nij
nỉa niar
nĩa niax
ních nichs
nịch nichj
niêm nieme
niềm nieemf
niệm nieemj
niên niene
niền nieenf
niển nieenr
niễn nieenx
niến nieens
niện nieenj
niềng nieengf
niễng nieengx
niếp nieeps
niệp nieepj
niết nieets
niệt nieetj
niêu nieue
niểu nieeur
niễu nieeux
niếu nieeus
niệu nieeuj
ním nims
nín nins
nình ninhf
nính ninhs
nịnh ninhj
níp nips
nít nits
nịt nitj
níu nius
nịu niuj
niutơn niutonw
nò nof
nỏ nor
nõ nox
nó nos
nọ noj
noản noanr
noãn noanx
nóc nocs
nọc nocj
nòi noif
nỏi noir
nói nois
nọi noij
nòm nomf
nỏm nomr
nỏn nonr
nõn nonx
nón nons
nọn nonj
nòng nongf
nóng nongs
nọng nongj
nóp nops
nót nots
nọt notj
nô noo
nồ noof
nổ noor
nỗ noox
nố noos
nộ nooj
nôben nobeno
nốc noocs
nôi noio
nồi nooif
nổi nooir
nỗi nooix
nối noois
nội nooij
nôm nomo
nồm noomf
nộm noomj
nôn nono
nồn noonf
nộn noonj
nông nongo
nồng noongf
nỗng noongx
nống noongs
nốp noops
nộp noopj
nốt noots
nột nootj
nơ now
nờ nowf
nở nowr
nỡ nowx
nớ nows
nợ nowj
nơi noiw
nới nowis
nơm nomw
nờm nowmf
nỡm nowmx
nớp nowps
nợp nowpj
nớt nowts
nơtron notronw
nũ nux
nú nus
nụ nuj
nủa nuar
nũa nuax
núa nuas
núc nucs
nục nucj
núcleo nucleos
nùi nuif
nũi nuix
núi nuis
nụi nuij
núm nums
nùn nunf
nùng nungf
nủng nungr
nũng nungx
núng nungs
nuốc nuoocs
nuộc nuoocj
nuôi nuoio
nuối nuoois
nuốm nuooms
nuông nuongo
nuốt nuoots
nuột nuootj
núp nups
nút nuts
nư nuw
nử nuwr
nữ nuwx
nứ nuws
nự nuwj
nưa nuaw
nửa nuwar
nữa nuwax
nứa nuwas
nức nuwcs
nực nuwcj
nưng nungw
nừng nuwngf
nứng nuwngs
nựng nuwngj
nước nuowcs
nược nuowcj
nườm nuowmf
nương nuongw
nường nuowngf
nướng nuowngs
nượp nuowpj
nướu nuowus
nứt nuwts
nưu nuuw
nữu nuwux
nứu nuwus
nựu nuwuj
ò of
ỏ or
õ ox
ó os
ọ oj
oác oacs
oạc oacj
oách oachs
oạch oachj
oải oair
oái oais
oại oaij
oàm oamf
oản oanr
oán oans
oàng oangf
oảng oangr
oành oanhf
oánh oanhs
oạp oapj
oát oats
oạt oatj
oắc oawcs
oăm oamw
oằn oawnf
oẳn oawnr
oăng oangw
oẳng oawngr
oắt oawts
oặt oawtj
óc ocs
ọc ocj
òi oif
ỏi oir
õi oix
ói ois
ọi oij
olá olas
òm omf
ỏm omr
õm omx
óm oms
ọm omj
òn onf
ỏn onr
õn onx
ón ons
ọn onj
òng ongf
ỏng ongr
õng ongx
óng ongs
ọng ongj
óp ops
ọp opj
ót ots
ọt otj
ô oo
ồ oof
ổ oor
ỗ oox
ố oos
ộ ooj
ôb obo
ôben obeno
ôc oco
ốc oocs
ộc oocj
ôca ocao
ôgam ogamo
ôhai ohaio
ôi oio
ồi ooif
ổi ooir
ỗi ooix
ối oois
ội ooij
ôin oino
ộl oolj
ôla olao
ôliu oliuo
ôm omo
ồm oomf
ổm oomr
ỗm oomx
ốm ooms
ộm oomj
ômet ometo
ômi omio
ôn ono
ồn oonf
ổn oonr
ỗn oonx
ốn oons
ộn oonj
ône oneo
ông ongo
ồng oongf
ổng oongr
ỗng oongx
ống oongs
ộng oongj
ốp oops
ộp oopj
ôt oto
ốt oots
ột ootj
ôtel otelo
ơ ow
ờ owf
ở owr
ỡ owx
ớ ows
ợ owj
ơc ocw
ờc owcf
ớc owcs
ợc owcj
ơi oiw
ời owif
ởi owir
ỡi owix
ới owis
ợi owij
ờl owlf
ơm omw
ờm owmf
ởm owmr
ỡm owmx
ớm owms
ợm owmj
ơme omew
ơmi omiw
ơn onw
ờn ownf
ởn ownr
ỡn ownx
ớn owns
ợn ownj
ơng ongw
ờng owngf
ởng owngr
ỡng owngx
ớng owngs
ợng owngj
ơngen ongenw
ớp owps
ợp owpj
ơt otw
ớt owts
ợt owtj
ơu ouw
ờu owuf
ỡu owux
ớu owus
ợu owuj
pà paf
pả par
pạ paj
pác pacs
pạc pacj
pảh pahr
pài paif
palăng palangw
pán pans
pàng pangf
panô panoo
pào paof
páo paos
páp paps
pát pats
pắc pawcs
păh pahw
pằn pawnf
păng pangw
pấc paacs
pâu paua
pẻ per
péc pecs
pẻng pengr
péo peos
pê pee
phà phaf
phả phar
phá phas
phạ phaj
phác phacs
phạc phacj
phách phachs
phạch phachj
phài phaif
phải phair
phái phais
phàm phamf
phạm phamj
phàn phanf
phản phanr
phãn phanx
phán phans
phạn phanj
phàng phangf
phảng phangr
phạng phangj
phành phanhf
phảnh phanhr
phạnh phanhj
phào phaof
phảo phaor
pháo phaos
phaolô phaoloo
pháp phaps
phạp phapj
phát phats
phạt phatj
phảy phayr
pháy phays
phắc phawcs
phăm phamw
phăn phanw
phắn phawns
phăng phangw
phẳng phawngr
phặng phawngj
phắp phawps
phặp phawpj
phắt phawts
phâm phama
phầm phaamf
phẩm phaamr
phân phana
phần phaanf
phẩn phaanr
phẫn phaanx
phấn phaans
phận phaanj
phấp phaaps
phập phaapj
phất phaats
phật phaatj
phầu phaauf
phẩu phaaur
phẫu phaaux
phấu phaaus
phây phaya
phẩy phaayr
phè phef
phé phes
phéc phecs
phẹc phecj
phèn phenf
phèng phengf
phéng phengs
phèo pheof
phép pheps
phét phets
phẹt phetj
phê phee
phề pheef
phế phees
phệ pheej
phếch pheechs
phệch pheechj
phên phene
phễn pheenx
phện pheenj
phềnh pheenhf
phễnh pheenhx
phệnh pheenhj
phết pheets
phệt pheetj
phều pheeuf
phễu pheeux
phếu pheeus
phì phif
phỉ phir
phí phis
phị phij
phìa phiaf
phía phias
phịa phiaj
phích phichs
phịch phichj
phiêm phieme
phiếm phieems
phiên phiene
phiền phieenf
phiến phieens
phiện phieenj
phiêng phienge
phiết phieets
phiệt phieetj
phiêu phieue
phiểu phieeur
phiếu phieeus
phiệu phieeuj
phím phims
phìn phinf
phình phinhf
phỉnh phinhr
phĩnh phinhx
phính phinhs
phịt phitj
phịu phiuj
phlạo phlaoj
phlắc phlawcs
phò phof
phó phos
phóc phocs
phọc phocj
phòi phoif
phón phons
phòng phongf
phỏng phongr
phóng phongs
phọng phongj
phót phots
phọt photj
phô phoo
phồ phoof
phổ phoor
phố phoos
phốc phoocs
phộc phoocj
phôi phoio
phổi phooir
phối phoois
phôm phomo
phồm phoomf
phôn phono
phồn phoonf
phông phongo
phồng phoongf
phổng phoongr
phỗng phoongx
phộng phoongj
phốp phoops
phốt phoots
phơ phow
phờ phowf
phở phowr
phớ phows
phơi phoiw
phời phowif
phới phowis
phơn phonw
phởn phownr
phỡn phownx
phớn phowns
phớt phowts
phrăng phrangw
phù phuf
phủ phur
phũ phux
phú phus
phụ phuj
phúc phucs
phục phucj
phủi phuir
phùn phunf
phún phuns
phùng phungf
phủng phungr
phúng phungs
phụng phungj
phúp phups
phụp phupj
phút phuts
phụt phutj
phư phuw
phứa phuwas
phựa phuwaj
phức phuwcs
phưng phungw
phừng phuwngf
phước phuowcs
phưỡn phuownx
phướn phuowns
phương phuongw
phường phuowngf
phướng phuowngs
phượng phuowngj
phượt phuowtj
phượu phuowuj
phứt phuwts
phựt phuwtj
phữu phuwux
phựu phuwuj
phvđ phvdd
pí pis
pianô pianoo
pích pichs
pín pins
píp pips
pisát pisats
pít pits
plây playa
plông plongo
plơi ploiw
pó pos
pótay potays
pô poo
pôc poco
pôn pono
pông pongo
pốp poops
pốt poots
pơ pow
pờ powf
pơng pongw
prâng pranga
prô proo
prông prongo
pù puf
pú pus
pụa puaj
púc pucs
puộc puoocj
pút puts
pư puw
pươi puoiw
qì qif
quà quaf
quả quar
quã quax
quá quas
quạ quaj
quác quacs
quạc quacj
quách quachs
quạch quachj
quài quaif
quải quair
quái quais
quại quaij
quàn quanf
quản quanr
quán quans
quàng quangf
quảng quangr
quãng quangx
quáng quangs
quạng quangj
quành quanhf
quảnh quanhr
quánh quanhs
quạnh quanhj
quào quaof
quáo quaos
quát quats
quạt quatj
quàu quauf
quảu quaur
quáu quaus
quạu quauj
quày quayf
quảy quayr
quáy quays
quạy quayj
quắc quawcs
quặc quawcj
quăm quamw
quằm quawmf
quẳm quawmr
quắm quawms
quặm quawmj
quăn quanw
quằn quawnf
quẳn quawnr
quắn quawns
quặn quawnj
quăng quangw
quằng quawngf
quẳng quawngr
quẵng quawngx
quặng quawngj
quắp quawps
quặp quawpj
quắt quawts
quặt quawtj
quấc quaacs
quân quana
quần quaanf
quẩn quaanr
quẫn quaanx
quấn quaans
quận quaanj
quâng quanga
quầng quaangf
quẩng quaangr
quẫng quaangx
quất quaats
quật quaatj
quây quaya
quầy quaayf
quẩy quaayr
quẫy quaayx
quấy quaays
quậy quaayj
què quef
quẻ quer
quẽ quex
qué ques
quèn quenf
quén quens
quẹn quenj
quèo queof
quéo queos
quẹo queoj
quẹp quepj
quét quets
quẹt quetj
quê quee
quế quees
quệ queej
quệch queechj
quên quene
quện queenj
quềnh queenhf
quệnh queenhj
quết queets
quệt queetj
quều queeuf
quếu queeus
quì quif
quỉ quir
quĩ quix
quí quis
quị quij
quình quinhf
quít quits
quịt quitj
quíu quius
quọ quoj
quoàng quoangf
quoạng quoangj
quoắt quoawts
quốc quoocs
quơ quow
quờ quowf
quở quowr
quớ quows
quới quowis
quờn quownf
quởn quownr
quởng quowngr
quớt quowts
quỳ quyf
quỷ quyr
quỹ quyx
quý quys
quỵ quyj
quých quychs
quyên quyene
quyền quyeenf
quyển quyeenr
quyến quyeens
quyện quyeenj
quyết quyeets
quyệt quyeetj
quỳng quyngf
quỳnh quynhf
quỷnh quynhr
quýnh quynhs
quýt quyts
quỵt quytj
rà raf
rả rar
rã rax
rá ras
rạ raj
rác racs
rạc racj
rách rachs
rạch rachj
rađi radid
rađio radiod
raglây raglaya
rài raif
rải rair
rãi raix
rái rais
rại raij
ràm ramf
rám rams
rạm ramj
ràn ranf
rán rans
rạn ranj
ràng rangf
rảng rangr
ráng rangs
rạng rangj
rành ranhf
rảnh ranhr
rãnh ranhx
rạnh ranhj
ráno ranos
rào raof
rảo raor
rão raox
ráo raos
rạo raoj
ráp raps
rạp rapj
rápida rapidas
rápido rapidos
rát rats
rạt ratj
ràu rauf
rảu raur
ráu raus
rày rayf
rảy rayr
rãy rayx
ráy rays
rạy rayj
rắc rawcs
rặc rawcj
răm ramw
rằm rawmf
rắm rawms
rặm rawmj
răn ranw
rằn rawnf
rắn rawns
rặn rawnj
răng rangw
rằng rawngf
rặng rawngj
rắp rawps
rắt rawts
rặt rawtj
râm rama
rầm raamf
rẩm raamr
rẫm raamx
rấm raams
rậm raamj
rân rana
rần raanf
rẫn raanx
rấn raans
rận raanj
râng ranga
rậng raangj
rấp raaps
rập raapj
rất raats
rật raatj
râu raua
rầu raauf
rẫu raaux
rậu raauj
rây raya
rầy raayf
rẩy raayr
rẫy raayx
rcăm rcamw
rè ref
rẻ rer
rẽ rex
ré res
rẹc recj
rèm remf
rèn renf
rén rens
rẻng rengr
rèo reof
rẻo reor
réo reos
rẹo reoj
rép reps
rẹp repj
rét rets
rẹt retj
rê ree
rề reef
rể reer
rễ reex
rế rees
rệ reej
rếch reechs
rệch reechj
rêm reme
rên rene
rền reenf
rến reens
rện reenj
rềnh reenhf
rểnh reenhr
rếp reeps
rệp reepj
rết reets
rệt reetj
rêu reue
rều reeuf
rểu reeur
rệu reeuj
rì rif
rỉ rir
rĩ rix
rí ris
rị rij
rìa riaf
rỉa riar
rịa riaj
ríc rics
rích richs
rịch richj
riếc rieecs
riềm rieemf
riêng rienge
riềng rieengf
riếp rieeps
riết rieets
riệt rieetj
riêu rieue
riếu rieeus
rím rims
rĩn rinx
rịn rinj
rình rinhf
rỉnh rinhr
rĩnh rinhx
rịp ripj
rít rits
rịt ritj
rítra ritras
rìu riuf
ríu rius
rivê rivee
rlâm rlama
rò rof
rỏ ror
rõ rox
ró ros
rọ roj
roàng roangf
róc rocs
rọc rocj
ròi roif
rỏi roir
rõi roix
rói rois
rọi roij
ròm romf
rỏm romr
róm roms
rọm romj
ròn ronf
rỏn ronr
rón rons
rọn ronj
ròng rongf
rỏng rongr
róng rongs
rọng rongj
rót rots
rọt rotj
rô roo
rồ roof
rổ roor
rỗ roox
rố roos
rộ rooj
rốc roocs
rộc roocj
rồi rooif
rổi rooir
rỗi rooix
rối roois
rội rooij
rôm romo
rồm roomf
rộm roomj
rôma romao
rôn rono
rổn roonr
rốn roons
rộn roonj
rông rongo
rồng roongf
rổng roongr
rỗng roongx
rống roongs
rộng roongj
rốp roops
rộp roopj
rốt roots
rơ row
rờ rowf
rở rowr
rỡ rowx
rớ rows
rợ rowj
rơi roiw
rời rowif
rợi rowij
rơm romw
rờm rowmf
rởm rowmr
rớm rowms
rợm rowmj
rơn ronw
rờn rownf
rởn rownr
rỡn rownx
rớn rowns
rợn rownj
rơngen rongenw
rớp rowps
rợp rowpj
rớt rowts
rợt rowtj
rù ruf
rủ rur
rũ rux
rú rus
rùa ruaf
rủa ruar
rũa ruax
rụa ruaj
rúc rucs
rục rucj
ruê ruee
rùi ruif
rủi ruir
rũi ruix
rúi ruis
rụi ruij
rùm rumf
rúm rums
rùn runf
rủn runr
rún runs
rùng rungf
rủng rungr
rúng rungs
rụng rungj
ruốc ruoocs
ruồi ruooif
ruổi ruooir
ruỗi ruooix
ruối ruoois
ruộm ruoomj
ruồng ruoongf
ruỗng ruoongx
ruộng ruoongj
ruột ruootj
rúp rups
rút ruts
rụt rutj
rư ruw
rừ ruwf
rứ ruws
rưa ruaw
rừa ruwaf
rửa ruwar
rữa ruwax
rứa ruwas
rựa ruwaj
rức ruwcs
rực ruwcj
rưng rungw
rừng ruwngf
rửng ruwngr
rước ruowcs
rươi ruoiw
rười ruowif
rưởi ruowir
rưỡi ruowix
rưới ruowis
rượi ruowij
rươm ruomw
rườm ruowmf
rướm ruowms
rườn ruownf
rướn ruowns
rượn ruownj
rương ruongw
rường ruowngf
rượt ruowtj
rượu ruowuj
rứt ruwts
rựt ruwtj
rỵn rynj
sà saf
sả sar
sã sax
sá sas
sạ saj
sác sacs
sạc sacj
sách sachs
sạch sachj
sài saif
sải sair
sãi saix
sái sais
sại saij
saigón saigons
sakê sakee
salát salats
salâm salama
sàm samf
sảm samr
sám sams
sạm samj
sàn sanf
sản sanr
sán sans
sạn sanj
sàng sangf
sảng sangr
sáng sangs
sành sanhf
sảnh sanhr
sánh sanhs
sào saof
sảo saor
são saox
sáo saos
sạo saoj
sáp saps
sạp sapj
sát sats
sạt satj
sáu saus
sảy sayr
sãy sayx
sắc sawcs
sặc sawcj
săm samw
sắm sawms
sặm sawmj
săn sanw
sằn sawnf
sẳn sawnr
sẵn sawnx
sắn sawns
săng sangw
sằng sawngf
sẵng sawngx
sắng sawngs
sắp sawps
sặp sawpj
săt satw
sắt sawts
sặt sawtj
sắu sawus
sâm sama
sầm saamf
sẩm saamr
sẫm saamx
sấm saams
sậm saamj
sân sana
sần saanf
sẩn saanr
sẫn saanx
sấn saans
sận saanj
sâng sanga
sấp saaps
sập saapj
sất saats
sật saatj
sâu saua
sầu saauf
sẩu saaur
sấu saaus
sậu saauj
sây saya
sầy saayf
sẩy saayr
sấy saays
sậy saayj
sè sef
sẻ ser
sẽ sex
sé ses
sẹ sej
séc secs
sém sems
sẹm semj
sèn senf
sẻn senr
sẻng sengr
sèo seof
sẹo seoj
sét sets
sẹt setj
sê see
sề seef
sể seer
sễ seex
sế sees
sệ seej
sếch seechs
sệch seechj
sên sene
sền seenf
sến seens
sênh senhe
sềnh seenhf
sểnh seenhr
sếp seeps
sệp seepj
sết seets
sệt seetj
sêu seue
sếu seeus
sgần sgaanf
sì sif
sỉ sir
sĩ six
sí sis
sị sij
sỉa siar
sịa siaj
sích sichs
sịch sichj
sidét sidets
siđa sidad
siêm sieme
siểm sieemr
siên siene
siển sieenr
siễn sieenx
siêng sienge
siểng sieengr
siếp sieeps
siệp sieepj
siết sieets
siêu sieue
siếu sieeus
sìn sinf
sỉn sinr
sín sins
síne sines
sình sinhf
sỉnh sinhr
sính sinhs
sịp sipj
sít sits
sịt sitj
slìn slinf
sò sof
sỏ sor
só sos
sọ soj
soạc soacj
soài soaif
soải soair
soái soais
soại soaij
soàn soanf
soán soans
soạn soanj
soảng soangr
soạng soangj
soát soats
soạt soatj
sóc socs
sọc socj
sòi soif
sỏi soir
sõi soix
sói sois
sòm somf
sóm soms
sọm somj
sòn sonf
sỏn sonr
són sons
sòng songf
sõng songx
sóng songs
sót sots
sọt sotj
sô soo
sồ soof
sổ soor
sỗ soox
số soos
sộ sooj
sôc soco
sốc soocs
sộc soocj
sôi soio
sồi sooif
sổi sooir
sồm soomf
sôn sono
sồn soonf
sông songo
sồng soongf
sổng soongr
sống soongs
sốp soops
sộp soopj
sốt soots
sột sootj
sôvanh sovanho
sơ sow
sờ sowf
sở sowr
sỡ sowx
sớ sows
sợ sowj
sởi sowir
sỡi sowix
sới sowis
sợi sowij
sơm somw
sờm sowmf
sớm sowms
sơmi somiw
sơn sonw
sờn sownf
sởn sownr
sớn sowns
sớt sowts
srêpốc srepooces
sró sros
sù suf
sủ sur
sũ sux
sú sus
sụ suj
sủa suar
sụa suaj
suân suana
suất suaats
súc sucs
sục sucj
suê suee
sùi suif
sủi suir
sùm sumf
sụm sumj
sún suns
sụn sunj
sùng sungf
sủng sungr
sũng sungx
súng sungs
sụng sungj
suôi suoio
suối suoois
suôn suono
suông suongo
suồng suoongf
suống suoongs
suốt suoots
súp sups
sụp supj
sút suts
sụt sutj
sủy suyr
súy suys
suyền suyeenf
suyển suyeenr
suyễn suyeenx
suyến suyeens
suýt suyts
suỵt suytj
sư suw
sừ suwf
sử suwr
sữ suwx
sứ suws
sự suwj
sưa suaw
sửa suwar
sữa suwax
sứa suwas
sức suwcs
sực suwcj
sửi suwir
sừn suwnf
sưng sungw
sừng suwngf
sửng suwngr
sững suwngx
sựng suwngj
sưởi suowir
sườn suownf
sương suongw
sường suowngf
sướng suowngs
sượng suowngj
sướt suowts
sượt suowtj
sứt suwts
sựt suwtj
sưu suuw
sửu suwur
sứu suwus
sỹ syx
sý sys
tà taf
tả tar
tã tax
tá tas
tạ taj
tác tacs
tạc tacj
tách tachs
tạch tachj
tài taif
tải tair
tãi taix
tái tais
tại taij
tàm tamf
tảm tamr
tám tams
tạm tamj
tàn tanf
tản tanr
tán tans
tạn tanj
tàng tangf
tảng tangr
táng tangs
tạng tangj
tành tanhf
tảnh tanhr
tánh tanhs
tạnh tanhj
tào taof
tảo taor
táo taos
tạo taoj
táp taps
tạp tapj
tát tats
tạt tatj
tàu tauf
táu taus
tày tayf
tảy tayr
táy tays
tạy tayj
tắc tawcs
tặc tawcj
tăk takw
tăm tamw
tằm tawmf
tắm tawms
tăn tanw
tằn tawnf
tẳn tawnr
tắn tawns
tặn tawnj
tăng tangw
tằng tawngf
tắng tawngs
tặng tawngj
tắp tawps
tắt tawts
tấc taacs
tâm tama
tầm taamf
tẩm taamr
tấm taams
tân tana
tần taanf
tẩn taanr
tẫn taanx
tấn taans
tận taanj
tâng tanga
tầng taangf
tấp taaps
tập taapj
tất taats
tật taatj
tâu taua
tầu taauf
tẩu taaur
tấu taaus
tậu taauj
tây taya
tầy taayf
tẩy taayr
tấy taays
tbuăn tbuanw
tè tef
tẻ ter
tẽ tex
té tes
téc tecs
tẻh tehr
tèm temf
tẻm temr
tém tems
tèn tenf
tẽn tenx
tén tens
tèo teof
tẻo teor
téo teos
tẹo teoj
tép teps
tẹp tepj
tét tets
tẹt tetj
tê tee
tề teef
tể teer
tễ teex
tế tees
tệ teej
tếch teechs
têm teme
tên tene
tênh tenhe
tềnh teenhf
tểnh teenhr
tễnh teenhx
tệp teepj
têt tete
tết teets
tête tetee
têu teue
tếu teeus
thà thaf
thả thar
thá thas
thác thacs
thạc thacj
thách thachs
thạch thachj
thài thaif
thải thair
thãi thaix
thái thais
thại thaij
thàm thamf
thảm thamr
thám thams
thản thanr
thán thans
thàng thangf
thảng thangr
thãng thangx
tháng thangs
thành thanhf
thảnh thanhr
thánh thanhs
thạnh thanhj
thào thaof
thảo thaor
tháo thaos
thạo thaoj
tháp thaps
thạp thapj
thát thats
thạt thatj
tháu thaus
thày thayf
thảy thayr
tháy thays
thắc thawcs
thặc thawcj
thăm thamw
thẳm thawmr
thắm thawms
thăn thanw
thằn thawnf
thắn thawns
thăng thangw
thằng thawngf
thẳng thawngr
thắng thawngs
thặng thawngj
thắp thawps
thắt thawts
thâm thama
thầm thaamf
thẩm thaamr
thẫm thaamx
thấm thaams
thậm thaamj
thân thana
thần thaanf
thẩn thaanr
thẫn thaanx
thấn thaans
thận thaanj
thấp thaaps
thập thaapj
thất thaats
thật thaatj
thâu thaua
thầu thaauf
thẩu thaaur
thấu thaaus
thây thaya
thầy thaayf
thẩy thaayr
thấy thaays
thè thef
thẻ ther
thẽ thex
thé thes
thèm themf
thém thems
thèn thenf
thẻn thenr
thẹn thenj
thèo theof
thẻo theor
thẹo theoj
thép theps
thẹp thepj
thét thets
thê thee
thề theef
thể theer
thế thees
thệ theej
thếch theechs
thêm theme
thềm theemf
thến theens
thện theenj
thênh thenhe
thểnh theenhr
thếp theeps
thết theets
thêu theue
thều theeuf
thểu theeur
thì thif
thỉ thir
thĩ thix
thí this
thị thij
thìa thiaf
thía thias
thích thichs
thịch thichj
thiếc thieecs
thiêm thieme
thiềm thieemf
thiểm thieemr
thiễm thieemx
thiệm thieemj
thiên thiene
thiền thieenf
thiển thieenr
thiến thieens
thiện thieenj
thiêng thienge
thiềng thieengf
thiếp thieeps
thiệp thieepj
thiết thieets
thiệt thieetj
thiêu thieue
thiều thieeuf
thiểu thieeur
thiễu thieeux
thiếu thieeus
thiệu thieeuj
thím thims
thìn thinf
thín thins
thình thinhf
thỉnh thinhr
thính thinhs
thịnh thinhj
thíp thips
thít thits
thịt thitj
thìu thiuf
thỉu thiur
thịu thiuj
thò thof
thỏ thor
thó thos
thọ thoj
thoải thoair
thoái thoais
thoại thoaij
thoàn thoanf
thoản thoanr
thoán thoans
thoảng thoangr
thoáng thoangs
thoát thoats
thoạt thoatj
thoăn thoanw
thoắng thoawngs
thoắt thoawts
thóc thocs
thọc thocj
thòi thoif
thỏi thoir
thói thois
thòm thomf
thỏm thomr
thóm thoms
thõn thonx
thòng thongf
thõng thongx
thóp thops
thót thots
thọt thotj
thô thoo
thồ thoof
thổ thoor
thố thoos
thộ thooj
thốc thoocs
thộc thoocj
thôi thoio
thồi thooif
thổi thooir
thối thoois
thồm thoomf
thôn thono
thồn thoonf
thổn thoonr
thỗn thoonx
thốn thoons
thộn thoonj
thông thongo
thổng thoongr
thống thoongs
thốp thoops
thộp thoopj
thốt thoots
thột thootj
thơ thow
thờ thowf
thở thowr
thớ thows
thợ thowj
thơi thoiw
thời thowif
thởi thowir
thới thowis
thơm thomw
thớm thowms
thơn thonw
thờn thownf
thớt thowts
thợt thowtj
thtục thtucj
thù thuf
thủ thur
thú thus
thụ thuj
thùa thuaf
thủa thuar
thuân thuana
thuần thuaanf
thuẩn thuaanr
thuẫn thuaanx
thuấn thuaans
thuận thuaanj
thuật thuaatj
thúc thucs
thục thucj
thuê thuee
thuể thueer
thuế thuees
thùi thuif
thủi thuir
thúi thuis
thụi thuij
thùm thumf
thủm thumr
thùn thunf
thùng thungf
thủng thungr
thũng thungx
thúng thungs
thụng thungj
thuốc thuoocs
thuộc thuoocj
thuộm thuoomj
thuôn thuono
thuồn thuoonf
thuỗn thuoonx
thuốn thuoons
thuồng thuoongf
thuổng thuoongr
thuột thuootj
thuở thuowr
thụp thupj
thút thuts
thụt thutj
thuyên thuyene
thuyền thuyeenf
thuyết thuyeets
thư thuw
thừ thuwf
thử thuwr
thữ thuwx
thứ thuws
thự thuwj
thưa thuaw
thừa thuwaf
thửa thuwar
thứa thuwas
thữc thuwcx
thức thuwcs
thực thuwcj
thưng thungw
thừng thuwngf
thửng thuwngr
thững thuwngx
thứng thuwngs
thước thuowcs
thược thuowcj
thưỡi thuowix
thườn thuownf
thưỡn thuownx
thương thuongw
thường thuowngf
thưởng thuowngr
thướng thuowngs
thượng thuowngj
thướt thuowts
thượt thuowtj
thưu thuuw
thứu thuwus
tì tif
tỉ tir
tĩ tix
tí tis
tị tij
tỉa tiar
tía tias
tích tichs
tịch tichj
tiẻn tienr
tiếc tieecs
tiệc tieecj
tiêm tieme
tiềm tieemf
tiếm tieems
tiệm tieemj
tiên tiene
tiền tieenf
tiển tieenr
tiễn tieenx
tiến tieens
tiện tieenj
tiêng tienge
tiềng tieengf
tiếng tieengs
tiếp tieeps
tiệp tieepj
tiết tieets
tiệt tieetj
tiêu tieue
tiều tieeuf
tiểu tieeur
tiễu tieeux
tiếu tieeus
tiệu tieeuj
tìm timf
tỉm timr
tím tims
tỉn tinr
tĩn tinx
tín tins
tịn tinj
tỉng tingr
tình tinhf
tỉnh tinhr
tĩnh tinhx
tính tinhs
tịnh tinhj
típ tips
tít tits
tịt titj
tĩu tiux
tíu tius
tịu tiuj
tlẻ tler
tlộm tloomj
tnđ tndd
tò tof
tỏ tor
tó tos
tọ toj
toác toacs
toạc toacj
toài toaif
toái toais
toại toaij
toàn toanf
toản toanr
toán toans
toàng toangf
toáng toangs
toạng toangj
toánh toanhs
toát toats
toáy toays
toắt toawts
tóc tocs
tọc tocj
toèn toenf
toét toets
toẹt toetj
tòi toif
tỏi toir
tõi toix
tói tois
tòm tomf
tỏm tomr
tõm tomx
tóm toms
tòn tonf
tỏn tonr
tòng tongf
tỏng tongr
tọng tongj
tóp tops
tọp topj
tót tots
tọt totj
tô too
tồ toof
tổ toor
tố toos
tộ tooj
tốc toocs
tộc toocj
tôi toio
tồi tooif
tối toois
tội tooij
tôm tomo
tôn tono
tồn toonf
tổn toonr
tỗn toonx
tốn toons
tông tongo
tồng toongf
tổng toongr
tống toongs
tộng toongj
tốp toops
tôt toto
tốt toots
tột tootj
tơ tow
tờ towf
tở towr
tớ tows
tợ towj
tơi toiw
tời towif
tới towis
tởm towmr
tơn tonw
tởn townr
tớn towns
tợn townj
tớp towps
tợp towpj
tớt towts
trà traf
trả trar
trã trax
trá tras
trạ traj
trác tracs
trạc tracj
trách trachs
trạch trachj
trài traif
trải trair
trãi traix
trái trais
trại traij
tràm tramf
trảm tramr
trám trams
trạm tramj
tràn tranf
trản tranr
trán trans
trạn tranj
tràng trangf
trảng trangr
tráng trangs
trạng trangj
trành tranhf
tránh tranhs
trạnh tranhj
trào traof
trảo traor
tráo traos
trạo traoj
tráp traps
trát trats
trạt tratj
tràu trauf
trảu traur
trày trayf
trảy trayr
trạy trayj
trắc trawcs
trặc trawcj
trăm tramw
trằm trawmf
trắm trawms
trặm trawmj
trăn tranw
trằn trawnf
trặn trawnj
trăng trangw
trắng trawngs
trắp trawps
trắt trawts
trâ traa
trâm trama
trầm traamf
trẩm traamr
trẫm traamx
trấm traams
trậm traamj
trân trana
trần traanf
trẩn traanr
trấn traans
trận traanj
trâng tranga
trấp traaps
trập traapj
trất traats
trật traatj
trâu traua
trầu traauf
trẩu traaur
trấu traaus
trây traya
trầy traayf
trẩy traayr
trè tref
trẻ trer
trẽ trex
trẹ trej
trèm tremf
trém trems
trèn trenf
trẽn trenx
trèo treof
trẻo treor
trẽo treox
tréo treos
trẹo treoj
trét trets
trẹt tretj
trê tree
trề treef
trể treer
trễ treex
trệ treej
trếch treechs
trệch treechj
trên trene
trênh trenhe
trếnh treenhs
trết treets
trệt treetj
trêu treue
trều treeuf
trếu treeus
trệu treeuj
trì trif
trỉ trir
trĩ trix
trí tris
trị trij
trìa triaf
trỉa triar
tría trias
trịa triaj
trích trichs
trịch trichj
triêm trieme
triền trieenf
triển trieenr
triến trieens
triện trieenj
triêng trienge
triềng trieengf
triệng trieengj
triếp trieeps
triệp trieepj
triết trieets
triệt trieetj
triêu trieue
triều trieeuf
triệu trieeuj
trịng tringj
trình trinhf
trĩnh trinhx
trính trinhs
trịnh trinhj
trít trits
trịt tritj
trìu triuf
trĩu triux
tríu trius
trịu triuj
trò trof
trỏ tror
trọ troj
tróc trocs
trọc trocj
tròi troif
trỏi troir
trói trois
trọi troij
tròm tromf
trõm tromx
tróm troms
tròn tronf
trõn tronx
trọn tronj
tròng trongf
trỏng trongr
tróng trongs
trọng trongj
trót trots
trọt trotj
trô troo
trồ troof
trổ troor
trỗ troox
trố troos
trộ trooj
trốc troocs
trộc troocj
trôi troio
trồi trooif
trổi trooir
trỗi trooix
trối troois
trội trooij
trôm tromo
trộm troomj
trôn trono
trốn troons
trộn troonj
trông trongo
trồng troongf
trổng troongr
trống troongs
trộng troongj
trốt troots
trơ trow
trờ trowf
trở trowr
trớ trows
trợ trowj
trơi troiw
trời trowif
trới trowis
trờm trowmf
trớm trowms
trợm trowmj
trơn tronw
trờn trownf
trớn trowns
trợn trownj
trơng trongw
trớp trowps
trớt trowts
trợt trowtj
trù truf
trủ trur
trú trus
trụ truj
trụa truaj
truân truana
truất truaats
truật truaatj
trúc trucs
trục trucj
trùi truif
trũi truix
trụi truij
trùm trumf
trũm trumx
trúm trums
trụm trumj
trùn trunf
trụn trunj
trùng trungf
trủng trungr
trũng trungx
trúng trungs
trụng trungj
truồi truooif
truông truongo
truồng truoongf
truột truootj
trụp trupj
trút truts
trụt trutj
truyên truyene
truyền truyeenf
truyện truyeenj
trư truw
trừ truwf
trử truwr
trữ truwx
trứ truws
trự truwj
trưa truaw
trừa truwaf
trữa truwax
trức truwcs
trực truwcj
trưng trungw
trừng truwngf
trửng truwngr
trứng truwngs
trước truowcs
trươi truoiw
trườn truownf
trương truongw
trường truowngf
trưởng truowngr
trưỡng truowngx
trướng truowngs
trượng truowngj
trượt truowtj
trừu truwuf
trửu truwur
trữu truwux
trứu truwus
tryền tryeenf
tù tuf
tủ tur
tú tus
tụ tuj
tùa tuaf
tủa tuar
túa tuas
tuân tuana
tuần tuaanf
tuẩn tuaanr
tuẫn tuaanx
tuấn tuaans
tuận tuaanj
tuất tuaats
túc tucs
tục tucj
tuế tuees
tuệ tueej
tuếch tueechs
tuệch tueechj
tuềnh tueenhf
tùi tuif
tủi tuir
túi tuis
tụi tuij
tùm tumf
tủm tumr
tũm tumx
túm tums
tụm tumj
tủn tunr
tùng tungf
tủng tungr
túng tungs
tụng tungj
tuốc tuoocs
tuộc tuoocj
tuồi tuooif
tuổi tuooir
tuồm tuoomf
tuôn tuono
tuồn tuoonf
tuông tuongo
tuồng tuoongf
tuốt tuoots
tuột tuootj
túp tups
tút tuts
tụt tutj
tuyên tuyene
tuyền tuyeenf
tuyển tuyeenr
tuyến tuyeens
tuyết tuyeets
tuyệt tuyeetj
tuýp tuyps
tuýt tuyts
tư tuw
từ tuwf
tử tuwr
tữ tuwx
tứ tuws
tự tuwj
tưa tuaw
từa tuwaf
tửa tuwar
tứa tuwas
tựa tuwaj
tức tuwcs
tưng tungw
từng tuwngf
tửng tuwngr
tước tuowcs
tược tuowcj
tươi tuoiw
tưởi tuowir
tưới tuowis
tươm tuomw
tườm tuowmf
tướn tuowns
tương tuongw
tường tuowngf
tưởng tuowngr
tướng tuowngs
tượng tuowngj
tướp tuowps
tượp tuowpj
tướt tuowts
tượt tuowtj
tườu tuowuf
tưu tuuw
tửu tuwur
tựu tuwuj
tỳ tyf
tỷ tyr
tý tys
tỵ tyj
ù uf
ủ ur
ũ ux
ú us
ụ uj
ùa uaf
ủa uar
ũa uax
úa uas
ụa uaj
uân uana
uẩn uaanr
uấn uaans
uất uaats
uẩy uaayr
ubtư ubtuw
úc ucs
ục ucj
uê uee
uể ueer
uế uees
ùi uif
ủi uir
ũi uix
úi uis
ụi uij
úk uks
ùm umf
ủm umr
ũm umx
úm ums
ụm umj
ùn unf
ủn unr
ũn unx
ún uns
ụn unj
ùng ungf
ủng ungr
ũng ungx
úng ungs
ụng ungj
uôm uomo
uốn uoons
uông uongo
uổng uoongr
uống uoongs
uốt uoots
uột uootj
uở uowr
úp ups
ụp upj
út uts
ụt utj
uvtư uvtuw
uých uychs
uỵch uychj
uyên uyene
uyển uyeenr
uyết uyeets
uỳnh uynhf
uýnh uynhs
uýt uyts
ư uw
ừ uwf
ử uwr
ữ uwx
ứ uws
ự uwj
ưa uaw
ừa uwaf
ửa uwar
ữa uwax
ứa uwas
ựa uwaj
ưc ucw
ữc uwcx
ức uwcs
ực uwcj
ưcv ucvw
ưd udw
ửi uwir
ừm uwmf
ưn unw
ừn uwnf
ứn uwns
ưng ungw
ừng uwngf
ửng uwngr
ững uwngx
ứng uwngs
ựng uwngj
ước uowcs
ược uowcj
ươi uoiw
ười uowif
ưởi uowir
ưỡi uowix
ưới uowis
ượi uowij
ươm uomw
ườm uowmf
ướm uowms
ượm uowmj
ươn uonw
ườn uownf
ưỡn uownx
ướn uowns
ượn uownj
ương uongw
ường uowngf
ưởng uowngr
ưỡng uowngx
ướng uowngs
ượng uowngj
ướp uowps
ượp uowpj
ướt uowts
ượt uowtj
ươu uouw
ườu uowuf
ưỡu uowux
ướu uowus
ượu uowuj
ưt utw
ứt uwts
ựt uwtj
ưu uuw
ừu uwuf
ửu uwur
ữu uwux
ứu uwus
ựu uwuj
và vaf
vả var
vã vax
vá vas
vạ vaj
vác vacs
vạc vacj
vách vachs
vạch vachj
vài vaif
vải vair
vãi vaix
vái vais
vại vaij
vàm vamf
vạm vamj
vàn vanf
vãn vanx
ván vans
vạn vanj
vàng vangf
vảng vangr
vãng vangx
váng vangs
vạng vangj
vành vanhf
vảnh vanhr
vãnh vanhx
vánh vanhs
vạnh vanhj
vào vaof
váo vaos
vàp vapf
váp vaps
vạp vapj
vát vats
vạt vatj
vàu vauf
vày vayf
vảy vayr
vãy vayx
váy vays
vạy vayj
vắc vawcs
vặc vawcj
văm vamw
vằm vawmf
văn vanw
vằn vawnf
vắn vawns
vặn vawnj
văng vangw
vằng vawngf
vẳng vawngr
vắng vawngs
vặng vawngj
vắp vawps
vắt vawts
vặt vawtj
vâm vama
vậm vaamj
vân vana
vần vaanf
vẩn vaanr
vẫn vaanx
vấn vaans
vận vaanj
vâng vanga
vầng vaangf
vấp vaaps
vập vaapj
vất vaats
vật vaatj
vầu vaauf
vẩu vaaur
vấu vaaus
vây vaya
vầy vaayf
vẩy vaayr
vẫy vaayx
vấy vaays
vậy vaayj
vè vef
vẻ ver
vẽ vex
vé ves
véc vecs
vẹm vemj
vèn venf
vẻn venr
vén vens
vẹn venj
vèo veof
vẻo veor
véo veos
vẹo veoj
vét vets
vẹt vetj
vê vee
về veef
vế vees
vệ veej
vếch veechs
vệch veechj
vên vene
vền veenf
vện veenj
vênh venhe
vểnh veenhr
vết veets
vệt veetj
vêtu vetue
vêu veue
vều veeuf
vếu veeus
vì vif
vỉ vir
vĩ vix
ví vis
vị vij
vỉa viar
vía vias
vích vichs
viêc viece
việc vieecj
viêm vieme
viên viene
viền vieenf
viển vieenr
viễn vieenx
viện vieenj
viêng vienge
viếng vieengs
việp vieepj
viêt viete
viết vieets
việt vieetj
vịm vimj
vín vins
vịn vinj
vĩnh vinhx
vính vinhs
vịnh vinhj
viọng viongj
vít vits
vịt vitj
víu vius
vò vof
vỏ vor
võ vox
vó vos
vọ voj
vóc vocs
vọc vocj
vòi voif
vỏi voir
vói vois
vọi voij
vòm vomf
vòn vonf
vỏn vonr
vón vons
vòng vongf
vỏng vongr
võng vongx
vóng vongs
vọng vongj
vọp vopj
vót vots
vọt votj
vô voo
vồ voof
vổ voor
vỗ voox
vố voos
vốc voocs
vôi voio
vồi vooif
vối voois
vội vooij
vôn vono
vồn voonf
vốn voons
vông vongo
vồng voongf
vổng voongr
vống voongs
vốt voots
vơ vow
vờ vowf
vở vowr
vỡ vowx
vớ vows
vợ vowj
vơi voiw
vời vowif
với vowis
vợi vowij
vờn vownf
vởn vownr
vớt vowts
vợt vowtj
vù vuf
vũ vux
vú vus
vụ vuj
vùa vuaf
vúc vucs
vục vucj
vùi vuif
vũm vumx
vùn vunf
vụn vunj
vùng vungf
vũng vungx
vụng vungj
vuối vuoois
vuông vuongo
vuốt vuoots
vuột vuootj
vút vuts
vụt vutj
vư vuw
vừa vuwaf
vữa vuwax
vựa vuwaj
vức vuwcs
vực vuwcj
vưng vungw
vừng vuwngf
vửng vuwngr
vững vuwngx
vựng vuwngj
vược vuowcj
vươn vuonw
vườn vuownf
vượn vuownj
vương vuongw
vưởng vuowngr
vướng vuowngs
vượng vuowngj
vượt vuowtj
vứt vuwts
vưu vuuw
vỹ vyx
vý vys
xà xaf
xả xar
xã xax
xá xas
xạ xaj
xác xacs
xạc xacj
xách xachs
xạch xachj
xài xaif
xải xair
xái xais
xàm xamf
xảm xamr
xám xams
xạm xamj
xán xans
xàng xangf
xáng xangs
xành xanhf
xảnh xanhr
xào xaof
xảo xaor
xáo xaos
xạo xaoj
xáp xaps
xạp xapj
xát xats
xàu xauf
xảu xaur
xạu xauj
xảy xayr
xáy xays
xắc xawcs
xăm xamw
xắm xawms
xăn xanw
xắn xawns
xăng xangw
xằng xawngf
xẳng xawngr
xẵng xawngx
xắng xawngs
xắp xawps
xắt xawts
xấ xaas
xấc xaacs
xâm xama
xầm xaamf
xẩm xaamr
xân xana
xẩn xaanr
xấn xaans
xấp xaaps
xập xaapj
xâu xaua
xầu xaauf
xẩu xaaur
xấu xaaus
xây xaya
xầy xaayf
xẩy xaayr
xcô xcoo
xè xef
xẻ xer
xé xes
xẹ xej
xéc xecs
xẹc xecj
xém xems
xèn xenf
xẻn xenr
xén xens
xèng xengf
xẻng xengr
xèo xeof
xẻo xeor
xẽo xeox
xéo xeos
xẹo xeoj
xép xeps
xẹp xepj
xét xets
xẹt xetj
xê xee
xề xeef
xể xeer
xễ xeex
xế xees
xệ xeej
xếch xeechs
xệch xeechj
xềm xeemf
xên xene
xển xeenr
xênh xenhe
xềnh xeenhf
xểnh xeenhr
xếp xeeps
xệp xeepj
xệt xeetj
xêu xeue
xều xeeuf
xệu xeeuj
xì xif
xỉ xir
xí xis
xị xij
xỉa xiar
xía xias
xịa xiaj
xích xichs
xịch xichj
xiếc xieecs
xiệc xieecj
xiêm xieme
xiểm xieemr
xiên xiene
xiển xieenr
xiễn xieenx
xiềng xieengf
xiểng xieengr
xiếp xieeps
xiệp xieepj
xiết xieets
xiêu xieue
xiều xieeuf
xiểu xieeur
xiếu xieeus
ximăng ximangw
xỉn xinr
xín xins
xịn xinj
xinê xinee
xíng xings
xình xinhf
xỉnh xinhr
xĩnh xinhx
xính xinhs
xíp xips
xít xits
xịt xitj
xìu xiuf
xỉu xiur
xíu xius
xịu xiuj
xò xof
xỏ xor
xó xos
xọ xoj
xoác xoacs
xoạc xoacj
xoạch xoachj
xoài xoaif
xoải xoair
xoàm xoamf
xoàn xoanf
xoán xoans
xoàng xoangf
xoảng xoangr
xoạng xoangj
xoành xoanhf
xoát xoats
xoạt xoatj
xoáy xoays
xoăn xoanw
xoẳn xoawnr
xoắn xoawns
xoắt xoawts
xóc xocs
xọc xocj
xoèn xoenf
xoẻng xoengr
xoét xoets
xoẹt xoetj
xòi xoif
xói xois
xòm xomf
xõm xomx
xóm xoms
xón xons
xòng xongf
xỏng xongr
xõng xongx
xóng xongs
xóp xops
xọp xopj
xót xots
xô xoo
xồ xoof
xổ xoor
xố xoos
xộ xooj
xốc xoocs
xộc xoocj
xôi xoio
xồi xooif
xổi xooir
xối xoois
xôm xomo
xồm xoomf
xổm xoomr
xôn xono
xồn xoonf
xổn xoonr
xốn xoons
xộn xoonj
xông xongo
xồng xoongf
xổng xoongr
xống xoongs
xốp xoops
xộp xoopj
xốt xoots
xơ xow
xờ xowf
xở xowr
xỡ xowx
xớ xows
xơi xoiw
xời xowif
xởi xowir
xới xowis
xơm xomw
xờm xowmf
xớm xowms
xơn xonw
xởn xownr
xớn xowns
xớp xowps
xợp xowpj
xớt xowts
xợt xowtj
xrê xree
xrêpôc xrepoceo
xtiêng xtienge
xtơ xtow
xtrây xtraya
xù xuf
xủ xur
xũ xux
xú xus
xụ xuj
xùa xuaf
xúa xuas
xuân xuana
xuẩn xuaanr
xuất xuaats
xuây xuaya
xúc xucs
xục xucj
xuê xuee
xuề xueef
xuể xueer
xuế xuees
xuệch xueechj
xuềnh xueenhf
xùi xuif
xủi xuir
xúi xuis
xụi xuij
xùm xumf
xúm xums
xùng xungf
xủng xungr
xúng xungs
xuôi xuoio
xuông xuongo
xuồng xuoongf
xuổng xuoongr
xuống xuoongs
xúp xups
xụp xupj
xút xuts
xụt xutj
xuyên xuyene
xuyền xuyeenf
xuyển xuyeenr
xuyễn xuyeenx
xuyến xuyeens
xuyết xuyeets
xuýt xuyts
xuỵt xuytj
xư xuw
xừ xuwf
xử xuwr
xứ xuws
xự xuwj
xưa xuaw
xửa xuwar
xứa xuwas
xức xuwcs
xực xuwcj
xưng xungw
xừng xuwngf
xửng xuwngr
xứng xuwngs
xước xuowcs
xược xuowcj
xười xuowif
xương xuongw
xường xuowngf
xưởng xuowngr
xướng xuowngs
xýt xyts
ỳ yf
ỷ yr
ỹ yx
ý ys
ỵ yj
ỵa yaj
yàm yamf
yán yans
ých ychs
ỵch ychj
yếc yeecs
yêm yeme
yểm yeemr
yếm yeems
yên yene
yển yeenr
yến yeens
yêng yenge
yểng yeengr
yếng yeengs
yếp yeeps
yết yeets
yêu yeue
yều yeeuf
yểu yeeur
yếu yeeus
yì yif
ýn yns
ỵn ynj
ỳnh ynhf
ỷnh ynhr
ýnh ynhs
yò yof
yó yos
ýp yps
ýt yts
ỵt ytj
yú yus
ỷu yur
ỵu yuj
yùm yumf
zà zaf
zabân zabana
zài zaif
zắc zawcs
zăg zagw
zăng zangw
zép zeps
zéro zeros
zê zee
zỏm zomr
zô zoo
================================================
FILE: test-data/vietnamese.cm.dict.telexw.tdata
================================================
ácxtơ ascxt[
bayơ bay[
bơ b[
bờ b[f
bở b[r
bỡ b[x
bớ b[s
bợ b[j
bớc b[sc
bơi b[i
bời b[fi
bởi b[ri
bỡi b[xi
bới b[si
bơm b[m
bờm b[fm
bợm b[jm
bơn b[n
bờn b[fn
bởn b[rn
bỡn b[xn
bớn b[sn
bợn b[jn
bớp b[sp
bợp b[jp
bớt b[st
bợt b[jt
bợu b[ju
brơ br[
bư b]
bứ bws
bự bwj
bưa bwa
bừa bwfa
bửa b]ra
bữa b]xa
bứa b]sa
bựa b]ja
bức bwsc
bực b]jc
bưng bwng
bừng b]fng
bửng b]rng
bứng bwsng
bựng bwjng
bước buw[sc
bươi buw[i
bưởi buw[ri
bươm buw[m
bướm buw[sm
bươn buw[n
bương buw[ng
bường buw[fng
bướng buw[sng
bướp buw[sp
bượt buw[jt
bươu buw[u
bướu buw[su
bứt b]st
bựt bwjt
bưu b]u
bửu bwru
cacxtơ cacxt[
cácxtơ cascxt[
chơ ch[
chờ ch[f
chở ch[r
chớ ch[s
chợ ch[j
chơi ch[i
chời ch[fi
chới ch[si
chơm ch[m
chờm ch[fm
chởm ch[rm
chớm ch[sm
chơn ch[n
chờn ch[fn
chớn ch[sn
chợn ch[jn
chớp ch[sp
chợp ch[jp
chớt ch[st
chợt ch[jt
chư chw
chừ ch]f
chử chwr
chữ chwx
chứ ch]s
chưa chwa
chừa ch]fa
chửa ch]ra
chữa ch]xa
chứa chwsa
chức ch]sc
chực chwjc
chửi chwri
chưn chwn
chưng chwng
chừng chwfng
chửng chwrng
chững chwxng
chứng ch]sng
chựng ch]jng
chước chuw[sc
chược chuw[jc
chưởi chuw[ri
chườm chuw[fm
chương chuw[ng
chường chuw[fng
chưởng chuw[rng
chưỡng chuw[xng
chướng chuw[sng
chượp chuw[jp
chứt chwst
chưu ch]u
chửu ch]ru
chữu chwxu
chựu ch]ju
cơ c[
cờ c[f
cỡ c[x
cớ c[s
cơi c[i
cời c[fi
cởi c[ri
cỡi c[xi
cới c[si
cơm c[m
cỡm c[xm
cớm c[sm
cợm c[jm
cơn c[n
cờn c[fn
cởn c[rn
cỡn c[xn
cớn c[sn
cợn c[jn
cợp c[jp
cớt c[st
cợt c[jt
crưm crwm
cư cw
cừ c]f
cử c]r
cữ cwx
cứ cws
cự cwj
cưa cwa
cửa c]ra
cứa cwsa
cựa cwja
cức cwsc
cực cwjc
cửi c]ri
cưng c]ng
cửng c]rng
cứng cwsng
cước cuw[sc
cược cuw[jc
cười cuw[fi
cưỡi cuw[xi
cưới cuw[si
cườm cuw[fm
cương cuw[ng
cường cuw[fng
cưỡng cuw[xng
cướp cuw[sp
cứt c]st
cưu c]u
cừu c]fu
cửu cwru
cữu cwxu
cứu cwsu
cựu cwju
dơ d[
dờ d[f
dở d[r
dỡ d[x
dớ d[s
dợ d[j
dơi d[i
dời d[fi
dới d[si
dợi d[ji
dởm d[rm
dơn d[n
dờn d[fn
dỡn d[xn
dớn d[sn
dợn d[jn
dớp d[sp
dợp d[jp
dớt d[st
dư d]
dừ dwf
dử dwr
dữ d]x
dứ d]s
dự dwj
dưa dwa
dừa dwfa
dứa dwsa
dựa dwja
dức d]sc
dực d]jc
dưng dwng
dừng d]fng
dửng dwrng
dững dwxng
dứng d]sng
dựng dwjng
dược duw[jc
dười duw[fi
dưới duw[si
dượi duw[ji
dương duw[ng
dường duw[fng
dưỡng duw[xng
dướng duw[sng
dượng duw[jng
dượt duw[jt
dứt dwst
dựt dwjt
dửu dwru
dữu dwxu
dứu dwsu
dựu dwju
đơ dd[
đờ dd[f
đở dd[r
đỡ dd[x
đớ dd[s
đợ dd[j
đời dd[fi
đới dd[si
đợi dd[ji
đơm dd[m
đờm dd[fm
đởm dd[rm
đơn dd[n
đờn dd[fn
đởn dd[rn
đớn dd[sn
đớp dd[sp
đợp dd[jp
đớt dd[st
đợt dd[jt
đpctntư ddpctnt]
đừ dd]f
đử dd]r
đứ dd]s
đưa dd]a
đừa dd]fa
đứa ddwsa
đức ddwsc
đực ddwjc
đưng ddwng
đừng ddwfng
đứng dd]sng
đựng ddwjng
đước dduw[sc
được dduw[jc
đười dduw[fi
đượm dduw[jm
đườn dduw[fn
đưỡn dduw[xn
đương dduw[ng
đường dduw[fng
đứt dd]st
giơ gi[
giờ gi[f
giở gi[r
giỡ gi[x
giớ gi[s
giời gi[fi
giới gi[si
giớm gi[sm
giợm gi[jm
giờn gi[fn
giởn gi[rn
giỡn gi[xn
giợn gi[jn
giợt gi[jt
giư giw
giừ gi]f
giữ giwx
giưa gi]a
giữa giwxa
giứa giwsa
giương giuw[ng
giường giuw[fng
giướng giuw[sng
giượng giuw[jng
giựt gi]jt
gơ g[
gờ g[f
gở g[r
gỡ g[x
gớc g[sc
gởi g[ri
gới g[si
gợi g[ji
gờm g[fm
gớm g[sm
gơn g[n
gờn g[fn
gợn g[jn
gợt g[jt
gư gw
gừ gwf
gừa g]fa
gửi gwri
gừng gwfng
gứng gwsng
gươm guw[m
gườm guw[fm
gượm guw[jm
gương guw[ng
gường guw[fng
gưỡng guw[xng
gượng guw[jng
hơ h[
hờ h[f
hở h[r
hớ h[s
hơi h[i
hời h[fi
hởi h[ri
hỡi h[xi
hới h[si
hợi h[ji
hờm h[fm
hớm h[sm
hợm h[jm
hơn h[n
hờn h[fn
hớn h[sn
hơng h[ng
hớp h[sp
hợp h[jp
hớt h[st
hợt h[jt
huơ hu[
huờ hu[f
huơn hu[n
huờn hu[fn
huỡn hu[xn
hư hw
hừ h]f
hử h]r
hữ hwx
hứ h]s
hự hwj
hưa h]a
hừa h]fa
hữa h]xa
hứa h]sa
hức hwsc
hực hwjc
hừm hwfm
hưn h]n
hưng hwng
hừng h]fng
hửng h]rng
hững h]xng
hứng hwsng
hước huw[sc
hướm huw[sm
hượm huw[jm
hương huw[ng
hường huw[fng
hưởng huw[rng
hướng huw[sng
hươu huw[u
hưu hwu
hữu h]xu
hựu h]ju
iới i[si
jữ jwx
khơ kh[
khờ kh[f
khớ kh[s
khơi kh[i
khởi kh[ri
khới kh[si
khơm kh[m
khớm kh[sm
khơme kh[me
khờn kh[fn
khớn kh[sn
khớp kh[sp
khuơ khu[
khư khw
khừ khwf
khử khwr
khứ kh]s
khự kh]j
khừa kh]fa
khứa khwsa
khựa khwja
khừng khwfng
khửng khwrng
khứng kh]sng
khựng khwjng
khước khuw[sc
khươi khuw[i
khươm khuw[m
khươn khuw[n
khương khuw[ng
khưỡng khuw[xng
khướt khuw[st
khướu khuw[su
khưu kh]u
khứu khwsu
kơ k[
kơi k[i
lơ l[
lờ l[f
lở l[r
lỡ l[x
lớ l[s
lợ l[j
lơi l[i
lời l[fi
lởi l[ri
lỡi l[xi
lới l[si
lợi l[ji
lờm l[fm
lởm l[rm
lỡm l[xm
lợm l[jm
lơn l[n
lờn l[fn
lởn l[rn
lớn l[sn
lợn l[jn
lơng l[ng
lớp l[sp
lợp l[jp
lớt l[st
lợt l[jt
lư l]
lừ l]f
lử lwr
lữ l]x
lự l]j
lưa lwa
lừa lwfa
lửa lwra
lữa l]xa
lứa lwsa
lựa lwja
lưc l]c
lức lwsc
lực lwjc
lừm lwfm
lưng l]ng
lừng lwfng
lửng lwrng
lững l]xng
lứng l]sng
lựng lwjng
lược luw[jc
lười luw[fi
lưỡi luw[xi
lưới luw[si
lươm luw[m
lườm luw[fm
lượm luw[jm
lươn luw[n
lườn luw[fn
lượn luw[jn
lương luw[ng
lường luw[fng
lưỡng luw[xng
lướng luw[sng
lượng luw[jng
lướt luw[st
lượt luw[jt
lứt l]st
lưu l]u
lữu l]xu
lựu l]ju
mlời ml[fi
mnhời mnh[fi
mơ m[
mờ m[f
mở m[r
mỡ m[x
mớ m[s
mợ m[j
mơi m[i
mời m[fi
mới m[si
mợi m[ji
mơm m[m
mờm m[fm
mớm m[sm
mơn m[n
mởn m[rn
mỡn m[xn
mớn m[sn
mớp m[sp
mrơn mr[n
mư mw
mự mwj
mưa m]a
mửa m]ra
mứa m]sa
mựa m]ja
mức mwsc
mực mwjc
mứn m]sn
mưng m]ng
mừng m]fng
mững m]xng
mược muw[jc
mươi muw[i
mười muw[fi
mươn muw[n
mướn muw[sn
mượn muw[jn
mương muw[ng
mường muw[fng
mướp muw[sp
mướt muw[st
mượt muw[jt
mưỡu muw[xu
mứt m]st
mưu m]u
mứu mwsu
ngơ ng[
ngờ ng[f
ngỡ ng[x
ngớ ng[s
ngợ ng[j
ngơi ng[i
ngời ng[fi
ngợi ng[ji
ngơm ng[m
ngờm ng[fm
ngỡm ng[xm
ngợm ng[jm
ngơn ng[n
ngớn ng[sn
ngớp ng[sp
ngợp ng[jp
ngớt ng[st
nguơ ngu[
ngư ng]
ngừ ng]f
ngữ ng]x
ngứ ngws
ngự ng]j
ngưa ngwa
ngừa ngwfa
ngửa ng]ra
ngữa ng]xa
ngứa ngwsa
ngựa ngwja
ngực ngwjc
ngửi ngwri
ngưng ng]ng
ngừng ngwfng
ngửng ng]rng
ngứng ngwsng
ngước nguw[sc
ngược nguw[jc
ngươi nguw[i
người nguw[fi
ngưởi nguw[ri
ngươn nguw[n
ngường nguw[fng
ngưởng nguw[rng
ngưỡng nguw[xng
ngượng nguw[jng
ngưt ngwt
ngứt ng]st
ngưu ng]u
nhơ nh[
nhờ nh[f
nhở nh[r
nhỡ nh[x
nhớ nh[s
nhợ nh[j
nhơi nh[i
nhời nh[fi
nhởi nh[ri
nhơm nh[m
nhởm nh[rm
nhớm nh[sm
nhơn nh[n
nhờn nh[fn
nhởn nh[rn
nhỡn nh[xn
nhớn nh[sn
nhợn nh[jn
nhớp nh[sp
nhớt nh[st
nhợt nh[jt
nhtư nhtw
như nh]
nhừ nh]f
nhử nh]r
nhữ nhwx
nhứ nhws
nhự nh]j
nhừa nhwfa
nhựa nh]ja
nhức nh]sc
nhưng nhwng
nhửng nh]rng
những nhwxng
nhứng nh]sng
nhựng nh]jng
nhược nhuw[jc
nhương nhuw[ng
nhường nhuw[fng
nhưỡng nhuw[xng
nhướng nhuw[sng
nhượng nhuw[jng
nhứt nh]st
nhựt nh]jt
nhữu nhwxu
nhựu nh]ju
niutơn niut[n
nơ n[
nờ n[f
nở n[r
nỡ n[x
nớ n[s
nợ n[j
nơi n[i
nới n[si
nơm n[m
nờm n[fm
nỡm n[xm
nớp n[sp
nợp n[jp
nớt n[st
nơtron n[tron
nư nw
nử nwr
nữ nwx
nứ n]s
nự n]j
nưa n]a
nửa nwra
nữa n]xa
nứa n]sa
nức n]sc
nực nwjc
nưng nwng
nừng n]fng
nứng n]sng
nựng nwjng
nước nuw[sc
nược nuw[jc
nườm nuw[fm
nương nuw[ng
nường nuw[fng
nướng nuw[sng
nượp nuw[jp
nướu nuw[su
nứt nwst
nưu n]u
nữu n]xu
nứu nwsu
nựu nwju
ơ [
ờ [f
ở [r
ỡ [x
ớ [s
ợ [j
ơc [c
ờc [fc
ớc [sc
ợc [jc
ơi [i
ời [fi
ởi [ri
ỡi [xi
ới [si
ợi [ji
ờl [fl
ơm [m
ờm [fm
ởm [rm
ỡm [xm
ớm [sm
ợm [jm
ơme [me
ơmi [mi
ơn [n
ờn [fn
ởn [rn
ỡn [xn
ớn [sn
ợn [jn
ơng [ng
ờng [fng
ởng [rng
ỡng [xng
ớng [sng
ợng [jng
ơngen [ngen
ớp [sp
ợp [jp
ơt [t
ớt [st
ợt [jt
ơu [u
ờu [fu
ỡu [xu
ớu [su
ợu [ju
phơ ph[
phờ ph[f
phở ph[r
phớ ph[s
phơi ph[i
phời ph[fi
phới ph[si
phơn ph[n
phởn ph[rn
phỡn ph[xn
phớn ph[sn
phớt ph[st
phư ph]
phứa phwsa
phựa ph]ja
phức ph]sc
phưng phwng
phừng ph]fng
phước phuw[sc
phưỡn phuw[xn
phướn phuw[sn
phương phuw[ng
phường phuw[fng
phướng phuw[sng
phượng phuw[jng
phượt phuw[jt
phượu phuw[ju
phứt phwst
phựt phwjt
phữu phwxu
phựu phwju
plơi pl[i
pơ p[
pờ p[f
pơng p[ng
pư pw
pươi puw[i
quơ qu[
quờ qu[f
quở qu[r
quớ qu[s
quới qu[si
quờn qu[fn
quởn qu[rn
quởng qu[rng
quớt qu[st
rơ r[
rờ r[f
rở r[r
rỡ r[x
rớ r[s
rợ r[j
rơi r[i
rời r[fi
rợi r[ji
rơm r[m
rờm r[fm
rởm r[rm
rớm r[sm
rợm r[jm
rơn r[n
rờn r[fn
rởn r[rn
rỡn r[xn
rớn r[sn
rợn r[jn
rơngen r[ngen
rớp r[sp
rợp r[jp
rớt r[st
rợt r[jt
rư r]
rừ rwf
rứ rws
rưa rwa
rừa r]fa
rửa rwra
rữa r]xa
rứa r]sa
rựa rwja
rức r]sc
rực rwjc
rưng rwng
rừng rwfng
rửng r]rng
rước ruw[sc
rươi ruw[i
rười ruw[fi
rưởi ruw[ri
rưỡi ruw[xi
rưới ruw[si
rượi ruw[ji
rươm ruw[m
rườm ruw[fm
rướm ruw[sm
rườn ruw[fn
rướn ruw[sn
rượn ruw[jn
rương ruw[ng
rường ruw[fng
rượt ruw[jt
rượu ruw[ju
rứt r]st
rựt rwjt
sơ s[
sờ s[f
sở s[r
sỡ s[x
sớ s[s
sợ s[j
sởi s[ri
sỡi s[xi
sới s[si
sợi s[ji
sơm s[m
sờm s[fm
sớm s[sm
sơmi s[mi
sơn s[n
sờn s[fn
sởn s[rn
sớn s[sn
sớt s[st
sư sw
sừ swf
sử swr
sữ swx
sứ sws
sự s]j
sưa swa
sửa swra
sữa swxa
sứa swsa
sức swsc
sực s]jc
sửi s]ri
sừn swfn
sưng swng
sừng s]fng
sửng swrng
sững swxng
sựng swjng
sưởi suw[ri
sườn suw[fn
sương suw[ng
sường suw[fng
sướng suw[sng
sượng suw[jng
sướt suw[st
sượt suw[jt
sứt s]st
sựt s]jt
sưu swu
sửu swru
sứu swsu
thơ th[
thờ th[f
thở th[r
thớ th[s
thợ th[j
thơi th[i
thời th[fi
thởi th[ri
thới th[si
thơm th[m
thớm th[sm
thơn th[n
thờn th[fn
thớt th[st
thợt th[jt
thuở thu[r
thư th]
thừ thwf
thử th]r
thữ thwx
thứ th]s
thự th]j
thưa th]a
thừa thwfa
thửa th]ra
thứa thwsa
thữc th]xc
thức th]sc
thực thwjc
thưng th]ng
thừng thwfng
thửng th]rng
thững thwxng
thứng thwsng
thước thuw[sc
thược thuw[jc
thưỡi thuw[xi
thườn thuw[fn
thưỡn thuw[xn
thương thuw[ng
thường thuw[fng
thưởng thuw[rng
thướng thuw[sng
thượng thuw[jng
thướt thuw[st
thượt thuw[jt
thưu th]u
thứu th]su
tơ t[
tờ t[f
tở t[r
tớ t[s
tợ t[j
tơi t[i
tời t[fi
tới t[si
tởm t[rm
tơn t[n
tởn t[rn
tớn t[sn
tợn t[jn
tớp t[sp
tợp t[jp
tớt t[st
trơ tr[
trờ tr[f
trở tr[r
trớ tr[s
trợ tr[j
trơi tr[i
trời tr[fi
trới tr[si
trờm tr[fm
trớm tr[sm
trợm tr[jm
trơn tr[n
trờn tr[fn
trớn tr[sn
trợn tr[jn
trơng tr[ng
trớp tr[sp
trớt tr[st
trợt tr[jt
trư tr]
trừ trwf
trử trwr
trữ tr]x
trứ tr]s
trự trwj
trưa tr]a
trừa tr]fa
trữa tr]xa
trức trwsc
trực tr]jc
trưng trwng
trừng tr]fng
trửng tr]rng
trứng trwsng
trước truw[sc
trươi truw[i
trườn truw[fn
trương truw[ng
trường truw[fng
trưởng truw[rng
trưỡng truw[xng
trướng truw[sng
trượng truw[jng
trượt truw[jt
trừu trwfu
trửu trwru
trữu tr]xu
trứu tr]su
tư tw
từ twf
tử twr
tữ t]x
tứ t]s
tự twj
tưa t]a
từa twfa
tửa twra
tứa twsa
tựa t]ja
tức twsc
tưng twng
từng t]fng
tửng twrng
tước tuw[sc
tược tuw[jc
tươi tuw[i
tưởi tuw[ri
tưới tuw[si
tươm tuw[m
tườm tuw[fm
tướn tuw[sn
tương tuw[ng
tường tuw[fng
tưởng tuw[rng
tướng tuw[sng
tượng tuw[jng
tướp tuw[sp
tượp tuw[jp
tướt tuw[st
tượt tuw[jt
tườu tuw[fu
tưu twu
tửu t]ru
tựu t]ju
ubtư ubtw
uở u[r
uvtư uvt]
ư ]
ừ ]f
ử ]r
ữ ]x
ứ ]s
ự ]j
ưa ]a
ừa ]fa
ửa ]ra
ữa wxa
ứa wsa
ựa wja
ưc wc
ữc wxc
ức wsc
ực wjc
ưcv wcv
ưd ]d
ửi wri
ừm wfm
ưn ]n
ừn wfn
ứn ]sn
ưng wng
ừng wfng
ửng wrng
ững ]xng
ứng wsng
ựng wjng
ước uw[sc
ược uw[jc
ươi uw[i
ười uw[fi
ưởi uw[ri
ưỡi uw[xi
ưới uw[si
ượi uw[ji
ươm uw[m
ườm uw[fm
ướm uw[sm
ượm uw[jm
ươn uw[n
ườn uw[fn
ưỡn uw[xn
ướn uw[sn
ượn uw[jn
ương uw[ng
ường uw[fng
ưởng uw[rng
ưỡng uw[xng
ướng uw[sng
ượng uw[jng
ướp uw[sp
ượp uw[jp
ướt uw[st
ượt uw[jt
ươu uw[u
ườu uw[fu
ưỡu uw[xu
ướu uw[su
ượu uw[ju
ưt wt
ứt wst
ựt ]jt
ưu ]u
ừu ]fu
ửu wru
ữu ]xu
ứu wsu
ựu wju
vơ v[
vờ v[f
vở v[r
vỡ v[x
vớ v[s
vợ v[j
vơi v[i
vời v[fi
với v[si
vợi v[ji
vờn v[fn
vởn v[rn
vớt v[st
vợt v[jt
vư vw
vừa v]fa
vữa v]xa
vựa vwja
vức vwsc
vực vwjc
vưng vwng
vừng vwfng
vửng vwrng
vững vwxng
vựng vwjng
vược vuw[jc
vươn vuw[n
vườn vuw[fn
vượn vuw[jn
vương vuw[ng
vưởng vuw[rng
vướng vuw[sng
vượng vuw[jng
vượt vuw[jt
vứt vwst
vưu vwu
xơ x[
xờ x[f
xở x[r
xỡ x[x
xớ x[s
xơi x[i
xời x[fi
xởi x[ri
xới x[si
xơm x[m
xờm x[fm
xớm x[sm
xơn x[n
xởn x[rn
xớn x[sn
xớp x[sp
xợp x[jp
xớt x[st
xợt x[jt
xtơ xt[
xư x]
xừ xwf
xử xwr
xứ xws
xự x]j
xưa xwa
xửa xwra
xứa xwsa
xức x]sc
xực x]jc
xưng x]ng
xừng xwfng
xửng xwrng
xứng x]sng
xước xuw[sc
xược xuw[jc
xười xuw[fi
xương xuw[ng
xường xuw[fng
xưởng xuw[rng
xướng xuw[sng
================================================
FILE: test-data/vietnamese.cm.dict.vni1.tdata
================================================
à a2
ả a3
ã a4
á a1
ạ a5
ác a1c
ạc a5c
ácbon a1cbon
ách a1ch
ạch a5ch
ácxtơ a1cxto7
ảh a3h
ài a2i
ải a3i
ãi a4i
ái a1i
ại a5i
alô alo6
àm a2m
ảm a3m
ãm a4m
ám a1m
ạm a5m
àn a2n
ản a3n
ãn a4n
án a1n
ạn a5n
àng a2ng
ảng a3ng
ãng a4ng
áng a1ng
ạng a5ng
ành a2nh
ảnh a3nh
ãnh a4nh
ánh a1nh
ạnh a5nh
ào a2o
ảo a3o
ão a4o
áo a1o
ạo a5o
aỏi ao3i
àp a2p
áp a1p
ạp a5p
át a1t
ạt a5t
àu a2u
ảu a3u
áu a1u
ạu a5u
ày a2y
ảy a3y
ãy a4y
áy a1y
ạy a5y
ă a8
ằ a82
ẳ a83
ẵ a84
ắ a81
ặ a85
ăc a8c
ắc a81c
ặc a85c
ăcr a8cr
ăh a8h
ăk a8k
ắk a81k
ăm a8m
ằm a82m
ẳm a83m
ẵm a84m
ắm a81m
ặm a85m
ăn a8n
ằn a82n
ẳn a83n
ẵn a84n
ắn a81n
ặn a85n
ăng a8ng
ằng a82ng
ẳng a83ng
ẵng a84ng
ắng a81ng
ặng a85ng
ăngten a8ngten
ắp a81p
ặp a85p
ắt a81t
ặt a85t
ằu a82u
â a6
ầ a62
ẩ a63
ẫ a64
ấ a61
ậ a65
ấc a61c
ậc a65c
âm a6m
ầm a62m
ẩm a63m
ẫm a64m
ấm a61m
ậm a65m
ân a6n
ần a62n
ẩn a63n
ẫn a64n
ấn a61n
ận a65n
âng a6ng
ầng a62ng
ẩng a63ng
ẫng a64ng
ấng a61ng
ậng a65ng
âp a6p
ấp a61p
ập a65p
ất a61t
ật a65t
âu a6u
ầu a62u
ẩu a63u
ẫu a64u
ấu a61u
ậu a65u
ây a6y
ầy a62y
ẩy a63y
ẫy a64y
ấy a61y
ậy a65y
bà ba2
bả ba3
bã ba4
bá ba1
bạ ba5
bác ba1c
bạc ba5c
bách ba1ch
bạch ba5ch
bài ba2i
bải ba3i
bãi ba4i
bái ba1i
bại ba5i
bàm ba2m
bãm ba4m
bám ba1m
bạm ba5m
bàn ba2n
bản ba3n
bán ba1n
bạn ba5n
bàng ba2ng
bảng ba3ng
bãng ba4ng
báng ba1ng
bạng ba5ng
bành ba2nh
bảnh ba3nh
bánh ba1nh
bạnh ba5nh
bào ba2o
bảo ba3o
bão ba4o
báo ba1o
bạo ba5o
báp ba1p
bạp ba5p
bát ba1t
bạt ba5t
bàu ba2u
bảu ba3u
báu ba1u
bạu ba5u
bày ba2y
bảy ba3y
báy ba1y
bayơ bayo7
bắc ba81c
bặc ba85c
băm ba8m
bằm ba82m
bẳm ba83m
bẵm ba84m
bặm ba85m
băn ba8n
bằn ba82n
bẳn ba83n
bắn ba81n
bặn ba85n
băng ba8ng
bằng ba82ng
bẳng ba83ng
bẵng ba84ng
bắng ba81ng
bặng ba85ng
bắp ba81p
bặp ba85p
bắt ba81t
bặt ba85t
bấc ba61c
bậc ba65c
bâm ba6m
bầm ba62m
bẩm ba63m
bẫm ba64m
bấm ba61m
bậm ba65m
bân ba6n
bần ba62n
bẩn ba63n
bấn ba61n
bận ba65n
bâng ba6ng
bầng ba62ng
bẩng ba63ng
bẫng ba64ng
bấp ba61p
bập ba65p
bất ba61t
bật ba65t
bâu ba6u
bầu ba62u
bẩu ba63u
bẫu ba64u
bấu ba61u
bậu ba65u
bây ba6y
bầy ba62y
bẩy ba63y
bẫy ba64y
bấy ba61y
bậy ba65y
bè be2
bẻ be3
bẽ be4
bé be1
bẹ be5
béc be1c
bèm be2m
bẻm be3m
bèn be2n
bẽn be4n
bén be1n
bẹn be5n
béng be1ng
bẻnh be3nh
bèo be2o
bẻo be3o
bẽo be4o
béo be1o
bẹo be5o
bép be1p
bẹp be5p
bét be1t
bẹt be5t
bê be6
bề be62
bể be63
bễ be64
bế be61
bệ be65
bệch be65ch
bên be6n
bền be62n
bến be61n
bện be65n
bênh be6nh
bềnh be62nh
bệnh be65nh
bếp be61p
bêt be6t
bết be61t
bệt be65t
bête be6te
bêu be6u
bều be62u
bễu be64u
bếu be61u
bệu be65u
bì bi2
bỉ bi3
bĩ bi4
bí bi1
bị bi5
bìa bi2a
bịa bi5a
bích bi1ch
bịch bi5ch
biếc bie61c
biêm bie6m
biểm bie63m
biếm bie61m
biên bie6n
biền bie62n
biển bie63n
biến bie61n
biện bie65n
biêng bie6ng
biếng bie61ng
biêt bie6t
biết bie61t
biệt bie65t
biêu bie6u
biều bie62u
biểu bie63u
biễu bie64u
biếu bie61u
bìh bi2h
bìm bi2m
bỉm bi3m
bím bi1m
bìn bi2n
bịn bi5n
bình bi2nh
bỉnh bi3nh
bĩnh bi4nh
bính bi1nh
bịnh bi5nh
bịp bi5p
bít bi1t
bịt bi5t
bìu bi2u
bỉu bi3u
bĩu bi4u
bíu bi1u
bịu bi5u
blá bla1
blái bla1i
blăng bla8ng
blâu bla6u
blóm blo1m
blóma blo1ma
blọn blo5n
blô blo6
blúc blu1c
bluộm bluo65m
bnđc bnd9c
bò bo2
bỏ bo3
bõ bo4
bó bo1
bọ bo5
boạt boa5t
bóc bo1c
bọc bo5c
bòi bo2i
bỏi bo3i
bõi bo4i
bói bo1i
bòm bo2m
bỏm bo3m
bõm bo4m
bòn bo2n
bỏn bo3n
bón bo1n
bọn bo5n
bòng bo2ng
bỏng bo3ng
bõng bo4ng
bóng bo1ng
bọng bo5ng
bóp bo1p
bọp bo5p
bót bo1t
bọt bo5t
bô bo6
bồ bo62
bổ bo63
bỗ bo64
bố bo61
bộ bo65
bốc bo61c
bộc bo65c
bôi bo6i
bồi bo62i
bổi bo63i
bối bo61i
bội bo65i
bôm bo6m
bồm bo62m
bôn bo6n
bồn bo62n
bổn bo63n
bốn bo61n
bộn bo65n
bông bo6ng
bồng bo62ng
bổng bo63ng
bỗng bo64ng
bống bo61ng
bộng bo65ng
bốp bo61p
bộp bo65p
bốt bo61t
bột bo65t
bơ bo7
bờ bo72
bở bo73
bỡ bo74
bớ bo71
bợ bo75
bớc bo71c
bơi bo7i
bời bo72i
bởi bo73i
bỡi bo74i
bới bo71i
bơm bo7m
bờm bo72m
bợm bo75m
bơn bo7n
bờn bo72n
bởn bo73n
bỡn bo74n
bớn bo71n
bợn bo75n
bớp bo71p
bợp bo75p
bớt bo71t
bợt bo75t
bợu bo75u
brâu bra6u
brôm bro6m
brơ bro7
bù bu2
bủ bu3
bú bu1
bụ bu5
bùa bu2a
bủa bu3a
búa bu1a
bụa bu5a
búc bu1c
bục bu5c
bùi bu2i
bủi bu3i
búi bu1i
bụi bu5i
búk bu1k
bulông bulo6ng
bùm bu2m
bủm bu3m
bũm bu4m
bụm bu5m
bùn bu2n
bủn bu3n
bún bu1n
bùng bu2ng
bủng bu3ng
búng bu1ng
bụng bu5ng
buộc buo65c
buồi buo62i
buổi buo63i
buối buo61i
buội buo65i
buồm buo62m
buôn buo6n
buồn buo62n
buông buo6ng
buồng buo62ng
buốt buo61t
buột buo65t
búp bu1p
bụp bu5p
bút bu1t
bụt bu5t
buýt buy1t
bư bu7
bứ bu71
bự bu75
bưa bu7a
bừa bu72a
bửa bu73a
bữa bu74a
bứa bu71a
bựa bu75a
bức bu71c
bực bu75c
bưng bu7ng
bừng bu72ng
bửng bu73ng
bứng bu71ng
bựng bu75ng
bước bu7o71c
bươi bu7o7i
bưởi bu7o73i
bươm bu7o7m
bướm bu7o71m
bươn bu7o7n
bương bu7o7ng
bường bu7o72ng
bướng bu7o71ng
bướp bu7o71p
bượt bu7o75t
bươu bu7o7u
bướu bu7o71u
bứt bu71t
bựt bu75t
bưu bu7u
bửu bu73u
cà ca2
cả ca3
cá ca1
cạ ca5
các ca1c
cạc ca5c
cácbon ca1cbon
cách ca1ch
cạch ca5ch
cácxt ca1cxt
cacxtơ cacxto7
cácxtơ ca1cxto7
café cafe1
cài ca2i
cải ca3i
cãi ca4i
cái ca1i
cại ca5i
calô calo6
càm ca2m
cảm ca3m
cãm ca4m
cám ca1m
cạm ca5m
campôt campo6t
càn ca2n
cản ca3n
cán ca1n
cạn ca5n
càng ca2ng
cảng ca3ng
cáng ca1ng
cành ca2nh
cảnh ca3nh
cánh ca1nh
cạnh ca5nh
canô cano6
canxít canxi1t
cào ca2o
cảo ca3o
cão ca4o
cáo ca1o
cạo ca5o
cáp ca1p
cạp ca5p
carbón carbo1n
cartón carto1n
cát ca1t
cạt ca5t
càu ca2u
cảu ca3u
cáu ca1u
cạu ca5u
cày ca2y
cảy ca3y
cáy ca1y
cạy ca5y
că ca8
cắc ca81c
cặc ca85c
căm ca8m
cằm ca82m
cắm ca81m
cặm ca85m
căn ca8n
cằn ca82n
cẳn ca83n
cắn ca81n
cặn ca85n
căng ca8ng
cằng ca82ng
cẳng ca83ng
cẵng ca84ng
cắng ca81ng
căo ca8o
cắp ca81p
cặp ca85p
cắt ca81t
cặt ca85t
câ ca6
cầ ca62
câble ca6ble
cấc ca61c
câm ca6m
cầm ca62m
cẩm ca63m
cẫm ca64m
cấm ca61m
cân ca6n
cần ca62n
cẩn ca63n
cẫn ca64n
cấn ca61n
cận ca65n
câng ca6ng
cẫng ca64ng
cấp ca61p
cập ca65p
cất ca61t
cật ca65t
câu ca6u
cầu ca62u
cẩu ca63u
cẫu ca64u
cấu ca61u
cậu ca65u
cây ca6y
cầy ca62y
cẩy ca63y
cấy ca61y
cậy ca65y
céng ce1ng
cê ce6
chà cha2
chả cha3
chã cha4
chá cha1
chạ cha5
chác cha1c
chạc cha5c
chách cha1ch
chạch cha5ch
chài cha2i
chải cha3i
chãi cha4i
chái cha1i
chàm cha2m
chảm cha3m
chãm cha4m
chám cha1m
chạm cha5m
chán cha1n
chạn cha5n
chàng cha2ng
chảng cha3ng
cháng cha1ng
chạng cha5ng
chành cha2nh
chảnh cha3nh
chánh cha1nh
chạnh cha5nh
chào cha2o
chảo cha3o
chão cha4o
cháo cha1o
chạo cha5o
cháp cha1p
chạp cha5p
chát cha1t
chạt cha5t
chàu cha2u
chảu cha3u
cháu cha1u
chày cha2y
chảy cha3y
cháy cha1y
chạy cha5y
chắc cha81c
chặc cha85c
chăm cha8m
chằm cha82m
chẳm cha83m
chắm cha81m
chặm cha85m
chăn cha8n
chằn cha82n
chẳn cha83n
chẵn cha84n
chắn cha81n
chặn cha85n
chăng cha8ng
chằng cha82ng
chẳng cha83ng
chắng cha81ng
chặng cha85ng
chắp cha81p
chặp cha85p
chắt cha81t
chặt cha85t
chấ cha61
chậc cha65c
châm cha6m
chầm cha62m
chẩm cha63m
chẫm cha64m
chấm cha61m
chậm cha65m
chân cha6n
chần cha62n
chẩn cha63n
chấn cha61n
chận cha65n
chẩng cha63ng
chấng cha61ng
chấp cha61p
chập cha65p
chất cha61t
chật cha65t
châu cha6u
chầu cha62u
chẩu cha63u
chẫu cha64u
chấu cha61u
chậu cha65u
chây cha6y
chầy cha62y
chẩy cha63y
chấy cha61y
chậy cha65y
chè che2
chẻ che3
chẽ che4
ché che1
chẹ che5
chèm che2m
chẻm che3m
chém che1m
chèn che2n
chẻn che3n
chẽn che4n
chén che1n
chẹn che5n
chéng che1ng
chèo che2o
chẻo che3o
chẽo che4o
chéo che1o
chẹo che5o
chép che1p
chẹp che5p
chét che1t
chẹt che5t
chê che6
chề che62
chễ che64
chế che61
chệ che65
chệc che65c
chếch che61ch
chệch che65ch
chêm che6m
chềm che62m
chễm che64m
chên che6n
chện che65n
chênh che6nh
chềnh che62nh
chểnh che63nh
chễnh che64nh
chếnh che61nh
chệnh che65nh
chếp che61p
chệp che65p
chết che61t
chệt che65t
chêu che6u
chì chi2
chỉ chi3
chĩ chi4
chí chi1
chị chi5
chìa chi2a
chỉa chi3a
chĩa chi4a
chịa chi5a
chích chi1ch
chịch chi5ch
chiếc chie61c
chiêm chie6m
chiểm chie63m
chiếm chie61m
chiên chie6n
chiền chie62n
chiển chie63n
chiến chie61n
chiện chie65n
chiêng chie6ng
chiềng chie62ng
chiếng chie61ng
chiếp chie61p
chiệp chie65p
chiết chie61t
chiệt chie65t
chiêu chie6u
chiều chie62u
chiểu chie63u
chiếu chie61u
chìm chi2m
chỉm chi3m
chím chi1m
chỉn chi3n
chĩn chi4n
chín chi1n
chình chi2nh
chỉnh chi3nh
chĩnh chi4nh
chính chi1nh
chíp chi1p
chít chi1t
chịt chi5t
chìu chi2u
chĩu chi4u
chíu chi1u
chịu chi5u
chò cho2
chỏ cho3
chõ cho4
chó cho1
chọ cho5
chỏa cho3a
chõa cho4a
chóa cho1a
choác choa1c
choạc choa5c
choách choa1ch
choài choa2i
choãi choa4i
choái choa1i
choại choa5i
choán choa1n
choàng choa2ng
choảng choa3ng
choáng choa1ng
choạng choa5ng
choãnh choa4nh
choạp choa5p
choắc choa81c
choăn choa8n
choắt choa81t
chóc cho1c
chọc cho5c
choèn choe2n
choẻn choe3n
choét choe1t
choẹt choe5t
chòi cho2i
chỏi cho3i
chõi cho4i
chói cho1i
chọi cho5i
chòm cho2m
chỏm cho3m
chõm cho4m
chỏn cho3n
chõn cho4n
chón cho1n
chọn cho5n
chòng cho2ng
chỏng cho3ng
chõng cho4ng
chóng cho1ng
chóp cho1p
chót cho1t
chọt cho5t
chô cho6
chồ cho62
chổ cho63
chỗ cho64
chộ cho65
chốc cho61c
chôi cho6i
chồi cho62i
chổi cho63i
chỗi cho64i
chối cho61i
chội cho65i
chôm cho6m
chồm cho62m
chổm cho63m
chỗm cho64m
chôn cho6n
chồn cho62n
chổn cho63n
chốn cho61n
chộn cho65n
chông cho6ng
chồng cho62ng
chổng cho63ng
chống cho61ng
chốp cho61p
chộp cho65p
chốt cho61t
chột cho65t
chơ cho7
chờ cho72
chở cho73
chớ cho71
chợ cho75
chơi cho7i
chời cho72i
chới cho71i
chơm cho7m
chờm cho72m
chởm cho73m
chớm cho71m
chơn cho7n
chờn cho72n
chớn cho71n
chợn cho75n
chớp cho71p
chợp cho75p
chớt cho71t
chợt cho75t
chù chu2
chủ chu3
chú chu1
chụ chu5
chùa chu2a
chúa chu1a
chuáng chua1ng
chuân chua6n
chuẩn chua63n
chuất chua61t
chuật chua65t
chúc chu1c
chục chu5c
chuế chue61
chuếch chue61ch
chuệch chue65ch
chuếnh chue61nh
chuệnh chue65nh
chùi chu2i
chủi chu3i
chũi chu4i
chúi chu1i
chùm chu2m
chủm chu3m
chũm chu4m
chúm chu1m
chụm chu5m
chùn chu2n
chủn chu3n
chũn chu4n
chùng chu2ng
chủng chu3ng
chúng chu1ng
chuốc chuo61c
chuộc chuo65c
chuôi chuo6i
chuồi chuo62i
chuỗi chuo64i
chuối chuo61i
chuội chuo65i
chuôm chuo6m
chuốm chuo61m
chuồn chuo62n
chuông chuo6ng
chuồng chuo62ng
chuộng chuo65ng
chuốt chuo61t
chuột chuo65t
chụp chu5p
chút chu1t
chụt chu5t
chuyên chuye6n
chuyền chuye62n
chuyển chuye63n
chuyến chuye61n
chuyện chuye65n
chuyết chuye61t
chư chu7
chừ chu72
chử chu73
chữ chu74
chứ chu71
chưa chu7a
chừa chu72a
chửa chu73a
chữa chu74a
chứa chu71a
chức chu71c
chực chu75c
chửi chu73i
chưn chu7n
chưng chu7ng
chừng chu72ng
chửng chu73ng
chững chu74ng
chứng chu71ng
chựng chu75ng
chước chu7o71c
chược chu7o75c
chưởi chu7o73i
chườm chu7o72m
chương chu7o7ng
chường chu7o72ng
chưởng chu7o73ng
chưỡng chu7o74ng
chướng chu7o71ng
chượp chu7o75p
chứt chu71t
chưu chu7u
chửu chu73u
chữu chu74u
chựu chu75u
cì ci2
cí ci1
cịt ci5t
clé cle1
clông clo6ng
cò co2
cỏ co3
cõ co4
có co1
cọ co5
cóc co1c
cọc co5c
còi co2i
cỏi co3i
cõi co4i
cói co1i
còm co2m
cỏm co3m
cọm co5m
còn co2n
cỏn co3n
cón co1n
cọn co5n
còng co2ng
cỏng co3ng
cõng co4ng
cóng co1ng
cọng co5ng
cóp co1p
cọp co5p
cót co1t
cọt co5t
cô co6
cồ co62
cổ co63
cỗ co64
cố co61
cộ co65
cốc co61c
cộc co65c
côi co6i
cồi co62i
cổi co63i
cỗi co64i
cối co61i
cội co65i
côm co6m
cồm co62m
cốm co61m
cộm co65m
côn co6n
cồn co62n
cổn co63n
cốn co61n
cộn co65n
cône co6ne
công co6ng
cồng co62ng
cổng co63ng
cống co61ng
cộng co65ng
cốp co61p
cộp co65p
côt co6t
cốt co61t
cột co65t
cơ co7
cờ co72
cỡ co74
cớ co71
cơi co7i
cời co72i
cởi co73i
cỡi co74i
cới co71i
cơm co7m
cỡm co74m
cớm co71m
cợm co75m
cơn co7n
cờn co72n
cởn co73n
cỡn co74n
cớn co71n
cợn co75n
cợp co75p
cớt co71t
cợt co75t
crô cro6
crôm cro6m
crông cro6ng
crưm cru7m
cù cu2
củ cu3
cũ cu4
cú cu1
cụ cu5
cùa cu2a
của cu3a
cúa cu1a
cúc cu1c
cục cu5c
cùi cu2i
củi cu3i
cũi cu4i
cúi cu1i
cụi cu5i
cùm cu2m
củm cu3m
cúm cu1m
cụm cu5m
cùn cu2n
củn cu3n
cũn cu4n
cùng cu2ng
củng cu3ng
cũng cu4ng
cúng cu1ng
cụng cu5ng
cuốc cuo61c
cuộc cuo65c
cuồi cuo62i
cuối cuo61i
cuội cuo65i
cuỗm cuo64m
cuồn cuo62n
cuốn cuo61n
cuộn cuo65n
cuông cuo6ng
cuồng cuo62ng
cuống cuo61ng
cuộng cuo65ng
cuôr cuo6r
cúp cu1p
cụp cu5p
cút cu1t
cụt cu5t
cư cu7
cừ cu72
cử cu73
cữ cu74
cứ cu71
cự cu75
cưa cu7a
cửa cu73a
cứa cu71a
cựa cu75a
cức cu71c
cực cu75c
cửi cu73i
cưng cu7ng
cửng cu73ng
cứng cu71ng
cước cu7o71c
cược cu7o75c
cười cu7o72i
cưỡi cu7o74i
cưới cu7o71i
cườm cu7o72m
cương cu7o7ng
cường cu7o72ng
cưỡng cu7o74ng
cướp cu7o71p
cứt cu71t
cưu cu7u
cừu cu72u
cửu cu73u
cữu cu74u
cứu cu71u
cựu cu75u
dà da2
dả da3
dã da4
dá da1
dạ da5
dác da1c
dạc da5c
dách da1ch
dạch da5ch
dài da2i
dải da3i
dãi da4i
dái da1i
dại da5i
dàm da2m
dảm da3m
dám da1m
dạm da5m
dàn da2n
dản da3n
dãn da4n
dán da1n
dạn da5n
dàng da2ng
dáng da1ng
dạng da5ng
dành da2nh
dảnh da3nh
dánh da1nh
dào da2o
dáo da1o
dạo da5o
dáp da1p
dát da1t
dạt da5t
dàu da2u
dáu da1u
dày da2y
dảy da3y
dãy da4y
dáy da1y
dạy da5y
dắc da81c
dặc da85c
dăm da8m
dằm da82m
dặm da85m
dăn da8n
dằn da82n
dẳn da83n
dẵn da84n
dặn da85n
dăng da8ng
dằng da82ng
dẳng da83ng
dẵng da84ng
dắng da81ng
dặng da85ng
dắt da81t
dặt da85t
dâ da6
dậ da65
dâm da6m
dầm da62m
dẩm da63m
dẫm da64m
dấm da61m
dậm da65m
dân da6n
dần da62n
dẩn da63n
dẫn da64n
dấn da61n
dận da65n
dâne da6ne
dâng da6ng
dậng da65ng
dấp da61p
dập da65p
dật da65t
dâu da6u
dầu da62u
dẩu da63u
dẫu da64u
dấu da61u
dậu da65u
dây da6y
dầy da62y
dẩy da63y
dẫy da64y
dấy da61y
dậy da65y
dè de2
dẻ de3
dẽ de4
dé de1
dẹ de5
déc de1c
dèm de2m
dẻm de3m
dém de1m
dẹm de5m
dèn de2n
dèo de2o
dẻo de3o
déo de1o
dẹo de5o
dép de1p
dẹp de5p
dẹt de5t
dê de6
dề de62
dể de63
dễ de64
dế de61
dệ de65
dềm de62m
dền de62n
dện de65n
dềng de62ng
dênh de6nh
dềnh de62nh
dết de61t
dệt de65t
dêu de6u
dều de62u
dệu de65u
dì di2
dỉ di3
dĩ di4
dí di1
dị di5
dìa di2a
dĩa di4a
día di1a
dịa di5a
dích di1ch
dịch di5ch
diếc die61c
diệc die65c
diêm die6m
diềm die62m
diễm die64m
diếm die61m
diệm die65m
diên die6n
diển die63n
diễn die64n
diến die61n
diện die65n
diềng die62ng
diếp die61p
diệp die65p
diết die61t
diệt die65t
diêu die6u
diều die62u
diểu die63u
diễu die64u
diếu die61u
diệu die65u
dìm di2m
dím di1m
dĩn di4n
dín di1n
dĩnh di4nh
dính di1nh
dịnh di5nh
díp di1p
dịp di5p
dìt di2t
dít di1t
dịt di5t
dìu di2u
díu di1u
dịu di5u
dliê dlie6
dò do2
dỏ do3
dó do1
dọ do5
doãi doa4i
doãn doa4n
doãng doa4ng
doạng doa5ng
doành doa2nh
dóc do1c
dọc do5c
dòi do2i
dỏi do3i
dõi do4i
dói do1i
dọi do5i
dòm do2m
dỏm do3m
dóm do1m
dòn do2n
dón do1n
dọn do5n
dòng do2ng
dỏng do3ng
dõng do4ng
dóng do1ng
dọng do5ng
dọp do5p
dót do1t
dô do6
dồ do62
dổ do63
dỗ do64
dộ do65
dốc do61c
dộc do65c
dôi do6i
dồi do62i
dổi do63i
dỗi do64i
dối do61i
dội do65i
dôn do6n
dồn do62n
dốn do61n
dộn do65n
dông do6ng
dỗng do64ng
dống do61ng
dộng do65ng
dộp do65p
dốt do61t
dột do65t
dơ do7
dờ do72
dở do73
dỡ do74
dớ do71
dợ do75
dơi do7i
dời do72i
dới do71i
dợi do75i
dởm do73m
dơn do7n
dờn do72n
dỡn do74n
dớn do71n
dợn do75n
dớp do71p
dợp do75p
dớt do71t
drăm dra8m
drăng dra8ng
dù du2
dủ du3
dũ du4
dú du1
dụ du5
dùa du2a
dũa du4a
dúa du1a
dụa du5a
duân dua6n
duẩn dua63n
duẫn dua64n
duật dua65t
dục du5c
duệ due65
duềnh due62nh
dùi du2i
dủi du3i
dũi du4i
dúi du1i
dụi du5i
dùm du2m
dúm du1m
dụm du5m
dùn du2n
dún du1n
dùng du2ng
dũng du4ng
dúng du1ng
dụng du5ng
duốc duo61c
duộc duo65c
duôi duo6i
duổi duo63i
duỗi duo64i
duối duo61i
duồn duo62n
duông duo6ng
duồng duo62ng
dút du1t
dụt du5t
dụy du5y
duyên duye6n
duyến duye61n
duyện duye65n
duyệt duye65t
dư du7
dừ du72
dử du73
dữ du74
dứ du71
dự du75
dưa du7a
dừa du72a
dứa du71a
dựa du75a
dức du71c
dực du75c
dưng du7ng
dừng du72ng
dửng du73ng
dững du74ng
dứng du71ng
dựng du75ng
dược du7o75c
dười du7o72i
dưới du7o71i
dượi du7o75i
dương du7o7ng
dường du7o72ng
dưỡng du7o74ng
dướng du7o71ng
dượng du7o75ng
dượt du7o75t
dứt du71t
dựt du75t
dửu du73u
dữu du74u
dứu du71u
dựu du75u
dýn dy1n
đ d9
đa d9a
đà d9a2
đả d9a3
đã d9a4
đá d9a1
đạ d9a5
đac d9ac
đác d9a1c
đạc d9a5c
đách d9a1ch
đạch d9a5ch
đai d9ai
đài d9a2i
đãi d9a4i
đái d9a1i
đại d9a5i
đam d9am
đàm d9a2m
đảm d9a3m
đám d9a1m
đạm d9a5m
đan d9an
đàn d9a2n
đản d9a3n
đán d9a1n
đạn d9a5n
đang d9ang
đàng d9a2ng
đảng d9a3ng
đãng d9a4ng
đáng d9a1ng
đanh d9anh
đành d9a2nh
đảnh d9a3nh
đánh d9a1nh
đao d9ao
đào d9a2o
đảo d9a3o
đáo d9a1o
đạo d9a5o
đáp d9a1p
đạp d9a5p
đát d9a1t
đạt d9a5t
đau d9au
đáu d9a1u
đay d9ay
đày d9a2y
đảy d9a3y
đãy d9a4y
đáy d9a1y
đẵ d9a84
đắc d9a81c
đặc d9a85c
đăk d9a8k
đắk d9a81k
đăm d9a8m
đằm d9a82m
đẵm d9a84m
đắm d9a81m
đằn d9a82n
đẵn d9a84n
đắn d9a81n
đặn d9a85n
đăng d9a8ng
đằng d9a82ng
đẳng d9a83ng
đẵng d9a84ng
đắng d9a81ng
đặng d9a85ng
đắp d9a81p
đắt d9a81t
đặt d9a85t
đằu d9a82u
đâm d9a6m
đầm d9a62m
đẫm d9a64m
đấm d9a61m
đậm d9a65m
đần d9a62n
đẫn d9a64n
đấn d9a61n
đận d9a65n
đâng d9a6ng
đấng d9a61ng
đập d9a65p
đất d9a61t
đật d9a65t
đâu d9a6u
đầu d9a62u
đẩu d9a63u
đấu d9a61u
đậu d9a65u
đây d9a6y
đầy d9a62y
đẩy d9a63y
đẫy d9a64y
đấy d9a61y
đậy d9a65y
đe d9e
đè d9e2
đẻ d9e3
đẽ d9e4
đéc d9e1c
đem d9em
đèm d9e2m
đen d9en
đèn d9e2n
đẹn d9e5n
đeng d9eng
đeo d9eo
đèo d9e2o
đẽo d9e4o
đéo d9e1o
đẹp d9e5p
đét d9e1t
đẹt d9e5t
đê d9e6
đề d9e62
để d9e63
đễ d9e64
đế d9e61
đệ d9e65
đếch d9e61ch
đêh d9e6h
đêm d9e6m
đềm d9e62m
đếm d9e61m
đệm d9e65m
đên d9e6n
đền d9e62n
đến d9e61n
đênh d9e6nh
đềnh d9e62nh
đểnh d9e63nh
đễnh d9e64nh
đệp d9e65p
đêu d9e6u
đều d9e62u
đểu d9e63u
đg d9g
đgt d9gt
đhur d9hur
đi d9i
đì d9i2
đĩ d9i4
đị d9i5
đìa d9i2a
đỉa d9i3a
đĩa d9i4a
đía d9i1a
địa d9i5a
đích d9i1ch
địch d9i5ch
đien d9ien
điếc d9ie61c
điềm d9ie62m
điểm d9ie63m
điếm d9ie61m
điệm d9ie65m
điên d9ie6n
điền d9ie62n
điển d9ie63n
điện d9ie65n
điêng d9ie6ng
điếng d9ie61ng
điệp d9ie65p
điệt d9ie65t
điêu d9ie6u
điều d9ie62u
điểu d9ie63u
điếu d9ie61u
điệu d9ie65u
đin d9in
đìn d9i2n
đinh d9inh
đình d9i2nh
đỉnh d9i3nh
đĩnh d9i4nh
đính d9i1nh
định d9i5nh
đip d9ip
đít d9i1t
địt d9i5t
điu d9iu
đìu d9i2u
địu d9i5u
đo d9o
đò d9o2
đỏ d9o3
đõ d9o4
đó d9o1
đọ d9o5
đoa d9oa
đoác d9oa1c
đoài d9oa2i
đoái d9oa1i
đoan d9oan
đoàn d9oa2n
đoản d9oa3n
đoán d9oa1n
đoạn d9oa5n
đoàng d9oa2ng
đoảng d9oa3ng
đoãng d9oa4ng
đoành d9oa2nh
đoạt d9oa5t
đoc d9oc
đóc d9o1c
đọc d9o5c
đoi d9oi
đòi d9o2i
đỏi d9o3i
đói d9o1i
đọi d9o5i
đom d9om
đòm d9o2m
đỏm d9o3m
đóm d9o1m
đon d9on
đòn d9o2n
đón d9o1n
đọn d9o5n
đong d9ong
đòng d9o2ng
đỏng d9o3ng
đóng d9o1ng
đọng d9o5ng
đọp d9o5p
đót d9o1t
đọt d9o5t
đô d9o6
đồ d9o62
đổ d9o63
đỗ d9o64
đố d9o61
độ d9o65
đôc d9o6c
đốc d9o61c
độc d9o65c
đôi d9o6i
đồi d9o62i
đổi d9o63i
đỗi d9o64i
đối d9o61i
đội d9o65i
đôm d9o6m
đồm d9o62m
đốm d9o61m
đôn d9o6n
đồn d9o62n
đốn d9o61n
độn d9o65n
đông d9o6ng
đồng d9o62ng
đổng d9o63ng
đỗng d9o64ng
đống d9o61ng
động d9o65ng
đốp d9o61p
độp d9o65p
đốt d9o61t
đột d9o65t
đơ d9o7
đờ d9o72
đở d9o73
đỡ d9o74
đớ d9o71
đợ d9o75
đời d9o72i
đới d9o71i
đợi d9o75i
đơm d9o7m
đờm d9o72m
đởm d9o73m
đơn d9o7n
đờn d9o72n
đởn d9o73n
đớn d9o71n
đớp d9o71p
đợp d9o75p
đớt d9o71t
đợt d9o75t
đpcm d9pcm
đpctntư d9pctntu7
đph d9ph
đphg d9phg
đqg d9qg
đqgtnn d9qgtnn
đqt d9qt
đr d9r
đrá d9ra1
đrao d9rao
đrăk d9ra8k
đrắk d9ra81k
đrong d9rong
đrô d9ro6
đrung d9rung
đs d9s
đsp d9sp
đt d9t
đtb d9tb
đtbxh d9tbxh
đtl d9tl
đtla d9tla
đtlx d9tlx
đtm d9tm
đtntl d9tntl
đtpt d9tpt
đts d9ts
đtt d9tt
đttp d9ttp
đttpmt d9ttpmt
đttqg d9ttqg
đu d9u
đù d9u2
đủ d9u3
đú d9u1
đụ d9u5
đua d9ua
đùa d9u2a
đũa d9u4a
đúa d9u1a
đúc d9u1c
đục d9u5c
đuểnh d9ue63nh
đui d9ui
đùi d9u2i
đủi d9u3i
đũi d9u4i
đum d9um
đùm d9u2m
đúm d9u1m
đun d9un
đùn d9u2n
đún d9u1n
đụn d9u5n
đung d9ung
đùng d9u2ng
đủng d9u3ng
đũng d9u4ng
đúng d9u1ng
đụng d9u5ng
đuốc d9uo61c
đuôi d9uo6i
đuổi d9uo63i
đuối d9uo61i
đuồn d9uo62n
đuỗn d9uo64n
đuống d9uo61ng
đuột d9uo65t
đup d9up
đúp d9u1p
đụp d9u5p
đút d9u1t
đụt d9u5t
đừ d9u72
đử d9u73
đứ d9u71
đưa d9u7a
đừa d9u72a
đứa d9u71a
đức d9u71c
đực d9u75c
đưng d9u7ng
đừng d9u72ng
đứng d9u71ng
đựng d9u75ng
đước d9u7o71c
được d9u7o75c
đười d9u7o72i
đượm d9u7o75m
đườn d9u7o72n
đưỡn d9u7o74n
đương d9u7o7ng
đường d9u7o72ng
đứt d9u71t
đv d9v
đvn d9vn
đvqg d9vqg
đxx d9xx
è e2
ẻ e3
ẽ e4
é e1
ẹ e5
éc e1c
ẹc e5c
ẻh e3h
éh e1h
èm e2m
ẻm e3m
ẽm e4m
ém e1m
ẹm e5m
èn e2n
ẻn e3n
ẽn e4n
én e1n
ẹn e5n
èng e2ng
ẻng e3ng
éng e1ng
èo e2o
ẻo e3o
ẽo e4o
éo e1o
ẹo e5o
ép e1p
ẹp e5p
ét e1t
ẹt e5t
ê e6
ề e62
ể e63
ễ e64
ế e61
ệ e65
êa e6a
êbur e6bur
êc e6c
ếc e61c
ệc e65c
ếch e61ch
ệch e65ch
êh e6h
êm e6m
ềm e62m
ểm e63m
ễm e64m
ếm e61m
ệm e65m
ên e6n
ền e62n
ển e63n
ễn e64n
ến e61n
ện e65n
êng e6ng
ềng e62ng
ểng e63ng
ễng e64ng
ếng e61ng
ệng e65ng
ênh e6nh
ềnh e62nh
ểnh e63nh
ễnh e64nh
ếnh e61nh
ệnh e65nh
ếp e61p
ệp e65p
êpôc e6po6c
êpốc e6po61c
êt e6t
ết e61t
ệt e65t
êtan e6tan
ête e6te
êu e6u
ều e62u
ểu e63u
ễu e64u
ếu e61u
ệu e65u
êy e6y
fà fa2
frăng fra8ng
fría fri1a
fù fu2
fú fu1
fútbol fu1tbol
gà ga2
gả ga3
gã ga4
gá ga1
gạ ga5
gác ga1c
gạc ga5c
gạch ga5ch
gài ga2i
gãi ga4i
gái ga1i
galông galo6ng
gàn ga2n
gán ga1n
gạn ga5n
gàng ga2ng
gành ga2nh
gảnh ga3nh
gánh ga1nh
gạnh ga5nh
gào ga2o
gáo ga1o
gạo ga5o
gáp ga1p
gát ga1t
gạt ga5t
gàu ga2u
gáu ga1u
gày ga2y
gảy ga3y
gãy ga4y
gáy ga1y
gạy ga5y
gặc ga85c
găm ga8m
gằm ga82m
gắm ga81m
gặm ga85m
găn ga8n
gằn ga82n
gắn ga81n
gặn ga85n
găng ga8ng
gắng ga81ng
gặng ga85ng
gắp ga81p
gặp ga85p
gắt ga81t
gặt ga85t
gấc ga61c
gâm ga6m
gầm ga62m
gẩm ga63m
gẫm ga64m
gấm ga61m
gậm ga65m
gân ga6n
gần ga62n
gấn ga61n
gận ga65n
gầng ga62ng
gấp ga61p
gập ga65p
gất ga61t
gật ga65t
gâu ga6u
gầu ga62u
gẫu ga64u
gấu ga61u
gây ga6y
gầy ga62y
gẩy ga63y
gẫy ga64y
gấy ga61y
gậy ga65y
gẻ ge3
gém ge1m
gép ge1p
gềnh ge62nh
gệt ge65t
ghè ghe2
ghẻ ghe3
ghẽ ghe4
ghé ghe1
ghẹ ghe5
ghém ghe1m
ghèn ghe2n
ghẹn ghe5n
ghẹo ghe5o
ghép ghe1p
ghét ghe1t
ghê ghe6
ghề ghe62
ghế ghe61
ghệ ghe65
ghếch ghe61ch
ghềnh ghe62nh
ghểnh ghe63nh
ghệt ghe65t
ghì ghi2
ghĩa ghi4a
ghiếc ghie61c
ghiền ghie62n
ghìm ghi2m
ghín ghi1n
ghinê ghine6
ghình ghi2nh
gì gi2
gỉ gi3
gĩ gi4
gí gi1
già gia2
giả gia3
giã gia4
giá gia1
giạ gia5
giác gia1c
giạc gia5c
giải gia3i
giãi gia4i
giái gia1i
giại gia5i
giàm gia2m
giảm gia3m
giám gia1m
giạm gia5m
giàn gia2n
giản gia3n
giãn gia4n
gián gia1n
giàng gia2ng
giảng gia3ng
giáng gia1ng
giạng gia5ng
giành gia2nh
giảnh gia3nh
giào gia2o
giảo gia3o
giáo gia1o
giáp gia1p
giát gia1t
giạt gia5t
giàu gia2u
giảu gia3u
giavê giave6
giày gia2y
giãy gia4y
giáy gia1y
giặc gia85c
giăm gia8m
giằm gia82m
giẵm gia84m
giắm gia81m
giặm gia85m
giằn gia82n
giẵn gia84n
giắn gia81n
giặn gia85n
giăng gia8ng
giằng gia82ng
giắng gia81ng
giặng gia85ng
giặp gia85p
giắt gia81t
giặt gia85t
giâ gia6
giấc gia61c
giâm gia6m
giầm gia62m
giẫm gia64m
giấm gia61m
giậm gia65m
giân gia6n
giần gia62n
giấn gia61n
giận gia65n
giầng gia62ng
giẩng gia63ng
giầnh gia62nh
giấp gia61p
giập gia65p
giất gia61t
giật gia65t
giâu gia6u
giầu gia62u
giấu gia61u
giậu gia65u
giây gia6y
giầy gia62y
giẩy gia63y
giẫy gia64y
giấy gia61y
gíc gi1c
gích gi1ch
giẻ gie3
giẽ gie4
gié gie1
giéc gie1c
gièm gie2m
giém gie1m
giẻo gie3o
giéo gie1o
giẹo gie5o
giép gie1p
giẹp gie5p
giẹt gie5t
giê gie6
giề gie62
giếc gie61c
giệch gie65ch
giếm gie61m
giền gie62n
giêng gie6ng
giềng gie62ng
giếng gie61ng
giềnh gie62nh
giệnh gie65nh
giết gie61t
giệt gie65t
giễu gie64u
giếu gie61u
giệu gie65u
gìm gi2m
gìn gi2n
giò gio2
giỏ gio3
giõ gio4
gió gio1
giọ gio5
gióc gio1c
giọc gio5c
giòi gio2i
giỏi gio3i
giõi gio4i
giói gio1i
giọi gio5i
giòn gio2n
giỏn gio3n
gión gio1n
giọn gio5n
giòng gio2ng
giỏng gio3ng
giõng gio4ng
gióng gio1ng
giọng gio5ng
giót gio1t
giọt gio5t
giô gio6
giồ gio62
giổ gio63
giỗ gio64
giộ gio65
giốc gio61c
giôi gio6i
giồi gio62i
giổi gio63i
giỗi gio64i
giối gio61i
giội gio65i
giôn gio6n
giông gio6ng
giồng gio62ng
giống gio61ng
giộng gio65ng
giộp gio65p
giốt gio61t
giột gio65t
giơ gio7
giờ gio72
giở gio73
giỡ gio74
giớ gio71
giời gio72i
giới gio71i
giớm gio71m
giợm gio75m
giờn gio72n
giởn gio73n
giỡn gio74n
giợn gio75n
giợt gio75t
gíp gi1p
gít gi1t
gịt gi5t
giù giu2
giũ giu4
giú giu1
giùa giu2a
giũa giu4a
giụa giu5a
giục giu5c
giùi giu2i
giủi giu3i
giúi giu1i
giụi giu5i
giùm giu2m
giúm giu1m
giụm giu5m
giùn giu2n
giún giu1n
giùng giu2ng
giủng giu3ng
giuộc giuo65c
giuỗi giuo64i
giuộm giuo65m
giúp giu1p
giư giu7
giừ giu72
giữ giu74
giưa giu7a
giữa giu74a
giứa giu71a
giương giu7o7ng
giường giu7o72ng
giướng giu7o71ng
giượng giu7o75ng
giựt giu75t
glây gla6y
gò go2
gõ go4
gó go1
gọ go5
góc go1c
gòi go2i
gỏi go3i
gõi go4i
gói go1i
gọi go5i
gỏl go3l
gòn go2n
gón go1n
gọn go5n
gòng go2ng
gỏng go3ng
gọng go5ng
góp go1p
gót go1t
gọt go5t
gô go6
gồ go62
gổ go63
gỗ go64
gộ go65
gốc go61c
gộc go65c
gồi go62i
gối go61i
gội go65i
gôm go6m
gồm go62m
gốm go61m
gôn go6n
gông go6ng
gồng go62ng
gống go61ng
gốp go61p
gộp go65p
gột go65t
gơ go7
gờ go72
gở go73
gỡ go74
gớc go71c
gởi go73i
gới go71i
gợi go75i
gờm go72m
gớm go71m
gơn go7n
gờn go72n
gợn go75n
gợt go75t
grát gra1t
gù gu2
gũ gu4
gú gu1
gụ gu5
gục gu5c
guê gue6
gùi gu2i
gũi gu4i
gụi gu5i
gùn gu2n
gún gu1n
gùng gu2ng
gúng gu1ng
guó guo1
guốc guo61c
guộc guo65c
guồi guo62i
guồng guo62ng
guột guo65t
gút gu1t
gụt gu5t
gư gu7
gừ gu72
gừa gu72a
gửi gu73i
gừng gu72ng
gứng gu71ng
gươm gu7o7m
gườm gu7o72m
gượm gu7o75m
gương gu7o7ng
gường gu7o72ng
gưỡng gu7o74ng
gượng gu7o75ng
gỵa gy5a
hà ha2
hả ha3
há ha1
hạ ha5
hác ha1c
hạc ha5c
hách ha1ch
hạch ha5ch
hài ha2i
hải ha3i
hãi ha4i
hái ha1i
hại ha5i
haló halo1
hàm ha2m
hảm ha3m
hãm ha4m
hám ha1m
hạm ha5m
hàn ha2n
hản ha3n
hãn ha4n
hán ha1n
hạn ha5n
hàng ha2ng
hảng ha3ng
hãng ha4ng
háng ha1ng
hạng ha5ng
hành ha2nh
hảnh ha3nh
hãnh ha4nh
hánh ha1nh
hạnh ha5nh
hào ha2o
hảo ha3o
hão ha4o
háo ha1o
hạo ha5o
háp ha1p
hạp ha5p
hát ha1t
hạt ha5t
hàu ha2u
háu ha1u
hảy ha3y
hãy ha4y
háy ha1y
hạy ha5y
hắ ha81
hắc ha81c
hặc ha85c
hăm ha8m
hằm ha82m
hẳm ha83m
hằn ha82n
hẳn ha83n
hắn ha81n
hăng ha8ng
hằng ha82ng
hẵng ha84ng
hắng ha81ng
hắt ha81t
hấc ha61c
hậc ha65c
hâm ha6m
hầm ha62m
hẩm ha63m
hẫm ha64m
hấm ha61m
hậm ha65m
hân ha6n
hẫn ha64n
hấn ha61n
hận ha65n
hâng ha6ng
hẩng ha63ng
hẫng ha64ng
hấng ha61ng
hấp ha61p
hập ha65p
hất ha61t
hật ha65t
hâu ha6u
hầu ha62u
hẩu ha63u
hẫu ha64u
hấu ha61u
hậu ha65u
hây ha6y
hầy ha62y
hẩy ha63y
hẫy ha64y
hấy ha61y
hđbt hd9bt
hè he2
hẻ he3
hẽ he4
hé he1
hẹ he5
héc he1c
hécta he1cta
hèm he2m
hẻm he3m
hẹm he5m
hèn he2n
hẻn he3n
hẹn he5n
hẹng he5ng
hèo he2o
hẻo he3o
héo he1o
hép he1p
hẹp he5p
hét he1t
hẹt he5t
hê he6
hề he62
hể he63
hễ he64
hế he61
hệ he65
hếch he61ch
hệch he65ch
hêli he6li
hềm he62m
hên he6n
hển he63n
hến he61n
hênh he6nh
hềnh he62nh
hểnh he63nh
hết he61t
hệt he65t
hêu he6u
hều he62u
hểu he63u
hếu he61u
hì hi2
hỉ hi3
hĩ hi4
hí hi1
hích hi1ch
hịch hi5ch
hiêm hie6m
hiềm hie62m
hiểm hie63m
hiếm hie61m
hiên hie6n
hiền hie62n
hiển hie63n
hiến hie61n
hiện hie65n
hiêng hie6ng
hiểng hie63ng
hiếng hie61ng
hiếp hie61p
hiệp hie65p
hiết hie61t
hiệt hie65t
hiêu hie6u
hiều hie62u
hiểu hie63u
hiếu hie61u
hiệu hie65u
hĩm hi4m
hỉn hi3n
hình hi2nh
hỉnh hi3nh
hĩnh hi4nh
híp hi1p
hít hi1t
hìu hi2u
hmông hmo6ng
hnđ hnd9
hò ho2
hỏ ho3
hó ho1
họ ho5
hoác hoa1c
hoách hoa1ch
hoạch hoa5ch
hoài hoa2i
hoải hoa3i
hoãi hoa4i
hoái hoa1i
hoại hoa5i
hoàn hoa2n
hoản hoa3n
hoãn hoa4n
hoán hoa1n
hoạn hoa5n
hoàng hoa2ng
hoảng hoa3ng
hoãng hoa4ng
hoáng hoa1ng
hoành hoa2nh
hoảnh hoa3nh
hoánh hoa1nh
hoạnh hoa5nh
hoát hoa1t
hoạt hoa5t
hoáy hoa1y
hoắc hoa81c
hoặc hoa85c
hoăm hoa8m
hoắm hoa81m
hoằn hoa82n
hoẳn hoa83n
hoăng hoa8ng
hoằng hoa82ng
hoẵng hoa84ng
hoắt hoa81t
hoân hoa6n
hóc ho1c
học ho5c
hoẻn hoe3n
hoét hoe1t
hoẹt hoe5t
hòi ho2i
hỏi ho3i
hói ho1i
hòm ho2m
hỏm ho3m
hõm ho4m
hóm ho1m
hòn ho2n
hỏn ho3n
hón ho1n
hòng ho2ng
hỏng ho3ng
hóng ho1ng
họng ho5ng
hóp ho1p
họp ho5p
hót ho1t
hô ho6
hồ ho62
hổ ho63
hỗ ho64
hố ho61
hộ ho65
hốc ho61c
hộc ho65c
hôi ho6i
hồi ho62i
hổi ho63i
hối ho61i
hội ho65i
hôm ho6m
hồm ho62m
hổm ho63m
hỗm ho64m
hôn ho6n
hồn ho62n
hổn ho63n
hỗn ho64n
hộn ho65n
hông ho6ng
hồng ho62ng
hổng ho63ng
hỗng ho64ng
hống ho61ng
hốp ho61p
hộp ho65p
hốt ho61t
hột ho65t
hôtel ho6tel
hơ ho7
hờ ho72
hở ho73
hớ ho71
hơi ho7i
hời ho72i
hởi ho73i
hỡi ho74i
hới ho71i
hợi ho75i
hờm ho72m
hớm ho71m
hợm ho75m
hơn ho7n
hờn ho72n
hớn ho71n
hơng ho7ng
hớp ho71p
hợp ho75p
hớt ho71t
hợt ho75t
hrê hre6
hrệ hre65
hù hu2
hủ hu3
hũ hu4
hú hu1
hụ hu5
hùa hu2a
húa hu1a
huân hua6n
huẩn hua63n
huấn hua61n
huất hua61t
huầy hua62y
húc hu1c
hục hu5c
huê hue6
huề hue62
huế hue61
huệ hue65
huếch hue61ch
huênh hue6nh
huểnh hue63nh
huếnh hue61nh
hùi hu2i
hủi hu3i
húi hu1i
hụi hu5i
hùm hu2m
hũm hu4m
húm hu1m
hụm hu5m
hùn hu2n
hủn hu3n
hùng hu2ng
hủng hu3ng
húng hu1ng
huổi huo63i
huông huo6ng
huồng huo62ng
huống huo61ng
huơ huo7
huờ huo72
huơn huo7n
huờn huo72n
huỡn huo74n
húp hu1p
hụp hu5p
hút hu1t
hụt hu5t
huých huy1ch
huỵch huy5ch
huyên huye6n
huyền huye62n
huyển huye63n
huyễn huye64n
huyến huye61n
huyện huye65n
huyết huye61t
huyệt huye65t
huỳnh huy2nh
huỷnh huy3nh
huýnh huy1nh
huýt huy1t
hư hu7
hừ hu72
hử hu73
hữ hu74
hứ hu71
hự hu75
hưa hu7a
hừa hu72a
hữa hu74a
hứa hu71a
hức hu71c
hực hu75c
hừm hu72m
hưn hu7n
hưng hu7ng
hừng hu72ng
hửng hu73ng
hững hu74ng
hứng hu71ng
hước hu7o71c
hướm hu7o71m
hượm hu7o75m
hương hu7o7ng
hường hu7o72ng
hưởng hu7o73ng
hướng hu7o71ng
hươu hu7o7u
hưu hu7u
hữu hu74u
hựu hu75u
hỷ hy3
hỹ hy4
hý hy1
hyđro hyd9ro
ì i2
ỉ i3
ĩ i4
í i1
ị i5
ìa i2a
ỉa i3a
ĩa i4a
ía i1a
ịa i5a
íc i1c
ỉch i3ch
ích i1ch
ịch i5ch
ìh i2h
ìi i2i
ìm i2m
ỉm i3m
ĩm i4m
ím i1m
ịm i5m
ìn i2n
ỉn i3n
ĩn i4n
ín i1n
ịn i5n
ỉng i3ng
íng i1ng
ịng i5ng
ình i2nh
ỉnh i3nh
ĩnh i4nh
ính i1nh
ịnh i5nh
iốt io61t
iới io71i
íp i1p
ịp i5p
ít i1t
ịt i5t
ìu i2u
ỉu i3u
ĩu i4u
íu i1u
ịu i5u
iý iy1
jà ja2
jì ji2
jí ji1
jó jo1
josé jose1
jú ju1
jút ju1t
jữ ju74
kách ka1ch
kađai kad9ai
kài ka2i
kalá kala1
kalú kalu1
kạn ka5n
kcách kca1ch
kđrao kd9rao
kè ke2
kẻ ke3
kẽ ke4
ké ke1
kẹ ke5
kéc ke1c
kèm ke2m
kẻm ke3m
kẽm ke4m
kém ke1m
kèn ke2n
kén ke1n
kẹn ke5n
kẻng ke3ng
kèo ke2o
kẻo ke3o
kẽo ke4o
kéo ke1o
kẹo ke5o
kép ke1p
kẹp ke5p
két ke1t
kẹt ke5t
kê ke6
kề ke62
kể ke63
kế ke61
kệ ke65
kếch ke61ch
kệch ke65ch
kềm ke62m
kên ke6n
kền ke62n
kêng ke6ng
kênh ke6nh
kềnh ke62nh
kễnh ke64nh
kệnh ke65nh
kếp ke61p
kết ke61t
kêu ke6u
kều ke62u
kgông kgo6ng
khà kha2
khả kha3
khá kha1
khạ kha5
khác kha1c
khạc kha5c
khách kha1ch
khải kha3i
khái kha1i
khại kha5i
khảm kha3m
khám kha1m
khàn kha2n
khản kha3n
khán kha1n
khàng kha2ng
khảng kha3ng
kháng kha1ng
khạng kha5ng
khành kha2nh
khảnh kha3nh
khánh kha1nh
khào kha2o
khảo kha3o
kháo kha1o
khạo kha5o
kháp kha1p
khạp kha5p
khát kha1t
khạt kha5t
kháu kha1u
khảy kha3y
kháy kha1y
khắ kha81
khắc kha81c
khặc kha85c
khăm kha8m
khẳm kha83m
khắm kha81m
khăn kha8n
khằn kha82n
khẳn kha83n
khắn kha81n
khăng kha8ng
khằng kha82ng
khẳng kha83ng
khắng kha81ng
khắp kha81p
khắt kha81t
khấc kha61c
khâm kha6m
khẩm kha63m
khấm kha61m
khân kha6n
khẩn kha63n
khấn kha61n
khẩng kha63ng
khấng kha61ng
khấp kha61p
khập kha65p
khất kha61t
khật kha65t
khâu kha6u
khẩu kha63u
khấu kha61u
khậu kha65u
khẩy kha63y
khè khe2
khẻ khe3
khẽ khe4
khé khe1
khẹ khe5
khẹc khe5c
khém khe1m
khèn khe2n
khén khe1n
khèo khe2o
khẻo khe3o
khéo khe1o
khép khe1p
khét khe1t
khẹt khe5t
khê khe6
khề khe62
khể khe63
khế khe61
khệ khe65
khến khe61n
khệng khe65ng
khênh khe6nh
khềnh khe62nh
khểnh khe63nh
khệnh khe65nh
khêu khe6u
khều khe62u
khểu khe63u
khì khi2
khỉ khi3
khí khi1
khị khi5
khìa khi2a
khỉa khi3a
khía khi1a
khịa khi5a
khích khi1ch
khiêm khie6m
khiểm khie63m
khiếm khie61m
khiệm khie65m
khiên khie6n
khiền khie62n
khiển khie63n
khiến khie61n
khiêng khie6ng
khiễng khie64ng
khiếp khie61p
khiết khie61t
khiêu khie6u
khiều khie62u
khiếu khie61u
khìn khi2n
khín khi1n
khỉnh khi3nh
khĩnh khi4nh
khít khi1t
khịt khi5t
khìu khi2u
khỉu khi3u
khíu khi1u
khịu khi5u
khlá khla1
khò kho2
khỏ kho3
khó kho1
khoác khoa1c
khoạc khoa5c
khoách khoa1ch
khoải khoa3i
khoái khoa1i
khoản khoa3n
khoán khoa1n
khoảng khoa3ng
khoáng khoa1ng
khoảnh khoa3nh
khoào khoa2o
khoát khoa1t
khoạt khoa5t
khoáy khoa1y
khoắc khoa81c
khoăm khoa8m
khoằm khoa82m
khoắm khoa81m
khoăn khoa8n
khoắn khoa81n
khoắng khoa81ng
khoắt khoa81t
khóc kho1c
khoèn khoe2n
khoèo khoe2o
khoẻo khoe3o
khoét khoe1t
khỏi kho3i
khói kho1i
khòm kho2m
khóm kho1m
khọm kho5m
khòn kho2n
khọn kho5n
khòng kho2ng
khỏng kho3ng
khót kho1t
khô kho6
khổ kho63
khố kho61
khốc kho61c
khôg kho6g
khôi kho6i
khổi kho63i
khối kho61i
khôn kho6n
khổn kho63n
khốn kho61n
không kho6ng
khổng kho63ng
khống kho61ng
khốt kho61t
khơ kho7
khờ kho72
khớ kho71
khơi kho7i
khởi kho73i
khới kho71i
khơm kho7m
khớm kho71m
khơme kho7me
khờn kho72n
khớn kho71n
khớp kho71p
khù khu2
khủ khu3
khũ khu4
khú khu1
khụ khu5
khùa khu2a
khủa khu3a
khúa khu1a
khuân khua6n
khuẩn khua63n
khuẫn khua64n
khuâng khua6ng
khuất khua61t
khuây khua6y
khuấy khua61y
khúc khu1c
khục khu5c
khuê khue6
khuể khue63
khuếch khue61ch
khúm khu1m
khùng khu2ng
khủng khu3ng
khuôn khuo6n
khuông khuo6ng
khuơ khuo7
khụt khu5t
khuých khuy1ch
khuyên khuye6n
khuyển khuye63n
khuyến khuye61n
khuyết khuye61t
khuỳnh khuy2nh
khuýnh khuy1nh
khuỷu khuy3u
khuỵu khuy5u
khư khu7
khừ khu72
khử khu73
khứ khu71
khự khu75
khừa khu72a
khứa khu71a
khựa khu75a
khừng khu72ng
khửng khu73ng
khứng khu71ng
khựng khu75ng
khước khu7o71c
khươi khu7o7i
khươm khu7o7m
khươn khu7o7n
khương khu7o7ng
khưỡng khu7o74ng
khướt khu7o71t
khướu khu7o71u
khưu khu7u
khứu khu71u
khyển khye63n
kì ki2
kỉ ki3
kĩ ki4
kí ki1
kị ki5
kìa ki2a
kỉch ki3ch
kích ki1ch
kịch ki5ch
kiệ kie65
kiêm kie6m
kiềm kie62m
kiểm kie63m
kiếm kie61m
kiệm kie65m
kiên kie6n
kiền kie62n
kiển kie63n
kiến kie61n
kiện kie65n
kiêng kie6ng
kiềng kie62ng
kiểng kie63ng
kiễng kie64ng
kiếng kie61ng
kiếp kie61p
kiệp kie65p
kiết kie61t
kiệt kie65t
kiêu kie6u
kiều kie62u
kiểu kie63u
kiếu kie61u
kiệu kie65u
kiló kilo1
kilô kilo6
kilôgam kilo6gam
kilôm kilo6m
kilômet kilo6met
kìm ki2m
kìn ki2n
kín ki1n
kịn ki5n
kình ki2nh
kỉnh ki3nh
kính ki1nh
kinó kino1
kíp ki1p
kịp ki5p
kít ki1t
kịt ki5t
kitô kito6
kĩu ki4u
kíu ki1u
kò ko2
kó ko1
kòp ko2p
kót ko1t
kô ko6
kốc ko61c
kôn ko6n
kông ko6ng
kơ ko7
kơi ko7i
kpă kpa8
kpăng kpa8ng
kráp kra1p
krăng kra8ng
krẹ kre5
krêy kre6y
krôm kro6m
krông kro6ng
ktlê ktle6
kủ ku3
kúba ku1ba
kúc ku1c
kuênh kue6nh
kỳ ky2
kỷ ky3
kỹ ky4
ký ky1
kỵ ky5
là la2
lả la3
lã la4
lá la1
lạ la5
lác la1c
lạc la5c
lách la1ch
lạch la5ch
lài la2i
lải la3i
lãi la4i
lái la1i
lại la5i
làm la2m
lảm la3m
lãm la4m
lạm la5m
làn la2n
lãn la4n
lán la1n
lạn la5n
làng la2ng
lảng la3ng
lãng la4ng
láng la1ng
lạng la5ng
lành la2nh
lảnh la3nh
lãnh la4nh
lánh la1nh
lạnh la5nh
lào la2o
lảo la3o
lão la4o
láo la1o
lạo la5o
láp la1p
lạp la5p
lát la1t
lạt la5t
làu la2u
lảu la3u
láu la1u
lạu la5u
lày la2y
lảy la3y
láy la1y
lạy la5y
lắc la81c
lặc la85c
lăk la8k
lắk la81k
lăm la8m
lằm la82m
lẳm la83m
lắm la81m
lặm la85m
lăn la8n
lằn la82n
lẳn la83n
lặn la85n
lăng la8ng
lằng la82ng
lẳng la83ng
lẵng la84ng
lắng la81ng
lặng la85ng
lắp la81p
lặp la85p
lắt la81t
lặt la85t
lấc la61c
lâm la6m
lầm la62m
lẩm la63m
lẫm la64m
lấm la61m
lậm la65m
lân la6n
lần la62n
lẩn la63n
lẫn la64n
lấn la61n
lận la65n
lâng la6ng
lấng la61ng
lâp la6p
lấp la61p
lập la65p
lất la61t
lật la65t
lâu la6u
lầu la62u
lẩu la63u
lấu la61u
lậu la65u
lây la6y
lầy la62y
lẩy la63y
lẫy la64y
lấy la61y
lậy la65y
lè le2
lẻ le3
lẽ le4
lé le1
lẹ le5
léc le1c
lèm le2m
lẻm le3m
lém le1m
lẹm le5m
lèn le2n
lẻn le3n
lẽn le4n
lén le1n
lẹn le5n
lèng le2ng
lẻng le3ng
léng le1ng
lèo le2o
lẻo le3o
lẽo le4o
léo le1o
lẹo le5o
lép le1p
lẹp le5p
lét le1t
lẹt le5t
lê le6
lề le62
lể le63
lễ le64
lệ le65
lếch le61ch
lệch le65ch
lên le6n
lênh le6nh
lềnh le62nh
lểnh le63nh
lễnh le64nh
lệnh le65nh
lênin le6nin
lết le61t
lệt le65t
lêu le6u
lều le62u
lểu le63u
lễu le64u
lếu le61u
lệu le65u
lểy le63y
lếy le61y
lì li2
lí li1
lị li5
lìa li2a
lía li1a
lịa li5a
líc li1c
lích li1ch
lịch li5ch
liếc lie61c
liêm lie6m
liềm lie62m
liễm lie64m
liếm lie61m
liệm lie65m
liên lie6n
liền lie62n
liễn lie64n
liến lie61n
liêng lie6ng
liềng lie62ng
liểng lie63ng
liếng lie61ng
liệng lie65ng
liếp lie61p
liệp lie65p
liệt lie65t
liêu lie6u
liều lie62u
liểu lie63u
liễu lie64u
liếu lie61u
liệu lie65u
lìm li2m
lỉm li3m
lịm li5m
lìn li2n
lình li2nh
lỉnh li3nh
lĩnh li4nh
lính li1nh
lịnh li5nh
líp li1p
lịp li5p
lít li1t
lịt li5t
litô lito6
lìu li2u
líu li1u
lịu li5u
lò lo2
lõ lo4
ló lo1
lọ lo5
loạc loa5c
loách loa1ch
loài loa2i
loại loa5i
loàn loa2n
loán loa1n
loạn loa5n
loàng loa2ng
loảng loa3ng
loãng loa4ng
loáng loa1ng
loạng loa5ng
loát loa1t
loạt loa5t
loăn loa8n
loăng loa8ng
loằng loa82ng
loắt loa81t
lóc lo1c
lọc lo5c
loẻn loe3n
loét loe1t
loẹt loe5t
lòi lo2i
lỏi lo3i
lõi lo4i
lói lo1i
lọi lo5i
lòm lo2m
lỏm lo3m
lõm lo4m
lóm lo1m
lọm lo5m
lòn lo2n
lỏn lo3n
lọn lo5n
lòng lo2ng
lỏng lo3ng
lõng lo4ng
lóng lo1ng
lọng lo5ng
lóp lo1p
lọp lo5p
lót lo1t
lọt lo5t
lô lo6
lồ lo62
lổ lo63
lỗ lo64
lố lo61
lộ lo65
lôc lo6c
lốc lo61c
lộc lo65c
lôgic lo6gic
lôi lo6i
lồi lo62i
lỗi lo64i
lối lo61i
lội lo65i
lôm lo6m
lồm lo62m
lổm lo63m
lốm lo61m
lộm lo65m
lôn lo6n
lồn lo62n
lổn lo63n
lốn lo61n
lộn lo65n
lông lo6ng
lồng lo62ng
lổng lo63ng
lộng lo65ng
lốp lo61p
lộp lo65p
lốt lo61t
lột lo65t
lơ lo7
lờ lo72
lở lo73
lỡ lo74
lớ lo71
lợ lo75
lơi lo7i
lời lo72i
lởi lo73i
lỡi lo74i
lới lo71i
lợi lo75i
lờm lo72m
lởm lo73m
lỡm lo74m
lợm lo75m
lơn lo7n
lờn lo72n
lởn lo73n
lớn lo71n
lợn lo75n
lơng lo7ng
lớp lo71p
lợp lo75p
lớt lo71t
lợt lo75t
lù lu2
lủ lu3
lũ lu4
lú lu1
lụ lu5
lùa lu2a
lũa lu4a
lúa lu1a
lụa lu5a
luán lua1n
luân lua6n
luẩn lua63n
luấn lua61n
luận lua65n
luật lua65t
lúc lu1c
lục lu5c
lùi lu2i
lủi lu3i
lũi lu4i
lúi lu1i
lụi lu5i
lùm lu2m
lủm lu3m
lũm lu4m
lúm lu1m
lụm lu5m
lùn lu2n
lủn lu3n
lũn lu4n
lún lu1n
lụn lu5n
lùng lu2ng
lủng lu3ng
lũng lu4ng
lúng lu1ng
lụng lu5ng
luóm luo1m
luốc luo61c
luộc luo65c
luỗi luo64i
luôm luo6m
luộm luo65m
luôn luo6n
luồn luo62n
luông luo6ng
luồng luo62ng
luỗng luo64ng
luống luo61ng
luốt luo61t
luột luo65t
lúp lu1p
lụp lu5p
lút lu1t
lụt lu5t
luyên luye6n
luyến luye61n
luyện luye65n
luyệt luye65t
luýnh luy1nh
lư lu7
lừ lu72
lử lu73
lữ lu74
lự lu75
lưa lu7a
lừa lu72a
lửa lu73a
lữa lu74a
lứa lu71a
lựa lu75a
lưc lu7c
lức lu71c
lực lu75c
lừm lu72m
lưng lu7ng
lừng lu72ng
lửng lu73ng
lững lu74ng
lứng lu71ng
lựng lu75ng
lược lu7o75c
lười lu7o72i
lưỡi lu7o74i
lưới lu7o71i
lươm lu7o7m
lườm lu7o72m
lượm lu7o75m
lươn lu7o7n
lườn lu7o72n
lượn lu7o75n
lương lu7o7ng
lường lu7o72ng
lưỡng lu7o74ng
lướng lu7o71ng
lượng lu7o75ng
lướt lu7o71t
lượt lu7o75t
lứt lu71t
lưu lu7u
lữu lu74u
lựu lu75u
lỳ ly2
lỹ ly4
lý ly1
lỵ ly5
mà ma2
mả ma3
mã ma4
má ma1
mạ ma5
mác ma1c
mạc ma5c
mách ma1ch
mạch ma5ch
mài ma2i
mải ma3i
mãi ma4i
mái ma1i
mại ma5i
màn ma2n
mản ma3n
mãn ma4n
mán ma1n
mạn ma5n
màng ma2ng
mảng ma3ng
mãng ma4ng
máng ma1ng
mạng ma5ng
mành ma2nh
mảnh ma3nh
mãnh ma4nh
mánh ma1nh
mạnh ma5nh
mào ma2o
mão ma4o
máo ma1o
mạo ma5o
mạp ma5p
mát ma1t
mạt ma5t
matê mate6
matrác matra1c
màu ma2u
máu ma1u
mày ma2y
mảy ma3y
máy ma1y
mạy ma5y
mă ma8
mắc ma81c
mặc ma85c
măk ma8k
măm ma8m
mắm ma81m
măn ma8n
mằn ma82n
mẳn ma83n
mắn ma81n
mặn ma85n
măng ma8ng
mắng ma81ng
mặp ma85p
mắt ma81t
mặt ma85t
mâm ma6m
mầm ma62m
mẩm ma63m
mẫm ma64m
mấm ma61m
mậm ma65m
mân ma6n
mần ma62n
mẩn ma63n
mẫn ma64n
mấn ma61n
mận ma65n
mâng ma6ng
mầng ma62ng
mâp ma6p
mấp ma61p
mập ma65p
mất ma61t
mật ma65t
mâu ma6u
mầu ma62u
mẩu ma63u
mẫu ma64u
mấu ma61u
mậu ma65u
mây ma6y
mầy ma62y
mẩy ma63y
mấy ma61y
mè me2
mẻ me3
mẽ me4
mé me1
mẹ me5
méc me1c
mèm me2m
mém me1m
mèn me2n
mén me1n
mèng me2ng
méng me1ng
menú menu1
mèo me2o
mẻo me3o
mẽo me4o
méo me1o
mẹo me5o
mép me1p
mẹp me5p
mét me1t
mẹt me5t
mê me6
mề me62
mể me63
mễ me64
mế me61
mệ me65
mếch me61ch
mêga me6ga
mềm me62m
mễm me64m
mên me6n
mền me62n
mễn me64n
mến me61n
mênh me6nh
mềnh me62nh
mệnh me65nh
mết me61t
mệt me65t
mêtan me6tan
mểu me63u
mếu me61u
mì mi2
mỉ mi3
mĩ mi4
mí mi1
mị mi5
mỉa mi3a
mĩa mi4a
mía mi1a
mích mi1ch
mịch mi5ch
miẻo mie3o
miên mie6n
miền mie62n
miễn mie64n
miến mie61n
miện mie65n
miêng mie6ng
miểng mie63ng
miếng mie61ng
miệng mie65ng
miết mie61t
miệt mie65t
miêu mie6u
miều mie62u
miểu mie63u
miễu mie64u
miếu mie61u
mỉm mi3m
mĩm mi4m
mím mi1m
mìn mi2n
mịn mi5n
míng mi1ng
mình mi2nh
mỉnh mi3nh
mính mi1nh
mịnh mi5nh
míp mi1p
mít mi1t
mịt mi5t
mìu mi2u
míu mi1u
mlài mla2i
mlời mlo72i
mluộm mluo65m
mnhời mnho72i
mní mni1
mò mo2
mỏ mo3
mõ mo4
mó mo1
mọ mo5
móc mo1c
mọc mo5c
mòi mo2i
mỏi mo3i
mõi mo4i
mói mo1i
mọi mo5i
mòm mo2m
mỏm mo3m
mõm mo4m
móm mo1m
mòn mo2n
món mo1n
mọn mo5n
moná mona1
mòng mo2ng
mỏng mo3ng
móng mo1ng
mọng mo5ng
móp mo1p
mọp mo5p
mót mo1t
mọt mo5t
mô mo6
mồ mo62
mổ mo63
mỗ mo64
mố mo61
mộ mo65
môc mo6c
mốc mo61c
mộc mo65c
môi mo6i
mồi mo62i
mỗi mo64i
mối mo61i
mội mo65i
mộl mo65l
môm mo6m
mồm mo62m
mômen mo6men
môn mo6n
mồn mo62n
mông mo6ng
mồng mo62ng
mổng mo63ng
mỗng mo64ng
mống mo61ng
mộng mo65ng
môt mo6t
mốt mo61t
một mo65t
mơ mo7
mờ mo72
mở mo73
mỡ mo74
mớ mo71
mợ mo75
mơi mo7i
mời mo72i
mới mo71i
mợi mo75i
mơm mo7m
mờm mo72m
mớm mo71m
mơn mo7n
mởn mo73n
mỡn mo74n
mớn mo71n
mớp mo71p
mrơn mro7n
mù mu2
mủ mu3
mũ mu4
mú mu1
mụ mu5
mùa mu2a
múa mu1a
múc mu1c
mục mu5c
mùi mu2i
mủi mu3i
mũi mu4i
múi mu1i
mụi mu5i
mủm mu3m
mũm mu4m
múm mu1m
mùn mu2n
mủn mu3n
mún mu1n
mụn mu5n
mùng mu2ng
mủng mu3ng
muôi muo6i
muồi muo62i
muỗi muo64i
muối muo61i
muội muo65i
muỗm muo64m
muôn muo6n
muốn muo61n
muộn muo65n
muông muo6ng
muồng muo62ng
muổng muo63ng
muỗng muo64ng
muống muo61ng
muốt muo61t
múp mu1p
mụp mu5p
muséum muse1um
mút mu1t
mụt mu5t
mư mu7
mự mu75
mưa mu7a
mửa mu73a
mứa mu71a
mựa mu75a
mức mu71c
mực mu75c
mứn mu71n
mưng mu7ng
mừng mu72ng
mững mu74ng
mược mu7o75c
mươi mu7o7i
mười mu7o72i
mươn mu7o7n
mướn mu7o71n
mượn mu7o75n
mương mu7o7ng
mường mu7o72ng
mướp mu7o71p
mướt mu7o71t
mượt mu7o75t
mưỡu mu7o74u
mứt mu71t
mưu mu7u
mứu mu71u
mỳ my2
mỹ my4
mỵ my5
nà na2
nả na3
nã na4
ná na1
nạ na5
nác na1c
nạc na5c
nách na1ch
nạch na5ch
nài na2i
nải na3i
nãi na4i
nái na1i
nại na5i
nàm na2m
nảm na3m
nám na1m
nạm na5m
nàn na2n
nản na3n
nãn na4n
nán na1n
nạn na5n
nàng na2ng
nãng na4ng
náng na1ng
nạng na5ng
nành na2nh
nánh na1nh
nạnh na5nh
nào na2o
não na4o
náo na1o
nạo na5o
nạp na5p
nát na1t
nạt na5t
náu na1u
này na2y
nảy na3y
nãy na4y
náy na1y
nạy na5y
nắc na81c
nặc na85c
năm na8m
nằm na82m
nẳm na83m
nắm na81m
năn na8n
nằn na82n
nắn na81n
nặn na85n
năng na8ng
nằng na82ng
nẵng na84ng
nắng na81ng
nặng na85ng
nắp na81p
nấc na61c
nâm na6m
nầm na62m
nẫm na64m
nấm na61m
nậm na65m
nân na6n
nần na62n
nẫn na64n
nấn na61n
nâng na6ng
nẫng na64ng
nấng na61ng
nậng na65ng
nấp na61p
nập na65p
nất na61t
nật na65t
nâu na6u
nẫu na64u
nấu na61u
nậu na65u
nây na6y
nầy na62y
nẩy na63y
nẫy na64y
nấy na61y
nậy na65y
nđm nd9m
nè ne2
nẻ ne3
né ne1
ném ne1m
nén ne1n
nẹn ne5n
nèo ne2o
nẻo ne3o
nẽo ne4o
néo ne1o
nẹo ne5o
nép ne1p
nẹp ne5p
nét ne1t
nẹt ne5t
nê ne6
nề ne62
nể ne63
nễ ne64
nệ ne65
nêm ne6m
nếm ne61m
nệm ne65m
nên ne6n
nền ne62n
nến ne61n
nện ne65n
nếp ne61p
nết ne61t
nêu ne6u
nếu ne61u
nếy ne61y
ngà nga2
ngả nga3
ngã nga4
ngá nga1
ngạ nga5
ngác nga1c
ngạc nga5c
ngách nga1ch
ngạch nga5ch
ngài nga2i
ngải nga3i
ngãi nga4i
ngái nga1i
ngại nga5i
ngàm nga2m
ngám nga1m
ngàn nga2n
ngán nga1n
ngạn nga5n
ngàng nga2ng
ngãng nga4ng
ngáng nga1ng
ngạng nga5ng
ngành nga2nh
ngảnh nga3nh
ngánh nga1nh
ngạnh nga5nh
ngào nga2o
ngảo nga3o
ngão nga4o
ngáo nga1o
ngạo nga5o
ngáp nga1p
ngát nga1t
ngạt nga5t
ngàu nga2u
ngáu nga1u
ngày nga2y
ngáy nga1y
ngắc nga81c
ngăm nga8m
ngằm nga82m
ngắm nga81m
ngăn nga8n
ngằn nga82n
ngắn nga81n
ngẳng nga83ng
ngẵng nga84ng
ngặp nga85p
ngắt nga81t
ngặt nga85t
ngấc nga61c
ngâm nga6m
ngầm nga62m
ngẩm nga63m
ngẫm nga64m
ngấm nga61m
ngậm nga65m
ngân nga6n
ngần nga62n
ngẩn nga63n
ngẫn nga64n
ngấn nga61n
ngận nga65n
ngẩng nga63ng
ngẫng nga64ng
ngấp nga61p
ngập nga65p
ngất nga61t
ngật nga65t
ngâu nga6u
ngầu nga62u
ngẩu nga63u
ngẫu nga64u
ngấu nga61u
ngậu nga65u
ngây nga6y
ngầy nga62y
ngấy nga61y
ngậy nga65y
ngèo nge2o
ngẹt nge5t
ngệch nge65ch
nghè nghe2
nghé nghe1
nghẹ nghe5
nghèn nghe2n
nghẽn nghe4n
nghén nghe1n
nghẹn nghe5n
nghèo nghe2o
nghẻo nghe3o
nghẽo nghe4o
nghéo nghe1o
nghẹo nghe5o
nghét nghe1t
nghẹt nghe5t
nghê nghe6
nghề nghe62
nghể nghe63
nghễ nghe64
nghế nghe61
nghệ nghe65
nghếch nghe61ch
nghệch nghe65ch
nghển nghe63n
nghễn nghe64n
nghến nghe61n
nghện nghe65n
nghênh nghe6nh
nghểnh nghe63nh
nghễnh nghe64nh
nghệt nghe65t
nghêu nghe6u
nghều nghe62u
nghểu nghe63u
nghễu nghe64u
nghệu nghe65u
nghì nghi2
nghỉ nghi3
nghĩ nghi4
nghí nghi1
nghị nghi5
nghĩa nghi4a
nghía nghi1a
nghích nghi1ch
nghịch nghi5ch
nghiêm nghie6m
nghiễm nghie64m
nghiệm nghie65m
nghiên nghie6n
nghiền nghie62n
nghiễn nghie64n
nghiến nghie61n
nghiện nghie65n
nghiêng nghie6ng
nghiênh nghie6nh
nghiệp nghie65p
nghiệt nghie65t
nghiêu nghie6u
nghìm nghi2m
nghỉm nghi3m
nghìn nghi2n
nghỉn nghi3n
nghỉnh nghi3nh
nghĩnh nghi4nh
nghít nghi1t
nghịt nghi5t
nghỉu nghi3u
nghịu nghi5u
nghoèo nghoe2o
nghồng ngho62ng
ngích ngi1ch
ngịu ngi5u
ngò ngo2
ngỏ ngo3
ngõ ngo4
ngó ngo1
ngọ ngo5
ngoác ngoa1c
ngoạc ngoa5c
ngoách ngoa1ch
ngoạch ngoa5ch
ngoài ngoa2i
ngoải ngoa3i
ngoái ngoa1i
ngoại ngoa5i
ngoàm ngoa2m
ngoảm ngoa3m
ngoạm ngoa5m
ngoãn ngoa4n
ngoạn ngoa5n
ngoảng ngoa3ng
ngoảnh ngoa3nh
ngoãnh ngoa4nh
ngoáo ngoa1o
ngoáp ngoa1p
ngoạt ngoa5t
ngoảy ngoa3y
ngoáy ngoa1y
ngoạy ngoa5y
ngoắc ngoa81c
ngoặc ngoa85c
ngoằn ngoa82n
ngoẳn ngoa83n
ngoằng ngoa82ng
ngoẵng ngoa84ng
ngoắng ngoa81ng
ngoắt ngoa81t
ngoặt ngoa85t
ngóc ngo1c
ngọc ngo5c
ngoẻm ngoe3m
ngoém ngoe1m
ngoẻn ngoe3n
ngoèo ngoe2o
ngoẻo ngoe3o
ngoéo ngoe1o
ngoẹo ngoe5o
ngoét ngoe1t
ngòi ngo2i
ngõi ngo4i
ngói ngo1i
ngòm ngo2m
ngỏm ngo3m
ngóm ngo1m
ngọm ngo5m
ngòn ngo2n
ngỏn ngo3n
ngón ngo1n
ngọn ngo5n
ngòng ngo2ng
ngỏng ngo3ng
ngõng ngo4ng
ngóng ngo1ng
ngọng ngo5ng
ngóp ngo1p
ngót ngo1t
ngọt ngo5t
ngô ngo6
ngồ ngo62
ngổ ngo63
ngỗ ngo64
ngố ngo61
ngộ ngo65
ngốc ngo61c
ngộc ngo65c
ngôi ngo6i
ngồi ngo62i
ngỗi ngo64i
ngội ngo65i
ngôm ngo6m
ngồm ngo62m
ngổm ngo63m
ngôn ngo6n
ngồn ngo62n
ngổn ngo63n
ngốn ngo61n
ngộn ngo65n
ngông ngo6ng
ngồng ngo62ng
ngổng ngo63ng
ngỗng ngo64ng
ngộp ngo65p
ngốt ngo61t
ngột ngo65t
ngơ ngo7
ngờ ngo72
ngỡ ngo74
ngớ ngo71
ngợ ngo75
ngơi ngo7i
ngời ngo72i
ngợi ngo75i
ngơm ngo7m
ngờm ngo72m
ngỡm ngo74m
ngợm ngo75m
ngơn ngo7n
ngớn ngo71n
ngớp ngo71p
ngợp ngo75p
ngớt ngo71t
ngù ngu2
ngủ ngu3
ngũ ngu4
ngú ngu1
ngụ ngu5
ngụa ngu5a
nguây ngua6y
nguầy ngua62y
nguẩy ngua63y
nguấy ngua61y
nguậy ngua65y
ngúc ngu1c
ngục ngu5c
nguếch ngue61ch
nguệch ngue65ch
ngùi ngu2i
ngủi ngu3i
ngũi ngu4i
ngủm ngu3m
ngụm ngu5m
ngùn ngu2n
ngủn ngu3n
ngùng ngu2ng
ngủng ngu3ng
ngúng ngu1ng
nguôi nguo6i
nguồi nguo62i
nguội nguo65i
nguồn nguo62n
nguơ nguo7
ngụp ngu5p
ngút ngu1t
ngụt ngu5t
nguyên nguye6n
nguyền nguye62n
nguyễn nguye64n
nguyện nguye65n
nguyệt nguye65t
nguýt nguy1t
nguỷu nguy3u
ngư ngu7
ngừ ngu72
ngữ ngu74
ngứ ngu71
ngự ngu75
ngưa ngu7a
ngừa ngu72a
ngửa ngu73a
ngữa ngu74a
ngứa ngu71a
ngựa ngu75a
ngực ngu75c
ngửi ngu73i
ngưng ngu7ng
ngừng ngu72ng
ngửng ngu73ng
ngứng ngu71ng
ngước ngu7o71c
ngược ngu7o75c
ngươi ngu7o7i
người ngu7o72i
ngưởi ngu7o73i
ngươn ngu7o7n
ngường ngu7o72ng
ngưởng ngu7o73ng
ngưỡng ngu7o74ng
ngượng ngu7o75ng
ngưt ngu7t
ngứt ngu71t
ngưu ngu7u
nhà nha2
nhả nha3
nhã nha4
nhá nha1
nhạ nha5
nhác nha1c
nhạc nha5c
nhách nha1ch
nhài nha2i
nhải nha3i
nhãi nha4i
nhái nha1i
nhại nha5i
nhàm nha2m
nhảm nha3m
nhám nha1m
nhàn nha2n
nhản nha3n
nhãn nha4n
nhạn nha5n
nhàng nha2ng
nhãng nha4ng
nháng nha1ng
nhạng nha5ng
nhành nha2nh
nhảnh nha3nh
nhánh nha1nh
nhạnh nha5nh
nhào nha2o
nhão nha4o
nháo nha1o
nhạo nha5o
nháp nha1p
nhạp nha5p
nhát nha1t
nhạt nha5t
nhàu nha2u
nhảu nha3u
nháu nha1u
nhạu nha5u
nhày nha2y
nhảy nha3y
nháy nha1y
nhạy nha5y
nhắc nha81c
nhăm nha8m
nhằm nha82m
nhắm nha81m
nhặm nha85m
nhăn nha8n
nhằn nha82n
nhẳn nha83n
nhẵn nha84n
nhắn nha81n
nhặn nha85n
nhăng nha8ng
nhằng nha82ng
nhẳng nha83ng
nhẵng nha84ng
nhắng nha81ng
nhặng nha85ng
nhắp nha81p
nhắt nha81t
nhặt nha85t
nhấc nha61c
nhâm nha6m
nhầm nha62m
nhẩm nha63m
nhẫm nha64m
nhấm nha61m
nhậm nha65m
nhân nha6n
nhần nha62n
nhẩn nha63n
nhẫn nha64n
nhấn nha61n
nhận nha65n
nhâng nha6ng
nhấp nha61p
nhập nha65p
nhất nha61t
nhật nha65t
nhâu nha6u
nhầu nha62u
nhẩu nha63u
nhậu nha65u
nhây nha6y
nhầy nha62y
nhẩy nha63y
nhẫy nha64y
nhấy nha61y
nhậy nha65y
nhđm nhd9m
nhè nhe2
nhẻ nhe3
nhẽ nhe4
nhé nhe1
nhẹ nhe5
nhèm nhe2m
nhẻm nhe3m
nhém nhe1m
nhẹm nhe5m
nhèn nhe2n
nhén nhe1n
nhẹn nhe5n
nhèo nhe2o
nhẻo nhe3o
nhẽo nhe4o
nhéo nhe1o
nhẹo nhe5o
nhép nhe1p
nhẹp nhe5p
nhét nhe1t
nhẹt nhe5t
nhê nhe6
nhể nhe63
nhễ nhe64
nhếch nhe61ch
nhệch nhe65ch
nhện nhe65n
nhênh nhe6nh
nhểu nhe63u
nhếu nhe61u
nhệu nhe65u
nhì nhi2
nhỉ nhi3
nhĩ nhi4
nhí nhi1
nhị nhi5
nhía nhi1a
nhích nhi1ch
nhiếc nhie61c
nhiêm nhie6m
nhiễm nhie64m
nhiệm nhie65m
nhiên nhie6n
nhiễn nhie64n
nhiếp nhie61p
nhiệp nhie65p
nhiêt nhie6t
nhiết nhie61t
nhiệt nhie65t
nhiêu nhie6u
nhiều nhie62u
nhiểu nhie63u
nhiễu nhie64u
nhiếu nhie61u
nhím nhi1m
nhìn nhi2n
nhín nhi1n
nhịn nhi5n
nhỉnh nhi3nh
nhíp nhi1p
nhịp nhi5p
nhít nhi1t
nhịt nhi5t
nhìu nhi2u
nhíu nhi1u
nhịu nhi5u
nhò nho2
nhỏ nho3
nhõ nho4
nhó nho1
nhọ nho5
nhoài nhoa2i
nhoái nhoa1i
nhoàm nhoa2m
nhoạm nhoa5m
nhoáng nhoa1ng
nhoạng nhoa5ng
nhoáy nhoa1y
nhoằng nhoa82ng
nhóc nho1c
nhọc nho5c
nhoèn nhoe2n
nhoẻn nhoe3n
nhoét nhoe1t
nhoẹt nhoe5t
nhõi nho4i
nhói nho1i
nhọi nho5i
nhòm nho2m
nhỏm nho3m
nhõm nho4m
nhóm nho1m
nhòn nho2n
nhỏn nho3n
nhõn nho4n
nhón nho1n
nhọn nho5n
nhòng nho2ng
nhỏng nho3ng
nhõng nho4ng
nhóng nho1ng
nhóp nho1p
nhọp nho5p
nhót nho1t
nhọt nho5t
nhô nho6
nhổ nho63
nhỗ nho64
nhố nho61
nhốc nho61c
nhôi nho6i
nhồi nho62i
nhối nho61i
nhội nho65i
nhôm nho6m
nhồm nho62m
nhổm nho63m
nhôn nho6n
nhồn nho62n
nhổn nho63n
nhốn nho61n
nhộn nho65n
nhông nho6ng
nhồng nho62ng
nhộng nho65ng
nhốt nho61t
nhột nho65t
nhơ nho7
nhờ nho72
nhở nho73
nhỡ nho74
nhớ nho71
nhợ nho75
nhơi nho7i
nhời nho72i
nhởi nho73i
nhơm nho7m
nhởm nho73m
nhớm nho71m
nhơn nho7n
nhờn nho72n
nhởn nho73n
nhỡn nho74n
nhớn nho71n
nhợn nho75n
nhớp nho71p
nhớt nho71t
nhợt nho75t
nhtư nhtu7
nhù nhu2
nhủ nhu3
nhũ nhu4
nhú nhu1
nhụ nhu5
nhúa nhu1a
nhụa nhu5a
nhuân nhua6n
nhuần nhua62n
nhuận nhua65n
nhúc nhu1c
nhục nhu5c
nhuế nhue61
nhuệ nhue65
nhùi nhu2i
nhủi nhu3i
nhúi nhu1i
nhụi nhu5i
nhúm nhu1m
nhùn nhu2n
nhủn nhu3n
nhũn nhu4n
nhún nhu1n
nhùng nhu2ng
nhủng nhu3ng
nhũng nhu4ng
nhúng nhu1ng
nhụng nhu5ng
nhuốc nhuo61c
nhuôm nhuo6m
nhuốm nhuo61m
nhuộm nhuo65m
nhuồn nhuo62n
nhút nhu1t
nhụt nhu5t
nhuyên nhuye6n
nhuyễn nhuye64n
như nhu7
nhừ nhu72
nhử nhu73
nhữ nhu74
nhứ nhu71
nhự nhu75
nhừa nhu72a
nhựa nhu75a
nhức nhu71c
nhưng nhu7ng
nhửng nhu73ng
những nhu74ng
nhứng nhu71ng
nhựng nhu75ng
nhược nhu7o75c
nhương nhu7o7ng
nhường nhu7o72ng
nhưỡng nhu7o74ng
nhướng nhu7o71ng
nhượng nhu7o75ng
nhứt nhu71t
nhựt nhu75t
nhữu nhu74u
nhựu nhu75u
nì ni2
nỉ ni3
ní ni1
nị ni5
nỉa ni3a
nĩa ni4a
ních ni1ch
nịch ni5ch
niêm nie6m
niềm nie62m
niệm nie65m
niên nie6n
niền nie62n
niển nie63n
niễn nie64n
niến nie61n
niện nie65n
niềng nie62ng
niễng nie64ng
niếp nie61p
niệp nie65p
niết nie61t
niệt nie65t
niêu nie6u
niểu nie63u
niễu nie64u
niếu nie61u
niệu nie65u
ním ni1m
nín ni1n
nình ni2nh
nính ni1nh
nịnh ni5nh
níp ni1p
nít ni1t
nịt ni5t
níu ni1u
nịu ni5u
niutơn niuto7n
nò no2
nỏ no3
nõ no4
nó no1
nọ no5
noản noa3n
noãn noa4n
nóc no1c
nọc no5c
nòi no2i
nỏi no3i
nói no1i
nọi no5i
nòm no2m
nỏm no3m
nỏn no3n
nõn no4n
nón no1n
nọn no5n
nòng no2ng
nóng no1ng
nọng no5ng
nóp no1p
nót no1t
nọt no5t
nô no6
nồ no62
nổ no63
nỗ no64
nố no61
nộ no65
nôben no6ben
nốc no61c
nôi no6i
nồi no62i
nổi no63i
nỗi no64i
nối no61i
nội no65i
nôm no6m
nồm no62m
nộm no65m
nôn no6n
nồn no62n
nộn no65n
nông no6ng
nồng no62ng
nỗng no64ng
nống no61ng
nốp no61p
nộp no65p
nốt no61t
nột no65t
nơ no7
nờ no72
nở no73
nỡ no74
nớ no71
nợ no75
nơi no7i
nới no71i
nơm no7m
nờm no72m
nỡm no74m
nớp no71p
nợp no75p
nớt no71t
nơtron no7tron
nũ nu4
nú nu1
nụ nu5
nủa nu3a
nũa nu4a
núa nu1a
núc nu1c
nục nu5c
núcleo nu1cleo
nùi nu2i
nũi nu4i
núi nu1i
nụi nu5i
núm nu1m
nùn nu2n
nùng nu2ng
nủng nu3ng
nũng nu4ng
núng nu1ng
nuốc nuo61c
nuộc nuo65c
nuôi nuo6i
nuối nuo61i
nuốm nuo61m
nuông nuo6ng
nuốt nuo61t
nuột nuo65t
núp nu1p
nút nu1t
nư nu7
nử nu73
nữ nu74
nứ nu71
nự nu75
nưa nu7a
nửa nu73a
nữa nu74a
nứa nu71a
nức nu71c
nực nu75c
nưng nu7ng
nừng nu72ng
nứng nu71ng
nựng nu75ng
nước nu7o71c
nược nu7o75c
nườm nu7o72m
nương nu7o7ng
nường nu7o72ng
nướng nu7o71ng
nượp nu7o75p
nướu nu7o71u
nứt nu71t
nưu nu7u
nữu nu74u
nứu nu71u
nựu nu75u
ò o2
ỏ o3
õ o4
ó o1
ọ o5
oác oa1c
oạc oa5c
oách oa1ch
oạch oa5ch
oải oa3i
oái oa1i
oại oa5i
oàm oa2m
oản oa3n
oán oa1n
oàng oa2ng
oảng oa3ng
oành oa2nh
oánh oa1nh
oạp oa5p
oát oa1t
oạt oa5t
oắc oa81c
oăm oa8m
oằn oa82n
oẳn oa83n
oăng oa8ng
oẳng oa83ng
oắt oa81t
oặt oa85t
óc o1c
ọc o5c
òi o2i
ỏi o3i
õi o4i
ói o1i
ọi o5i
olá ola1
òm o2m
ỏm o3m
õm o4m
óm o1m
ọm o5m
òn o2n
ỏn o3n
õn o4n
ón o1n
ọn o5n
òng o2ng
ỏng o3ng
õng o4ng
óng o1ng
ọng o5ng
óp o1p
ọp o5p
ót o1t
ọt o5t
ô o6
ồ o62
ổ o63
ỗ o64
ố o61
ộ o65
ôb o6b
ôben o6ben
ôc o6c
ốc o61c
ộc o65c
ôca o6ca
ôgam o6gam
ôhai o6hai
ôi o6i
ồi o62i
ổi o63i
ỗi o64i
ối o61i
ội o65i
ôin o6in
ộl o65l
ôla o6la
ôliu o6liu
ôm o6m
ồm o62m
ổm o63m
ỗm o64m
ốm o61m
ộm o65m
ômet o6met
ômi o6mi
ôn o6n
ồn o62n
ổn o63n
ỗn o64n
ốn o61n
ộn o65n
ône o6ne
ông o6ng
ồng o62ng
ổng o63ng
ỗng o64ng
ống o61ng
ộng o65ng
ốp o61p
ộp o65p
ôt o6t
ốt o61t
ột o65t
ôtel o6tel
ơ o7
ờ o72
ở o73
ỡ o74
ớ o71
ợ o75
ơc o7c
ờc o72c
ớc o71c
ợc o75c
ơi o7i
ời o72i
ởi o73i
ỡi o74i
ới o71i
ợi o75i
ờl o72l
ơm o7m
ờm o72m
ởm o73m
ỡm o74m
ớm o71m
ợm o75m
ơme o7me
ơmi o7mi
ơn o7n
ờn o72n
ởn o73n
ỡn o74n
ớn o71n
ợn o75n
ơng o7ng
ờng o72ng
ởng o73ng
ỡng o74ng
ớng o71ng
ợng o75ng
ơngen o7ngen
ớp o71p
ợp o75p
ơt o7t
ớt o71t
ợt o75t
ơu o7u
ờu o72u
ỡu o74u
ớu o71u
ợu o75u
pà pa2
pả pa3
pạ pa5
pác pa1c
pạc pa5c
pảh pa3h
pài pa2i
palăng pala8ng
pán pa1n
pàng pa2ng
panô pano6
pào pa2o
páo pa1o
páp pa1p
pát pa1t
pắc pa81c
păh pa8h
pằn pa82n
păng pa8ng
pấc pa61c
pâu pa6u
pẻ pe3
péc pe1c
pẻng pe3ng
péo pe1o
pê pe6
phà pha2
phả pha3
phá pha1
phạ pha5
phác pha1c
phạc pha5c
phách pha1ch
phạch pha5ch
phài pha2i
phải pha3i
phái pha1i
phàm pha2m
phạm pha5m
phàn pha2n
phản pha3n
phãn pha4n
phán pha1n
phạn pha5n
phàng pha2ng
phảng pha3ng
phạng pha5ng
phành pha2nh
phảnh pha3nh
phạnh pha5nh
phào pha2o
phảo pha3o
pháo pha1o
phaolô phaolo6
pháp pha1p
phạp pha5p
phát pha1t
phạt pha5t
phảy pha3y
pháy pha1y
phắc pha81c
phăm pha8m
phăn pha8n
phắn pha81n
phăng pha8ng
phẳng pha83ng
phặng pha85ng
phắp pha81p
phặp pha85p
phắt pha81t
phâm pha6m
phầm pha62m
phẩm pha63m
phân pha6n
phần pha62n
phẩn pha63n
phẫn pha64n
phấn pha61n
phận pha65n
phấp pha61p
phập pha65p
phất pha61t
phật pha65t
phầu pha62u
phẩu pha63u
phẫu pha64u
phấu pha61u
phây pha6y
phẩy pha63y
phè phe2
phé phe1
phéc phe1c
phẹc phe5c
phèn phe2n
phèng phe2ng
phéng phe1ng
phèo phe2o
phép phe1p
phét phe1t
phẹt phe5t
phê phe6
phề phe62
phế phe61
phệ phe65
phếch phe61ch
phệch phe65ch
phên phe6n
phễn phe64n
phện phe65n
phềnh phe62nh
phễnh phe64nh
phệnh phe65nh
phết phe61t
phệt phe65t
phều phe62u
phễu phe64u
phếu phe61u
phì phi2
phỉ phi3
phí phi1
phị phi5
phìa phi2a
phía phi1a
phịa phi5a
phích phi1ch
phịch phi5ch
phiêm phie6m
phiếm phie61m
phiên phie6n
phiền phie62n
phiến phie61n
phiện phie65n
phiêng phie6ng
phiết phie61t
phiệt phie65t
phiêu phie6u
phiểu phie63u
phiếu phie61u
phiệu phie65u
phím phi1m
phìn phi2n
phình phi2nh
phỉnh phi3nh
phĩnh phi4nh
phính phi1nh
phịt phi5t
phịu phi5u
phlạo phla5o
phlắc phla81c
phò pho2
phó pho1
phóc pho1c
phọc pho5c
phòi pho2i
phón pho1n
phòng pho2ng
phỏng pho3ng
phóng pho1ng
phọng pho5ng
phót pho1t
phọt pho5t
phô pho6
phồ pho62
phổ pho63
phố pho61
phốc pho61c
phộc pho65c
phôi pho6i
phổi pho63i
phối pho61i
phôm pho6m
phồm pho62m
phôn pho6n
phồn pho62n
phông pho6ng
phồng pho62ng
phổng pho63ng
phỗng pho64ng
phộng pho65ng
phốp pho61p
phốt pho61t
phơ pho7
phờ pho72
phở pho73
phớ pho71
phơi pho7i
phời pho72i
phới pho71i
phơn pho7n
phởn pho73n
phỡn pho74n
phớn pho71n
phớt pho71t
phrăng phra8ng
phù phu2
phủ phu3
phũ phu4
phú phu1
phụ phu5
phúc phu1c
phục phu5c
phủi phu3i
phùn phu2n
phún phu1n
phùng phu2ng
phủng phu3ng
phúng phu1ng
phụng phu5ng
phúp phu1p
phụp phu5p
phút phu1t
phụt phu5t
phư phu7
phứa phu71a
phựa phu75a
phức phu71c
phưng phu7ng
phừng phu72ng
phước phu7o71c
phưỡn phu7o74n
phướn phu7o71n
phương phu7o7ng
phường phu7o72ng
phướng phu7o71ng
phượng phu7o75ng
phượt phu7o75t
phượu phu7o75u
phứt phu71t
phựt phu75t
phữu phu74u
phựu phu75u
phvđ phvd9
pí pi1
pianô piano6
pích pi1ch
pín pi1n
píp pi1p
pisát pisa1t
pít pi1t
plây pla6y
plông plo6ng
plơi plo7i
pó po1
pótay po1tay
pô po6
pôc po6c
pôn po6n
pông po6ng
pốp po61p
pốt po61t
pơ po7
pờ po72
pơng po7ng
prâng pra6ng
prô pro6
prông pro6ng
pù pu2
pú pu1
pụa pu5a
púc pu1c
puộc puo65c
pút pu1t
pư pu7
pươi pu7o7i
qì qi2
quà qua2
quả qua3
quã qua4
quá qua1
quạ qua5
quác qua1c
quạc qua5c
quách qua1ch
quạch qua5ch
quài qua2i
quải qua3i
quái qua1i
quại qua5i
quàn qua2n
quản qua3n
quán qua1n
quàng qua2ng
quảng qua3ng
quãng qua4ng
quáng qua1ng
quạng qua5ng
quành qua2nh
quảnh qua3nh
quánh qua1nh
quạnh qua5nh
quào qua2o
quáo qua1o
quát qua1t
quạt qua5t
quàu qua2u
quảu qua3u
quáu qua1u
quạu qua5u
quày qua2y
quảy qua3y
quáy qua1y
quạy qua5y
quắc qua81c
quặc qua85c
quăm qua8m
quằm qua82m
quẳm qua83m
quắm qua81m
quặm qua85m
quăn qua8n
quằn qua82n
quẳn qua83n
quắn qua81n
quặn qua85n
quăng qua8ng
quằng qua82ng
quẳng qua83ng
quẵng qua84ng
quặng qua85ng
quắp qua81p
quặp qua85p
quắt qua81t
quặt qua85t
quấc qua61c
quân qua6n
quần qua62n
quẩn qua63n
quẫn qua64n
quấn qua61n
quận qua65n
quâng qua6ng
quầng qua62ng
quẩng qua63ng
quẫng qua64ng
quất qua61t
quật qua65t
quây qua6y
quầy qua62y
quẩy qua63y
quẫy qua64y
quấy qua61y
quậy qua65y
què que2
quẻ que3
quẽ que4
qué que1
quèn que2n
quén que1n
quẹn que5n
quèo que2o
quéo que1o
quẹo que5o
quẹp que5p
quét que1t
quẹt que5t
quê que6
quế que61
quệ que65
quệch que65ch
quên que6n
quện que65n
quềnh que62nh
quệnh que65nh
quết que61t
quệt que65t
quều que62u
quếu que61u
quì qui2
quỉ qui3
quĩ qui4
quí qui1
quị qui5
quình qui2nh
quít qui1t
quịt qui5t
quíu qui1u
quọ quo5
quoàng quoa2ng
quoạng quoa5ng
quoắt quoa81t
quốc quo61c
quơ quo7
quờ quo72
quở quo73
quớ quo71
quới quo71i
quờn quo72n
quởn quo73n
quởng quo73ng
quớt quo71t
quỳ quy2
quỷ quy3
quỹ quy4
quý quy1
quỵ quy5
quých quy1ch
quyên quye6n
quyền quye62n
quyển quye63n
quyến quye61n
quyện quye65n
quyết quye61t
quyệt quye65t
quỳng quy2ng
quỳnh quy2nh
quỷnh quy3nh
quýnh quy1nh
quýt quy1t
quỵt quy5t
rà ra2
rả ra3
rã ra4
rá ra1
rạ ra5
rác ra1c
rạc ra5c
rách ra1ch
rạch ra5ch
rađi rad9i
rađio rad9io
raglây ragla6y
rài ra2i
rải ra3i
rãi ra4i
rái ra1i
rại ra5i
ràm ra2m
rám ra1m
rạm ra5m
ràn ra2n
rán ra1n
rạn ra5n
ràng ra2ng
rảng ra3ng
ráng ra1ng
rạng ra5ng
rành ra2nh
rảnh ra3nh
rãnh ra4nh
rạnh ra5nh
ráno ra1no
rào ra2o
rảo ra3o
rão ra4o
ráo ra1o
rạo ra5o
ráp ra1p
rạp ra5p
rápida ra1pida
rápido ra1pido
rát ra1t
rạt ra5t
ràu ra2u
rảu ra3u
ráu ra1u
rày ra2y
rảy ra3y
rãy ra4y
ráy ra1y
rạy ra5y
rắc ra81c
rặc ra85c
răm ra8m
rằm ra82m
rắm ra81m
rặm ra85m
răn ra8n
rằn ra82n
rắn ra81n
rặn ra85n
răng ra8ng
rằng ra82ng
rặng ra85ng
rắp ra81p
rắt ra81t
rặt ra85t
râm ra6m
rầm ra62m
rẩm ra63m
rẫm ra64m
rấm ra61m
rậm ra65m
rân ra6n
rần ra62n
rẫn ra64n
rấn ra61n
rận ra65n
râng ra6ng
rậng ra65ng
rấp ra61p
rập ra65p
rất ra61t
rật ra65t
râu ra6u
rầu ra62u
rẫu ra64u
rậu ra65u
rây ra6y
rầy ra62y
rẩy ra63y
rẫy ra64y
rcăm rca8m
rè re2
rẻ re3
rẽ re4
ré re1
rẹc re5c
rèm re2m
rèn re2n
rén re1n
rẻng re3ng
rèo re2o
rẻo re3o
réo re1o
rẹo re5o
rép re1p
rẹp re5p
rét re1t
rẹt re5t
rê re6
rề re62
rể re63
rễ re64
rế re61
rệ re65
rếch re61ch
rệch re65ch
rêm re6m
rên re6n
rền re62n
rến re61n
rện re65n
rềnh re62nh
rểnh re63nh
rếp re61p
rệp re65p
rết re61t
rệt re65t
rêu re6u
rều re62u
rểu re63u
rệu re65u
rì ri2
rỉ ri3
rĩ ri4
rí ri1
rị ri5
rìa ri2a
rỉa ri3a
rịa ri5a
ríc ri1c
rích ri1ch
rịch ri5ch
riếc rie61c
riềm rie62m
riêng rie6ng
riềng rie62ng
riếp rie61p
riết rie61t
riệt rie65t
riêu rie6u
riếu rie61u
rím ri1m
rĩn ri4n
rịn ri5n
rình ri2nh
rỉnh ri3nh
rĩnh ri4nh
rịp ri5p
rít ri1t
rịt ri5t
rítra ri1tra
rìu ri2u
ríu ri1u
rivê rive6
rlâm rla6m
rò ro2
rỏ ro3
rõ ro4
ró ro1
rọ ro5
roàng roa2ng
róc ro1c
rọc ro5c
ròi ro2i
rỏi ro3i
rõi ro4i
rói ro1i
rọi ro5i
ròm ro2m
rỏm ro3m
róm ro1m
rọm ro5m
ròn ro2n
rỏn ro3n
rón ro1n
rọn ro5n
ròng ro2ng
rỏng ro3ng
róng ro1ng
rọng ro5ng
rót ro1t
rọt ro5t
rô ro6
rồ ro62
rổ ro63
rỗ ro64
rố ro61
rộ ro65
rốc ro61c
rộc ro65c
rồi ro62i
rổi ro63i
rỗi ro64i
rối ro61i
rội ro65i
rôm ro6m
rồm ro62m
rộm ro65m
rôma ro6ma
rôn ro6n
rổn ro63n
rốn ro61n
rộn ro65n
rông ro6ng
rồng ro62ng
rổng ro63ng
rỗng ro64ng
rống ro61ng
rộng ro65ng
rốp ro61p
rộp ro65p
rốt ro61t
rơ ro7
rờ ro72
rở ro73
rỡ ro74
rớ ro71
rợ ro75
rơi ro7i
rời ro72i
rợi ro75i
rơm ro7m
rờm ro72m
rởm ro73m
rớm ro71m
rợm ro75m
rơn ro7n
rờn ro72n
rởn ro73n
rỡn ro74n
rớn ro71n
rợn ro75n
rơngen ro7ngen
rớp ro71p
rợp ro75p
rớt ro71t
rợt ro75t
rù ru2
rủ ru3
rũ ru4
rú ru1
rùa ru2a
rủa ru3a
rũa ru4a
rụa ru5a
rúc ru1c
rục ru5c
ruê rue6
rùi ru2i
rủi ru3i
rũi ru4i
rúi ru1i
rụi ru5i
rùm ru2m
rúm ru1m
rùn ru2n
rủn ru3n
rún ru1n
rùng ru2ng
rủng ru3ng
rúng ru1ng
rụng ru5ng
ruốc ruo61c
ruồi ruo62i
ruổi ruo63i
ruỗi ruo64i
ruối ruo61i
ruộm ruo65m
ruồng ruo62ng
ruỗng ruo64ng
ruộng ruo65ng
ruột ruo65t
rúp ru1p
rút ru1t
rụt ru5t
rư ru7
rừ ru72
rứ ru71
rưa ru7a
rừa ru72a
rửa ru73a
rữa ru74a
rứa ru71a
rựa ru75a
rức ru71c
rực ru75c
rưng ru7ng
rừng ru72ng
rửng ru73ng
rước ru7o71c
rươi ru7o7i
rười ru7o72i
rưởi ru7o73i
rưỡi ru7o74i
rưới ru7o71i
rượi ru7o75i
rươm ru7o7m
rườm ru7o72m
rướm ru7o71m
rườn ru7o72n
rướn ru7o71n
rượn ru7o75n
rương ru7o7ng
rường ru7o72ng
rượt ru7o75t
rượu ru7o75u
rứt ru71t
rựt ru75t
rỵn ry5n
sà sa2
sả sa3
sã sa4
sá sa1
sạ sa5
sác sa1c
sạc sa5c
sách sa1ch
sạch sa5ch
sài sa2i
sải sa3i
sãi sa4i
sái sa1i
sại sa5i
saigón saigo1n
sakê sake6
salát sala1t
salâm sala6m
sàm sa2m
sảm sa3m
sám sa1m
sạm sa5m
sàn sa2n
sản sa3n
sán sa1n
sạn sa5n
sàng sa2ng
sảng sa3ng
sáng sa1ng
sành sa2nh
sảnh sa3nh
sánh sa1nh
sào sa2o
sảo sa3o
são sa4o
sáo sa1o
sạo sa5o
sáp sa1p
sạp sa5p
sát sa1t
sạt sa5t
sáu sa1u
sảy sa3y
sãy sa4y
sắc sa81c
sặc sa85c
săm sa8m
sắm sa81m
sặm sa85m
săn sa8n
sằn sa82n
sẳn sa83n
sẵn sa84n
sắn sa81n
săng sa8ng
sằng sa82ng
sẵng sa84ng
sắng sa81ng
sắp sa81p
sặp sa85p
săt sa8t
sắt sa81t
sặt sa85t
sắu sa81u
sâm sa6m
sầm sa62m
sẩm sa63m
sẫm sa64m
sấm sa61m
sậm sa65m
sân sa6n
sần sa62n
sẩn sa63n
sẫn sa64n
sấn sa61n
sận sa65n
sâng sa6ng
sấp sa61p
sập sa65p
sất sa61t
sật sa65t
sâu sa6u
sầu sa62u
sẩu sa63u
sấu sa61u
sậu sa65u
sây sa6y
sầy sa62y
sẩy sa63y
sấy sa61y
sậy sa65y
sè se2
sẻ se3
sẽ se4
sé se1
sẹ se5
séc se1c
sém se1m
sẹm se5m
sèn se2n
sẻn se3n
sẻng se3ng
sèo se2o
sẹo se5o
sét se1t
sẹt se5t
sê se6
sề se62
sể se63
sễ se64
sế se61
sệ se65
sếch se61ch
sệch se65ch
sên se6n
sền se62n
sến se61n
sênh se6nh
sềnh se62nh
sểnh se63nh
sếp se61p
sệp se65p
sết se61t
sệt se65t
sêu se6u
sếu se61u
sgần sga62n
sì si2
sỉ si3
sĩ si4
sí si1
sị si5
sỉa si3a
sịa si5a
sích si1ch
sịch si5ch
sidét side1t
siđa sid9a
siêm sie6m
siểm sie63m
siên sie6n
siển sie63n
siễn sie64n
siêng sie6ng
siểng sie63ng
siếp sie61p
siệp sie65p
siết sie61t
siêu sie6u
siếu sie61u
sìn si2n
sỉn si3n
sín si1n
síne si1ne
sình si2nh
sỉnh si3nh
sính si1nh
sịp si5p
sít si1t
sịt si5t
slìn sli2n
sò so2
sỏ so3
só so1
sọ so5
soạc soa5c
soài soa2i
soải soa3i
soái soa1i
soại soa5i
soàn soa2n
soán soa1n
soạn soa5n
soảng soa3ng
soạng soa5ng
soát soa1t
soạt soa5t
sóc so1c
sọc so5c
sòi so2i
sỏi so3i
sõi so4i
sói so1i
sòm so2m
sóm so1m
sọm so5m
sòn so2n
sỏn so3n
són so1n
sòng so2ng
sõng so4ng
sóng so1ng
sót so1t
sọt so5t
sô so6
sồ so62
sổ so63
sỗ so64
số so61
sộ so65
sôc so6c
sốc so61c
sộc so65c
sôi so6i
sồi so62i
sổi so63i
sồm so62m
sôn so6n
sồn so62n
sông so6ng
sồng so62ng
sổng so63ng
sống so61ng
sốp so61p
sộp so65p
sốt so61t
sột so65t
sôvanh so6vanh
sơ so7
sờ so72
sở so73
sỡ so74
sớ so71
sợ so75
sởi so73i
sỡi so74i
sới so71i
sợi so75i
sơm so7m
sờm so72m
sớm so71m
sơmi so7mi
sơn so7n
sờn so72n
sởn so73n
sớn so71n
sớt so71t
srêpốc sre6po61c
sró sro1
sù su2
sủ su3
sũ su4
sú su1
sụ su5
sủa su3a
sụa su5a
suân sua6n
suất sua61t
súc su1c
sục su5c
suê sue6
sùi su2i
sủi su3i
sùm su2m
sụm su5m
sún su1n
sụn su5n
sùng su2ng
sủng su3ng
sũng su4ng
súng su1ng
sụng su5ng
suôi suo6i
suối suo61i
suôn suo6n
suông suo6ng
suồng suo62ng
suống suo61ng
suốt suo61t
súp su1p
sụp su5p
sút su1t
sụt su5t
sủy su3y
súy su1y
suyền suye62n
suyển suye63n
suyễn suye64n
suyến suye61n
suýt suy1t
suỵt suy5t
sư su7
sừ su72
sử su73
sữ su74
sứ su71
sự su75
sưa su7a
sửa su73a
sữa su74a
sứa su71a
sức su71c
sực su75c
sửi su73i
sừn su72n
sưng su7ng
sừng su72ng
sửng su73ng
sững su74ng
sựng su75ng
sưởi su7o73i
sườn su7o72n
sương su7o7ng
sường su7o72ng
sướng su7o71ng
sượng su7o75ng
sướt su7o71t
sượt su7o75t
sứt su71t
sựt su75t
sưu su7u
sửu su73u
sứu su71u
sỹ sy4
sý sy1
tà ta2
tả ta3
tã ta4
tá ta1
tạ ta5
tác ta1c
tạc ta5c
tách ta1ch
tạch ta5ch
tài ta2i
tải ta3i
tãi ta4i
tái ta1i
tại ta5i
tàm ta2m
tảm ta3m
tám ta1m
tạm ta5m
tàn ta2n
tản ta3n
tán ta1n
tạn ta5n
tàng ta2ng
tảng ta3ng
táng ta1ng
tạng ta5ng
tành ta2nh
tảnh ta3nh
tánh ta1nh
tạnh ta5nh
tào ta2o
tảo ta3o
táo ta1o
tạo ta5o
táp ta1p
tạp ta5p
tát ta1t
tạt ta5t
tàu ta2u
táu ta1u
tày ta2y
tảy ta3y
táy ta1y
tạy ta5y
tắc ta81c
tặc ta85c
tăk ta8k
tăm ta8m
tằm ta82m
tắm ta81m
tăn ta8n
tằn ta82n
tẳn ta83n
tắn ta81n
tặn ta85n
tăng ta8ng
tằng ta82ng
tắng ta81ng
tặng ta85ng
tắp ta81p
tắt ta81t
tấc ta61c
tâm ta6m
tầm ta62m
tẩm ta63m
tấm ta61m
tân ta6n
tần ta62n
tẩn ta63n
tẫn ta64n
tấn ta61n
tận ta65n
tâng ta6ng
tầng ta62ng
tấp ta61p
tập ta65p
tất ta61t
tật ta65t
tâu ta6u
tầu ta62u
tẩu ta63u
tấu ta61u
tậu ta65u
tây ta6y
tầy ta62y
tẩy ta63y
tấy ta61y
tbuăn tbua8n
tè te2
tẻ te3
tẽ te4
té te1
téc te1c
tẻh te3h
tèm te2m
tẻm te3m
tém te1m
tèn te2n
tẽn te4n
tén te1n
tèo te2o
tẻo te3o
téo te1o
tẹo te5o
tép te1p
tẹp te5p
tét te1t
tẹt te5t
tê te6
tề te62
tể te63
tễ te64
tế te61
tệ te65
tếch te61ch
têm te6m
tên te6n
tênh te6nh
tềnh te62nh
tểnh te63nh
tễnh te64nh
tệp te65p
têt te6t
tết te61t
tête te6te
têu te6u
tếu te61u
thà tha2
thả tha3
thá tha1
thác tha1c
thạc tha5c
thách tha1ch
thạch tha5ch
thài tha2i
thải tha3i
thãi tha4i
thái tha1i
thại tha5i
thàm tha2m
thảm tha3m
thám tha1m
thản tha3n
thán tha1n
thàng tha2ng
thảng tha3ng
thãng tha4ng
tháng tha1ng
thành tha2nh
thảnh tha3nh
thánh tha1nh
thạnh tha5nh
thào tha2o
thảo tha3o
tháo tha1o
thạo tha5o
tháp tha1p
thạp tha5p
thát tha1t
thạt tha5t
tháu tha1u
thày tha2y
thảy tha3y
tháy tha1y
thắc tha81c
thặc tha85c
thăm tha8m
thẳm tha83m
thắm tha81m
thăn tha8n
thằn tha82n
thắn tha81n
thăng tha8ng
thằng tha82ng
thẳng tha83ng
thắng tha81ng
thặng tha85ng
thắp tha81p
thắt tha81t
thâm tha6m
thầm tha62m
thẩm tha63m
thẫm tha64m
thấm tha61m
thậm tha65m
thân tha6n
thần tha62n
thẩn tha63n
thẫn tha64n
thấn tha61n
thận tha65n
thấp tha61p
thập tha65p
thất tha61t
thật tha65t
thâu tha6u
thầu tha62u
thẩu tha63u
thấu tha61u
thây tha6y
thầy tha62y
thẩy tha63y
thấy tha61y
thè the2
thẻ the3
thẽ the4
thé the1
thèm the2m
thém the1m
thèn the2n
thẻn the3n
thẹn the5n
thèo the2o
thẻo the3o
thẹo the5o
thép the1p
thẹp the5p
thét the1t
thê the6
thề the62
thể the63
thế the61
thệ the65
thếch the61ch
thêm the6m
thềm the62m
thến the61n
thện the65n
thênh the6nh
thểnh the63nh
thếp the61p
thết the61t
thêu the6u
thều the62u
thểu the63u
thì thi2
thỉ thi3
thĩ thi4
thí thi1
thị thi5
thìa thi2a
thía thi1a
thích thi1ch
thịch thi5ch
thiếc thie61c
thiêm thie6m
thiềm thie62m
thiểm thie63m
thiễm thie64m
thiệm thie65m
thiên thie6n
thiền thie62n
thiển thie63n
thiến thie61n
thiện thie65n
thiêng thie6ng
thiềng thie62ng
thiếp thie61p
thiệp thie65p
thiết thie61t
thiệt thie65t
thiêu thie6u
thiều thie62u
thiểu thie63u
thiễu thie64u
thiếu thie61u
thiệu thie65u
thím thi1m
thìn thi2n
thín thi1n
thình thi2nh
thỉnh thi3nh
thính thi1nh
thịnh thi5nh
thíp thi1p
thít thi1t
thịt thi5t
thìu thi2u
thỉu thi3u
thịu thi5u
thò tho2
thỏ tho3
thó tho1
thọ tho5
thoải thoa3i
thoái thoa1i
thoại thoa5i
thoàn thoa2n
thoản thoa3n
thoán thoa1n
thoảng thoa3ng
thoáng thoa1ng
thoát thoa1t
thoạt thoa5t
thoăn thoa8n
thoắng thoa81ng
thoắt thoa81t
thóc tho1c
thọc tho5c
thòi tho2i
thỏi tho3i
thói tho1i
thòm tho2m
thỏm tho3m
thóm tho1m
thõn tho4n
thòng tho2ng
thõng tho4ng
thóp tho1p
thót tho1t
thọt tho5t
thô tho6
thồ tho62
thổ tho63
thố tho61
thộ tho65
thốc tho61c
thộc tho65c
thôi tho6i
thồi tho62i
thổi tho63i
thối tho61i
thồm tho62m
thôn tho6n
thồn tho62n
thổn tho63n
thỗn tho64n
thốn tho61n
thộn tho65n
thông tho6ng
thổng tho63ng
thống tho61ng
thốp tho61p
thộp tho65p
thốt tho61t
thột tho65t
thơ tho7
thờ tho72
thở tho73
thớ tho71
thợ tho75
thơi tho7i
thời tho72i
thởi tho73i
thới tho71i
thơm tho7m
thớm tho71m
thơn tho7n
thờn tho72n
thớt tho71t
thợt tho75t
thtục thtu5c
thù thu2
thủ thu3
thú thu1
thụ thu5
thùa thu2a
thủa thu3a
thuân thua6n
thuần thua62n
thuẩn thua63n
thuẫn thua64n
thuấn thua61n
thuận thua65n
thuật thua65t
thúc thu1c
thục thu5c
thuê thue6
thuể thue63
thuế thue61
thùi thu2i
thủi thu3i
thúi thu1i
thụi thu5i
thùm thu2m
thủm thu3m
thùn thu2n
thùng thu2ng
thủng thu3ng
thũng thu4ng
thúng thu1ng
thụng thu5ng
thuốc thuo61c
thuộc thuo65c
thuộm thuo65m
thuôn thuo6n
thuồn thuo62n
thuỗn thuo64n
thuốn thuo61n
thuồng thuo62ng
thuổng thuo63ng
thuột thuo65t
thuở thuo73
thụp thu5p
thút thu1t
thụt thu5t
thuyên thuye6n
thuyền thuye62n
thuyết thuye61t
thư thu7
thừ thu72
thử thu73
thữ thu74
thứ thu71
thự thu75
thưa thu7a
thừa thu72a
thửa thu73a
thứa thu71a
thữc thu74c
thức thu71c
thực thu75c
thưng thu7ng
thừng thu72ng
thửng thu73ng
thững thu74ng
thứng thu71ng
thước thu7o71c
thược thu7o75c
thưỡi thu7o74i
thườn thu7o72n
thưỡn thu7o74n
thương thu7o7ng
thường thu7o72ng
thưởng thu7o73ng
thướng thu7o71ng
thượng thu7o75ng
thướt thu7o71t
thượt thu7o75t
thưu thu7u
thứu thu71u
tì ti2
tỉ ti3
tĩ ti4
tí ti1
tị ti5
tỉa ti3a
tía ti1a
tích ti1ch
tịch ti5ch
tiẻn tie3n
tiếc tie61c
tiệc tie65c
tiêm tie6m
tiềm tie62m
tiếm tie61m
tiệm tie65m
tiên tie6n
tiền tie62n
tiển tie63n
tiễn tie64n
tiến tie61n
tiện tie65n
tiêng tie6ng
tiềng tie62ng
tiếng tie61ng
tiếp tie61p
tiệp tie65p
tiết tie61t
tiệt tie65t
tiêu tie6u
tiều tie62u
tiểu tie63u
tiễu tie64u
tiếu tie61u
tiệu tie65u
tìm ti2m
tỉm ti3m
tím ti1m
tỉn ti3n
tĩn ti4n
tín ti1n
tịn ti5n
tỉng ti3ng
tình ti2nh
tỉnh ti3nh
tĩnh ti4nh
tính ti1nh
tịnh ti5nh
típ ti1p
tít ti1t
tịt ti5t
tĩu ti4u
tíu ti1u
tịu ti5u
tlẻ tle3
tlộm tlo65m
tnđ tnd9
tò to2
tỏ to3
tó to1
tọ to5
toác toa1c
toạc toa5c
toài toa2i
toái toa1i
toại toa5i
toàn toa2n
toản toa3n
toán toa1n
toàng toa2ng
toáng toa1ng
toạng toa5ng
toánh toa1nh
toát toa1t
toáy toa1y
toắt toa81t
tóc to1c
tọc to5c
toèn toe2n
toét toe1t
toẹt toe5t
tòi to2i
tỏi to3i
tõi to4i
tói to1i
tòm to2m
tỏm to3m
tõm to4m
tóm to1m
tòn to2n
tỏn to3n
tòng to2ng
tỏng to3ng
tọng to5ng
tóp to1p
tọp to5p
tót to1t
tọt to5t
tô to6
tồ to62
tổ to63
tố to61
tộ to65
tốc to61c
tộc to65c
tôi to6i
tồi to62i
tối to61i
tội to65i
tôm to6m
tôn to6n
tồn to62n
tổn to63n
tỗn to64n
tốn to61n
tông to6ng
tồng to62ng
tổng to63ng
tống to61ng
tộng to65ng
tốp to61p
tôt to6t
tốt to61t
tột to65t
tơ to7
tờ to72
tở to73
tớ to71
tợ to75
tơi to7i
tời to72i
tới to71i
tởm to73m
tơn to7n
tởn to73n
tớn to71n
tợn to75n
tớp to71p
tợp to75p
tớt to71t
trà tra2
trả tra3
trã tra4
trá tra1
trạ tra5
trác tra1c
trạc tra5c
trách tra1ch
trạch tra5ch
trài tra2i
trải tra3i
trãi tra4i
trái tra1i
trại tra5i
tràm tra2m
trảm tra3m
trám tra1m
trạm tra5m
tràn tra2n
trản tra3n
trán tra1n
trạn tra5n
tràng tra2ng
trảng tra3ng
tráng tra1ng
trạng tra5ng
trành tra2nh
tránh tra1nh
trạnh tra5nh
trào tra2o
trảo tra3o
tráo tra1o
trạo tra5o
tráp tra1p
trát tra1t
trạt tra5t
tràu tra2u
trảu tra3u
trày tra2y
trảy tra3y
trạy tra5y
trắc tra81c
trặc tra85c
trăm tra8m
trằm tra82m
trắm tra81m
trặm tra85m
trăn tra8n
trằn tra82n
trặn tra85n
trăng tra8ng
trắng tra81ng
trắp tra81p
trắt tra81t
trâ tra6
trâm tra6m
trầm tra62m
trẩm tra63m
trẫm tra64m
trấm tra61m
trậm tra65m
trân tra6n
trần tra62n
trẩn tra63n
trấn tra61n
trận tra65n
trâng tra6ng
trấp tra61p
trập tra65p
trất tra61t
trật tra65t
trâu tra6u
trầu tra62u
trẩu tra63u
trấu tra61u
trây tra6y
trầy tra62y
trẩy tra63y
trè tre2
trẻ tre3
trẽ tre4
trẹ tre5
trèm tre2m
trém tre1m
trèn tre2n
trẽn tre4n
trèo tre2o
trẻo tre3o
trẽo tre4o
tréo tre1o
trẹo tre5o
trét tre1t
trẹt tre5t
trê tre6
trề tre62
trể tre63
trễ tre64
trệ tre65
trếch tre61ch
trệch tre65ch
trên tre6n
trênh tre6nh
trếnh tre61nh
trết tre61t
trệt tre65t
trêu tre6u
trều tre62u
trếu tre61u
trệu tre65u
trì tri2
trỉ tri3
trĩ tri4
trí tri1
trị tri5
trìa tri2a
trỉa tri3a
tría tri1a
trịa tri5a
trích tri1ch
trịch tri5ch
triêm trie6m
triền trie62n
triển trie63n
triến trie61n
triện trie65n
triêng trie6ng
triềng trie62ng
triệng trie65ng
triếp trie61p
triệp trie65p
triết trie61t
triệt trie65t
triêu trie6u
triều trie62u
triệu trie65u
trịng tri5ng
trình tri2nh
trĩnh tri4nh
trính tri1nh
trịnh tri5nh
trít tri1t
trịt tri5t
trìu tri2u
trĩu tri4u
tríu tri1u
trịu tri5u
trò tro2
trỏ tro3
trọ tro5
tróc tro1c
trọc tro5c
tròi tro2i
trỏi tro3i
trói tro1i
trọi tro5i
tròm tro2m
trõm tro4m
tróm tro1m
tròn tro2n
trõn tro4n
trọn tro5n
tròng tro2ng
trỏng tro3ng
tróng tro1ng
trọng tro5ng
trót tro1t
trọt tro5t
trô tro6
trồ tro62
trổ tro63
trỗ tro64
trố tro61
trộ tro65
trốc tro61c
trộc tro65c
trôi tro6i
trồi tro62i
trổi tro63i
trỗi tro64i
trối tro61i
trội tro65i
trôm tro6m
trộm tro65m
trôn tro6n
trốn tro61n
trộn tro65n
trông tro6ng
trồng tro62ng
trổng tro63ng
trống tro61ng
trộng tro65ng
trốt tro61t
trơ tro7
trờ tro72
trở tro73
trớ tro71
trợ tro75
trơi tro7i
trời tro72i
trới tro71i
trờm tro72m
trớm tro71m
trợm tro75m
trơn tro7n
trờn tro72n
trớn tro71n
trợn tro75n
trơng tro7ng
trớp tro71p
trớt tro71t
trợt tro75t
trù tru2
trủ tru3
trú tru1
trụ tru5
trụa tru5a
truân trua6n
truất trua61t
truật trua65t
trúc tru1c
trục tru5c
trùi tru2i
trũi tru4i
trụi tru5i
trùm tru2m
trũm tru4m
trúm tru1m
trụm tru5m
trùn tru2n
trụn tru5n
trùng tru2ng
trủng tru3ng
trũng tru4ng
trúng tru1ng
trụng tru5ng
truồi truo62i
truông truo6ng
truồng truo62ng
truột truo65t
trụp tru5p
trút tru1t
trụt tru5t
truyên truye6n
truyền truye62n
truyện truye65n
trư tru7
trừ tru72
trử tru73
trữ tru74
trứ tru71
trự tru75
trưa tru7a
trừa tru72a
trữa tru74a
trức tru71c
trực tru75c
trưng tru7ng
trừng tru72ng
trửng tru73ng
trứng tru71ng
trước tru7o71c
trươi tru7o7i
trườn tru7o72n
trương tru7o7ng
trường tru7o72ng
trưởng tru7o73ng
trưỡng tru7o74ng
trướng tru7o71ng
trượng tru7o75ng
trượt tru7o75t
trừu tru72u
trửu tru73u
trữu tru74u
trứu tru71u
tryền trye62n
tù tu2
tủ tu3
tú tu1
tụ tu5
tùa tu2a
tủa tu3a
túa tu1a
tuân tua6n
tuần tua62n
tuẩn tua63n
tuẫn tua64n
tuấn tua61n
tuận tua65n
tuất tua61t
túc tu1c
tục tu5c
tuế tue61
tuệ tue65
tuếch tue61ch
tuệch tue65ch
tuềnh tue62nh
tùi tu2i
tủi tu3i
túi tu1i
tụi tu5i
tùm tu2m
tủm tu3m
tũm tu4m
túm tu1m
tụm tu5m
tủn tu3n
tùng tu2ng
tủng tu3ng
túng tu1ng
tụng tu5ng
tuốc tuo61c
tuộc tuo65c
tuồi tuo62i
tuổi tuo63i
tuồm tuo62m
tuôn tuo6n
tuồn tuo62n
tuông tuo6ng
tuồng tuo62ng
tuốt tuo61t
tuột tuo65t
túp tu1p
tút tu1t
tụt tu5t
tuyên tuye6n
tuyền tuye62n
tuyển tuye63n
tuyến tuye61n
tuyết tuye61t
tuyệt tuye65t
tuýp tuy1p
tuýt tuy1t
tư tu7
từ tu72
tử tu73
tữ tu74
tứ tu71
tự tu75
tưa tu7a
từa tu72a
tửa tu73a
tứa tu71a
tựa tu75a
tức tu71c
tưng tu7ng
từng tu72ng
tửng tu73ng
tước tu7o71c
tược tu7o75c
tươi tu7o7i
tưởi tu7o73i
tưới tu7o71i
tươm tu7o7m
tườm tu7o72m
tướn tu7o71n
tương tu7o7ng
tường tu7o72ng
tưởng tu7o73ng
tướng tu7o71ng
tượng tu7o75ng
tướp tu7o71p
tượp tu7o75p
tướt tu7o71t
tượt tu7o75t
tườu tu7o72u
tưu tu7u
tửu tu73u
tựu tu75u
tỳ ty2
tỷ ty3
tý ty1
tỵ ty5
ù u2
ủ u3
ũ u4
ú u1
ụ u5
ùa u2a
ủa u3a
ũa u4a
úa u1a
ụa u5a
uân ua6n
uẩn ua63n
uấn ua61n
uất ua61t
uẩy ua63y
ubtư ubtu7
úc u1c
ục u5c
uê ue6
uể ue63
uế ue61
ùi u2i
ủi u3i
ũi u4i
úi u1i
ụi u5i
úk u1k
ùm u2m
ủm u3m
ũm u4m
úm u1m
ụm u5m
ùn u2n
ủn u3n
ũn u4n
ún u1n
ụn u5n
ùng u2ng
ủng u3ng
ũng u4ng
úng u1ng
ụng u5ng
uôm uo6m
uốn uo61n
uông uo6ng
uổng uo63ng
uống uo61ng
uốt uo61t
uột uo65t
uở uo73
úp u1p
ụp u5p
út u1t
ụt u5t
uvtư uvtu7
uých uy1ch
uỵch uy5ch
uyên uye6n
uyển uye63n
uyết uye61t
uỳnh uy2nh
uýnh uy1nh
uýt uy1t
ư u7
ừ u72
ử u73
ữ u74
ứ u71
ự u75
ưa u7a
ừa u72a
ửa u73a
ữa u74a
ứa u71a
ựa u75a
ưc u7c
ữc u74c
ức u71c
ực u75c
ưcv u7cv
ưd u7d
ửi u73i
ừm u72m
ưn u7n
ừn u72n
ứn u71n
ưng u7ng
ừng u72ng
ửng u73ng
ững u74ng
ứng u71ng
ựng u75ng
ước u7o71c
ược u7o75c
ươi u7o7i
ười u7o72i
ưởi u7o73i
ưỡi u7o74i
ưới u7o71i
ượi u7o75i
ươm u7o7m
ườm u7o72m
ướm u7o71m
ượm u7o75m
ươn u7o7n
ườn u7o72n
ưỡn u7o74n
ướn u7o71n
ượn u7o75n
ương u7o7ng
ường u7o72ng
ưởng u7o73ng
ưỡng u7o74ng
ướng u7o71ng
ượng u7o75ng
ướp u7o71p
ượp u7o75p
ướt u7o71t
ượt u7o75t
ươu u7o7u
ườu u7o72u
ưỡu u7o74u
ướu u7o71u
ượu u7o75u
ưt u7t
ứt u71t
ựt u75t
ưu u7u
ừu u72u
ửu u73u
ữu u74u
ứu u71u
ựu u75u
và va2
vả va3
vã va4
vá va1
vạ va5
vác va1c
vạc va5c
vách va1ch
vạch va5ch
vài va2i
vải va3i
vãi va4i
vái va1i
vại va5i
vàm va2m
vạm va5m
vàn va2n
vãn va4n
ván va1n
vạn va5n
vàng va2ng
vảng va3ng
vãng va4ng
váng va1ng
vạng va5ng
vành va2nh
vảnh va3nh
vãnh va4nh
vánh va1nh
vạnh va5nh
vào va2o
váo va1o
vàp va2p
váp va1p
vạp va5p
vát va1t
vạt va5t
vàu va2u
vày va2y
vảy va3y
vãy va4y
váy va1y
vạy va5y
vắc va81c
vặc va85c
văm va8m
vằm va82m
văn va8n
vằn va82n
vắn va81n
vặn va85n
văng va8ng
vằng va82ng
vẳng va83ng
vắng va81ng
vặng va85ng
vắp va81p
vắt va81t
vặt va85t
vâm va6m
vậm va65m
vân va6n
vần va62n
vẩn va63n
vẫn va64n
vấn va61n
vận va65n
vâng va6ng
vầng va62ng
vấp va61p
vập va65p
vất va61t
vật va65t
vầu va62u
vẩu va63u
vấu va61u
vây va6y
vầy va62y
vẩy va63y
vẫy va64y
vấy va61y
vậy va65y
vè ve2
vẻ ve3
vẽ ve4
vé ve1
véc ve1c
vẹm ve5m
vèn ve2n
vẻn ve3n
vén ve1n
vẹn ve5n
vèo ve2o
vẻo ve3o
véo ve1o
vẹo ve5o
vét ve1t
vẹt ve5t
vê ve6
về ve62
vế ve61
vệ ve65
vếch ve61ch
vệch ve65ch
vên ve6n
vền ve62n
vện ve65n
vênh ve6nh
vểnh ve63nh
vết ve61t
vệt ve65t
vêtu ve6tu
vêu ve6u
vều ve62u
vếu ve61u
vì vi2
vỉ vi3
vĩ vi4
ví vi1
vị vi5
vỉa vi3a
vía vi1a
vích vi1ch
viêc vie6c
việc vie65c
viêm vie6m
viên vie6n
viền vie62n
viển vie63n
viễn vie64n
viện vie65n
viêng vie6ng
viếng vie61ng
việp vie65p
viêt vie6t
viết vie61t
việt vie65t
vịm vi5m
vín vi1n
vịn vi5n
vĩnh vi4nh
vính vi1nh
vịnh vi5nh
viọng vio5ng
vít vi1t
vịt vi5t
víu vi1u
vò vo2
vỏ vo3
võ vo4
vó vo1
vọ vo5
vóc vo1c
vọc vo5c
vòi vo2i
vỏi vo3i
vói vo1i
vọi vo5i
vòm vo2m
vòn vo2n
vỏn vo3n
vón vo1n
vòng vo2ng
vỏng vo3ng
võng vo4ng
vóng vo1ng
vọng vo5ng
vọp vo5p
vót vo1t
vọt vo5t
vô vo6
vồ vo62
vổ vo63
vỗ vo64
vố vo61
vốc vo61c
vôi vo6i
vồi vo62i
vối vo61i
vội vo65i
vôn vo6n
vồn vo62n
vốn vo61n
vông vo6ng
vồng vo62ng
vổng vo63ng
vống vo61ng
vốt vo61t
vơ vo7
vờ vo72
vở vo73
vỡ vo74
vớ vo71
vợ vo75
vơi vo7i
vời vo72i
với vo71i
vợi vo75i
vờn vo72n
vởn vo73n
vớt vo71t
vợt vo75t
vù vu2
vũ vu4
vú vu1
vụ vu5
vùa vu2a
vúc vu1c
vục vu5c
vùi vu2i
vũm vu4m
vùn vu2n
vụn vu5n
vùng vu2ng
vũng vu4ng
vụng vu5ng
vuối vuo61i
vuông vuo6ng
vuốt vuo61t
vuột vuo65t
vút vu1t
vụt vu5t
vư vu7
vừa vu72a
vữa vu74a
vựa vu75a
vức vu71c
vực vu75c
vưng vu7ng
vừng vu72ng
vửng vu73ng
vững vu74ng
vựng vu75ng
vược vu7o75c
vươn vu7o7n
vườn vu7o72n
vượn vu7o75n
vương vu7o7ng
vưởng vu7o73ng
vướng vu7o71ng
vượng vu7o75ng
vượt vu7o75t
vứt vu71t
vưu vu7u
vỹ vy4
vý vy1
xà xa2
xả xa3
xã xa4
xá xa1
xạ xa5
xác xa1c
xạc xa5c
xách xa1ch
xạch xa5ch
xài xa2i
xải xa3i
xái xa1i
xàm xa2m
xảm xa3m
xám xa1m
xạm xa5m
xán xa1n
xàng xa2ng
xáng xa1ng
xành xa2nh
xảnh xa3nh
xào xa2o
xảo xa3o
xáo xa1o
xạo xa5o
xáp xa1p
xạp xa5p
xát xa1t
xàu xa2u
xảu xa3u
xạu xa5u
xảy xa3y
xáy xa1y
xắc xa81c
xăm xa8m
xắm xa81m
xăn xa8n
xắn xa81n
xăng xa8ng
xằng xa82ng
xẳng xa83ng
xẵng xa84ng
xắng xa81ng
xắp xa81p
xắt xa81t
xấ xa61
xấc xa61c
xâm xa6m
xầm xa62m
xẩm xa63m
xân xa6n
xẩn xa63n
xấn xa61n
xấp xa61p
xập xa65p
xâu xa6u
xầu xa62u
xẩu xa63u
xấu xa61u
xây xa6y
xầy xa62y
xẩy xa63y
xcô xco6
xè xe2
xẻ xe3
xé xe1
xẹ xe5
xéc xe1c
xẹc xe5c
xém xe1m
xèn xe2n
xẻn xe3n
xén xe1n
xèng xe2ng
xẻng xe3ng
xèo xe2o
xẻo xe3o
xẽo xe4o
xéo xe1o
xẹo xe5o
xép xe1p
xẹp xe5p
xét xe1t
xẹt xe5t
xê xe6
xề xe62
xể xe63
xễ xe64
xế xe61
xệ xe65
xếch xe61ch
xệch xe65ch
xềm xe62m
xên xe6n
xển xe63n
xênh xe6nh
xềnh xe62nh
xểnh xe63nh
xếp xe61p
xệp xe65p
xệt xe65t
xêu xe6u
xều xe62u
xệu xe65u
xì xi2
xỉ xi3
xí xi1
xị xi5
xỉa xi3a
xía xi1a
xịa xi5a
xích xi1ch
xịch xi5ch
xiếc xie61c
xiệc xie65c
xiêm xie6m
xiểm xie63m
xiên xie6n
xiển xie63n
xiễn xie64n
xiềng xie62ng
xiểng xie63ng
xiếp xie61p
xiệp xie65p
xiết xie61t
xiêu xie6u
xiều xie62u
xiểu xie63u
xiếu xie61u
ximăng xima8ng
xỉn xi3n
xín xi1n
xịn xi5n
xinê xine6
xíng xi1ng
xình xi2nh
xỉnh xi3nh
xĩnh xi4nh
xính xi1nh
xíp xi1p
xít xi1t
xịt xi5t
xìu xi2u
xỉu xi3u
xíu xi1u
xịu xi5u
xò xo2
xỏ xo3
xó xo1
xọ xo5
xoác xoa1c
xoạc xoa5c
xoạch xoa5ch
xoài xoa2i
xoải xoa3i
xoàm xoa2m
xoàn xoa2n
xoán xoa1n
xoàng xoa2ng
xoảng xoa3ng
xoạng xoa5ng
xoành xoa2nh
xoát xoa1t
xoạt xoa5t
xoáy xoa1y
xoăn xoa8n
xoẳn xoa83n
xoắn xoa81n
xoắt xoa81t
xóc xo1c
xọc xo5c
xoèn xoe2n
xoẻng xoe3ng
xoét xoe1t
xoẹt xoe5t
xòi xo2i
xói xo1i
xòm xo2m
xõm xo4m
xóm xo1m
xón xo1n
xòng xo2ng
xỏng xo3ng
xõng xo4ng
xóng xo1ng
xóp xo1p
xọp xo5p
xót xo1t
xô xo6
xồ xo62
xổ xo63
xố xo61
xộ xo65
xốc xo61c
xộc xo65c
xôi xo6i
xồi xo62i
xổi xo63i
xối xo61i
xôm xo6m
xồm xo62m
xổm xo63m
xôn xo6n
xồn xo62n
xổn xo63n
xốn xo61n
xộn xo65n
xông xo6ng
xồng xo62ng
xổng xo63ng
xống xo61ng
xốp xo61p
xộp xo65p
xốt xo61t
xơ xo7
xờ xo72
xở xo73
xỡ xo74
xớ xo71
xơi xo7i
xời xo72i
xởi xo73i
xới xo71i
xơm xo7m
xờm xo72m
xớm xo71m
xơn xo7n
xởn xo73n
xớn xo71n
xớp xo71p
xợp xo75p
xớt xo71t
xợt xo75t
xrê xre6
xrêpôc xre6po6c
xtiêng xtie6ng
xtơ xto7
xtrây xtra6y
xù xu2
xủ xu3
xũ xu4
xú xu1
xụ xu5
xùa xu2a
xúa xu1a
xuân xua6n
xuẩn xua63n
xuất xua61t
xuây xua6y
xúc xu1c
xục xu5c
xuê xue6
xuề xue62
xuể xue63
xuế xue61
xuệch xue65ch
xuềnh xue62nh
xùi xu2i
xủi xu3i
xúi xu1i
xụi xu5i
xùm xu2m
xúm xu1m
xùng xu2ng
xủng xu3ng
xúng xu1ng
xuôi xuo6i
xuông xuo6ng
xuồng xuo62ng
xuổng xuo63ng
xuống xuo61ng
xúp xu1p
xụp xu5p
xút xu1t
xụt xu5t
xuyên xuye6n
xuyền xuye62n
xuyển xuye63n
xuyễn xuye64n
xuyến xuye61n
xuyết xuye61t
xuýt xuy1t
xuỵt xuy5t
xư xu7
xừ xu72
xử xu73
xứ xu71
xự xu75
xưa xu7a
xửa xu73a
xứa xu71a
xức xu71c
xực xu75c
xưng xu7ng
xừng xu72ng
xửng xu73ng
xứng xu71ng
xước xu7o71c
xược xu7o75c
xười xu7o72i
xương xu7o7ng
xường xu7o72ng
xưởng xu7o73ng
xướng xu7o71ng
xýt xy1t
ỳ y2
ỷ y3
ỹ y4
ý y1
ỵ y5
ỵa y5a
yàm ya2m
yán ya1n
ých y1ch
ỵch y5ch
yếc ye61c
yêm ye6m
yểm ye63m
yếm ye61m
yên ye6n
yển ye63n
yến ye61n
yêng ye6ng
yểng ye63ng
yếng ye61ng
yếp ye61p
yết ye61t
yêu ye6u
yều ye62u
yểu ye63u
yếu ye61u
yì yi2
ýn y1n
ỵn y5n
ỳnh y2nh
ỷnh y3nh
ýnh y1nh
yò yo2
yó yo1
ýp y1p
ýt y1t
ỵt y5t
yú yu1
ỷu y3u
ỵu y5u
yùm yu2m
zà za2
zabân zaba6n
zài za2i
zắc za81c
zăg za8g
zăng za8ng
zép ze1p
zéro ze1ro
zê ze6
zỏm zo3m
zô zo6
================================================
FILE: test-data/vietnamese.cm.dict.vni2.fix.tdata
================================================
à a2
ả a3
ã a4
á a1
ạ a5
ác ac1
ạc ac5
ácbon acbon1
ách ach1
ạch ach5
ácxtơ acxto17
ảh ah3
ài ai2
ải ai3
ãi ai4
ái ai1
ại ai5
alô alo6
àm am2
ảm am3
ãm am4
ám am1
ạm am5
àn an2
ản an3
ãn an4
án an1
ạn an5
àng ang2
ảng ang3
ãng ang4
áng ang1
ạng ang5
ành anh2
ảnh anh3
ãnh anh4
ánh anh1
ạnh anh5
ào ao2
ảo ao3
ão ao4
áo ao1
ạo ao5
aỏi aoi3
àp ap2
áp ap1
ạp ap5
át at1
ạt at5
àu au2
ảu au3
áu au1
ạu au5
ày ay2
ảy ay3
ãy ay4
áy ay1
ạy ay5
ă a8
ằ a82
ẳ a83
ẵ a84
ắ a81
ặ a85
ăc ac8
ắc ac81
ặc ac85
ăcr acr8
ăh ah8
ăk ak8
ắk ak81
ăm am8
ằm am82
ẳm am83
ẵm am84
ắm am81
ặm am85
ăn an8
ằn an82
ẳn an83
ẵn an84
ắn an81
ặn an85
ăng ang8
ằng ang82
ẳng ang83
ẵng ang84
ắng ang81
ặng ang85
ăngten angten8
ắp ap81
ặp ap85
ắt at81
ặt at85
ằu au82
â a6
ầ a62
ẩ a63
ẫ a64
ấ a61
ậ a65
ấc ac61
ậc ac65
âm am6
ầm am62
ẩm am63
ẫm am64
ấm am61
ậm am65
ân an6
ần an62
ẩn an63
ẫn an64
ấn an61
ận an65
âng ang6
ầng ang62
ẩng ang63
ẫng ang64
ấng ang61
ậng ang65
âp ap6
ấp ap61
ập ap65
ất at61
ật at65
âu au6
ầu au62
ẩu au63
ẫu au64
ấu au61
ậu au65
ây ay6
ầy ay62
ẩy ay63
ẫy ay64
ấy ay61
ậy ay65
bà ba2
bả ba3
bã ba4
bá ba1
bạ ba5
bác bac1
bạc bac5
bách bach1
bạch bach5
bài bai2
bải bai3
bãi bai4
bái bai1
bại bai5
bàm bam2
bãm bam4
bám bam1
bạm bam5
bàn ban2
bản ban3
bán ban1
bạn ban5
bàng bang2
bảng bang3
bãng bang4
báng bang1
bạng bang5
bành banh2
bảnh banh3
bánh banh1
bạnh banh5
bào bao2
bảo bao3
bão bao4
báo bao1
bạo bao5
báp bap1
bạp bap5
bát bat1
bạt bat5
bàu bau2
bảu bau3
báu bau1
bạu bau5
bày bay2
bảy bay3
báy bay1
bayơ bayo7
bắc bac81
bặc bac85
băm bam8
bằm bam82
bẳm bam83
bẵm bam84
bặm bam85
băn ban8
bằn ban82
bẳn ban83
bắn ban81
bặn ban85
băng bang8
bằng bang82
bẳng bang83
bẵng bang84
bắng bang81
bặng bang85
bắp bap81
bặp bap85
bắt bat81
bặt bat85
bấc bac61
bậc bac65
bâm bam6
bầm bam62
bẩm bam63
bẫm bam64
bấm bam61
bậm bam65
bân ban6
bần ban62
bẩn ban63
bấn ban61
bận ban65
bâng bang6
bầng bang62
bẩng bang63
bẫng bang64
bấp bap61
bập bap65
bất bat61
bật bat65
bâu bau6
bầu bau62
bẩu bau63
bẫu bau64
bấu bau61
bậu bau65
bây bay6
bầy bay62
bẩy bay63
bẫy bay64
bấy bay61
bậy bay65
bè be2
bẻ be3
bẽ be4
bé be1
bẹ be5
béc bec1
bèm bem2
bẻm bem3
bèn ben2
bẽn ben4
bén ben1
bẹn ben5
béng beng1
bẻnh benh3
bèo beo2
bẻo beo3
bẽo beo4
béo beo1
bẹo beo5
bép bep1
bẹp bep5
bét bet1
bẹt bet5
bê be6
bề be62
bể be63
bễ be64
bế be61
bệ be65
bệch bech65
bên ben6
bền ben62
bến ben61
bện ben65
bênh benh6
bềnh benh62
bệnh benh65
bếp bep61
bêt bet6
bết bet61
bệt bet65
bête bete6
bêu beu6
bều beu62
bễu beu64
bếu beu61
bệu beu65
bì bi2
bỉ bi3
bĩ bi4
bí bi1
bị bi5
bìa bia2
bịa bia5
bích bich1
bịch bich5
biếc biec61
biêm biem6
biểm biem63
biếm biem61
biên bien6
biền bien62
biển bien63
biến bien61
biện bien65
biêng bieng6
biếng bieng61
biêt biet6
biết biet61
biệt biet65
biêu bieu6
biều bieu62
biểu bieu63
biễu bieu64
biếu bieu61
bìh bih2
bìm bim2
bỉm bim3
bím bim1
bìn bin2
bịn bin5
bình binh2
bỉnh binh3
bĩnh binh4
bính binh1
bịnh binh5
bịp bip5
bít bit1
bịt bit5
bìu biu2
bỉu biu3
bĩu biu4
bíu biu1
bịu biu5
blá bla1
blái blai1
blăng blang8
blâu blau6
blóm blom1
blóma bloma1
blọn blon5
blô blo6
blúc bluc1
bluộm bluom65
bnđc bndc9
bò bo2
bỏ bo3
bõ bo4
bó bo1
bọ bo5
boạt boat5
bóc boc1
bọc boc5
bòi boi2
bỏi boi3
bõi boi4
bói boi1
bòm bom2
bỏm bom3
bõm bom4
bòn bon2
bỏn bon3
bón bon1
bọn bon5
bòng bong2
bỏng bong3
bõng bong4
bóng bong1
bọng bong5
bóp bop1
bọp bop5
bót bot1
bọt bot5
bô bo6
bồ bo62
bổ bo63
bỗ bo64
bố bo61
bộ bo65
bốc boc61
bộc boc65
bôi boi6
bồi boi62
bổi boi63
bối boi61
bội boi65
bôm bom6
bồm bom62
bôn bon6
bồn bon62
bổn bon63
bốn bon61
bộn bon65
bông bong6
bồng bong62
bổng bong63
bỗng bong64
bống bong61
bộng bong65
bốp bop61
bộp bop65
bốt bot61
bột bot65
bơ bo7
bờ bo72
bở bo73
bỡ bo74
bớ bo71
bợ bo75
bớc boc71
bơi boi7
bời boi72
bởi boi73
bỡi boi74
bới boi71
bơm bom7
bờm bom72
bợm bom75
bơn bon7
bờn bon72
bởn bon73
bỡn bon74
bớn bon71
bợn bon75
bớp bop71
bợp bop75
bớt bot71
bợt bot75
bợu bou75
brâu brau6
brôm brom6
brơ bro7
bù bu2
bủ bu3
bú bu1
bụ bu5
bùa bua2
bủa bua3
búa bua1
bụa bua5
búc buc1
bục buc5
bùi bui2
bủi bui3
búi bui1
bụi bui5
búk buk1
bulông bulong6
bùm bum2
bủm bum3
bũm bum4
bụm bum5
bùn bun2
bủn bun3
bún bun1
bùng bung2
bủng bung3
búng bung1
bụng bung5
buộc buoc65
buồi buoi62
buổi buoi63
buối buoi61
buội buoi65
buồm buom62
buôn buon6
buồn buon62
buông buong6
buồng buong62
buốt buot61
buột buot65
búp bup1
bụp bup5
bút but1
bụt but5
buýt buyt1
bư bu7
bứ bu71
bự bu75
bưa bua7
bừa bua72
bửa bua73
bữa bua74
bứa bua71
bựa bua75
bức buc71
bực buc75
bưng bung7
bừng bung72
bửng bung73
bứng bung71
bựng bung75
bước buoc71
bươi buoi7
bưởi buoi73
bươm buom7
bướm buom71
bươn buon7
bương buong7
bường buong72
bướng buong71
bướp buop71
bượt buot75
bươu buou7
bướu buou71
bứt but71
bựt but75
bưu buu7
bửu buu73
cà ca2
cả ca3
cá ca1
cạ ca5
các cac1
cạc cac5
cácbon cacbon1
cách cach1
cạch cach5
cácxt cacxt1
cacxtơ cacxto7
cácxtơ cacxto17
café cafe1
cài cai2
cải cai3
cãi cai4
cái cai1
cại cai5
calô calo6
càm cam2
cảm cam3
cãm cam4
cám cam1
cạm cam5
campôt campot6
càn can2
cản can3
cán can1
cạn can5
càng cang2
cảng cang3
cáng cang1
cành canh2
cảnh canh3
cánh canh1
cạnh canh5
canô cano6
canxít canxit1
cào cao2
cảo cao3
cão cao4
cáo cao1
cạo cao5
cáp cap1
cạp cap5
carbón carbon1
cartón carton1
cát cat1
cạt cat5
càu cau2
cảu cau3
cáu cau1
cạu cau5
cày cay2
cảy cay3
cáy cay1
cạy cay5
că ca8
cắc cac81
cặc cac85
căm cam8
cằm cam82
cắm cam81
cặm cam85
căn can8
cằn can82
cẳn can83
cắn can81
cặn can85
căng cang8
cằng cang82
cẳng cang83
cẵng cang84
cắng cang81
căo cao8
cắp cap81
cặp cap85
cắt cat81
cặt cat85
câ ca6
cầ ca62
câble cable6
cấc cac61
câm cam6
cầm cam62
cẩm cam63
cẫm cam64
cấm cam61
cân can6
cần can62
cẩn can63
cẫn can64
cấn can61
cận can65
câng cang6
cẫng cang64
cấp cap61
cập cap65
cất cat61
cật cat65
câu cau6
cầu cau62
cẩu cau63
cẫu cau64
cấu cau61
cậu cau65
cây cay6
cầy cay62
cẩy cay63
cấy cay61
cậy cay65
céng ceng1
cê ce6
chà cha2
chả cha3
chã cha4
chá cha1
chạ cha5
chác chac1
chạc chac5
chách chach1
chạch chach5
chài chai2
chải chai3
chãi chai4
chái chai1
chàm cham2
chảm cham3
chãm cham4
chám cham1
chạm cham5
chán chan1
chạn chan5
chàng chang2
chảng chang3
cháng chang1
chạng chang5
chành chanh2
chảnh chanh3
chánh chanh1
chạnh chanh5
chào chao2
chảo chao3
chão chao4
cháo chao1
chạo chao5
cháp chap1
chạp chap5
chát chat1
chạt chat5
chàu chau2
chảu chau3
cháu chau1
chày chay2
chảy chay3
cháy chay1
chạy chay5
chắc chac81
chặc chac85
chăm cham8
chằm cham82
chẳm cham83
chắm cham81
chặm cham85
chăn chan8
chằn chan82
chẳn chan83
chẵn chan84
chắn chan81
chặn chan85
chăng chang8
chằng chang82
chẳng chang83
chắng chang81
chặng chang85
chắp chap81
chặp chap85
chắt chat81
chặt chat85
chấ cha61
chậc chac65
châm cham6
chầm cham62
chẩm cham63
chẫm cham64
chấm cham61
chậm cham65
chân chan6
chần chan62
chẩn chan63
chấn chan61
chận chan65
chẩng chang63
chấng chang61
chấp chap61
chập chap65
chất chat61
chật chat65
châu chau6
chầu chau62
chẩu chau63
chẫu chau64
chấu chau61
chậu chau65
chây chay6
chầy chay62
chẩy chay63
chấy chay61
chậy chay65
chè che2
chẻ che3
chẽ che4
ché che1
chẹ che5
chèm chem2
chẻm chem3
chém chem1
chèn chen2
chẻn chen3
chẽn chen4
chén chen1
chẹn chen5
chéng cheng1
chèo cheo2
chẻo cheo3
chẽo cheo4
chéo cheo1
chẹo cheo5
chép chep1
chẹp chep5
chét chet1
chẹt chet5
chê che6
chề che62
chễ che64
chế che61
chệ che65
chệc chec65
chếch chech61
chệch chech65
chêm chem6
chềm chem62
chễm chem64
chên chen6
chện chen65
chênh chenh6
chềnh chenh62
chểnh chenh63
chễnh chenh64
chếnh chenh61
chệnh chenh65
chếp chep61
chệp chep65
chết chet61
chệt chet65
chêu cheu6
chì chi2
chỉ chi3
chĩ chi4
chí chi1
chị chi5
chìa chia2
chỉa chia3
chĩa chia4
chịa chia5
chích chich1
chịch chich5
chiếc chiec61
chiêm chiem6
chiểm chiem63
chiếm chiem61
chiên chien6
chiền chien62
chiển chien63
chiến chien61
chiện chien65
chiêng chieng6
chiềng chieng62
chiếng chieng61
chiếp chiep61
chiệp chiep65
chiết chiet61
chiệt chiet65
chiêu chieu6
chiều chieu62
chiểu chieu63
chiếu chieu61
chìm chim2
chỉm chim3
chím chim1
chỉn chin3
chĩn chin4
chín chin1
chình chinh2
chỉnh chinh3
chĩnh chinh4
chính chinh1
chíp chip1
chít chit1
chịt chit5
chìu chiu2
chĩu chiu4
chíu chiu1
chịu chiu5
chò cho2
chỏ cho3
chõ cho4
chó cho1
chọ cho5
chỏa choa3
chõa choa4
chóa choa1
choác choac1
choạc choac5
choách choach1
choài choai2
choãi choai4
choái choai1
choại choai5
choán choan1
choàng choang2
choảng choang3
choáng choang1
choạng choang5
choãnh choanh4
choạp choap5
choắc choac81
choăn choan8
choắt choat81
chóc choc1
chọc choc5
choèn choen2
choẻn choen3
choét choet1
choẹt choet5
chòi choi2
chỏi choi3
chõi choi4
chói choi1
chọi choi5
chòm chom2
chỏm chom3
chõm chom4
chỏn chon3
chõn chon4
chón chon1
chọn chon5
chòng chong2
chỏng chong3
chõng chong4
chóng chong1
chóp chop1
chót chot1
chọt chot5
chô cho6
chồ cho62
chổ cho63
chỗ cho64
chộ cho65
chốc choc61
chôi choi6
chồi choi62
chổi choi63
chỗi choi64
chối choi61
chội choi65
chôm chom6
chồm chom62
chổm chom63
chỗm chom64
chôn chon6
chồn chon62
chổn chon63
chốn chon61
chộn chon65
chông chong6
chồng chong62
chổng chong63
chống chong61
chốp chop61
chộp chop65
chốt chot61
chột chot65
chơ cho7
chờ cho72
chở cho73
chớ cho71
chợ cho75
chơi choi7
chời choi72
chới choi71
chơm chom7
chờm chom72
chởm chom73
chớm chom71
chơn chon7
chờn chon72
chớn chon71
chợn chon75
chớp chop71
chợp chop75
chớt chot71
chợt chot75
chù chu2
chủ chu3
chú chu1
chụ chu5
chùa chua2
chúa chua1
chuáng chuang1
chuân chuan6
chuẩn chuan63
chuất chuat61
chuật chuat65
chúc chuc1
chục chuc5
chuế chue61
chuếch chuech61
chuệch chuech65
chuếnh chuenh61
chuệnh chuenh65
chùi chui2
chủi chui3
chũi chui4
chúi chui1
chùm chum2
chủm chum3
chũm chum4
chúm chum1
chụm chum5
chùn chun2
chủn chun3
chũn chun4
chùng chung2
chủng chung3
chúng chung1
chuốc chuoc61
chuộc chuoc65
chuôi chuoi6
chuồi chuoi62
chuỗi chuoi64
chuối chuoi61
chuội chuoi65
chuôm chuom6
chuốm chuom61
chuồn chuon62
chuông chuong6
chuồng chuong62
chuộng chuong65
chuốt chuot61
chuột chuot65
chụp chup5
chút chut1
chụt chut5
chuyên chuyen6
chuyền chuyen62
chuyển chuyen63
chuyến chuyen61
chuyện chuyen65
chuyết chuyet61
chư chu7
chừ chu72
chử chu73
chữ chu74
chứ chu71
chưa chua7
chừa chua72
chửa chua73
chữa chua74
chứa chua71
chức chuc71
chực chuc75
chửi chui73
chưn chun7
chưng chung7
chừng chung72
chửng chung73
chững chung74
chứng chung71
chựng chung75
chước chuoc71
chược chuoc75
chưởi chuoi73
chườm chuom72
chương chuong7
chường chuong72
chưởng chuong73
chưỡng chuong74
chướng chuong71
chượp chuop75
chứt chut71
chưu chuu7
chửu chuu73
chữu chuu74
chựu chuu75
cì ci2
cí ci1
cịt cit5
clé cle1
clông clong6
cò co2
cỏ co3
cõ co4
có co1
cọ co5
cóc coc1
cọc coc5
còi coi2
cỏi coi3
cõi coi4
cói coi1
còm com2
cỏm com3
cọm com5
còn con2
cỏn con3
cón con1
cọn con5
còng cong2
cỏng cong3
cõng cong4
cóng cong1
cọng cong5
cóp cop1
cọp cop5
cót cot1
cọt cot5
cô co6
cồ co62
cổ co63
cỗ co64
cố co61
cộ co65
cốc coc61
cộc coc65
côi coi6
cồi coi62
cổi coi63
cỗi coi64
cối coi61
cội coi65
côm com6
cồm com62
cốm com61
cộm com65
côn con6
cồn con62
cổn con63
cốn con61
cộn con65
cône cone6
công cong6
cồng cong62
cổng cong63
cống cong61
cộng cong65
cốp cop61
cộp cop65
côt cot6
cốt cot61
cột cot65
cơ co7
cờ co72
cỡ co74
cớ co71
cơi coi7
cời coi72
cởi coi73
cỡi coi74
cới coi71
cơm com7
cỡm com74
cớm com71
cợm com75
cơn con7
cờn con72
cởn con73
cỡn con74
cớn con71
cợn con75
cợp cop75
cớt cot71
cợt cot75
crô cro6
crôm crom6
crông crong6
crưm crum7
cù cu2
củ cu3
cũ cu4
cú cu1
cụ cu5
cùa cua2
của cua3
cúa cua1
cúc cuc1
cục cuc5
cùi cui2
củi cui3
cũi cui4
cúi cui1
cụi cui5
cùm cum2
củm cum3
cúm cum1
cụm cum5
cùn cun2
củn cun3
cũn cun4
cùng cung2
củng cung3
cũng cung4
cúng cung1
cụng cung5
cuốc cuoc61
cuộc cuoc65
cuồi cuoi62
cuối cuoi61
cuội cuoi65
cuỗm cuom64
cuồn cuon62
cuốn cuon61
cuộn cuon65
cuông cuong6
cuồng cuong62
cuống cuong61
cuộng cuong65
cuôr cuor6
cúp cup1
cụp cup5
cút cut1
cụt cut5
cư cu7
cừ cu72
cử cu73
cữ cu74
cứ cu71
cự cu75
cưa cua7
cửa cua73
cứa cua71
cựa cua75
cức cuc71
cực cuc75
cửi cui73
cưng cung7
cửng cung73
cứng cung71
cước cuoc71
cược cuoc75
cười cuoi72
cưỡi cuoi74
cưới cuoi71
cườm cuom72
cương cuong7
cường cuong72
cưỡng cuong74
cướp cuop71
cứt cut71
cưu cuu7
cừu cuu72
cửu cuu73
cữu cuu74
cứu cuu71
cựu cuu75
dà da2
dả da3
dã da4
dá da1
dạ da5
dác dac1
dạc dac5
dách dach1
dạch dach5
dài dai2
dải dai3
dãi dai4
dái dai1
dại dai5
dàm dam2
dảm dam3
dám dam1
dạm dam5
dàn dan2
dản dan3
dãn dan4
dán dan1
dạn dan5
dàng dang2
dáng dang1
dạng dang5
dành danh2
dảnh danh3
dánh danh1
dào dao2
dáo dao1
dạo dao5
dáp dap1
dát dat1
dạt dat5
dàu dau2
dáu dau1
dày day2
dảy day3
dãy day4
dáy day1
dạy day5
dắc dac81
dặc dac85
dăm dam8
dằm dam82
dặm dam85
dăn dan8
dằn dan82
dẳn dan83
dẵn dan84
dặn dan85
dăng dang8
dằng dang82
dẳng dang83
dẵng dang84
dắng dang81
dặng dang85
dắt dat81
dặt dat85
dâ da6
dậ da65
dâm dam6
dầm dam62
dẩm dam63
dẫm dam64
dấm dam61
dậm dam65
dân dan6
dần dan62
dẩn dan63
dẫn dan64
dấn dan61
dận dan65
dâne dane6
dâng dang6
dậng dang65
dấp dap61
dập dap65
dật dat65
dâu dau6
dầu dau62
dẩu dau63
dẫu dau64
dấu dau61
dậu dau65
dây day6
dầy day62
dẩy day63
dẫy day64
dấy day61
dậy day65
dè de2
dẻ de3
dẽ de4
dé de1
dẹ de5
déc dec1
dèm dem2
dẻm dem3
dém dem1
dẹm dem5
dèn den2
dèo deo2
dẻo deo3
déo deo1
dẹo deo5
dép dep1
dẹp dep5
dẹt det5
dê de6
dề de62
dể de63
dễ de64
dế de61
dệ de65
dềm dem62
dền den62
dện den65
dềng deng62
dênh denh6
dềnh denh62
dết det61
dệt det65
dêu deu6
dều deu62
dệu deu65
dì di2
dỉ di3
dĩ di4
dí di1
dị di5
dìa dia2
dĩa dia4
día dia1
dịa dia5
dích dich1
dịch dich5
diếc diec61
diệc diec65
diêm diem6
diềm diem62
diễm diem64
diếm diem61
diệm diem65
diên dien6
diển dien63
diễn dien64
diến dien61
diện dien65
diềng dieng62
diếp diep61
diệp diep65
diết diet61
diệt diet65
diêu dieu6
diều dieu62
diểu dieu63
diễu dieu64
diếu dieu61
diệu dieu65
dìm dim2
dím dim1
dĩn din4
dín din1
dĩnh dinh4
dính dinh1
dịnh dinh5
díp dip1
dịp dip5
dìt dit2
dít dit1
dịt dit5
dìu diu2
díu diu1
dịu diu5
dliê dlie6
dò do2
dỏ do3
dó do1
dọ do5
doãi doai4
doãn doan4
doãng doang4
doạng doang5
doành doanh2
dóc doc1
dọc doc5
dòi doi2
dỏi doi3
dõi doi4
dói doi1
dọi doi5
dòm dom2
dỏm dom3
dóm dom1
dòn don2
dón don1
dọn don5
dòng dong2
dỏng dong3
dõng dong4
dóng dong1
dọng dong5
dọp dop5
dót dot1
dô do6
dồ do62
dổ do63
dỗ do64
dộ do65
dốc doc61
dộc doc65
dôi doi6
dồi doi62
dổi doi63
dỗi doi64
dối doi61
dội doi65
dôn don6
dồn don62
dốn don61
dộn don65
dông dong6
dỗng dong64
dống dong61
dộng dong65
dộp dop65
dốt dot61
dột dot65
dơ do7
dờ do72
dở do73
dỡ do74
dớ do71
dợ do75
dơi doi7
dời doi72
dới doi71
dợi doi75
dởm dom73
dơn don7
dờn don72
dỡn don74
dớn don71
dợn don75
dớp dop71
dợp dop75
dớt dot71
drăm dram8
drăng drang8
dù du2
dủ du3
dũ du4
dú du1
dụ du5
dùa dua2
dũa dua4
dúa dua1
dụa dua5
duân duan6
duẩn duan63
duẫn duan64
duật duat65
dục duc5
duệ due65
duềnh duenh62
dùi dui2
dủi dui3
dũi dui4
dúi dui1
dụi dui5
dùm dum2
dúm dum1
dụm dum5
dùn dun2
dún dun1
dùng dung2
dũng dung4
dúng dung1
dụng dung5
duốc duoc61
duộc duoc65
duôi duoi6
duổi duoi63
duỗi duoi64
duối duoi61
duồn duon62
duông duong6
duồng duong62
dút dut1
dụt dut5
dụy duy5
duyên duyen6
duyến duyen61
duyện duyen65
duyệt duyet65
dư du7
dừ du72
dử du73
dữ du74
dứ du71
dự du75
dưa dua7
dừa dua72
dứa dua71
dựa dua75
dức duc71
dực duc75
dưng dung7
dừng dung72
dửng dung73
dững dung74
dứng dung71
dựng dung75
dược duoc75
dười duoi72
dưới duoi71
dượi duoi75
dương duong7
dường duong72
dưỡng duong74
dướng duong71
dượng duong75
dượt duot75
dứt dut71
dựt dut75
dửu duu73
dữu duu74
dứu duu71
dựu duu75
dýn dyn1
đ d9
đa da9
đà da92
đả da93
đã da94
đá da91
đạ da95
đac dac9
đác dac91
đạc dac95
đách dach91
đạch dach95
đai dai9
đài dai92
đãi dai94
đái dai91
đại dai95
đam dam9
đàm dam92
đảm dam93
đám dam91
đạm dam95
đan dan9
đàn dan92
đản dan93
đán dan91
đạn dan95
đang dang9
đàng dang92
đảng dang93
đãng dang94
đáng dang91
đanh danh9
đành danh92
đảnh danh93
đánh danh91
đao dao9
đào dao92
đảo dao93
đáo dao91
đạo dao95
đáp dap91
đạp dap95
đát dat91
đạt dat95
đau dau9
đáu dau91
đay day9
đày day92
đảy day93
đãy day94
đáy day91
đẵ da984
đắc dac981
đặc dac985
đăk dak98
đắk dak981
đăm dam98
đằm dam982
đẵm dam984
đắm dam981
đằn dan982
đẵn dan984
đắn dan981
đặn dan985
đăng dang98
đằng dang982
đẳng dang983
đẵng dang984
đắng dang981
đặng dang985
đắp dap981
đắt dat981
đặt dat985
đằu dau982
đâm dam96
đầm dam962
đẫm dam964
đấm dam961
đậm dam965
đần dan962
đẫn dan964
đấn dan961
đận dan965
đâng dang96
đấng dang961
đập dap965
đất dat961
đật dat965
đâu dau96
đầu dau962
đẩu dau963
đấu dau961
đậu dau965
đây day96
đầy day962
đẩy day963
đẫy day964
đấy day961
đậy day965
đe de9
đè de92
đẻ de93
đẽ de94
đéc dec91
đem dem9
đèm dem92
đen den9
đèn den92
đẹn den95
đeng deng9
đeo deo9
đèo deo92
đẽo deo94
đéo deo91
đẹp dep95
đét det91
đẹt det95
đê de96
đề de962
để de963
đễ de964
đế de961
đệ de965
đếch dech961
đêh deh96
đêm dem96
đềm dem962
đếm dem961
đệm dem965
đên den96
đền den962
đến den961
đênh denh96
đềnh denh962
đểnh denh963
đễnh denh964
đệp dep965
đêu deu96
đều deu962
đểu deu963
đg dg9
đgt dgt9
đhur dhur9
đi di9
đì di92
đĩ di94
đị di95
đìa dia92
đỉa dia93
đĩa dia94
đía dia91
địa dia95
đích dich91
địch dich95
đien dien9
điếc diec961
điềm diem962
điểm diem963
điếm diem961
điệm diem965
điên dien96
điền dien962
điển dien963
điện dien965
điêng dieng96
điếng dieng961
điệp diep965
điệt diet965
điêu dieu96
điều dieu962
điểu dieu963
điếu dieu961
điệu dieu965
đin din9
đìn din92
đinh dinh9
đình dinh92
đỉnh dinh93
đĩnh dinh94
đính dinh91
định dinh95
đip dip9
đít dit91
địt dit95
điu diu9
đìu diu92
địu diu95
đo do9
đò do92
đỏ do93
đõ do94
đó do91
đọ do95
đoa doa9
đoác doac91
đoài doai92
đoái doai91
đoan doan9
đoàn doan92
đoản doan93
đoán doan91
đoạn doan95
đoàng doang92
đoảng doang93
đoãng doang94
đoành doanh92
đoạt doat95
đoc doc9
đóc doc91
đọc doc95
đoi doi9
đòi doi92
đỏi doi93
đói doi91
đọi doi95
đom dom9
đòm dom92
đỏm dom93
đóm dom91
đon don9
đòn don92
đón don91
đọn don95
đong dong9
đòng dong92
đỏng dong93
đóng dong91
đọng dong95
đọp dop95
đót dot91
đọt dot95
đô do96
đồ do962
đổ do963
đỗ do964
đố do961
độ do965
đôc doc96
đốc doc961
độc doc965
đôi doi96
đồi doi962
đổi doi963
đỗi doi964
đối doi961
đội doi965
đôm dom96
đồm dom962
đốm dom961
đôn don96
đồn don962
đốn don961
độn don965
đông dong96
đồng dong962
đổng dong963
đỗng dong964
đống dong961
động dong965
đốp dop961
độp dop965
đốt dot961
đột dot965
đơ do97
đờ do972
đở do973
đỡ do974
đớ do971
đợ do975
đời doi972
đới doi971
đợi doi975
đơm dom97
đờm dom972
đởm dom973
đơn don97
đờn don972
đởn don973
đớn don971
đớp dop971
đợp dop975
đớt dot971
đợt dot975
đpcm dpcm9
đpctntư dpctntu97
đph dph9
đphg dphg9
đqg dqg9
đqgtnn dqgtnn9
đqt dqt9
đr dr9
đrá dra91
đrao drao9
đrăk drak98
đrắk drak981
đrong drong9
đrô dro96
đrung drung9
đs ds9
đsp dsp9
đt dt9
đtb dtb9
đtbxh dtbxh9
đtl dtl9
đtla dtla9
đtlx dtlx9
đtm dtm9
đtntl dtntl9
đtpt dtpt9
đts dts9
đtt dtt9
đttp dttp9
đttpmt dttpmt9
đttqg dttqg9
đu du9
đù du92
đủ du93
đú du91
đụ du95
đua dua9
đùa dua92
đũa dua94
đúa dua91
đúc duc91
đục duc95
đuểnh duenh963
đui dui9
đùi dui92
đủi dui93
đũi dui94
đum dum9
đùm dum92
đúm dum91
đun dun9
đùn dun92
đún dun91
đụn dun95
đung dung9
đùng dung92
đủng dung93
đũng dung94
đúng dung91
đụng dung95
đuốc duoc961
đuôi duoi96
đuổi duoi963
đuối duoi961
đuồn duon962
đuỗn duon964
đuống duong961
đuột duot965
đup dup9
đúp dup91
đụp dup95
đút dut91
đụt dut95
đừ du972
đử du973
đứ du971
đưa dua97
đừa dua972
đứa dua971
đức duc971
đực duc975
đưng dung97
đừng dung972
đứng dung971
đựng dung975
đước duoc971
được duoc975
đười duoi972
đượm duom975
đườn duon972
đưỡn duon974
đương duong97
đường duong972
đứt dut971
đv dv9
đvn dvn9
đvqg dvqg9
đxx dxx9
è e2
ẻ e3
ẽ e4
é e1
ẹ e5
éc ec1
ẹc ec5
ẻh eh3
éh eh1
èm em2
ẻm em3
ẽm em4
ém em1
ẹm em5
èn en2
ẻn en3
ẽn en4
én en1
ẹn en5
èng eng2
ẻng eng3
éng eng1
èo eo2
ẻo eo3
ẽo eo4
éo eo1
ẹo eo5
ép ep1
ẹp ep5
ét et1
ẹt et5
ê e6
ề e62
ể e63
ễ e64
ế e61
ệ e65
êa ea6
êbur ebur6
êc ec6
ếc ec61
ệc ec65
ếch ech61
ệch ech65
êh eh6
êm em6
ềm em62
ểm em63
ễm em64
ếm em61
ệm em65
ên en6
ền en62
ển en63
ễn en64
ến en61
ện en65
êng eng6
ềng eng62
ểng eng63
ễng eng64
ếng eng61
ệng eng65
ênh enh6
ềnh enh62
ểnh enh63
ễnh enh64
ếnh enh61
ệnh enh65
ếp ep61
ệp ep65
êpôc epoc66
êpốc epoc661
êt et6
ết et61
ệt et65
êtan etan6
ête ete6
êu eu6
ều eu62
ểu eu63
ễu eu64
ếu eu61
ệu eu65
êy ey6
fà fa2
frăng frang8
fría fria1
fù fu2
fú fu1
fútbol futbol1
gà ga2
gả ga3
gã ga4
gá ga1
gạ ga5
gác gac1
gạc gac5
gạch gach5
gài gai2
gãi gai4
gái gai1
galông galong6
gàn gan2
gán gan1
gạn gan5
gàng gang2
gành ganh2
gảnh ganh3
gánh ganh1
gạnh ganh5
gào gao2
gáo gao1
gạo gao5
gáp gap1
gát gat1
gạt gat5
gàu gau2
gáu gau1
gày gay2
gảy gay3
gãy gay4
gáy gay1
gạy gay5
gặc gac85
găm gam8
gằm gam82
gắm gam81
gặm gam85
găn gan8
gằn gan82
gắn gan81
gặn gan85
găng gang8
gắng gang81
gặng gang85
gắp gap81
gặp gap85
gắt gat81
gặt gat85
gấc gac61
gâm gam6
gầm gam62
gẩm gam63
gẫm gam64
gấm gam61
gậm gam65
gân gan6
gần gan62
gấn gan61
gận gan65
gầng gang62
gấp gap61
gập gap65
gất gat61
gật gat65
gâu gau6
gầu gau62
gẫu gau64
gấu gau61
gây gay6
gầy gay62
gẩy gay63
gẫy gay64
gấy gay61
gậy gay65
gẻ ge3
gém gem1
gép gep1
gềnh genh62
gệt get65
ghè ghe2
ghẻ ghe3
ghẽ ghe4
ghé ghe1
ghẹ ghe5
ghém ghem1
ghèn ghen2
ghẹn ghen5
ghẹo gheo5
ghép ghep1
ghét ghet1
ghê ghe6
ghề ghe62
ghế ghe61
ghệ ghe65
ghếch ghech61
ghềnh ghenh62
ghểnh ghenh63
ghệt ghet65
ghì ghi2
ghĩa ghia4
ghiếc ghiec61
ghiền ghien62
ghìm ghim2
ghín ghin1
ghinê ghine6
ghình ghinh2
gì gi2
gỉ gi3
gĩ gi4
gí gi1
già gia2
giả gia3
giã gia4
giá gia1
giạ gia5
giác giac1
giạc giac5
giải giai3
giãi giai4
giái giai1
giại giai5
giàm giam2
giảm giam3
giám giam1
giạm giam5
giàn gian2
giản gian3
giãn gian4
gián gian1
giàng giang2
giảng giang3
giáng giang1
giạng giang5
giành gianh2
giảnh gianh3
giào giao2
giảo giao3
giáo giao1
giáp giap1
giát giat1
giạt giat5
giàu giau2
giảu giau3
giavê giave6
giày giay2
giãy giay4
giáy giay1
giặc giac85
giăm giam8
giằm giam82
giẵm giam84
giắm giam81
giặm giam85
giằn gian82
giẵn gian84
giắn gian81
giặn gian85
giăng giang8
giằng giang82
giắng giang81
giặng giang85
giặp giap85
giắt giat81
giặt giat85
giâ gia6
giấc giac61
giâm giam6
giầm giam62
giẫm giam64
giấm giam61
giậm giam65
giân gian6
giần gian62
giấn gian61
giận gian65
giầng giang62
giẩng giang63
giầnh gianh62
giấp giap61
giập giap65
giất giat61
giật giat65
giâu giau6
giầu giau62
giấu giau61
giậu giau65
giây giay6
giầy giay62
giẩy giay63
giẫy giay64
giấy giay61
gíc gic1
gích gich1
giẻ gie3
giẽ gie4
gié gie1
giéc giec1
gièm giem2
giém giem1
giẻo gieo3
giéo gieo1
giẹo gieo5
giép giep1
giẹp giep5
giẹt giet5
giê gie6
giề gie62
giếc giec61
giệch giech65
giếm giem61
giền gien62
giêng gieng6
giềng gieng62
giếng gieng61
giềnh gienh62
giệnh gienh65
giết giet61
giệt giet65
giễu gieu64
giếu gieu61
giệu gieu65
gìm gim2
gìn gin2
giò gio2
giỏ gio3
giõ gio4
gió gio1
giọ gio5
gióc gioc1
giọc gioc5
giòi gioi2
giỏi gioi3
giõi gioi4
giói gioi1
giọi gioi5
giòn gion2
giỏn gion3
gión gion1
giọn gion5
giòng giong2
giỏng giong3
giõng giong4
gióng giong1
giọng giong5
giót giot1
giọt giot5
giô gio6
giồ gio62
giổ gio63
giỗ gio64
giộ gio65
giốc gioc61
giôi gioi6
giồi gioi62
giổi gioi63
giỗi gioi64
giối gioi61
giội gioi65
giôn gion6
giông giong6
giồng giong62
giống giong61
giộng giong65
giộp giop65
giốt giot61
giột giot65
giơ gio7
giờ gio72
giở gio73
giỡ gio74
giớ gio71
giời gioi72
giới gioi71
giớm giom71
giợm giom75
giờn gion72
giởn gion73
giỡn gion74
giợn gion75
giợt giot75
gíp gip1
gít git1
gịt git5
giù giu2
giũ giu4
giú giu1
giùa giua2
giũa giua4
giụa giua5
giục giuc5
giùi giui2
giủi giui3
giúi giui1
giụi giui5
giùm gium2
giúm gium1
giụm gium5
giùn giun2
giún giun1
giùng giung2
giủng giung3
giuộc giuoc65
giuỗi giuoi64
giuộm giuom65
giúp giup1
giư giu7
giừ giu72
giữ giu74
giưa giua7
giữa giua74
giứa giua71
giương giuong7
giường giuong72
giướng giuong71
giượng giuong75
giựt giut75
glây glay6
gò go2
gõ go4
gó go1
gọ go5
góc goc1
gòi goi2
gỏi goi3
gõi goi4
gói goi1
gọi goi5
gỏl gol3
gòn gon2
gón gon1
gọn gon5
gòng gong2
gỏng gong3
gọng gong5
góp gop1
gót got1
gọt got5
gô go6
gồ go62
gổ go63
gỗ go64
gộ go65
gốc goc61
gộc goc65
gồi goi62
gối goi61
gội goi65
gôm gom6
gồm gom62
gốm gom61
gôn gon6
gông gong6
gồng gong62
gống gong61
gốp gop61
gộp gop65
gột got65
gơ go7
gờ go72
gở go73
gỡ go74
gớc goc71
gởi goi73
gới goi71
gợi goi75
gờm gom72
gớm gom71
gơn gon7
gờn gon72
gợn gon75
gợt got75
grát grat1
gù gu2
gũ gu4
gú gu1
gụ gu5
gục guc5
guê gue6
gùi gui2
gũi gui4
gụi gui5
gùn gun2
gún gun1
gùng gung2
gúng gung1
guó guo1
guốc guoc61
guộc guoc65
guồi guoi62
guồng guong62
guột guot65
gút gut1
gụt gut5
gư gu7
gừ gu72
gừa gua72
gửi gui73
gừng gung72
gứng gung71
gươm guom7
gườm guom72
gượm guom75
gương guong7
gường guong72
gưỡng guong74
gượng guong75
gỵa gya5
hà ha2
hả ha3
há ha1
hạ ha5
hác hac1
hạc hac5
hách hach1
hạch hach5
hài hai2
hải hai3
hãi hai4
hái hai1
hại hai5
haló halo1
hàm ham2
hảm ham3
hãm ham4
hám ham1
hạm ham5
hàn han2
hản han3
hãn han4
hán han1
hạn han5
hàng hang2
hảng hang3
hãng hang4
háng hang1
hạng hang5
hành hanh2
hảnh hanh3
hãnh hanh4
hánh hanh1
hạnh hanh5
hào hao2
hảo hao3
hão hao4
háo hao1
hạo hao5
háp hap1
hạp hap5
hát hat1
hạt hat5
hàu hau2
háu hau1
hảy hay3
hãy hay4
háy hay1
hạy hay5
hắ ha81
hắc hac81
hặc hac85
hăm ham8
hằm ham82
hẳm ham83
hằn han82
hẳn han83
hắn han81
hăng hang8
hằng hang82
hẵng hang84
hắng hang81
hắt hat81
hấc hac61
hậc hac65
hâm ham6
hầm ham62
hẩm ham63
hẫm ham64
hấm ham61
hậm ham65
hân han6
hẫn han64
hấn han61
hận han65
hâng hang6
hẩng hang63
hẫng hang64
hấng hang61
hấp hap61
hập hap65
hất hat61
hật hat65
hâu hau6
hầu hau62
hẩu hau63
hẫu hau64
hấu hau61
hậu hau65
hây hay6
hầy hay62
hẩy hay63
hẫy hay64
hấy hay61
hđbt hdbt9
hè he2
hẻ he3
hẽ he4
hé he1
hẹ he5
héc hec1
hécta hecta1
hèm hem2
hẻm hem3
hẹm hem5
hèn hen2
hẻn hen3
hẹn hen5
hẹng heng5
hèo heo2
hẻo heo3
héo heo1
hép hep1
hẹp hep5
hét het1
hẹt het5
hê he6
hề he62
hể he63
hễ he64
hế he61
hệ he65
hếch hech61
hệch hech65
hêli heli6
hềm hem62
hên hen6
hển hen63
hến hen61
hênh henh6
hềnh henh62
hểnh henh63
hết het61
hệt het65
hêu heu6
hều heu62
hểu heu63
hếu heu61
hì hi2
hỉ hi3
hĩ hi4
hí hi1
hích hich1
hịch hich5
hiêm hiem6
hiềm hiem62
hiểm hiem63
hiếm hiem61
hiên hien6
hiền hien62
hiển hien63
hiến hien61
hiện hien65
hiêng hieng6
hiểng hieng63
hiếng hieng61
hiếp hiep61
hiệp hiep65
hiết hiet61
hiệt hiet65
hiêu hieu6
hiều hieu62
hiểu hieu63
hiếu hieu61
hiệu hieu65
hĩm him4
hỉn hin3
hình hinh2
hỉnh hinh3
hĩnh hinh4
híp hip1
hít hit1
hìu hiu2
hmông hmong6
hnđ hnd9
hò ho2
hỏ ho3
hó ho1
họ ho5
hoác hoac1
hoách hoach1
hoạch hoach5
hoài hoai2
hoải hoai3
hoãi hoai4
hoái hoai1
hoại hoai5
hoàn hoan2
hoản hoan3
hoãn hoan4
hoán hoan1
hoạn hoan5
hoàng hoang2
hoảng hoang3
hoãng hoang4
hoáng hoang1
hoành hoanh2
hoảnh hoanh3
hoánh hoanh1
hoạnh hoanh5
hoát hoat1
hoạt hoat5
hoáy hoay1
hoắc hoac81
hoặc hoac85
hoăm hoam8
hoắm hoam81
hoằn hoan82
hoẳn hoan83
hoăng hoang8
hoằng hoang82
hoẵng hoang84
hoắt hoat81
hoân hoan6
hóc hoc1
học hoc5
hoẻn hoen3
hoét hoet1
hoẹt hoet5
hòi hoi2
hỏi hoi3
hói hoi1
hòm hom2
hỏm hom3
hõm hom4
hóm hom1
hòn hon2
hỏn hon3
hón hon1
hòng hong2
hỏng hong3
hóng hong1
họng hong5
hóp hop1
họp hop5
hót hot1
hô ho6
hồ ho62
hổ ho63
hỗ ho64
hố ho61
hộ ho65
hốc hoc61
hộc hoc65
hôi hoi6
hồi hoi62
hổi hoi63
hối hoi61
hội hoi65
hôm hom6
hồm hom62
hổm hom63
hỗm hom64
hôn hon6
hồn hon62
hổn hon63
hỗn hon64
hộn hon65
hông hong6
hồng hong62
hổng hong63
hỗng hong64
hống hong61
hốp hop61
hộp hop65
hốt hot61
hột hot65
hôtel hotel6
hơ ho7
hờ ho72
hở ho73
hớ ho71
hơi hoi7
hời hoi72
hởi hoi73
hỡi hoi74
hới hoi71
hợi hoi75
hờm hom72
hớm hom71
hợm hom75
hơn hon7
hờn hon72
hớn hon71
hơng hong7
hớp hop71
hợp hop75
hớt hot71
hợt hot75
hrê hre6
hrệ hre65
hù hu2
hủ hu3
hũ hu4
hú hu1
hụ hu5
hùa hua2
húa hua1
huân huan6
huẩn huan63
huấn huan61
huất huat61
huầy huay62
húc huc1
hục huc5
huê hue6
huề hue62
huế hue61
huệ hue65
huếch huech61
huênh huenh6
huểnh huenh63
huếnh huenh61
hùi hui2
hủi hui3
húi hui1
hụi hui5
hùm hum2
hũm hum4
húm hum1
hụm hum5
hùn hun2
hủn hun3
hùng hung2
hủng hung3
húng hung1
huổi huoi63
huông huong6
huồng huong62
huống huong61
huơ huo7
huờ huo72
huơn huon7
huờn huon72
huỡn huon74
húp hup1
hụp hup5
hút hut1
hụt hut5
huých huych1
huỵch huych5
huyên huyen6
huyền huyen62
huyển huyen63
huyễn huyen64
huyến huyen61
huyện huyen65
huyết huyet61
huyệt huyet65
huỳnh huynh2
huỷnh huynh3
huýnh huynh1
huýt huyt1
hư hu7
hừ hu72
hử hu73
hữ hu74
hứ hu71
hự hu75
hưa hua7
hừa hua72
hữa hua74
hứa hua71
hức huc71
hực huc75
hừm hum72
hưn hun7
hưng hung7
hừng hung72
hửng hung73
hững hung74
hứng hung71
hước huoc71
hướm huom71
hượm huom75
hương huong7
hường huong72
hưởng huong73
hướng huong71
hươu huou7
hưu huu7
hữu huu74
hựu huu75
hỷ hy3
hỹ hy4
hý hy1
hyđro hydro9
ì i2
ỉ i3
ĩ i4
í i1
ị i5
ìa ia2
ỉa ia3
ĩa ia4
ía ia1
ịa ia5
íc ic1
ỉch ich3
ích ich1
ịch ich5
ìh ih2
ìi ii2
ìm im2
ỉm im3
ĩm im4
ím im1
ịm im5
ìn in2
ỉn in3
ĩn in4
ín in1
ịn in5
ỉng ing3
íng ing1
ịng ing5
ình inh2
ỉnh inh3
ĩnh inh4
ính inh1
ịnh inh5
iốt iot61
iới ioi71
íp ip1
ịp ip5
ít it1
ịt it5
ìu iu2
ỉu iu3
ĩu iu4
íu iu1
ịu iu5
iý iy1
jà ja2
jì ji2
jí ji1
jó jo1
josé jose1
jú ju1
jút jut1
jữ ju74
kách kach1
kađai kadai9
kài kai2
kalá kala1
kalú kalu1
kạn kan5
kcách kcach1
kđrao kdrao9
kè ke2
kẻ ke3
kẽ ke4
ké ke1
kẹ ke5
kéc kec1
kèm kem2
kẻm kem3
kẽm kem4
kém kem1
kèn ken2
kén ken1
kẹn ken5
kẻng keng3
kèo keo2
kẻo keo3
kẽo keo4
kéo keo1
kẹo keo5
kép kep1
kẹp kep5
két ket1
kẹt ket5
kê ke6
kề ke62
kể ke63
kế ke61
kệ ke65
kếch kech61
kệch kech65
kềm kem62
kên ken6
kền ken62
kêng keng6
kênh kenh6
kềnh kenh62
kễnh kenh64
kệnh kenh65
kếp kep61
kết ket61
kêu keu6
kều keu62
kgông kgong6
khà kha2
khả kha3
khá kha1
khạ kha5
khác khac1
khạc khac5
khách khach1
khải khai3
khái khai1
khại khai5
khảm kham3
khám kham1
khàn khan2
khản khan3
khán khan1
khàng khang2
khảng khang3
kháng khang1
khạng khang5
khành khanh2
khảnh khanh3
khánh khanh1
khào khao2
khảo khao3
kháo khao1
khạo khao5
kháp khap1
khạp khap5
khát khat1
khạt khat5
kháu khau1
khảy khay3
kháy khay1
khắ kha81
khắc khac81
khặc khac85
khăm kham8
khẳm kham83
khắm kham81
khăn khan8
khằn khan82
khẳn khan83
khắn khan81
khăng khang8
khằng khang82
khẳng khang83
khắng khang81
khắp khap81
khắt khat81
khấc khac61
khâm kham6
khẩm kham63
khấm kham61
khân khan6
khẩn khan63
khấn khan61
khẩng khang63
khấng khang61
khấp khap61
khập khap65
khất khat61
khật khat65
khâu khau6
khẩu khau63
khấu khau61
khậu khau65
khẩy khay63
khè khe2
khẻ khe3
khẽ khe4
khé khe1
khẹ khe5
khẹc khec5
khém khem1
khèn khen2
khén khen1
khèo kheo2
khẻo kheo3
khéo kheo1
khép khep1
khét khet1
khẹt khet5
khê khe6
khề khe62
khể khe63
khế khe61
khệ khe65
khến khen61
khệng kheng65
khênh khenh6
khềnh khenh62
khểnh khenh63
khệnh khenh65
khêu kheu6
khều kheu62
khểu kheu63
khì khi2
khỉ khi3
khí khi1
khị khi5
khìa khia2
khỉa khia3
khía khia1
khịa khia5
khích khich1
khiêm khiem6
khiểm khiem63
khiếm khiem61
khiệm khiem65
khiên khien6
khiền khien62
khiển khien63
khiến khien61
khiêng khieng6
khiễng khieng64
khiếp khiep61
khiết khiet61
khiêu khieu6
khiều khieu62
khiếu khieu61
khìn khin2
khín khin1
khỉnh khinh3
khĩnh khinh4
khít khit1
khịt khit5
khìu khiu2
khỉu khiu3
khíu khiu1
khịu khiu5
khlá khla1
khò kho2
khỏ kho3
khó kho1
khoác khoac1
khoạc khoac5
khoách khoach1
khoải khoai3
khoái khoai1
khoản khoan3
khoán khoan1
khoảng khoang3
khoáng khoang1
khoảnh khoanh3
khoào khoao2
khoát khoat1
khoạt khoat5
khoáy khoay1
khoắc khoac81
khoăm khoam8
khoằm khoam82
khoắm khoam81
khoăn khoan8
khoắn khoan81
khoắng khoang81
khoắt khoat81
khóc khoc1
khoèn khoen2
khoèo khoeo2
khoẻo khoeo3
khoét khoet1
khỏi khoi3
khói khoi1
khòm khom2
khóm khom1
khọm khom5
khòn khon2
khọn khon5
khòng khong2
khỏng khong3
khót khot1
khô kho6
khổ kho63
khố kho61
khốc khoc61
khôg khog6
khôi khoi6
khổi khoi63
khối khoi61
khôn khon6
khổn khon63
khốn khon61
không khong6
khổng khong63
khống khong61
khốt khot61
khơ kho7
khờ kho72
khớ kho71
khơi khoi7
khởi khoi73
khới khoi71
khơm khom7
khớm khom71
khơme khome7
khờn khon72
khớn khon71
khớp khop71
khù khu2
khủ khu3
khũ khu4
khú khu1
khụ khu5
khùa khua2
khủa khua3
khúa khua1
khuân khuan6
khuẩn khuan63
khuẫn khuan64
khuâng khuang6
khuất khuat61
khuây khuay6
khuấy khuay61
khúc khuc1
khục khuc5
khuê khue6
khuể khue63
khuếch khuech61
khúm khum1
khùng khung2
khủng khung3
khuôn khuon6
khuông khuong6
khuơ khuo7
khụt khut5
khuých khuych1
khuyên khuyen6
khuyển khuyen63
khuyến khuyen61
khuyết khuyet61
khuỳnh khuynh2
khuýnh khuynh1
khuỷu khuyu3
khuỵu khuyu5
khư khu7
khừ khu72
khử khu73
khứ khu71
khự khu75
khừa khua72
khứa khua71
khựa khua75
khừng khung72
khửng khung73
khứng khung71
khựng khung75
khước khuoc71
khươi khuoi7
khươm khuom7
khươn khuon7
khương khuong7
khưỡng khuong74
khướt khuot71
khướu khuou71
khưu khuu7
khứu khuu71
khyển khyen63
kì ki2
kỉ ki3
kĩ ki4
kí ki1
kị ki5
kìa kia2
kỉch kich3
kích kich1
kịch kich5
kiệ kie65
kiêm kiem6
kiềm kiem62
kiểm kiem63
kiếm kiem61
kiệm kiem65
kiên kien6
kiền kien62
kiển kien63
kiến kien61
kiện kien65
kiêng kieng6
kiềng kieng62
kiểng kieng63
kiễng kieng64
kiếng kieng61
kiếp kiep61
kiệp kiep65
kiết kiet61
kiệt kiet65
kiêu kieu6
kiều kieu62
kiểu kieu63
kiếu kieu61
kiệu kieu65
kiló kilo1
kilô kilo6
kilôgam kilogam6
kilôm kilom6
kilômet kilomet6
kìm kim2
kìn kin2
kín kin1
kịn kin5
kình kinh2
kỉnh kinh3
kính kinh1
kinó kino1
kíp kip1
kịp kip5
kít kit1
kịt kit5
kitô kito6
kĩu kiu4
kíu kiu1
kò ko2
kó ko1
kòp kop2
kót kot1
kô ko6
kốc koc61
kôn kon6
kông kong6
kơ ko7
kơi koi7
kpă kpa8
kpăng kpang8
kráp krap1
krăng krang8
krẹ kre5
krêy krey6
krôm krom6
krông krong6
ktlê ktle6
kủ ku3
kúba kuba1
kúc kuc1
kuênh kuenh6
kỳ ky2
kỷ ky3
kỹ ky4
ký ky1
kỵ ky5
là la2
lả la3
lã la4
lá la1
lạ la5
lác lac1
lạc lac5
lách lach1
lạch lach5
lài lai2
lải lai3
lãi lai4
lái lai1
lại lai5
làm lam2
lảm lam3
lãm lam4
lạm lam5
làn lan2
lãn lan4
lán lan1
lạn lan5
làng lang2
lảng lang3
lãng lang4
láng lang1
lạng lang5
lành lanh2
lảnh lanh3
lãnh lanh4
lánh lanh1
lạnh lanh5
lào lao2
lảo lao3
lão lao4
láo lao1
lạo lao5
láp lap1
lạp lap5
lát lat1
lạt lat5
làu lau2
lảu lau3
láu lau1
lạu lau5
lày lay2
lảy lay3
láy lay1
lạy lay5
lắc lac81
lặc lac85
lăk lak8
lắk lak81
lăm lam8
lằm lam82
lẳm lam83
lắm lam81
lặm lam85
lăn lan8
lằn lan82
lẳn lan83
lặn lan85
lăng lang8
lằng lang82
lẳng lang83
lẵng lang84
lắng lang81
lặng lang85
lắp lap81
lặp lap85
lắt lat81
lặt lat85
lấc lac61
lâm lam6
lầm lam62
lẩm lam63
lẫm lam64
lấm lam61
lậm lam65
lân lan6
lần lan62
lẩn lan63
lẫn lan64
lấn lan61
lận lan65
lâng lang6
lấng lang61
lâp lap6
lấp lap61
lập lap65
lất lat61
lật lat65
lâu lau6
lầu lau62
lẩu lau63
lấu lau61
lậu lau65
lây lay6
lầy lay62
lẩy lay63
lẫy lay64
lấy lay61
lậy lay65
lè le2
lẻ le3
lẽ le4
lé le1
lẹ le5
léc lec1
lèm lem2
lẻm lem3
lém lem1
lẹm lem5
lèn len2
lẻn len3
lẽn len4
lén len1
lẹn len5
lèng leng2
lẻng leng3
léng leng1
lèo leo2
lẻo leo3
lẽo leo4
léo leo1
lẹo leo5
lép lep1
lẹp lep5
lét let1
lẹt let5
lê le6
lề le62
lể le63
lễ le64
lệ le65
lếch lech61
lệch lech65
lên len6
lênh lenh6
lềnh lenh62
lểnh lenh63
lễnh lenh64
lệnh lenh65
lênin lenin6
lết let61
lệt let65
lêu leu6
lều leu62
lểu leu63
lễu leu64
lếu leu61
lệu leu65
lểy ley63
lếy ley61
lì li2
lí li1
lị li5
lìa lia2
lía lia1
lịa lia5
líc lic1
lích lich1
lịch lich5
liếc liec61
liêm liem6
liềm liem62
liễm liem64
liếm liem61
liệm liem65
liên lien6
liền lien62
liễn lien64
liến lien61
liêng lieng6
liềng lieng62
liểng lieng63
liếng lieng61
liệng lieng65
liếp liep61
liệp liep65
liệt liet65
liêu lieu6
liều lieu62
liểu lieu63
liễu lieu64
liếu lieu61
liệu lieu65
lìm lim2
lỉm lim3
lịm lim5
lìn lin2
lình linh2
lỉnh linh3
lĩnh linh4
lính linh1
lịnh linh5
líp lip1
lịp lip5
lít lit1
lịt lit5
litô lito6
lìu liu2
líu liu1
lịu liu5
lò lo2
lõ lo4
ló lo1
lọ lo5
loạc loac5
loách loach1
loài loai2
loại loai5
loàn loan2
loán loan1
loạn loan5
loàng loang2
loảng loang3
loãng loang4
loáng loang1
loạng loang5
loát loat1
loạt loat5
loăn loan8
loăng loang8
loằng loang82
loắt loat81
lóc loc1
lọc loc5
loẻn loen3
loét loet1
loẹt loet5
lòi loi2
lỏi loi3
lõi loi4
lói loi1
lọi loi5
lòm lom2
lỏm lom3
lõm lom4
lóm lom1
lọm lom5
lòn lon2
lỏn lon3
lọn lon5
lòng long2
lỏng long3
lõng long4
lóng long1
lọng long5
lóp lop1
lọp lop5
lót lot1
lọt lot5
lô lo6
lồ lo62
lổ lo63
lỗ lo64
lố lo61
lộ lo65
lôc loc6
lốc loc61
lộc loc65
lôgic logic6
lôi loi6
lồi loi62
lỗi loi64
lối loi61
lội loi65
lôm lom6
lồm lom62
lổm lom63
lốm lom61
lộm lom65
lôn lon6
lồn lon62
lổn lon63
lốn lon61
lộn lon65
lông long6
lồng long62
lổng long63
lộng long65
lốp lop61
lộp lop65
lốt lot61
lột lot65
lơ lo7
lờ lo72
lở lo73
lỡ lo74
lớ lo71
lợ lo75
lơi loi7
lời loi72
lởi loi73
lỡi loi74
lới loi71
lợi loi75
lờm lom72
lởm lom73
lỡm lom74
lợm lom75
lơn lon7
lờn lon72
lởn lon73
lớn lon71
lợn lon75
lơng long7
lớp lop71
lợp lop75
lớt lot71
lợt lot75
lù lu2
lủ lu3
lũ lu4
lú lu1
lụ lu5
lùa lua2
lũa lua4
lúa lua1
lụa lua5
luán luan1
luân luan6
luẩn luan63
luấn luan61
luận luan65
luật luat65
lúc luc1
lục luc5
lùi lui2
lủi lui3
lũi lui4
lúi lui1
lụi lui5
lùm lum2
lủm lum3
lũm lum4
lúm lum1
lụm lum5
lùn lun2
lủn lun3
lũn lun4
lún lun1
lụn lun5
lùng lung2
lủng lung3
lũng lung4
lúng lung1
lụng lung5
luóm luom1
luốc luoc61
luộc luoc65
luỗi luoi64
luôm luom6
luộm luom65
luôn luon6
luồn luon62
luông luong6
luồng luong62
luỗng luong64
luống luong61
luốt luot61
luột luot65
lúp lup1
lụp lup5
lút lut1
lụt lut5
luyên luyen6
luyến luyen61
luyện luyen65
luyệt luyet65
luýnh luynh1
lư lu7
lừ lu72
lử lu73
lữ lu74
lự lu75
lưa lua7
lừa lua72
lửa lua73
lữa lua74
lứa lua71
lựa lua75
lưc luc7
lức luc71
lực luc75
lừm lum72
lưng lung7
lừng lung72
lửng lung73
lững lung74
lứng lung71
lựng lung75
lược luoc75
lười luoi72
lưỡi luoi74
lưới luoi71
lươm luom7
lườm luom72
lượm luom75
lươn luon7
lườn luon72
lượn luon75
lương luong7
lường luong72
lưỡng luong74
lướng luong71
lượng luong75
lướt luot71
lượt luot75
lứt lut71
lưu luu7
lữu luu74
lựu luu75
lỳ ly2
lỹ ly4
lý ly1
lỵ ly5
mà ma2
mả ma3
mã ma4
má ma1
mạ ma5
mác mac1
mạc mac5
mách mach1
mạch mach5
mài mai2
mải mai3
mãi mai4
mái mai1
mại mai5
màn man2
mản man3
mãn man4
mán man1
mạn man5
màng mang2
mảng mang3
mãng mang4
máng mang1
mạng mang5
mành manh2
mảnh manh3
mãnh manh4
mánh manh1
mạnh manh5
mào mao2
mão mao4
máo mao1
mạo mao5
mạp map5
mát mat1
mạt mat5
matê mate6
matrác matrac1
màu mau2
máu mau1
mày may2
mảy may3
máy may1
mạy may5
mă ma8
mắc mac81
mặc mac85
măk mak8
măm mam8
mắm mam81
măn man8
mằn man82
mẳn man83
mắn man81
mặn man85
măng mang8
mắng mang81
mặp map85
mắt mat81
mặt mat85
mâm mam6
mầm mam62
mẩm mam63
mẫm mam64
mấm mam61
mậm mam65
mân man6
mần man62
mẩn man63
mẫn man64
mấn man61
mận man65
mâng mang6
mầng mang62
mâp map6
mấp map61
mập map65
mất mat61
mật mat65
mâu mau6
mầu mau62
mẩu mau63
mẫu mau64
mấu mau61
mậu mau65
mây may6
mầy may62
mẩy may63
mấy may61
mè me2
mẻ me3
mẽ me4
mé me1
mẹ me5
méc mec1
mèm mem2
mém mem1
mèn men2
mén men1
mèng meng2
méng meng1
menú menu1
mèo meo2
mẻo meo3
mẽo meo4
méo meo1
mẹo meo5
mép mep1
mẹp mep5
mét met1
mẹt met5
mê me6
mề me62
mể me63
mễ me64
mế me61
mệ me65
mếch mech61
mêga mega6
mềm mem62
mễm mem64
mên men6
mền men62
mễn men64
mến men61
mênh menh6
mềnh menh62
mệnh menh65
mết met61
mệt met65
mêtan metan6
mểu meu63
mếu meu61
mì mi2
mỉ mi3
mĩ mi4
mí mi1
mị mi5
mỉa mia3
mĩa mia4
mía mia1
mích mich1
mịch mich5
miẻo mieo3
miên mien6
miền mien62
miễn mien64
miến mien61
miện mien65
miêng mieng6
miểng mieng63
miếng mieng61
miệng mieng65
miết miet61
miệt miet65
miêu mieu6
miều mieu62
miểu mieu63
miễu mieu64
miếu mieu61
mỉm mim3
mĩm mim4
mím mim1
mìn min2
mịn min5
míng ming1
mình minh2
mỉnh minh3
mính minh1
mịnh minh5
míp mip1
mít mit1
mịt mit5
mìu miu2
míu miu1
mlài mlai2
mlời mloi72
mluộm mluom65
mnhời mnhoi72
mní mni1
mò mo2
mỏ mo3
mõ mo4
mó mo1
mọ mo5
móc moc1
mọc moc5
mòi moi2
mỏi moi3
mõi moi4
mói moi1
mọi moi5
mòm mom2
mỏm mom3
mõm mom4
móm mom1
mòn mon2
món mon1
mọn mon5
moná mona1
mòng mong2
mỏng mong3
móng mong1
mọng mong5
móp mop1
mọp mop5
mót mot1
mọt mot5
mô mo6
mồ mo62
mổ mo63
mỗ mo64
mố mo61
mộ mo65
môc moc6
mốc moc61
mộc moc65
môi moi6
mồi moi62
mỗi moi64
mối moi61
mội moi65
mộl mol65
môm mom6
mồm mom62
mômen momen6
môn mon6
mồn mon62
mông mong6
mồng mong62
mổng mong63
mỗng mong64
mống mong61
mộng mong65
môt mot6
mốt mot61
một mot65
mơ mo7
mờ mo72
mở mo73
mỡ mo74
mớ mo71
mợ mo75
mơi moi7
mời moi72
mới moi71
mợi moi75
mơm mom7
mờm mom72
mớm mom71
mơn mon7
mởn mon73
mỡn mon74
mớn mon71
mớp mop71
mrơn mron7
mù mu2
mủ mu3
mũ mu4
mú mu1
mụ mu5
mùa mua2
múa mua1
múc muc1
mục muc5
mùi mui2
mủi mui3
mũi mui4
múi mui1
mụi mui5
mủm mum3
mũm mum4
múm mum1
mùn mun2
mủn mun3
mún mun1
mụn mun5
mùng mung2
mủng mung3
muôi muoi6
muồi muoi62
muỗi muoi64
muối muoi61
muội muoi65
muỗm muom64
muôn muon6
muốn muon61
muộn muon65
muông muong6
muồng muong62
muổng muong63
muỗng muong64
muống muong61
muốt muot61
múp mup1
mụp mup5
muséum museum1
mút mut1
mụt mut5
mư mu7
mự mu75
mưa mua7
mửa mua73
mứa mua71
mựa mua75
mức muc71
mực muc75
mứn mun71
mưng mung7
mừng mung72
mững mung74
mược muoc75
mươi muoi7
mười muoi72
mươn muon7
mướn muon71
mượn muon75
mương muong7
mường muong72
mướp muop71
mướt muot71
mượt muot75
mưỡu muou74
mứt mut71
mưu muu7
mứu muu71
mỳ my2
mỹ my4
mỵ my5
nà na2
nả na3
nã na4
ná na1
nạ na5
nác nac1
nạc nac5
nách nach1
nạch nach5
nài nai2
nải nai3
nãi nai4
nái nai1
nại nai5
nàm nam2
nảm nam3
nám nam1
nạm nam5
nàn nan2
nản nan3
nãn nan4
nán nan1
nạn nan5
nàng nang2
nãng nang4
náng nang1
nạng nang5
nành nanh2
nánh nanh1
nạnh nanh5
nào nao2
não nao4
náo nao1
nạo nao5
nạp nap5
nát nat1
nạt nat5
náu nau1
này nay2
nảy nay3
nãy nay4
náy nay1
nạy nay5
nắc nac81
nặc nac85
năm nam8
nằm nam82
nẳm nam83
nắm nam81
năn nan8
nằn nan82
nắn nan81
nặn nan85
năng nang8
nằng nang82
nẵng nang84
nắng nang81
nặng nang85
nắp nap81
nấc nac61
nâm nam6
nầm nam62
nẫm nam64
nấm nam61
nậm nam65
nân nan6
nần nan62
nẫn nan64
nấn nan61
nâng nang6
nẫng nang64
nấng nang61
nậng nang65
nấp nap61
nập nap65
nất nat61
nật nat65
nâu nau6
nẫu nau64
nấu nau61
nậu nau65
nây nay6
nầy nay62
nẩy nay63
nẫy nay64
nấy nay61
nậy nay65
nđm ndm9
nè ne2
nẻ ne3
né ne1
ném nem1
nén nen1
nẹn nen5
nèo neo2
nẻo neo3
nẽo neo4
néo neo1
nẹo neo5
nép nep1
nẹp nep5
nét net1
nẹt net5
nê ne6
nề ne62
nể ne63
nễ ne64
nệ ne65
nêm nem6
nếm nem61
nệm nem65
nên nen6
nền nen62
nến nen61
nện nen65
nếp nep61
nết net61
nêu neu6
nếu neu61
nếy ney61
ngà nga2
ngả nga3
ngã nga4
ngá nga1
ngạ nga5
ngác ngac1
ngạc ngac5
ngách ngach1
ngạch ngach5
ngài ngai2
ngải ngai3
ngãi ngai4
ngái ngai1
ngại ngai5
ngàm ngam2
ngám ngam1
ngàn ngan2
ngán ngan1
ngạn ngan5
ngàng ngang2
ngãng ngang4
ngáng ngang1
ngạng ngang5
ngành nganh2
ngảnh nganh3
ngánh nganh1
ngạnh nganh5
ngào ngao2
ngảo ngao3
ngão ngao4
ngáo ngao1
ngạo ngao5
ngáp ngap1
ngát ngat1
ngạt ngat5
ngàu ngau2
ngáu ngau1
ngày ngay2
ngáy ngay1
ngắc ngac81
ngăm ngam8
ngằm ngam82
ngắm ngam81
ngăn ngan8
ngằn ngan82
ngắn ngan81
ngẳng ngang83
ngẵng ngang84
ngặp ngap85
ngắt ngat81
ngặt ngat85
ngấc ngac61
ngâm ngam6
ngầm ngam62
ngẩm ngam63
ngẫm ngam64
ngấm ngam61
ngậm ngam65
ngân ngan6
ngần ngan62
ngẩn ngan63
ngẫn ngan64
ngấn ngan61
ngận ngan65
ngẩng ngang63
ngẫng ngang64
ngấp ngap61
ngập ngap65
ngất ngat61
ngật ngat65
ngâu ngau6
ngầu ngau62
ngẩu ngau63
ngẫu ngau64
ngấu ngau61
ngậu ngau65
ngây ngay6
ngầy ngay62
ngấy ngay61
ngậy ngay65
ngèo ngeo2
ngẹt nget5
ngệch ngech65
nghè nghe2
nghé nghe1
nghẹ nghe5
nghèn nghen2
nghẽn nghen4
nghén nghen1
nghẹn nghen5
nghèo ngheo2
nghẻo ngheo3
nghẽo ngheo4
nghéo ngheo1
nghẹo ngheo5
nghét nghet1
nghẹt nghet5
nghê nghe6
nghề nghe62
nghể nghe63
nghễ nghe64
nghế nghe61
nghệ nghe65
nghếch nghech61
nghệch nghech65
nghển nghen63
nghễn nghen64
nghến nghen61
nghện nghen65
nghênh nghenh6
nghểnh nghenh63
nghễnh nghenh64
nghệt nghet65
nghêu ngheu6
nghều ngheu62
nghểu ngheu63
nghễu ngheu64
nghệu ngheu65
nghì nghi2
nghỉ nghi3
nghĩ nghi4
nghí nghi1
nghị nghi5
nghĩa nghia4
nghía nghia1
nghích nghich1
nghịch nghich5
nghiêm nghiem6
nghiễm nghiem64
nghiệm nghiem65
nghiên nghien6
nghiền nghien62
nghiễn nghien64
nghiến nghien61
nghiện nghien65
nghiêng nghieng6
nghiênh nghienh6
nghiệp nghiep65
nghiệt nghiet65
nghiêu nghieu6
nghìm nghim2
nghỉm nghim3
nghìn nghin2
nghỉn nghin3
nghỉnh nghinh3
nghĩnh nghinh4
nghít nghit1
nghịt nghit5
nghỉu nghiu3
nghịu nghiu5
nghoèo nghoeo2
nghồng nghong62
ngích ngich1
ngịu ngiu5
ngò ngo2
ngỏ ngo3
ngõ ngo4
ngó ngo1
ngọ ngo5
ngoác ngoac1
ngoạc ngoac5
ngoách ngoach1
ngoạch ngoach5
ngoài ngoai2
ngoải ngoai3
ngoái ngoai1
ngoại ngoai5
ngoàm ngoam2
ngoảm ngoam3
ngoạm ngoam5
ngoãn ngoan4
ngoạn ngoan5
ngoảng ngoang3
ngoảnh ngoanh3
ngoãnh ngoanh4
ngoáo ngoao1
ngoáp ngoap1
ngoạt ngoat5
ngoảy ngoay3
ngoáy ngoay1
ngoạy ngoay5
ngoắc ngoac81
ngoặc ngoac85
ngoằn ngoan82
ngoẳn ngoan83
ngoằng ngoang82
ngoẵng ngoang84
ngoắng ngoang81
ngoắt ngoat81
ngoặt ngoat85
ngóc ngoc1
ngọc ngoc5
ngoẻm ngoem3
ngoém ngoem1
ngoẻn ngoen3
ngoèo ngoeo2
ngoẻo ngoeo3
ngoéo ngoeo1
ngoẹo ngoeo5
ngoét ngoet1
ngòi ngoi2
ngõi ngoi4
ngói ngoi1
ngòm ngom2
ngỏm ngom3
ngóm ngom1
ngọm ngom5
ngòn ngon2
ngỏn ngon3
ngón ngon1
ngọn ngon5
ngòng ngong2
ngỏng ngong3
ngõng ngong4
ngóng ngong1
ngọng ngong5
ngóp ngop1
ngót ngot1
ngọt ngot5
ngô ngo6
ngồ ngo62
ngổ ngo63
ngỗ ngo64
ngố ngo61
ngộ ngo65
ngốc ngoc61
ngộc ngoc65
ngôi ngoi6
ngồi ngoi62
ngỗi ngoi64
ngội ngoi65
ngôm ngom6
ngồm ngom62
ngổm ngom63
ngôn ngon6
ngồn ngon62
ngổn ngon63
ngốn ngon61
ngộn ngon65
ngông ngong6
ngồng ngong62
ngổng ngong63
ngỗng ngong64
ngộp ngop65
ngốt ngot61
ngột ngot65
ngơ ngo7
ngờ ngo72
ngỡ ngo74
ngớ ngo71
ngợ ngo75
ngơi ngoi7
ngời ngoi72
ngợi ngoi75
ngơm ngom7
ngờm ngom72
ngỡm ngom74
ngợm ngom75
ngơn ngon7
ngớn ngon71
ngớp ngop71
ngợp ngop75
ngớt ngot71
ngù ngu2
ngủ ngu3
ngũ ngu4
ngú ngu1
ngụ ngu5
ngụa ngua5
nguây nguay6
nguầy nguay62
nguẩy nguay63
nguấy nguay61
nguậy nguay65
ngúc nguc1
ngục nguc5
nguếch nguech61
nguệch nguech65
ngùi ngui2
ngủi ngui3
ngũi ngui4
ngủm ngum3
ngụm ngum5
ngùn ngun2
ngủn ngun3
ngùng ngung2
ngủng ngung3
ngúng ngung1
nguôi nguoi6
nguồi nguoi62
nguội nguoi65
nguồn nguon62
nguơ nguo7
ngụp ngup5
ngút ngut1
ngụt ngut5
nguyên nguyen6
nguyền nguyen62
nguyễn nguyen64
nguyện nguyen65
nguyệt nguyet65
nguýt nguyt1
nguỷu nguyu3
ngư ngu7
ngừ ngu72
ngữ ngu74
ngứ ngu71
ngự ngu75
ngưa ngua7
ngừa ngua72
ngửa ngua73
ngữa ngua74
ngứa ngua71
ngựa ngua75
ngực nguc75
ngửi ngui73
ngưng ngung7
ngừng ngung72
ngửng ngung73
ngứng ngung71
ngước nguoc71
ngược nguoc75
ngươi nguoi7
người nguoi72
ngưởi nguoi73
ngươn nguon7
ngường nguong72
ngưởng nguong73
ngưỡng nguong74
ngượng nguong75
ngưt ngut7
ngứt ngut71
ngưu nguu7
nhà nha2
nhả nha3
nhã nha4
nhá nha1
nhạ nha5
nhác nhac1
nhạc nhac5
nhách nhach1
nhài nhai2
nhải nhai3
nhãi nhai4
nhái nhai1
nhại nhai5
nhàm nham2
nhảm nham3
nhám nham1
nhàn nhan2
nhản nhan3
nhãn nhan4
nhạn nhan5
nhàng nhang2
nhãng nhang4
nháng nhang1
nhạng nhang5
nhành nhanh2
nhảnh nhanh3
nhánh nhanh1
nhạnh nhanh5
nhào nhao2
nhão nhao4
nháo nhao1
nhạo nhao5
nháp nhap1
nhạp nhap5
nhát nhat1
nhạt nhat5
nhàu nhau2
nhảu nhau3
nháu nhau1
nhạu nhau5
nhày nhay2
nhảy nhay3
nháy nhay1
nhạy nhay5
nhắc nhac81
nhăm nham8
nhằm nham82
nhắm nham81
nhặm nham85
nhăn nhan8
nhằn nhan82
nhẳn nhan83
nhẵn nhan84
nhắn nhan81
nhặn nhan85
nhăng nhang8
nhằng nhang82
nhẳng nhang83
nhẵng nhang84
nhắng nhang81
nhặng nhang85
nhắp nhap81
nhắt nhat81
nhặt nhat85
nhấc nhac61
nhâm nham6
nhầm nham62
nhẩm nham63
nhẫm nham64
nhấm nham61
nhậm nham65
nhân nhan6
nhần nhan62
nhẩn nhan63
nhẫn nhan64
nhấn nhan61
nhận nhan65
nhâng nhang6
nhấp nhap61
nhập nhap65
nhất nhat61
nhật nhat65
nhâu nhau6
nhầu nhau62
nhẩu nhau63
nhậu nhau65
nhây nhay6
nhầy nhay62
nhẩy nhay63
nhẫy nhay64
nhấy nhay61
nhậy nhay65
nhđm nhdm9
nhè nhe2
nhẻ nhe3
nhẽ nhe4
nhé nhe1
nhẹ nhe5
nhèm nhem2
nhẻm nhem3
nhém nhem1
nhẹm nhem5
nhèn nhen2
nhén nhen1
nhẹn nhen5
nhèo nheo2
nhẻo nheo3
nhẽo nheo4
nhéo nheo1
nhẹo nheo5
nhép nhep1
nhẹp nhep5
nhét nhet1
nhẹt nhet5
nhê nhe6
nhể nhe63
nhễ nhe64
nhếch nhech61
nhệch nhech65
nhện nhen65
nhênh nhenh6
nhểu nheu63
nhếu nheu61
nhệu nheu65
nhì nhi2
nhỉ nhi3
nhĩ nhi4
nhí nhi1
nhị nhi5
nhía nhia1
nhích nhich1
nhiếc nhiec61
nhiêm nhiem6
nhiễm nhiem64
nhiệm nhiem65
nhiên nhien6
nhiễn nhien64
nhiếp nhiep61
nhiệp nhiep65
nhiêt nhiet6
nhiết nhiet61
nhiệt nhiet65
nhiêu nhieu6
nhiều nhieu62
nhiểu nhieu63
nhiễu nhieu64
nhiếu nhieu61
nhím nhim1
nhìn nhin2
nhín nhin1
nhịn nhin5
nhỉnh nhinh3
nhíp nhip1
nhịp nhip5
nhít nhit1
nhịt nhit5
nhìu nhiu2
nhíu nhiu1
nhịu nhiu5
nhò nho2
nhỏ nho3
nhõ nho4
nhó nho1
nhọ nho5
nhoài nhoai2
nhoái nhoai1
nhoàm nhoam2
nhoạm nhoam5
nhoáng nhoang1
nhoạng nhoang5
nhoáy nhoay1
nhoằng nhoang82
nhóc nhoc1
nhọc nhoc5
nhoèn nhoen2
nhoẻn nhoen3
nhoét nhoet1
nhoẹt nhoet5
nhõi nhoi4
nhói nhoi1
nhọi nhoi5
nhòm nhom2
nhỏm nhom3
nhõm nhom4
nhóm nhom1
nhòn nhon2
nhỏn nhon3
nhõn nhon4
nhón nhon1
nhọn nhon5
nhòng nhong2
nhỏng nhong3
nhõng nhong4
nhóng nhong1
nhóp nhop1
nhọp nhop5
nhót nhot1
nhọt nhot5
nhô nho6
nhổ nho63
nhỗ nho64
nhố nho61
nhốc nhoc61
nhôi nhoi6
nhồi nhoi62
nhối nhoi61
nhội nhoi65
nhôm nhom6
nhồm nhom62
nhổm nhom63
nhôn nhon6
nhồn nhon62
nhổn nhon63
nhốn nhon61
nhộn nhon65
nhông nhong6
nhồng nhong62
nhộng nhong65
nhốt nhot61
nhột nhot65
nhơ nho7
nhờ nho72
nhở nho73
nhỡ nho74
nhớ nho71
nhợ nho75
nhơi nhoi7
nhời nhoi72
nhởi nhoi73
nhơm nhom7
nhởm nhom73
nhớm nhom71
nhơn nhon7
nhờn nhon72
nhởn nhon73
nhỡn nhon74
nhớn nhon71
nhợn nhon75
nhớp nhop71
nhớt nhot71
nhợt nhot75
nhtư nhtu7
nhù nhu2
nhủ nhu3
nhũ nhu4
nhú nhu1
nhụ nhu5
nhúa nhua1
nhụa nhua5
nhuân nhuan6
nhuần nhuan62
nhuận nhuan65
nhúc nhuc1
nhục nhuc5
nhuế nhue61
nhuệ nhue65
nhùi nhui2
nhủi nhui3
nhúi nhui1
nhụi nhui5
nhúm nhum1
nhùn nhun2
nhủn nhun3
nhũn nhun4
nhún nhun1
nhùng nhung2
nhủng nhung3
nhũng nhung4
nhúng nhung1
nhụng nhung5
nhuốc nhuoc61
nhuôm nhuom6
nhuốm nhuom61
nhuộm nhuom65
nhuồn nhuon62
nhút nhut1
nhụt nhut5
nhuyên nhuyen6
nhuyễn nhuyen64
như nhu7
nhừ nhu72
nhử nhu73
nhữ nhu74
nhứ nhu71
nhự nhu75
nhừa nhua72
nhựa nhua75
nhức nhuc71
nhưng nhung7
nhửng nhung73
những nhung74
nhứng nhung71
nhựng nhung75
nhược nhuoc75
nhương nhuong7
nhường nhuong72
nhưỡng nhuong74
nhướng nhuong71
nhượng nhuong75
nhứt nhut71
nhựt nhut75
nhữu nhuu74
nhựu nhuu75
nì ni2
nỉ ni3
ní ni1
nị ni5
nỉa nia3
nĩa nia4
ních nich1
nịch nich5
niêm niem6
niềm niem62
niệm niem65
niên nien6
niền nien62
niển nien63
niễn nien64
niến nien61
niện nien65
niềng nieng62
niễng nieng64
niếp niep61
niệp niep65
niết niet61
niệt niet65
niêu nieu6
niểu nieu63
niễu nieu64
niếu nieu61
niệu nieu65
ním nim1
nín nin1
nình ninh2
nính ninh1
nịnh ninh5
níp nip1
nít nit1
nịt nit5
níu niu1
nịu niu5
niutơn niuton7
nò no2
nỏ no3
nõ no4
nó no1
nọ no5
noản noan3
noãn noan4
nóc noc1
nọc noc5
nòi noi2
nỏi noi3
nói noi1
nọi noi5
nòm nom2
nỏm nom3
nỏn non3
nõn non4
nón non1
nọn non5
nòng nong2
nóng nong1
nọng nong5
nóp nop1
nót not1
nọt not5
nô no6
nồ no62
nổ no63
nỗ no64
nố no61
nộ no65
nôben noben6
nốc noc61
nôi noi6
nồi noi62
nổi noi63
nỗi noi64
nối noi61
nội noi65
nôm nom6
nồm nom62
nộm nom65
nôn non6
nồn non62
nộn non65
nông nong6
nồng nong62
nỗng nong64
nống nong61
nốp nop61
nộp nop65
nốt not61
nột not65
nơ no7
nờ no72
nở no73
nỡ no74
nớ no71
nợ no75
nơi noi7
nới noi71
nơm nom7
nờm nom72
nỡm nom74
nớp nop71
nợp nop75
nớt not71
nơtron notron7
nũ nu4
nú nu1
nụ nu5
nủa nua3
nũa nua4
núa nua1
núc nuc1
nục nuc5
núcleo nucleo1
nùi nui2
nũi nui4
núi nui1
nụi nui5
núm num1
nùn nun2
nùng nung2
nủng nung3
nũng nung4
núng nung1
nuốc nuoc61
nuộc nuoc65
nuôi nuoi6
nuối nuoi61
nuốm nuom61
nuông nuong6
nuốt nuot61
nuột nuot65
núp nup1
nút nut1
nư nu7
nử nu73
nữ nu74
nứ nu71
nự nu75
nưa nua7
nửa nua73
nữa nua74
nứa nua71
nức nuc71
nực nuc75
nưng nung7
nừng nung72
nứng nung71
nựng nung75
nước nuoc71
nược nuoc75
nườm nuom72
nương nuong7
nường nuong72
nướng nuong71
nượp nuop75
nướu nuou71
nứt nut71
nưu nuu7
nữu nuu74
nứu nuu71
nựu nuu75
ò o2
ỏ o3
õ o4
ó o1
ọ o5
oác oac1
oạc oac5
oách oach1
oạch oach5
oải oai3
oái oai1
oại oai5
oàm oam2
oản oan3
oán oan1
oàng oang2
oảng oang3
oành oanh2
oánh oanh1
oạp oap5
oát oat1
oạt oat5
oắc oac81
oăm oam8
oằn oan82
oẳn oan83
oăng oang8
oẳng oang83
oắt oat81
oặt oat85
óc oc1
ọc oc5
òi oi2
ỏi oi3
õi oi4
ói oi1
ọi oi5
olá ola1
òm om2
ỏm om3
õm om4
óm om1
ọm om5
òn on2
ỏn on3
õn on4
ón on1
ọn on5
òng ong2
ỏng ong3
õng ong4
óng ong1
ọng ong5
óp op1
ọp op5
ót ot1
ọt ot5
ô o6
ồ o62
ổ o63
ỗ o64
ố o61
ộ o65
ôb ob6
ôben oben6
ôc oc6
ốc oc61
ộc oc65
ôca oca6
ôgam ogam6
ôhai ohai6
ôi oi6
ồi oi62
ổi oi63
ỗi oi64
ối oi61
ội oi65
ôin oin6
ộl ol65
ôla ola6
ôliu oliu6
ôm om6
ồm om62
ổm om63
ỗm om64
ốm om61
ộm om65
ômet omet6
ômi omi6
ôn on6
ồn on62
ổn on63
ỗn on64
ốn on61
ộn on65
ône one6
ông ong6
ồng ong62
ổng ong63
ỗng ong64
ống ong61
ộng ong65
ốp op61
ộp op65
ôt ot6
ốt ot61
ột ot65
ôtel otel6
ơ o7
ờ o72
ở o73
ỡ o74
ớ o71
ợ o75
ơc oc7
ờc oc72
ớc oc71
ợc oc75
ơi oi7
ời oi72
ởi oi73
ỡi oi74
ới oi71
ợi oi75
ờl ol72
ơm om7
ờm om72
ởm om73
ỡm om74
ớm om71
ợm om75
ơme ome7
ơmi omi7
ơn on7
ờn on72
ởn on73
ỡn on74
ớn on71
ợn on75
ơng ong7
ờng ong72
ởng ong73
ỡng ong74
ớng ong71
ợng ong75
ơngen ongen7
ớp op71
ợp op75
ơt ot7
ớt ot71
ợt ot75
ơu ou7
ờu ou72
ỡu ou74
ớu ou71
ợu ou75
pà pa2
pả pa3
pạ pa5
pác pac1
pạc pac5
pảh pah3
pài pai2
palăng palang8
pán pan1
pàng pang2
panô pano6
pào pao2
páo pao1
páp pap1
pát pat1
pắc pac81
păh pah8
pằn pan82
păng pang8
pấc pac61
pâu pau6
pẻ pe3
péc pec1
pẻng peng3
péo peo1
pê pe6
phà pha2
phả pha3
phá pha1
phạ pha5
phác phac1
phạc phac5
phách phach1
phạch phach5
phài phai2
phải phai3
phái phai1
phàm pham2
phạm pham5
phàn phan2
phản phan3
phãn phan4
phán phan1
phạn phan5
phàng phang2
phảng phang3
phạng phang5
phành phanh2
phảnh phanh3
phạnh phanh5
phào phao2
phảo phao3
pháo phao1
phaolô phaolo6
pháp phap1
phạp phap5
phát phat1
phạt phat5
phảy phay3
pháy phay1
phắc phac81
phăm pham8
phăn phan8
phắn phan81
phăng phang8
phẳng phang83
phặng phang85
phắp phap81
phặp phap85
phắt phat81
phâm pham6
phầm pham62
phẩm pham63
phân phan6
phần phan62
phẩn phan63
phẫn phan64
phấn phan61
phận phan65
phấp phap61
phập phap65
phất phat61
phật phat65
phầu phau62
phẩu phau63
phẫu phau64
phấu phau61
phây phay6
phẩy phay63
phè phe2
phé phe1
phéc phec1
phẹc phec5
phèn phen2
phèng pheng2
phéng pheng1
phèo pheo2
phép phep1
phét phet1
phẹt phet5
phê phe6
phề phe62
phế phe61
phệ phe65
phếch phech61
phệch phech65
phên phen6
phễn phen64
phện phen65
phềnh phenh62
phễnh phenh64
phệnh phenh65
phết phet61
phệt phet65
phều pheu62
phễu pheu64
phếu pheu61
phì phi2
phỉ phi3
phí phi1
phị phi5
phìa phia2
phía phia1
phịa phia5
phích phich1
phịch phich5
phiêm phiem6
phiếm phiem61
phiên phien6
phiền phien62
phiến phien61
phiện phien65
phiêng phieng6
phiết phiet61
phiệt phiet65
phiêu phieu6
phiểu phieu63
phiếu phieu61
phiệu phieu65
phím phim1
phìn phin2
phình phinh2
phỉnh phinh3
phĩnh phinh4
phính phinh1
phịt phit5
phịu phiu5
phlạo phlao5
phlắc phlac81
phò pho2
phó pho1
phóc phoc1
phọc phoc5
phòi phoi2
phón phon1
phòng phong2
phỏng phong3
phóng phong1
phọng phong5
phót phot1
phọt phot5
phô pho6
phồ pho62
phổ pho63
phố pho61
phốc phoc61
phộc phoc65
phôi phoi6
phổi phoi63
phối phoi61
phôm phom6
phồm phom62
phôn phon6
phồn phon62
phông phong6
phồng phong62
phổng phong63
phỗng phong64
phộng phong65
phốp phop61
phốt phot61
phơ pho7
phờ pho72
phở pho73
phớ pho71
phơi phoi7
phời phoi72
phới phoi71
phơn phon7
phởn phon73
phỡn phon74
phớn phon71
phớt phot71
phrăng phrang8
phù phu2
phủ phu3
phũ phu4
phú phu1
phụ phu5
phúc phuc1
phục phuc5
phủi phui3
phùn phun2
phún phun1
phùng phung2
phủng phung3
phúng phung1
phụng phung5
phúp phup1
phụp phup5
phút phut1
phụt phut5
phư phu7
phứa phua71
phựa phua75
phức phuc71
phưng phung7
phừng phung72
phước phuoc71
phưỡn phuon74
phướn phuon71
phương phuong7
phường phuong72
phướng phuong71
phượng phuong75
phượt phuot75
phượu phuou75
phứt phut71
phựt phut75
phữu phuu74
phựu phuu75
phvđ phvd9
pí pi1
pianô piano6
pích pich1
pín pin1
píp pip1
pisát pisat1
pít pit1
plây play6
plông plong6
plơi ploi7
pó po1
pótay potay1
pô po6
pôc poc6
pôn pon6
pông pong6
pốp pop61
pốt pot61
pơ po7
pờ po72
pơng pong7
prâng prang6
prô pro6
prông prong6
pù pu2
pú pu1
pụa pua5
púc puc1
puộc puoc65
pút put1
pư pu7
pươi puoi7
qì qi2
quà qua2
quả qua3
quã qua4
quá qua1
quạ qua5
quác quac1
quạc quac5
quách quach1
quạch quach5
quài quai2
quải quai3
quái quai1
quại quai5
quàn quan2
quản quan3
quán quan1
quàng quang2
quảng quang3
quãng quang4
quáng quang1
quạng quang5
quành quanh2
quảnh quanh3
quánh quanh1
quạnh quanh5
quào quao2
quáo quao1
quát quat1
quạt quat5
quàu quau2
quảu quau3
quáu quau1
quạu quau5
quày quay2
quảy quay3
quáy quay1
quạy quay5
quắc quac81
quặc quac85
quăm quam8
quằm quam82
quẳm quam83
quắm quam81
quặm quam85
quăn quan8
quằn quan82
quẳn quan83
quắn quan81
quặn quan85
quăng quang8
quằng quang82
quẳng quang83
quẵng quang84
quặng quang85
quắp quap81
quặp quap85
quắt quat81
quặt quat85
quấc quac61
quân quan6
quần quan62
quẩn quan63
quẫn quan64
quấn quan61
quận quan65
quâng quang6
quầng quang62
quẩng quang63
quẫng quang64
quất quat61
quật quat65
quây quay6
quầy quay62
quẩy quay63
quẫy quay64
quấy quay61
quậy quay65
què que2
quẻ que3
quẽ que4
qué que1
quèn quen2
quén quen1
quẹn quen5
quèo queo2
quéo queo1
quẹo queo5
quẹp quep5
quét quet1
quẹt quet5
quê que6
quế que61
quệ que65
quệch quech65
quên quen6
quện quen65
quềnh quenh62
quệnh quenh65
quết quet61
quệt quet65
quều queu62
quếu queu61
quì qui2
quỉ qui3
quĩ qui4
quí qui1
quị qui5
quình quinh2
quít quit1
quịt quit5
quíu quiu1
quọ quo5
quoàng quoang2
quoạng quoang5
quoắt quoat81
quốc quoc61
quơ quo7
quờ quo72
quở quo73
quớ quo71
quới quoi71
quờn quon72
quởn quon73
quởng quong73
quớt quot71
quỳ quy2
quỷ quy3
quỹ quy4
quý quy1
quỵ quy5
quých quych1
quyên quyen6
quyền quyen62
quyển quyen63
quyến quyen61
quyện quyen65
quyết quyet61
quyệt quyet65
quỳng quyng2
quỳnh quynh2
quỷnh quynh3
quýnh quynh1
quýt quyt1
quỵt quyt5
rà ra2
rả ra3
rã ra4
rá ra1
rạ ra5
rác rac1
rạc rac5
rách rach1
rạch rach5
rađi radi9
rađio radio9
raglây raglay6
rài rai2
rải rai3
rãi rai4
rái rai1
rại rai5
ràm ram2
rám ram1
rạm ram5
ràn ran2
rán ran1
rạn ran5
ràng rang2
rảng rang3
ráng rang1
rạng rang5
rành ranh2
rảnh ranh3
rãnh ranh4
rạnh ranh5
ráno rano1
rào rao2
rảo rao3
rão rao4
ráo rao1
rạo rao5
ráp rap1
rạp rap5
rápida rapida1
rápido rapido1
rát rat1
rạt rat5
ràu rau2
rảu rau3
ráu rau1
rày ray2
rảy ray3
rãy ray4
ráy ray1
rạy ray5
rắc rac81
rặc rac85
răm ram8
rằm ram82
rắm ram81
rặm ram85
răn ran8
rằn ran82
rắn ran81
rặn ran85
răng rang8
rằng rang82
rặng rang85
rắp rap81
rắt rat81
rặt rat85
râm ram6
rầm ram62
rẩm ram63
rẫm ram64
rấm ram61
rậm ram65
rân ran6
rần ran62
rẫn ran64
rấn ran61
rận ran65
râng rang6
rậng rang65
rấp rap61
rập rap65
rất rat61
rật rat65
râu rau6
rầu rau62
rẫu rau64
rậu rau65
rây ray6
rầy ray62
rẩy ray63
rẫy ray64
rcăm rcam8
rè re2
rẻ re3
rẽ re4
ré re1
rẹc rec5
rèm rem2
rèn ren2
rén ren1
rẻng reng3
rèo reo2
rẻo reo3
réo reo1
rẹo reo5
rép rep1
rẹp rep5
rét ret1
rẹt ret5
rê re6
rề re62
rể re63
rễ re64
rế re61
rệ re65
rếch rech61
rệch rech65
rêm rem6
rên ren6
rền ren62
rến ren61
rện ren65
rềnh renh62
rểnh renh63
rếp rep61
rệp rep65
rết ret61
rệt ret65
rêu reu6
rều reu62
rểu reu63
rệu reu65
rì ri2
rỉ ri3
rĩ ri4
rí ri1
rị ri5
rìa ria2
rỉa ria3
rịa ria5
ríc ric1
rích rich1
rịch rich5
riếc riec61
riềm riem62
riêng rieng6
riềng rieng62
riếp riep61
riết riet61
riệt riet65
riêu rieu6
riếu rieu61
rím rim1
rĩn rin4
rịn rin5
rình rinh2
rỉnh rinh3
rĩnh rinh4
rịp rip5
rít rit1
rịt rit5
rítra ritra1
rìu riu2
ríu riu1
rivê rive6
rlâm rlam6
rò ro2
rỏ ro3
rõ ro4
ró ro1
rọ ro5
roàng roang2
róc roc1
rọc roc5
ròi roi2
rỏi roi3
rõi roi4
rói roi1
rọi roi5
ròm rom2
rỏm rom3
róm rom1
rọm rom5
ròn ron2
rỏn ron3
rón ron1
rọn ron5
ròng rong2
rỏng rong3
róng rong1
rọng rong5
rót rot1
rọt rot5
rô ro6
rồ ro62
rổ ro63
rỗ ro64
rố ro61
rộ ro65
rốc roc61
rộc roc65
rồi roi62
rổi roi63
rỗi roi64
rối roi61
rội roi65
rôm rom6
rồm rom62
rộm rom65
rôma roma6
rôn ron6
rổn ron63
rốn ron61
rộn ron65
rông rong6
rồng rong62
rổng rong63
rỗng rong64
rống rong61
rộng rong65
rốp rop61
rộp rop65
rốt rot61
rơ ro7
rờ ro72
rở ro73
rỡ ro74
rớ ro71
rợ ro75
rơi roi7
rời roi72
rợi roi75
rơm rom7
rờm rom72
rởm rom73
rớm rom71
rợm rom75
rơn ron7
rờn ron72
rởn ron73
rỡn ron74
rớn ron71
rợn ron75
rơngen rongen7
rớp rop71
rợp rop75
rớt rot71
rợt rot75
rù ru2
rủ ru3
rũ ru4
rú ru1
rùa rua2
rủa rua3
rũa rua4
rụa rua5
rúc ruc1
rục ruc5
ruê rue6
rùi rui2
rủi rui3
rũi rui4
rúi rui1
rụi rui5
rùm rum2
rúm rum1
rùn run2
rủn run3
rún run1
rùng rung2
rủng rung3
rúng rung1
rụng rung5
ruốc ruoc61
ruồi ruoi62
ruổi ruoi63
ruỗi ruoi64
ruối ruoi61
ruộm ruom65
ruồng ruong62
ruỗng ruong64
ruộng ruong65
ruột ruot65
rúp rup1
rút rut1
rụt rut5
rư ru7
rừ ru72
rứ ru71
rưa rua7
rừa rua72
rửa rua73
rữa rua74
rứa rua71
rựa rua75
rức ruc71
rực ruc75
rưng rung7
rừng rung72
rửng rung73
rước ruoc71
rươi ruoi7
rười ruoi72
rưởi ruoi73
rưỡi ruoi74
rưới ruoi71
rượi ruoi75
rươm ruom7
rườm ruom72
rướm ruom71
rườn ruon72
rướn ruon71
rượn ruon75
rương ruong7
rường ruong72
rượt ruot75
rượu ruou75
rứt rut71
rựt rut75
rỵn ryn5
sà sa2
sả sa3
sã sa4
sá sa1
sạ sa5
sác sac1
sạc sac5
sách sach1
sạch sach5
sài sai2
sải sai3
sãi sai4
sái sai1
sại sai5
saigón saigon1
sakê sake6
salát salat1
salâm salam6
sàm sam2
sảm sam3
sám sam1
sạm sam5
sàn san2
sản san3
sán san1
sạn san5
sàng sang2
sảng sang3
sáng sang1
sành sanh2
sảnh sanh3
sánh sanh1
sào sao2
sảo sao3
são sao4
sáo sao1
sạo sao5
sáp sap1
sạp sap5
sát sat1
sạt sat5
sáu sau1
sảy say3
sãy say4
sắc sac81
sặc sac85
săm sam8
sắm sam81
sặm sam85
săn san8
sằn san82
sẳn san83
sẵn san84
sắn san81
săng sang8
sằng sang82
sẵng sang84
sắng sang81
sắp sap81
sặp sap85
săt sat8
sắt sat81
sặt sat85
sắu sau81
sâm sam6
sầm sam62
sẩm sam63
sẫm sam64
sấm sam61
sậm sam65
sân san6
sần san62
sẩn san63
sẫn san64
sấn san61
sận san65
sâng sang6
sấp sap61
sập sap65
sất sat61
sật sat65
sâu sau6
sầu sau62
sẩu sau63
sấu sau61
sậu sau65
sây say6
sầy say62
sẩy say63
sấy say61
sậy say65
sè se2
sẻ se3
sẽ se4
sé se1
sẹ se5
séc sec1
sém sem1
sẹm sem5
sèn sen2
sẻn sen3
sẻng seng3
sèo seo2
sẹo seo5
sét set1
sẹt set5
sê se6
sề se62
sể se63
sễ se64
sế se61
sệ se65
sếch sech61
sệch sech65
sên sen6
sền sen62
sến sen61
sênh senh6
sềnh senh62
sểnh senh63
sếp sep61
sệp sep65
sết set61
sệt set65
sêu seu6
sếu seu61
sgần sgan62
sì si2
sỉ si3
sĩ si4
sí si1
sị si5
sỉa sia3
sịa sia5
sích sich1
sịch sich5
sidét sidet1
siđa sida9
siêm siem6
siểm siem63
siên sien6
siển sien63
siễn sien64
siêng sieng6
siểng sieng63
siếp siep61
siệp siep65
siết siet61
siêu sieu6
siếu sieu61
sìn sin2
sỉn sin3
sín sin1
síne sine1
sình sinh2
sỉnh sinh3
sính sinh1
sịp sip5
sít sit1
sịt sit5
slìn slin2
sò so2
sỏ so3
só so1
sọ so5
soạc soac5
soài soai2
soải soai3
soái soai1
soại soai5
soàn soan2
soán soan1
soạn soan5
soảng soang3
soạng soang5
soát soat1
soạt soat5
sóc soc1
sọc soc5
sòi soi2
sỏi soi3
sõi soi4
sói soi1
sòm som2
sóm som1
sọm som5
sòn son2
sỏn son3
són son1
sòng song2
sõng song4
sóng song1
sót sot1
sọt sot5
sô so6
sồ so62
sổ so63
sỗ so64
số so61
sộ so65
sôc soc6
sốc soc61
sộc soc65
sôi soi6
sồi soi62
sổi soi63
sồm som62
sôn son6
sồn son62
sông song6
sồng song62
sổng song63
sống song61
sốp sop61
sộp sop65
sốt sot61
sột sot65
sôvanh sovanh6
sơ so7
sờ so72
sở so73
sỡ so74
sớ so71
sợ so75
sởi soi73
sỡi soi74
sới soi71
sợi soi75
sơm som7
sờm som72
sớm som71
sơmi somi7
sơn son7
sờn son72
sởn son73
sớn son71
sớt sot71
sró sro1
sù su2
sủ su3
sũ su4
sú su1
sụ su5
sủa sua3
sụa sua5
suân suan6
suất suat61
súc suc1
sục suc5
suê sue6
sùi sui2
sủi sui3
sùm sum2
sụm sum5
sún sun1
sụn sun5
sùng sung2
sủng sung3
sũng sung4
súng sung1
sụng sung5
suôi suoi6
suối suoi61
suôn suon6
suông suong6
suồng suong62
suống suong61
suốt suot61
súp sup1
sụp sup5
sút sut1
sụt sut5
sủy suy3
súy suy1
suyền suyen62
suyển suyen63
suyễn suyen64
suyến suyen61
suýt suyt1
suỵt suyt5
sư su7
sừ su72
sử su73
sữ su74
sứ su71
sự su75
sưa sua7
sửa sua73
sữa sua74
sứa sua71
sức suc71
sực suc75
sửi sui73
sừn sun72
sưng sung7
sừng sung72
sửng sung73
sững sung74
sựng sung75
sưởi suoi73
sườn suon72
sương suong7
sường suong72
sướng suong71
sượng suong75
sướt suot71
sượt suot75
sứt sut71
sựt sut75
sưu suu7
sửu suu73
sứu suu71
sỹ sy4
sý sy1
tà ta2
tả ta3
tã ta4
tá ta1
tạ ta5
tác tac1
tạc tac5
tách tach1
tạch tach5
tài tai2
tải tai3
tãi tai4
tái tai1
tại tai5
tàm tam2
tảm tam3
tám tam1
tạm tam5
tàn tan2
tản tan3
tán tan1
tạn tan5
tàng tang2
tảng tang3
táng tang1
tạng tang5
tành tanh2
tảnh tanh3
tánh tanh1
tạnh tanh5
tào tao2
tảo tao3
táo tao1
tạo tao5
táp tap1
tạp tap5
tát tat1
tạt tat5
tàu tau2
táu tau1
tày tay2
tảy tay3
táy tay1
tạy tay5
tắc tac81
tặc tac85
tăk tak8
tăm tam8
tằm tam82
tắm tam81
tăn tan8
tằn tan82
tẳn tan83
tắn tan81
tặn tan85
tăng tang8
tằng tang82
tắng tang81
tặng tang85
tắp tap81
tắt tat81
tấc tac61
tâm tam6
tầm tam62
tẩm tam63
tấm tam61
tân tan6
tần tan62
tẩn tan63
tẫn tan64
tấn tan61
tận tan65
tâng tang6
tầng tang62
tấp tap61
tập tap65
tất tat61
tật tat65
tâu tau6
tầu tau62
tẩu tau63
tấu tau61
tậu tau65
tây tay6
tầy tay62
tẩy tay63
tấy tay61
tbuăn tbuan8
tè te2
tẻ te3
tẽ te4
té te1
téc tec1
tẻh teh3
tèm tem2
tẻm tem3
tém tem1
tèn ten2
tẽn ten4
tén ten1
tèo teo2
tẻo teo3
téo teo1
tẹo teo5
tép tep1
tẹp tep5
tét tet1
tẹt tet5
tê te6
tề te62
tể te63
tễ te64
tế te61
tệ te65
tếch tech61
têm tem6
tên ten6
tênh tenh6
tềnh tenh62
tểnh tenh63
tễnh tenh64
tệp tep65
têt tet6
tết tet61
tête tete6
têu teu6
tếu teu61
thà tha2
thả tha3
thá tha1
thác thac1
thạc thac5
thách thach1
thạch thach5
thài thai2
thải thai3
thãi thai4
thái thai1
thại thai5
thàm tham2
thảm tham3
thám tham1
thản than3
thán than1
thàng thang2
thảng thang3
thãng thang4
tháng thang1
thành thanh2
thảnh thanh3
thánh thanh1
thạnh thanh5
thào thao2
thảo thao3
tháo thao1
thạo thao5
tháp thap1
thạp thap5
thát that1
thạt that5
tháu thau1
thày thay2
thảy thay3
tháy thay1
thắc thac81
thặc thac85
thăm tham8
thẳm tham83
thắm tham81
thăn than8
thằn than82
thắn than81
thăng thang8
thằng thang82
thẳng thang83
thắng thang81
thặng thang85
thắp thap81
thắt that81
thâm tham6
thầm tham62
thẩm tham63
thẫm tham64
thấm tham61
thậm tham65
thân than6
thần than62
thẩn than63
thẫn than64
thấn than61
thận than65
thấp thap61
thập thap65
thất that61
thật that65
thâu thau6
thầu thau62
thẩu thau63
thấu thau61
thây thay6
thầy thay62
thẩy thay63
thấy thay61
thè the2
thẻ the3
thẽ the4
thé the1
thèm them2
thém them1
thèn then2
thẻn then3
thẹn then5
thèo theo2
thẻo theo3
thẹo theo5
thép thep1
thẹp thep5
thét thet1
thê the6
thề the62
thể the63
thế the61
thệ the65
thếch thech61
thêm them6
thềm them62
thến then61
thện then65
thênh thenh6
thểnh thenh63
thếp thep61
thết thet61
thêu theu6
thều theu62
thểu theu63
thì thi2
thỉ thi3
thĩ thi4
thí thi1
thị thi5
thìa thia2
thía thia1
thích thich1
thịch thich5
thiếc thiec61
thiêm thiem6
thiềm thiem62
thiểm thiem63
thiễm thiem64
thiệm thiem65
thiên thien6
thiền thien62
thiển thien63
thiến thien61
thiện thien65
thiêng thieng6
thiềng thieng62
thiếp thiep61
thiệp thiep65
thiết thiet61
thiệt thiet65
thiêu thieu6
thiều thieu62
thiểu thieu63
thiễu thieu64
thiếu thieu61
thiệu thieu65
thím thim1
thìn thin2
thín thin1
thình thinh2
thỉnh thinh3
thính thinh1
thịnh thinh5
thíp thip1
thít thit1
thịt thit5
thìu thiu2
thỉu thiu3
thịu thiu5
thò tho2
thỏ tho3
thó tho1
thọ tho5
thoải thoai3
thoái thoai1
thoại thoai5
thoàn thoan2
thoản thoan3
thoán thoan1
thoảng thoang3
thoáng thoang1
thoát thoat1
thoạt thoat5
thoăn thoan8
thoắng thoang81
thoắt thoat81
thóc thoc1
thọc thoc5
thòi thoi2
thỏi thoi3
thói thoi1
thòm thom2
thỏm thom3
thóm thom1
thõn thon4
thòng thong2
thõng thong4
thóp thop1
thót thot1
thọt thot5
thô tho6
thồ tho62
thổ tho63
thố tho61
thộ tho65
thốc thoc61
thộc thoc65
thôi thoi6
thồi thoi62
thổi thoi63
thối thoi61
thồm thom62
thôn thon6
thồn thon62
thổn thon63
thỗn thon64
thốn thon61
thộn thon65
thông thong6
thổng thong63
thống thong61
thốp thop61
thộp thop65
thốt thot61
thột thot65
thơ tho7
thờ tho72
thở tho73
thớ tho71
thợ tho75
thơi thoi7
thời thoi72
thởi thoi73
thới thoi71
thơm thom7
thớm thom71
thơn thon7
thờn thon72
thớt thot71
thợt thot75
thtục thtuc5
thù thu2
thủ thu3
thú thu1
thụ thu5
thùa thua2
thủa thua3
thuân thuan6
thuần thuan62
thuẩn thuan63
thuẫn thuan64
thuấn thuan61
thuận thuan65
thuật thuat65
thúc thuc1
thục thuc5
thuê thue6
thuể thue63
thuế thue61
thùi thui2
thủi thui3
thúi thui1
thụi thui5
thùm thum2
thủm thum3
thùn thun2
thùng thung2
thủng thung3
thũng thung4
thúng thung1
thụng thung5
thuốc thuoc61
thuộc thuoc65
thuộm thuom65
thuôn thuon6
thuồn thuon62
thuỗn thuon64
thuốn thuon61
thuồng thuong62
thuổng thuong63
thuột thuot65
thuở thuo73
thụp thup5
thút thut1
thụt thut5
thuyên thuyen6
thuyền thuyen62
thuyết thuyet61
thư thu7
thừ thu72
thử thu73
thữ thu74
thứ thu71
thự thu75
thưa thua7
thừa thua72
thửa thua73
thứa thua71
thữc thuc74
thức thuc71
thực thuc75
thưng thung7
thừng thung72
thửng thung73
thững thung74
thứng thung71
thước thuoc71
thược thuoc75
thưỡi thuoi74
thườn thuon72
thưỡn thuon74
thương thuong7
thường thuong72
thưởng thuong73
thướng thuong71
thượng thuong75
thướt thuot71
thượt thuot75
thưu thuu7
thứu thuu71
tì ti2
tỉ ti3
tĩ ti4
tí ti1
tị ti5
tỉa tia3
tía tia1
tích tich1
tịch tich5
tiẻn tien3
tiếc tiec61
tiệc tiec65
tiêm tiem6
tiềm tiem62
tiếm tiem61
tiệm tiem65
tiên tien6
tiền tien62
tiển tien63
tiễn tien64
tiến tien61
tiện tien65
tiêng tieng6
tiềng tieng62
tiếng tieng61
tiếp tiep61
tiệp tiep65
tiết tiet61
tiệt tiet65
tiêu tieu6
tiều tieu62
tiểu tieu63
tiễu tieu64
tiếu tieu61
tiệu tieu65
tìm tim2
tỉm tim3
tím tim1
tỉn tin3
tĩn tin4
tín tin1
tịn tin5
tỉng ting3
tình tinh2
tỉnh tinh3
tĩnh tinh4
tính tinh1
tịnh tinh5
típ tip1
tít tit1
tịt tit5
tĩu tiu4
tíu tiu1
tịu tiu5
tlẻ tle3
tlộm tlom65
tnđ tnd9
tò to2
tỏ to3
tó to1
tọ to5
toác toac1
toạc toac5
toài toai2
toái toai1
toại toai5
toàn toan2
toản toan3
toán toan1
toàng toang2
toáng toang1
toạng toang5
toánh toanh1
toát toat1
toáy toay1
toắt toat81
tóc toc1
tọc toc5
toèn toen2
toét toet1
toẹt toet5
tòi toi2
tỏi toi3
tõi toi4
tói toi1
tòm tom2
tỏm tom3
tõm tom4
tóm tom1
tòn ton2
tỏn ton3
tòng tong2
tỏng tong3
tọng tong5
tóp top1
tọp top5
tót tot1
tọt tot5
tô to6
tồ to62
tổ to63
tố to61
tộ to65
tốc toc61
tộc toc65
tôi toi6
tồi toi62
tối toi61
tội toi65
tôm tom6
tôn ton6
tồn ton62
tổn ton63
tỗn ton64
tốn ton61
tông tong6
tồng tong62
tổng tong63
tống tong61
tộng tong65
tốp top61
tôt tot6
tốt tot61
tột tot65
tơ to7
tờ to72
tở to73
tớ to71
tợ to75
tơi toi7
tời toi72
tới toi71
tởm tom73
tơn ton7
tởn ton73
tớn ton71
tợn ton75
tớp top71
tợp top75
tớt tot71
trà tra2
trả tra3
trã tra4
trá tra1
trạ tra5
trác trac1
trạc trac5
trách trach1
trạch trach5
trài trai2
trải trai3
trãi trai4
trái trai1
trại trai5
tràm tram2
trảm tram3
trám tram1
trạm tram5
tràn tran2
trản tran3
trán tran1
trạn tran5
tràng trang2
trảng trang3
tráng trang1
trạng trang5
trành tranh2
tránh tranh1
trạnh tranh5
trào trao2
trảo trao3
tráo trao1
trạo trao5
tráp trap1
trát trat1
trạt trat5
tràu trau2
trảu trau3
trày tray2
trảy tray3
trạy tray5
trắc trac81
trặc trac85
trăm tram8
trằm tram82
trắm tram81
trặm tram85
trăn tran8
trằn tran82
trặn tran85
trăng trang8
trắng trang81
trắp trap81
trắt trat81
trâ tra6
trâm tram6
trầm tram62
trẩm tram63
trẫm tram64
trấm tram61
trậm tram65
trân tran6
trần tran62
trẩn tran63
trấn tran61
trận tran65
trâng trang6
trấp trap61
trập trap65
trất trat61
trật trat65
trâu trau6
trầu trau62
trẩu trau63
trấu trau61
trây tray6
trầy tray62
trẩy tray63
trè tre2
trẻ tre3
trẽ tre4
trẹ tre5
trèm trem2
trém trem1
trèn tren2
trẽn tren4
trèo treo2
trẻo treo3
trẽo treo4
tréo treo1
trẹo treo5
trét tret1
trẹt tret5
trê tre6
trề tre62
trể tre63
trễ tre64
trệ tre65
trếch trech61
trệch trech65
trên tren6
trênh trenh6
trếnh trenh61
trết tret61
trệt tret65
trêu treu6
trều treu62
trếu treu61
trệu treu65
trì tri2
trỉ tri3
trĩ tri4
trí tri1
trị tri5
trìa tria2
trỉa tria3
tría tria1
trịa tria5
trích trich1
trịch trich5
triêm triem6
triền trien62
triển trien63
triến trien61
triện trien65
triêng trieng6
triềng trieng62
triệng trieng65
triếp triep61
triệp triep65
triết triet61
triệt triet65
triêu trieu6
triều trieu62
triệu trieu65
trịng tring5
trình trinh2
trĩnh trinh4
trính trinh1
trịnh trinh5
trít trit1
trịt trit5
trìu triu2
trĩu triu4
tríu triu1
trịu triu5
trò tro2
trỏ tro3
trọ tro5
tróc troc1
trọc troc5
tròi troi2
trỏi troi3
trói troi1
trọi troi5
tròm trom2
trõm trom4
tróm trom1
tròn tron2
trõn tron4
trọn tron5
tròng trong2
trỏng trong3
tróng trong1
trọng trong5
trót trot1
trọt trot5
trô tro6
trồ tro62
trổ tro63
trỗ tro64
trố tro61
trộ tro65
trốc troc61
trộc troc65
trôi troi6
trồi troi62
trổi troi63
trỗi troi64
trối troi61
trội troi65
trôm trom6
trộm trom65
trôn tron6
trốn tron61
trộn tron65
trông trong6
trồng trong62
trổng trong63
trống trong61
trộng trong65
trốt trot61
trơ tro7
trờ tro72
trở tro73
trớ tro71
trợ tro75
trơi troi7
trời troi72
trới troi71
trờm trom72
trớm trom71
trợm trom75
trơn tron7
trờn tron72
trớn tron71
trợn tron75
trơng trong7
trớp trop71
trớt trot71
trợt trot75
trù tru2
trủ tru3
trú tru1
trụ tru5
trụa trua5
truân truan6
truất truat61
truật truat65
trúc truc1
trục truc5
trùi trui2
trũi trui4
trụi trui5
trùm trum2
trũm trum4
trúm trum1
trụm trum5
trùn trun2
trụn trun5
trùng trung2
trủng trung3
trũng trung4
trúng trung1
trụng trung5
truồi truoi62
truông truong6
truồng truong62
truột truot65
trụp trup5
trút trut1
trụt trut5
truyên truyen6
truyền truyen62
truyện truyen65
trư tru7
trừ tru72
trử tru73
trữ tru74
trứ tru71
trự tru75
trưa trua7
trừa trua72
trữa trua74
trức truc71
trực truc75
trưng trung7
trừng trung72
trửng trung73
trứng trung71
trước truoc71
trươi truoi7
trườn truon72
trương truong7
trường truong72
trưởng truong73
trưỡng truong74
trướng truong71
trượng truong75
trượt truot75
trừu truu72
trửu truu73
trữu truu74
trứu truu71
tryền tryen62
tù tu2
tủ tu3
tú tu1
tụ tu5
tùa tua2
tủa tua3
túa tua1
tuân tuan6
tuần tuan62
tuẩn tuan63
tuẫn tuan64
tuấn tuan61
tuận tuan65
tuất tuat61
túc tuc1
tục tuc5
tuế tue61
tuệ tue65
tuếch tuech61
tuệch tuech65
tuềnh tuenh62
tùi tui2
tủi tui3
túi tui1
tụi tui5
tùm tum2
tủm tum3
tũm tum4
túm tum1
tụm tum5
tủn tun3
tùng tung2
tủng tung3
túng tung1
tụng tung5
tuốc tuoc61
tuộc tuoc65
tuồi tuoi62
tuổi tuoi63
tuồm tuom62
tuôn tuon6
tuồn tuon62
tuông tuong6
tuồng tuong62
tuốt tuot61
tuột tuot65
túp tup1
tút tut1
tụt tut5
tuyên tuyen6
tuyền tuyen62
tuyển tuyen63
tuyến tuyen61
tuyết tuyet61
tuyệt tuyet65
tuýp tuyp1
tuýt tuyt1
tư tu7
từ tu72
tử tu73
tữ tu74
tứ tu71
tự tu75
tưa tua7
từa tua72
tửa tua73
tứa tua71
tựa tua75
tức tuc71
tưng tung7
từng tung72
tửng tung73
tước tuoc71
tược tuoc75
tươi tuoi7
tưởi tuoi73
tưới tuoi71
tươm tuom7
tườm tuom72
tướn tuon71
tương tuong7
tường tuong72
tưởng tuong73
tướng tuong71
tượng tuong75
tướp tuop71
tượp tuop75
tướt tuot71
tượt tuot75
tườu tuou72
tưu tuu7
tửu tuu73
tựu tuu75
tỳ ty2
tỷ ty3
tý ty1
tỵ ty5
ù u2
ủ u3
ũ u4
ú u1
ụ u5
ùa ua2
ủa ua3
ũa ua4
úa ua1
ụa ua5
uân uan6
uẩn uan63
uấn uan61
uất uat61
uẩy uay63
ubtư ubtu7
úc uc1
ục uc5
uê ue6
uể ue63
uế ue61
ùi ui2
ủi ui3
ũi ui4
úi ui1
ụi ui5
úk uk1
ùm um2
ủm um3
ũm um4
úm um1
ụm um5
ùn un2
ủn un3
ũn un4
ún un1
ụn un5
ùng ung2
ủng ung3
ũng ung4
úng ung1
ụng ung5
uôm uom6
uốn uon61
uông uong6
uổng uong63
uống uong61
uốt uot61
uột uot65
uở uo73
úp up1
ụp up5
út ut1
ụt ut5
uvtư uvtu7
uých uych1
uỵch uych5
uyên uyen6
uyển uyen63
uyết uyet61
uỳnh uynh2
uýnh uynh1
uýt uyt1
ư u7
ừ u72
ử u73
ữ u74
ứ u71
ự u75
ưa ua7
ừa ua72
ửa ua73
ữa ua74
ứa ua71
ựa ua75
ưc uc7
ữc uc74
ức uc71
ực uc75
ưcv ucv7
ưd ud7
ửi ui73
ừm um72
ưn un7
ừn un72
ứn un71
ưng ung7
ừng ung72
ửng ung73
ững ung74
ứng ung71
ựng ung75
ước uoc71
ược uoc75
ươi uoi7
ười uoi72
ưởi uoi73
ưỡi uoi74
ưới uoi71
ượi uoi75
ươm uom7
ườm uom72
ướm uom71
ượm uom75
ươn uon7
ườn uon72
ưỡn uon74
ướn uon71
ượn uon75
ương uong7
ường uong72
ưởng uong73
ưỡng uong74
ướng uong71
ượng uong75
ướp uop71
ượp uop75
ướt uot71
ượt uot75
ươu uou7
ườu uou72
ưỡu uou74
ướu uou71
ượu uou75
ưt ut7
ứt ut71
ựt ut75
ưu uu7
ừu uu72
ửu uu73
ữu uu74
ứu uu71
ựu uu75
và va2
vả va3
vã va4
vá va1
vạ va5
vác vac1
vạc vac5
vách vach1
vạch vach5
vài vai2
vải vai3
vãi vai4
vái vai1
vại vai5
vàm vam2
vạm vam5
vàn van2
vãn van4
ván van1
vạn van5
vàng vang2
vảng vang3
vãng vang4
váng vang1
vạng vang5
vành vanh2
vảnh vanh3
vãnh vanh4
vánh vanh1
vạnh vanh5
vào vao2
váo vao1
vàp vap2
váp vap1
vạp vap5
vát vat1
vạt vat5
vàu vau2
vày vay2
vảy vay3
vãy vay4
váy vay1
vạy vay5
vắc vac81
vặc vac85
văm vam8
vằm vam82
văn van8
vằn van82
vắn van81
vặn van85
văng vang8
vằng vang82
vẳng vang83
vắng vang81
vặng vang85
vắp vap81
vắt vat81
vặt vat85
vâm vam6
vậm vam65
vân van6
vần van62
vẩn van63
vẫn van64
vấn van61
vận van65
vâng vang6
vầng vang62
vấp vap61
vập vap65
vất vat61
vật vat65
vầu vau62
vẩu vau63
vấu vau61
vây vay6
vầy vay62
vẩy vay63
vẫy vay64
vấy vay61
vậy vay65
vè ve2
vẻ ve3
vẽ ve4
vé ve1
véc vec1
vẹm vem5
vèn ven2
vẻn ven3
vén ven1
vẹn ven5
vèo veo2
vẻo veo3
véo veo1
vẹo veo5
vét vet1
vẹt vet5
vê ve6
về ve62
vế ve61
vệ ve65
vếch vech61
vệch vech65
vên ven6
vền ven62
vện ven65
vênh venh6
vểnh venh63
vết vet61
vệt vet65
vêtu vetu6
vêu veu6
vều veu62
vếu veu61
vì vi2
vỉ vi3
vĩ vi4
ví vi1
vị vi5
vỉa via3
vía via1
vích vich1
viêc viec6
việc viec65
viêm viem6
viên vien6
viền vien62
viển vien63
viễn vien64
viện vien65
viêng vieng6
viếng vieng61
việp viep65
viêt viet6
viết viet61
việt viet65
vịm vim5
vín vin1
vịn vin5
vĩnh vinh4
vính vinh1
vịnh vinh5
viọng viong5
vít vit1
vịt vit5
víu viu1
vò vo2
vỏ vo3
võ vo4
vó vo1
vọ vo5
vóc voc1
vọc voc5
vòi voi2
vỏi voi3
vói voi1
vọi voi5
vòm vom2
vòn von2
vỏn von3
vón von1
vòng vong2
vỏng vong3
võng vong4
vóng vong1
vọng vong5
vọp vop5
vót vot1
vọt vot5
vô vo6
vồ vo62
vổ vo63
vỗ vo64
vố vo61
vốc voc61
vôi voi6
vồi voi62
vối voi61
vội voi65
vôn von6
vồn von62
vốn von61
vông vong6
vồng vong62
vổng vong63
vống vong61
vốt vot61
vơ vo7
vờ vo72
vở vo73
vỡ vo74
vớ vo71
vợ vo75
vơi voi7
vời voi72
với voi71
vợi voi75
vờn von72
vởn von73
vớt vot71
vợt vot75
vù vu2
vũ vu4
vú vu1
vụ vu5
vùa vua2
vúc vuc1
vục vuc5
vùi vui2
vũm vum4
vùn vun2
vụn vun5
vùng vung2
vũng vung4
vụng vung5
vuối vuoi61
vuông vuong6
vuốt vuot61
vuột vuot65
vút vut1
vụt vut5
vư vu7
vừa vua72
vữa vua74
vựa vua75
vức vuc71
vực vuc75
vưng vung7
vừng vung72
vửng vung73
vững vung74
vựng vung75
vược vuoc75
vươn vuon7
vườn vuon72
vượn vuon75
vương vuong7
vưởng vuong73
vướng vuong71
vượng vuong75
vượt vuot75
vứt vut71
vưu vuu7
vỹ vy4
vý vy1
xà xa2
xả xa3
xã xa4
xá xa1
xạ xa5
xác xac1
xạc xac5
xách xach1
xạch xach5
xài xai2
xải xai3
xái xai1
xàm xam2
xảm xam3
xám xam1
xạm xam5
xán xan1
xàng xang2
xáng xang1
xành xanh2
xảnh xanh3
xào xao2
xảo xao3
xáo xao1
xạo xao5
xáp xap1
xạp xap5
xát xat1
xàu xau2
xảu xau3
xạu xau5
xảy xay3
xáy xay1
xắc xac81
xăm xam8
xắm xam81
xăn xan8
xắn xan81
xăng xang8
xằng xang82
xẳng xang83
xẵng xang84
xắng xang81
xắp xap81
xắt xat81
xấ xa61
xấc xac61
xâm xam6
xầm xam62
xẩm xam63
xân xan6
xẩn xan63
xấn xan61
xấp xap61
xập xap65
xâu xau6
xầu xau62
xẩu xau63
xấu xau61
xây xay6
xầy xay62
xẩy xay63
xcô xco6
xè xe2
xẻ xe3
xé xe1
xẹ xe5
xéc xec1
xẹc xec5
xém xem1
xèn xen2
xẻn xen3
xén xen1
xèng xeng2
xẻng xeng3
xèo xeo2
xẻo xeo3
xẽo xeo4
xéo xeo1
xẹo xeo5
xép xep1
xẹp xep5
xét xet1
xẹt xet5
xê xe6
xề xe62
xể xe63
xễ xe64
xế xe61
xệ xe65
xếch xech61
xệch xech65
xềm xem62
xên xen6
xển xen63
xênh xenh6
xềnh xenh62
xểnh xenh63
xếp xep61
xệp xep65
xệt xet65
xêu xeu6
xều xeu62
xệu xeu65
xì xi2
xỉ xi3
xí xi1
xị xi5
xỉa xia3
xía xia1
xịa xia5
xích xich1
xịch xich5
xiếc xiec61
xiệc xiec65
xiêm xiem6
xiểm xiem63
xiên xien6
xiển xien63
xiễn xien64
xiềng xieng62
xiểng xieng63
xiếp xiep61
xiệp xiep65
xiết xiet61
xiêu xieu6
xiều xieu62
xiểu xieu63
xiếu xieu61
ximăng ximang8
xỉn xin3
xín xin1
xịn xin5
xinê xine6
xíng xing1
xình xinh2
xỉnh xinh3
xĩnh xinh4
xính xinh1
xíp xip1
xít xit1
xịt xit5
xìu xiu2
xỉu xiu3
xíu xiu1
xịu xiu5
xò xo2
xỏ xo3
xó xo1
xọ xo5
xoác xoac1
xoạc xoac5
xoạch xoach5
xoài xoai2
xoải xoai3
xoàm xoam2
xoàn xoan2
xoán xoan1
xoàng xoang2
xoảng xoang3
xoạng xoang5
xoành xoanh2
xoát xoat1
xoạt xoat5
xoáy xoay1
xoăn xoan8
xoẳn xoan83
xoắn xoan81
xoắt xoat81
xóc xoc1
xọc xoc5
xoèn xoen2
xoẻng xoeng3
xoét xoet1
xoẹt xoet5
xòi xoi2
xói xoi1
xòm xom2
xõm xom4
xóm xom1
xón xon1
xòng xong2
xỏng xong3
xõng xong4
xóng xong1
xóp xop1
xọp xop5
xót xot1
xô xo6
xồ xo62
xổ xo63
xố xo61
xộ xo65
xốc xoc61
xộc xoc65
xôi xoi6
xồi xoi62
xổi xoi63
xối xoi61
xôm xom6
xồm xom62
xổm xom63
xôn xon6
xồn xon62
xổn xon63
xốn xon61
xộn xon65
xông xong6
xồng xong62
xổng xong63
xống xong61
xốp xop61
xộp xop65
xốt xot61
xơ xo7
xờ xo72
xở xo73
xỡ xo74
xớ xo71
xơi xoi7
xời xoi72
xởi xoi73
xới xoi71
xơm xom7
xờm xom72
xớm xom71
xơn xon7
xởn xon73
xớn xon71
xớp xop71
xợp xop75
xớt xot71
xợt xot75
xrê xre6
xrêpôc xrepoc66
xtiêng xtieng6
xtơ xto7
xtrây xtray6
xù xu2
xủ xu3
xũ xu4
xú xu1
xụ xu5
xùa xua2
xúa xua1
xuân xuan6
xuẩn xuan63
xuất xuat61
xuây xuay6
xúc xuc1
xục xuc5
xuê xue6
xuề xue62
xuể xue63
xuế xue61
xuệch xuech65
xuềnh xuenh62
xùi xui2
xủi xui3
xúi xui1
xụi xui5
xùm xum2
xúm xum1
xùng xung2
xủng xung3
xúng xung1
xuôi xuoi6
xuông xuong6
xuồng xuong62
xuổng xuong63
xuống xuong61
xúp xup1
xụp xup5
xút xut1
xụt xut5
xuyên xuyen6
xuyền xuyen62
xuyển xuyen63
xuyễn xuyen64
xuyến xuyen61
xuyết xuyet61
xuýt xuyt1
xuỵt xuyt5
xư xu7
xừ xu72
xử xu73
xứ xu71
xự xu75
xưa xua7
xửa xua73
xứa xua71
xức xuc71
xực xuc75
xưng xung7
xừng xung72
xửng xung73
xứng xung71
xước xuoc71
xược xuoc75
xười xuoi72
xương xuong7
xường xuong72
xưởng xuong73
xướng xuong71
xýt xyt1
ỳ y2
ỷ y3
ỹ y4
ý y1
ỵ y5
ỵa ya5
yàm yam2
yán yan1
ých ych1
ỵch ych5
yếc yec61
yêm yem6
yểm yem63
yếm yem61
yên yen6
yển yen63
yến yen61
yêng yeng6
yểng yeng63
yếng yeng61
yếp yep61
yết yet61
yêu yeu6
yều yeu62
yểu yeu63
yếu yeu61
yì yi2
ýn yn1
ỵn yn5
ỳnh ynh2
ỷnh ynh3
ýnh ynh1
yò yo2
yó yo1
ýp yp1
ýt yt1
ỵt yt5
yú yu1
ỷu yu3
ỵu yu5
yùm yum2
zà za2
zabân zaban6
zài zai2
zắc zac81
zăg zag8
zăng zang8
zép zep1
zéro zero1
zê ze6
zỏm zom3
zô zo6
================================================
FILE: test-data/vietnamese.cm.dict.vni3.tdata
================================================
à a2
ả a3
ã a4
á a1
ạ a5
ác ac1
ạc ac5
ácbon acbon1
ách ach1
ạch ach5
ácxtơ acxto17
ảh ah3
ài ai2
ải ai3
ãi ai4
ái ai1
ại ai5
alô alo6
àm am2
ảm am3
ãm am4
ám am1
ạm am5
àn an2
ản an3
ãn an4
án an1
ạn an5
àng ang2
ảng ang3
ãng ang4
áng ang1
ạng ang5
ành anh2
ảnh anh3
ãnh anh4
ánh anh1
ạnh anh5
ào ao2
ảo ao3
ão ao4
áo ao1
ạo ao5
aỏi aoi3
àp ap2
áp ap1
ạp ap5
át at1
ạt at5
àu au2
ảu au3
áu au1
ạu au5
ày ay2
ảy ay3
ãy ay4
áy ay1
ạy ay5
ă a8
ằ a82
ẳ a83
ẵ a84
ắ a81
ặ a85
ăc ac8
ắc a8c1
ặc a8c5
ăcr acr8
ăh ah8
ăk ak8
ắk a8k1
ăm am8
ằm a8m2
ẳm a8m3
ẵm a8m4
ắm a8m1
ặm a8m5
ăn an8
ằn a8n2
ẳn a8n3
ẵn a8n4
ắn a8n1
ặn a8n5
ăng ang8
ằng a8ng2
ẳng a8ng3
ẵng a8ng4
ắng a8ng1
ặng a8ng5
ăngten angten8
ắp a8p1
ặp a8p5
ắt a8t1
ặt a8t5
ằu a8u2
â a6
ầ a62
ẩ a63
ẫ a64
ấ a61
ậ a65
ấc a6c1
ậc a6c5
âm am6
ầm a6m2
ẩm a6m3
ẫm a6m4
ấm a6m1
ậm a6m5
ân an6
ần a6n2
ẩn a6n3
ẫn a6n4
ấn a6n1
ận a6n5
âng ang6
ầng a6ng2
ẩng a6ng3
ẫng a6ng4
ấng a6ng1
ậng a6ng5
âp ap6
ấp a6p1
ập a6p5
ất a6t1
ật a6t5
âu au6
ầu a6u2
ẩu a6u3
ẫu a6u4
ấu a6u1
ậu a6u5
ây ay6
ầy a6y2
ẩy a6y3
ẫy a6y4
ấy a6y1
ậy a6y5
bà ba2
bả ba3
bã ba4
bá ba1
bạ ba5
bác bac1
bạc bac5
bách bach1
bạch bach5
bài bai2
bải bai3
bãi bai4
bái bai1
bại bai5
bàm bam2
bãm bam4
bám bam1
bạm bam5
bàn ban2
bản ban3
bán ban1
bạn ban5
bàng bang2
bảng bang3
bãng bang4
báng bang1
bạng bang5
bành banh2
bảnh banh3
bánh banh1
bạnh banh5
bào bao2
bảo bao3
bão bao4
báo bao1
bạo bao5
báp bap1
bạp bap5
bát bat1
bạt bat5
bàu bau2
bảu bau3
báu bau1
bạu bau5
bày bay2
bảy bay3
báy bay1
bayơ bayo7
bắc ba8c1
bặc ba8c5
băm bam8
bằm ba8m2
bẳm ba8m3
bẵm ba8m4
bặm ba8m5
băn ban8
bằn ba8n2
bẳn ba8n3
bắn ba8n1
bặn ba8n5
băng bang8
bằng ba8ng2
bẳng ba8ng3
bẵng ba8ng4
bắng ba8ng1
bặng ba8ng5
bắp ba8p1
bặp ba8p5
bắt ba8t1
bặt ba8t5
bấc ba6c1
bậc ba6c5
bâm bam6
bầm ba6m2
bẩm ba6m3
bẫm ba6m4
bấm ba6m1
bậm ba6m5
bân ban6
bần ba6n2
bẩn ba6n3
bấn ba6n1
bận ba6n5
bâng bang6
bầng ba6ng2
bẩng ba6ng3
bẫng ba6ng4
bấp ba6p1
bập ba6p5
bất ba6t1
bật ba6t5
bâu bau6
bầu ba6u2
bẩu ba6u3
bẫu ba6u4
bấu ba6u1
bậu ba6u5
bây bay6
bầy ba6y2
bẩy ba6y3
bẫy ba6y4
bấy ba6y1
bậy ba6y5
bè be2
bẻ be3
bẽ be4
bé be1
bẹ be5
béc bec1
bèm bem2
bẻm bem3
bèn ben2
bẽn ben4
bén ben1
bẹn ben5
béng beng1
bẻnh benh3
bèo beo2
bẻo beo3
bẽo beo4
béo beo1
bẹo beo5
bép bep1
bẹp bep5
bét bet1
bẹt bet5
bê be6
bề be62
bể be63
bễ be64
bế be61
bệ be65
bệch be6ch5
bên ben6
bền be6n2
bến be6n1
bện be6n5
bênh benh6
bềnh be6nh2
bệnh be6nh5
bếp be6p1
bêt bet6
bết be6t1
bệt be6t5
bête bete6
bêu beu6
bều be6u2
bễu be6u4
bếu be6u1
bệu be6u5
bì bi2
bỉ bi3
bĩ bi4
bí bi1
bị bi5
bìa bia2
bịa bia5
bích bich1
bịch bich5
biếc bie6c1
biêm biem6
biểm bie6m3
biếm bie6m1
biên bien6
biền bie6n2
biển bie6n3
biến bie6n1
biện bie6n5
biêng bieng6
biếng bie6ng1
biêt biet6
biết bie6t1
biệt bie6t5
biêu bieu6
biều bie6u2
biểu bie6u3
biễu bie6u4
biếu bie6u1
bìh bih2
bìm bim2
bỉm bim3
bím bim1
bìn bin2
bịn bin5
bình binh2
bỉnh binh3
bĩnh binh4
bính binh1
bịnh binh5
bịp bip5
bít bit1
bịt bit5
bìu biu2
bỉu biu3
bĩu biu4
bíu biu1
bịu biu5
blá bla1
blái blai1
blăng blang8
blâu blau6
blóm blom1
blóma bloma1
blọn blon5
blô blo6
blúc bluc1
bluộm bluo6m5
bnđc bndc9
bò bo2
bỏ bo3
bõ bo4
bó bo1
bọ bo5
boạt boat5
bóc boc1
bọc boc5
bòi boi2
bỏi boi3
bõi boi4
bói boi1
bòm bom2
bỏm bom3
bõm bom4
bòn bon2
bỏn bon3
bón bon1
bọn bon5
bòng bong2
bỏng bong3
bõng bong4
bóng bong1
bọng bong5
bóp bop1
bọp bop5
bót bot1
bọt bot5
bô bo6
bồ bo62
bổ bo63
bỗ bo64
bố bo61
bộ bo65
bốc bo6c1
bộc bo6c5
bôi boi6
bồi bo6i2
bổi bo6i3
bối bo6i1
bội bo6i5
bôm bom6
bồm bo6m2
bôn bon6
bồn bo6n2
bổn bo6n3
bốn bo6n1
bộn bo6n5
bông bong6
bồng bo6ng2
bổng bo6ng3
bỗng bo6ng4
bống bo6ng1
bộng bo6ng5
bốp bo6p1
bộp bo6p5
bốt bo6t1
bột bo6t5
bơ bo7
bờ bo72
bở bo73
bỡ bo74
bớ bo71
bợ bo75
bớc bo7c1
bơi boi7
bời bo7i2
bởi bo7i3
bỡi bo7i4
bới bo7i1
bơm bom7
bờm bo7m2
bợm bo7m5
bơn bon7
bờn bo7n2
bởn bo7n3
bỡn bo7n4
bớn bo7n1
bợn bo7n5
bớp bo7p1
bợp bo7p5
bớt bo7t1
bợt bo7t5
bợu bo7u5
brâu brau6
brôm brom6
brơ bro7
bù bu2
bủ bu3
bú bu1
bụ bu5
bùa bua2
bủa bua3
búa bua1
bụa bua5
búc buc1
bục buc5
bùi bui2
bủi bui3
búi bui1
bụi bui5
búk buk1
bulông bulong6
bùm bum2
bủm bum3
bũm bum4
bụm bum5
bùn bun2
bủn bun3
bún bun1
bùng bung2
bủng bung3
búng bung1
bụng bung5
buộc buo6c5
buồi buo6i2
buổi buo6i3
buối buo6i1
buội buo6i5
buồm buo6m2
buôn buon6
buồn buo6n2
buông buong6
buồng buo6ng2
buốt buo6t1
buột buo6t5
búp bup1
bụp bup5
bút but1
bụt but5
buýt buyt1
bư bu7
bứ bu71
bự bu75
bưa bua7
bừa bu7a2
bửa bu7a3
bữa bu7a4
bứa bu7a1
bựa bu7a5
bức bu7c1
bực bu7c5
bưng bung7
bừng bu7ng2
bửng bu7ng3
bứng bu7ng1
bựng bu7ng5
bước buo7c1
bươi buoi7
bưởi buo7i3
bươm buom7
bướm buo7m1
bươn buon7
bương buong7
bường buo7ng2
bướng buo7ng1
bướp buo7p1
bượt buo7t5
bươu buou7
bướu buo7u1
bứt bu7t1
bựt bu7t5
bưu buu7
bửu bu7u3
cà ca2
cả ca3
cá ca1
cạ ca5
các cac1
cạc cac5
cácbon cacbon1
cách cach1
cạch cach5
cácxt cacxt1
cacxtơ cacxto7
cácxtơ cacxto17
café cafe1
cài cai2
cải cai3
cãi cai4
cái cai1
cại cai5
calô calo6
càm cam2
cảm cam3
cãm cam4
cám cam1
cạm cam5
campôt campot6
càn can2
cản can3
cán can1
cạn can5
càng cang2
cảng cang3
cáng cang1
cành canh2
cảnh canh3
cánh canh1
cạnh canh5
canô cano6
canxít canxit1
cào cao2
cảo cao3
cão cao4
cáo cao1
cạo cao5
cáp cap1
cạp cap5
carbón carbon1
cartón carton1
cát cat1
cạt cat5
càu cau2
cảu cau3
cáu cau1
cạu cau5
cày cay2
cảy cay3
cáy cay1
cạy cay5
că ca8
cắc ca8c1
cặc ca8c5
căm cam8
cằm ca8m2
cắm ca8m1
cặm ca8m5
căn can8
cằn ca8n2
cẳn ca8n3
cắn ca8n1
cặn ca8n5
căng cang8
cằng ca8ng2
cẳng ca8ng3
cẵng ca8ng4
cắng ca8ng1
căo cao8
cắp ca8p1
cặp ca8p5
cắt ca8t1
cặt ca8t5
câ ca6
cầ ca62
câble cable6
cấc ca6c1
câm cam6
cầm ca6m2
cẩm ca6m3
cẫm ca6m4
cấm ca6m1
cân can6
cần ca6n2
cẩn ca6n3
cẫn ca6n4
cấn ca6n1
cận ca6n5
câng cang6
cẫng ca6ng4
cấp ca6p1
cập ca6p5
cất ca6t1
cật ca6t5
câu cau6
cầu ca6u2
cẩu ca6u3
cẫu ca6u4
cấu ca6u1
cậu ca6u5
cây cay6
cầy ca6y2
cẩy ca6y3
cấy ca6y1
cậy ca6y5
céng ceng1
cê ce6
chà cha2
chả cha3
chã cha4
chá cha1
chạ cha5
chác chac1
chạc chac5
chách chach1
chạch chach5
chài chai2
chải chai3
chãi chai4
chái chai1
chàm cham2
chảm cham3
chãm cham4
chám cham1
chạm cham5
chán chan1
chạn chan5
chàng chang2
chảng chang3
cháng chang1
chạng chang5
chành chanh2
chảnh chanh3
chánh chanh1
chạnh chanh5
chào chao2
chảo chao3
chão chao4
cháo chao1
chạo chao5
cháp chap1
chạp chap5
chát chat1
chạt chat5
chàu chau2
chảu chau3
cháu chau1
chày chay2
chảy chay3
cháy chay1
chạy chay5
chắc cha8c1
chặc cha8c5
chăm cham8
chằm cha8m2
chẳm cha8m3
chắm cha8m1
chặm cha8m5
chăn chan8
chằn cha8n2
chẳn cha8n3
chẵn cha8n4
chắn cha8n1
chặn cha8n5
chăng chang8
chằng cha8ng2
chẳng cha8ng3
chắng cha8ng1
chặng cha8ng5
chắp cha8p1
chặp cha8p5
chắt cha8t1
chặt cha8t5
chấ cha61
chậc cha6c5
châm cham6
chầm cha6m2
chẩm cha6m3
chẫm cha6m4
chấm cha6m1
chậm cha6m5
chân chan6
chần cha6n2
chẩn cha6n3
chấn cha6n1
chận cha6n5
chẩng cha6ng3
chấng cha6ng1
chấp cha6p1
chập cha6p5
chất cha6t1
chật cha6t5
châu chau6
chầu cha6u2
chẩu cha6u3
chẫu cha6u4
chấu cha6u1
chậu cha6u5
chây chay6
chầy cha6y2
chẩy cha6y3
chấy cha6y1
chậy cha6y5
chè che2
chẻ che3
chẽ che4
ché che1
chẹ che5
chèm chem2
chẻm chem3
chém chem1
chèn chen2
chẻn chen3
chẽn chen4
chén chen1
chẹn chen5
chéng cheng1
chèo cheo2
chẻo cheo3
chẽo cheo4
chéo cheo1
chẹo cheo5
chép chep1
chẹp chep5
chét chet1
chẹt chet5
chê che6
chề che62
chễ che64
chế che61
chệ che65
chệc che6c5
chếch che6ch1
chệch che6ch5
chêm chem6
chềm che6m2
chễm che6m4
chên chen6
chện che6n5
chênh chenh6
chềnh che6nh2
chểnh che6nh3
chễnh che6nh4
chếnh che6nh1
chệnh che6nh5
chếp che6p1
chệp che6p5
chết che6t1
chệt che6t5
chêu cheu6
chì chi2
chỉ chi3
chĩ chi4
chí chi1
chị chi5
chìa chia2
chỉa chia3
chĩa chia4
chịa chia5
chích chich1
chịch chich5
chiếc chie6c1
chiêm chiem6
chiểm chie6m3
chiếm chie6m1
chiên chien6
chiền chie6n2
chiển chie6n3
chiến chie6n1
chiện chie6n5
chiêng chieng6
chiềng chie6ng2
chiếng chie6ng1
chiếp chie6p1
chiệp chie6p5
chiết chie6t1
chiệt chie6t5
chiêu chieu6
chiều chie6u2
chiểu chie6u3
chiếu chie6u1
chìm chim2
chỉm chim3
chím chim1
chỉn chin3
chĩn chin4
chín chin1
chình chinh2
chỉnh chinh3
chĩnh chinh4
chính chinh1
chíp chip1
chít chit1
chịt chit5
chìu chiu2
chĩu chiu4
chíu chiu1
chịu chiu5
chò cho2
chỏ cho3
chõ cho4
chó cho1
chọ cho5
chỏa choa3
chõa choa4
chóa choa1
choác choac1
choạc choac5
choách choach1
choài choai2
choãi choai4
choái choai1
choại choai5
choán choan1
choàng choang2
choảng choang3
choáng choang1
choạng choang5
choãnh choanh4
choạp choap5
choắc choa8c1
choăn choan8
choắt choa8t1
chóc choc1
chọc choc5
choèn choen2
choẻn choen3
choét choet1
choẹt choet5
chòi choi2
chỏi choi3
chõi choi4
chói choi1
chọi choi5
chòm chom2
chỏm chom3
chõm chom4
chỏn chon3
chõn chon4
chón chon1
chọn chon5
chòng chong2
chỏng chong3
chõng chong4
chóng chong1
chóp chop1
chót chot1
chọt chot5
chô cho6
chồ cho62
chổ cho63
chỗ cho64
chộ cho65
chốc cho6c1
chôi choi6
chồi cho6i2
chổi cho6i3
chỗi cho6i4
chối cho6i1
chội cho6i5
chôm chom6
chồm cho6m2
chổm cho6m3
chỗm cho6m4
chôn chon6
chồn cho6n2
chổn cho6n3
chốn cho6n1
chộn cho6n5
chông chong6
chồng cho6ng2
chổng cho6ng3
chống cho6ng1
chốp cho6p1
chộp cho6p5
chốt cho6t1
chột cho6t5
chơ cho7
chờ cho72
chở cho73
chớ cho71
chợ cho75
chơi choi7
chời cho7i2
chới cho7i1
chơm chom7
chờm cho7m2
chởm cho7m3
chớm cho7m1
chơn chon7
chờn cho7n2
chớn cho7n1
chợn cho7n5
chớp cho7p1
chợp cho7p5
chớt cho7t1
chợt cho7t5
chù chu2
chủ chu3
chú chu1
chụ chu5
chùa chua2
chúa chua1
chuáng chuang1
chuân chuan6
chuẩn chua6n3
chuất chua6t1
chuật chua6t5
chúc chuc1
chục chuc5
chuế chue61
chuếch chue6ch1
chuệch chue6ch5
chuếnh chue6nh1
chuệnh chue6nh5
chùi chui2
chủi chui3
chũi chui4
chúi chui1
chùm chum2
chủm chum3
chũm chum4
chúm chum1
chụm chum5
chùn chun2
chủn chun3
chũn chun4
chùng chung2
chủng chung3
chúng chung1
chuốc chuo6c1
chuộc chuo6c5
chuôi chuoi6
chuồi chuo6i2
chuỗi chuo6i4
chuối chuo6i1
chuội chuo6i5
chuôm chuom6
chuốm chuo6m1
chuồn chuo6n2
chuông chuong6
chuồng chuo6ng2
chuộng chuo6ng5
chuốt chuo6t1
chuột chuo6t5
chụp chup5
chút chut1
chụt chut5
chuyên chuyen6
chuyền chuye6n2
chuyển chuye6n3
chuyến chuye6n1
chuyện chuye6n5
chuyết chuye6t1
chư chu7
chừ chu72
chử chu73
chữ chu74
chứ chu71
chưa chua7
chừa chu7a2
chửa chu7a3
chữa chu7a4
chứa chu7a1
chức chu7c1
chực chu7c5
chửi chu7i3
chưn chun7
chưng chung7
chừng chu7ng2
chửng chu7ng3
chững chu7ng4
chứng chu7ng1
chựng chu7ng5
chước chuo7c1
chược chuo7c5
chưởi chuo7i3
chườm chuo7m2
chương chuong7
chường chuo7ng2
chưởng chuo7ng3
chưỡng chuo7ng4
chướng chuo7ng1
chượp chuo7p5
chứt chu7t1
chưu chuu7
chửu chu7u3
chữu chu7u4
chựu chu7u5
cì ci2
cí ci1
cịt cit5
clé cle1
clông clong6
cò co2
cỏ co3
cõ co4
có co1
cọ co5
cóc coc1
cọc coc5
còi coi2
cỏi coi3
cõi coi4
cói coi1
còm com2
cỏm com3
cọm com5
còn con2
cỏn con3
cón con1
cọn con5
còng cong2
cỏng cong3
cõng cong4
cóng cong1
cọng cong5
cóp cop1
cọp cop5
cót cot1
cọt cot5
cô co6
cồ co62
cổ co63
cỗ co64
cố co61
cộ co65
cốc co6c1
cộc co6c5
côi coi6
cồi co6i2
cổi co6i3
cỗi co6i4
cối co6i1
cội co6i5
côm com6
cồm co6m2
cốm co6m1
cộm co6m5
côn con6
cồn co6n2
cổn co6n3
cốn co6n1
cộn co6n5
cône cone6
công cong6
cồng co6ng2
cổng co6ng3
cống co6ng1
cộng co6ng5
cốp co6p1
cộp co6p5
côt cot6
cốt co6t1
cột co6t5
cơ co7
cờ co72
cỡ co74
cớ co71
cơi coi7
cời co7i2
cởi co7i3
cỡi co7i4
cới co7i1
cơm com7
cỡm co7m4
cớm co7m1
cợm co7m5
cơn con7
cờn co7n2
cởn co7n3
cỡn co7n4
cớn co7n1
cợn co7n5
cợp co7p5
cớt co7t1
cợt co7t5
crô cro6
crôm crom6
crông crong6
crưm crum7
cù cu2
củ cu3
cũ cu4
cú cu1
cụ cu5
cùa cua2
của cua3
cúa cua1
cúc cuc1
cục cuc5
cùi cui2
củi cui3
cũi cui4
cúi cui1
cụi cui5
cùm cum2
củm cum3
cúm cum1
cụm cum5
cùn cun2
củn cun3
cũn cun4
cùng cung2
củng cung3
cũng cung4
cúng cung1
cụng cung5
cuốc cuo6c1
cuộc cuo6c5
cuồi cuo6i2
cuối cuo6i1
cuội cuo6i5
cuỗm cuo6m4
cuồn cuo6n2
cuốn cuo6n1
cuộn cuo6n5
cuông cuong6
cuồng cuo6ng2
cuống cuo6ng1
cuộng cuo6ng5
cuôr cuor6
cúp cup1
cụp cup5
cút cut1
cụt cut5
cư cu7
cừ cu72
cử cu73
cữ cu74
cứ cu71
cự cu75
cưa cua7
cửa cu7a3
cứa cu7a1
cựa cu7a5
cức cu7c1
cực cu7c5
cửi cu7i3
cưng cung7
cửng cu7ng3
cứng cu7ng1
cước cuo7c1
cược cuo7c5
cười cuo7i2
cưỡi cuo7i4
cưới cuo7i1
cườm cuo7m2
cương cuong7
cường cuo7ng2
cưỡng cuo7ng4
cướp cuo7p1
cứt cu7t1
cưu cuu7
cừu cu7u2
cửu cu7u3
cữu cu7u4
cứu cu7u1
cựu cu7u5
dà da2
dả da3
dã da4
dá da1
dạ da5
dác dac1
dạc dac5
dách dach1
dạch dach5
dài dai2
dải dai3
dãi dai4
dái dai1
dại dai5
dàm dam2
dảm dam3
dám dam1
dạm dam5
dàn dan2
dản dan3
dãn dan4
dán dan1
dạn dan5
dàng dang2
dáng dang1
dạng dang5
dành danh2
dảnh danh3
dánh danh1
dào dao2
dáo dao1
dạo dao5
dáp dap1
dát dat1
dạt dat5
dàu dau2
dáu dau1
dày day2
dảy day3
dãy day4
dáy day1
dạy day5
dắc da8c1
dặc da8c5
dăm dam8
dằm da8m2
dặm da8m5
dăn dan8
dằn da8n2
dẳn da8n3
dẵn da8n4
dặn da8n5
dăng dang8
dằng da8ng2
dẳng da8ng3
dẵng da8ng4
dắng da8ng1
dặng da8ng5
dắt da8t1
dặt da8t5
dâ da6
dậ da65
dâm dam6
dầm da6m2
dẩm da6m3
dẫm da6m4
dấm da6m1
dậm da6m5
dân dan6
dần da6n2
dẩn da6n3
dẫn da6n4
dấn da6n1
dận da6n5
dâne dane6
dâng dang6
dậng da6ng5
dấp da6p1
dập da6p5
dật da6t5
dâu dau6
dầu da6u2
dẩu da6u3
dẫu da6u4
dấu da6u1
dậu da6u5
dây day6
dầy da6y2
dẩy da6y3
dẫy da6y4
dấy da6y1
dậy da6y5
dè de2
dẻ de3
dẽ de4
dé de1
dẹ de5
déc dec1
dèm dem2
dẻm dem3
dém dem1
dẹm dem5
dèn den2
dèo deo2
dẻo deo3
déo deo1
dẹo deo5
dép dep1
dẹp dep5
dẹt det5
dê de6
dề de62
dể de63
dễ de64
dế de61
dệ de65
dềm de6m2
dền de6n2
dện de6n5
dềng de6ng2
dênh denh6
dềnh de6nh2
dết de6t1
dệt de6t5
dêu deu6
dều de6u2
dệu de6u5
dì di2
dỉ di3
dĩ di4
dí di1
dị di5
dìa dia2
dĩa dia4
día dia1
dịa dia5
dích dich1
dịch dich5
diếc die6c1
diệc die6c5
diêm diem6
diềm die6m2
diễm die6m4
diếm die6m1
diệm die6m5
diên dien6
diển die6n3
diễn die6n4
diến die6n1
diện die6n5
diềng die6ng2
diếp die6p1
diệp die6p5
diết die6t1
diệt die6t5
diêu dieu6
diều die6u2
diểu die6u3
diễu die6u4
diếu die6u1
diệu die6u5
dìm dim2
dím dim1
dĩn din4
dín din1
dĩnh dinh4
dính dinh1
dịnh dinh5
díp dip1
dịp dip5
dìt dit2
dít dit1
dịt dit5
dìu diu2
díu diu1
dịu diu5
dliê dlie6
dò do2
dỏ do3
dó do1
dọ do5
doãi doai4
doãn doan4
doãng doang4
doạng doang5
doành doanh2
dóc doc1
dọc doc5
dòi doi2
dỏi doi3
dõi doi4
dói doi1
dọi doi5
dòm dom2
dỏm dom3
dóm dom1
dòn don2
dón don1
dọn don5
dòng dong2
dỏng dong3
dõng dong4
dóng dong1
dọng dong5
dọp dop5
dót dot1
dô do6
dồ do62
dổ do63
dỗ do64
dộ do65
dốc do6c1
dộc do6c5
dôi doi6
dồi do6i2
dổi do6i3
dỗi do6i4
dối do6i1
dội do6i5
dôn don6
dồn do6n2
dốn do6n1
dộn do6n5
dông dong6
dỗng do6ng4
dống do6ng1
dộng do6ng5
dộp do6p5
dốt do6t1
dột do6t5
dơ do7
dờ do72
dở do73
dỡ do74
dớ do71
dợ do75
dơi doi7
dời do7i2
dới do7i1
dợi do7i5
dởm do7m3
dơn don7
dờn do7n2
dỡn do7n4
dớn do7n1
dợn do7n5
dớp do7p1
dợp do7p5
dớt do7t1
drăm dram8
drăng drang8
dù du2
dủ du3
dũ du4
dú du1
dụ du5
dùa dua2
dũa dua4
dúa dua1
dụa dua5
duân duan6
duẩn dua6n3
duẫn dua6n4
duật dua6t5
dục duc5
duệ due65
duềnh due6nh2
dùi dui2
dủi dui3
dũi dui4
dúi dui1
dụi dui5
dùm dum2
dúm dum1
dụm dum5
dùn dun2
dún dun1
dùng dung2
dũng dung4
dúng dung1
dụng dung5
duốc duo6c1
duộc duo6c5
duôi duoi6
duổi duo6i3
duỗi duo6i4
duối duo6i1
duồn duo6n2
duông duong6
duồng duo6ng2
dút dut1
dụt dut5
dụy duy5
duyên duyen6
duyến duye6n1
duyện duye6n5
duyệt duye6t5
dư du7
dừ du72
dử du73
dữ du74
dứ du71
dự du75
dưa dua7
dừa du7a2
dứa du7a1
dựa du7a5
dức du7c1
dực du7c5
dưng dung7
dừng du7ng2
dửng du7ng3
dững du7ng4
dứng du7ng1
dựng du7ng5
dược duo7c5
dười duo7i2
dưới duo7i1
dượi duo7i5
dương duong7
dường duo7ng2
dưỡng duo7ng4
dướng duo7ng1
dượng duo7ng5
dượt duo7t5
dứt du7t1
dựt du7t5
dửu du7u3
dữu du7u4
dứu du7u1
dựu du7u5
dýn dyn1
đ d9
đa da9
đà da92
đả da93
đã da94
đá da91
đạ da95
đac dac9
đác dac91
đạc dac95
đách dach91
đạch dach95
đai dai9
đài dai92
đãi dai94
đái dai91
đại dai95
đam dam9
đàm dam92
đảm dam93
đám dam91
đạm dam95
đan dan9
đàn dan92
đản dan93
đán dan91
đạn dan95
đang dang9
đàng dang92
đảng dang93
đãng dang94
đáng dang91
đanh danh9
đành danh92
đảnh danh93
đánh danh91
đao dao9
đào dao92
đảo dao93
đáo dao91
đạo dao95
đáp dap91
đạp dap95
đát dat91
đạt dat95
đau dau9
đáu dau91
đay day9
đày day92
đảy day93
đãy day94
đáy day91
đẵ da894
đắc da8c91
đặc da8c95
đăk dak98
đắk da8k91
đăm dam98
đằm da8m92
đẵm da8m94
đắm da8m91
đằn da8n92
đẵn da8n94
đắn da8n91
đặn da8n95
đăng dang98
đằng da8ng92
đẳng da8ng93
đẵng da8ng94
đắng da8ng91
đặng da8ng95
đắp da8p91
đắt da8t91
đặt da8t95
đằu da8u92
đâm dam96
đầm da6m92
đẫm da6m94
đấm da6m91
đậm da6m95
đần da6n92
đẫn da6n94
đấn da6n91
đận da6n95
đâng dang96
đấng da6ng91
đập da6p95
đất da6t91
đật da6t95
đâu dau96
đầu da6u92
đẩu da6u93
đấu da6u91
đậu da6u95
đây day96
đầy da6y92
đẩy da6y93
đẫy da6y94
đấy da6y91
đậy da6y95
đe de9
đè de92
đẻ de93
đẽ de94
đéc dec91
đem dem9
đèm dem92
đen den9
đèn den92
đẹn den95
đeng deng9
đeo deo9
đèo deo92
đẽo deo94
đéo deo91
đẹp dep95
đét det91
đẹt det95
đê de96
đề de692
để de693
đễ de694
đế de691
đệ de695
đếch de6ch91
đêh deh96
đêm dem96
đềm de6m92
đếm de6m91
đệm de6m95
đên den96
đền de6n92
đến de6n91
đênh denh96
đềnh de6nh92
đểnh de6nh93
đễnh de6nh94
đệp de6p95
đêu deu96
đều de6u92
đểu de6u93
đg dg9
đgt dgt9
đhur dhur9
đi di9
đì di92
đĩ di94
đị di95
đìa dia92
đỉa dia93
đĩa dia94
đía dia91
địa dia95
đích dich91
địch dich95
đien dien9
điếc die6c91
điềm die6m92
điểm die6m93
điếm die6m91
điệm die6m95
điên dien96
điền die6n92
điển die6n93
điện die6n95
điêng dieng96
điếng die6ng91
điệp die6p95
điệt die6t95
điêu dieu96
điều die6u92
điểu die6u93
điếu die6u91
điệu die6u95
đin din9
đìn din92
đinh dinh9
đình dinh92
đỉnh dinh93
đĩnh dinh94
đính dinh91
định dinh95
đip dip9
đít dit91
địt dit95
điu diu9
đìu diu92
địu diu95
đo do9
đò do92
đỏ do93
đõ do94
đó do91
đọ do95
đoa doa9
đoác doac91
đoài doai92
đoái doai91
đoan doan9
đoàn doan92
đoản doan93
đoán doan91
đoạn doan95
đoàng doang92
đoảng doang93
đoãng doang94
đoành doanh92
đoạt doat95
đoc doc9
đóc doc91
đọc doc95
đoi doi9
đòi doi92
đỏi doi93
đói doi91
đọi doi95
đom dom9
đòm dom92
đỏm dom93
đóm dom91
đon don9
đòn don92
đón don91
đọn don95
đong dong9
đòng dong92
đỏng dong93
đóng dong91
đọng dong95
đọp dop95
đót dot91
đọt dot95
đô do96
đồ do692
đổ do693
đỗ do694
đố do691
độ do695
đôc doc96
đốc do6c91
độc do6c95
đôi doi96
đồi do6i92
đổi do6i93
đỗi do6i94
đối do6i91
đội do6i95
đôm dom96
đồm do6m92
đốm do6m91
đôn don96
đồn do6n92
đốn do6n91
độn do6n95
đông dong96
đồng do6ng92
đổng do6ng93
đỗng do6ng94
đống do6ng91
động do6ng95
đốp do6p91
độp do6p95
đốt do6t91
đột do6t95
đơ do97
đờ do792
đở do793
đỡ do794
đớ do791
đợ do795
đời do7i92
đới do7i91
đợi do7i95
đơm dom97
đờm do7m92
đởm do7m93
đơn don97
đờn do7n92
đởn do7n93
đớn do7n91
đớp do7p91
đợp do7p95
đớt do7t91
đợt do7t95
đpcm dpcm9
đpctntư dpctntu97
đph dph9
đphg dphg9
đqg dqg9
đqgtnn dqgtnn9
đqt dqt9
đr dr9
đrá dra91
đrao drao9
đrăk drak98
đrắk dra8k91
đrong drong9
đrô dro96
đrung drung9
đs ds9
đsp dsp9
đt dt9
đtb dtb9
đtbxh dtbxh9
đtl dtl9
đtla dtla9
đtlx dtlx9
đtm dtm9
đtntl dtntl9
đtpt dtpt9
đts dts9
đtt dtt9
đttp dttp9
đttpmt dttpmt9
đttqg dttqg9
đu du9
đù du92
đủ du93
đú du91
đụ du95
đua dua9
đùa dua92
đũa dua94
đúa dua91
đúc duc91
đục duc95
đuểnh due6nh93
đui dui9
đùi dui92
đủi dui93
đũi dui94
đum dum9
đùm dum92
đúm dum91
đun dun9
đùn dun92
đún dun91
đụn dun95
đung dung9
đùng dung92
đủng dung93
đũng dung94
đúng dung91
đụng dung95
đuốc duo6c91
đuôi duoi96
đuổi duo6i93
đuối duo6i91
đuồn duo6n92
đuỗn duo6n94
đuống duo6ng91
đuột duo6t95
đup dup9
đúp dup91
đụp dup95
đút dut91
đụt dut95
đừ du792
đử du793
đứ du791
đưa dua97
đừa du7a92
đứa du7a91
đức du7c91
đực du7c95
đưng dung97
đừng du7ng92
đứng du7ng91
đựng du7ng95
đước duo7c91
được duo7c95
đười duo7i92
đượm duo7m95
đườn duo7n92
đưỡn duo7n94
đương duong97
đường duo7ng92
đứt du7t91
đv dv9
đvn dvn9
đvqg dvqg9
đxx dxx9
è e2
ẻ e3
ẽ e4
é e1
ẹ e5
éc ec1
ẹc ec5
ẻh eh3
éh eh1
èm em2
ẻm em3
ẽm em4
ém em1
ẹm em5
èn en2
ẻn en3
ẽn en4
én en1
ẹn en5
èng eng2
ẻng eng3
éng eng1
èo eo2
ẻo eo3
ẽo eo4
éo eo1
ẹo eo5
ép ep1
ẹp ep5
ét et1
ẹt et5
ê e6
ề e62
ể e63
ễ e64
ế e61
ệ e65
êa ea6
êbur ebur6
êc ec6
ếc e6c1
ệc e6c5
ếch e6ch1
ệch e6ch5
êh eh6
êm em6
ềm e6m2
ểm e6m3
ễm e6m4
ếm e6m1
ệm e6m5
ên en6
ền e6n2
ển e6n3
ễn e6n4
ến e6n1
ện e6n5
êng eng6
ềng e6ng2
ểng e6ng3
ễng e6ng4
ếng e6ng1
ệng e6ng5
ênh enh6
ềnh e6nh2
ểnh e6nh3
ễnh e6nh4
ếnh e6nh1
ệnh e6nh5
ếp e6p1
ệp e6p5
êpôc epoc66
êpốc epo6c61
êt et6
ết e6t1
ệt e6t5
êtan etan6
ête ete6
êu eu6
ều e6u2
ểu e6u3
ễu e6u4
ếu e6u1
ệu e6u5
êy ey6
fà fa2
frăng frang8
fría fria1
fù fu2
fú fu1
fútbol futbol1
gà ga2
gả ga3
gã ga4
gá ga1
gạ ga5
gác gac1
gạc gac5
gạch gach5
gài gai2
gãi gai4
gái gai1
galông galong6
gàn gan2
gán gan1
gạn gan5
gàng gang2
gành ganh2
gảnh ganh3
gánh ganh1
gạnh ganh5
gào gao2
gáo gao1
gạo gao5
gáp gap1
gát gat1
gạt gat5
gàu gau2
gáu gau1
gày gay2
gảy gay3
gãy gay4
gáy gay1
gạy gay5
gặc ga8c5
găm gam8
gằm ga8m2
gắm ga8m1
gặm ga8m5
găn gan8
gằn ga8n2
gắn ga8n1
gặn ga8n5
găng gang8
gắng ga8ng1
gặng ga8ng5
gắp ga8p1
gặp ga8p5
gắt ga8t1
gặt ga8t5
gấc ga6c1
gâm gam6
gầm ga6m2
gẩm ga6m3
gẫm ga6m4
gấm ga6m1
gậm ga6m5
gân gan6
gần ga6n2
gấn ga6n1
gận ga6n5
gầng ga6ng2
gấp ga6p1
gập ga6p5
gất ga6t1
gật ga6t5
gâu gau6
gầu ga6u2
gẫu ga6u4
gấu ga6u1
gây gay6
gầy ga6y2
gẩy ga6y3
gẫy ga6y4
gấy ga6y1
gậy ga6y5
gẻ ge3
gém gem1
gép gep1
gềnh ge6nh2
gệt ge6t5
ghè ghe2
ghẻ ghe3
ghẽ ghe4
ghé ghe1
ghẹ ghe5
ghém ghem1
ghèn ghen2
ghẹn ghen5
ghẹo gheo5
ghép ghep1
ghét ghet1
ghê ghe6
ghề ghe62
ghế ghe61
ghệ ghe65
ghếch ghe6ch1
ghềnh ghe6nh2
ghểnh ghe6nh3
ghệt ghe6t5
ghì ghi2
ghĩa ghia4
ghiếc ghie6c1
ghiền ghie6n2
ghìm ghim2
ghín ghin1
ghinê ghine6
ghình ghinh2
gì gi2
gỉ gi3
gĩ gi4
gí gi1
già gia2
giả gia3
giã gia4
giá gia1
giạ gia5
giác giac1
giạc giac5
giải giai3
giãi giai4
giái giai1
giại giai5
giàm giam2
giảm giam3
giám giam1
giạm giam5
giàn gian2
giản gian3
giãn gian4
gián gian1
giàng giang2
giảng giang3
giáng giang1
giạng giang5
giành gianh2
giảnh gianh3
giào giao2
giảo giao3
giáo giao1
giáp giap1
giát giat1
giạt giat5
giàu giau2
giảu giau3
giavê giave6
giày giay2
giãy giay4
giáy giay1
giặc gia8c5
giăm giam8
giằm gia8m2
giẵm gia8m4
giắm gia8m1
giặm gia8m5
giằn gia8n2
giẵn gia8n4
giắn gia8n1
giặn gia8n5
giăng giang8
giằng gia8ng2
giắng gia8ng1
giặng gia8ng5
giặp gia8p5
giắt gia8t1
giặt gia8t5
giâ gia6
giấc gia6c1
giâm giam6
giầm gia6m2
giẫm gia6m4
giấm gia6m1
giậm gia6m5
giân gian6
giần gia6n2
giấn gia6n1
giận gia6n5
giầng gia6ng2
giẩng gia6ng3
giầnh gia6nh2
giấp gia6p1
giập gia6p5
giất gia6t1
giật gia6t5
giâu giau6
giầu gia6u2
giấu gia6u1
giậu gia6u5
giây giay6
giầy gia6y2
giẩy gia6y3
giẫy gia6y4
giấy gia6y1
gíc gic1
gích gich1
giẻ gie3
giẽ gie4
gié gie1
giéc giec1
gièm giem2
giém giem1
giẻo gieo3
giéo gieo1
giẹo gieo5
giép giep1
giẹp giep5
giẹt giet5
giê gie6
giề gie62
giếc gie6c1
giệch gie6ch5
giếm gie6m1
giền gie6n2
giêng gieng6
giềng gie6ng2
giếng gie6ng1
giềnh gie6nh2
giệnh gie6nh5
giết gie6t1
giệt gie6t5
giễu gie6u4
giếu gie6u1
giệu gie6u5
gìm gim2
gìn gin2
giò gio2
giỏ gio3
giõ gio4
gió gio1
giọ gio5
gióc gioc1
giọc gioc5
giòi gioi2
giỏi gioi3
giõi gioi4
giói gioi1
giọi gioi5
giòn gion2
giỏn gion3
gión gion1
giọn gion5
giòng giong2
giỏng giong3
giõng giong4
gióng giong1
giọng giong5
giót giot1
giọt giot5
giô gio6
giồ gio62
giổ gio63
giỗ gio64
giộ gio65
giốc gio6c1
giôi gioi6
giồi gio6i2
giổi gio6i3
giỗi gio6i4
giối gio6i1
giội gio6i5
giôn gion6
giông giong6
giồng gio6ng2
giống gio6ng1
giộng gio6ng5
giộp gio6p5
giốt gio6t1
giột gio6t5
giơ gio7
giờ gio72
giở gio73
giỡ gio74
giớ gio71
giời gio7i2
giới gio7i1
giớm gio7m1
giợm gio7m5
giờn gio7n2
giởn gio7n3
giỡn gio7n4
giợn gio7n5
giợt gio7t5
gíp gip1
gít git1
gịt git5
giù giu2
giũ giu4
giú giu1
giùa giua2
giũa giua4
giụa giua5
giục giuc5
giùi giui2
giủi giui3
giúi giui1
giụi giui5
giùm gium2
giúm gium1
giụm gium5
giùn giun2
giún giun1
giùng giung2
giủng giung3
giuộc giuo6c5
giuỗi giuo6i4
giuộm giuo6m5
giúp giup1
giư giu7
giừ giu72
giữ giu74
giưa giua7
giữa giu7a4
giứa giu7a1
giương giuong7
giường giuo7ng2
giướng giuo7ng1
giượng giuo7ng5
giựt giu7t5
glây glay6
gò go2
gõ go4
gó go1
gọ go5
góc goc1
gòi goi2
gỏi goi3
gõi goi4
gói goi1
gọi goi5
gỏl gol3
gòn gon2
gón gon1
gọn gon5
gòng gong2
gỏng gong3
gọng gong5
góp gop1
gót got1
gọt got5
gô go6
gồ go62
gổ go63
gỗ go64
gộ go65
gốc go6c1
gộc go6c5
gồi go6i2
gối go6i1
gội go6i5
gôm gom6
gồm go6m2
gốm go6m1
gôn gon6
gông gong6
gồng go6ng2
gống go6ng1
gốp go6p1
gộp go6p5
gột go6t5
gơ go7
gờ go72
gở go73
gỡ go74
gớc go7c1
gởi go7i3
gới go7i1
gợi go7i5
gờm go7m2
gớm go7m1
gơn gon7
gờn go7n2
gợn go7n5
gợt go7t5
grát grat1
gù gu2
gũ gu4
gú gu1
gụ gu5
gục guc5
guê gue6
gùi gui2
gũi gui4
gụi gui5
gùn gun2
gún gun1
gùng gung2
gúng gung1
guó guo1
guốc guo6c1
guộc guo6c5
guồi guo6i2
guồng guo6ng2
guột guo6t5
gút gut1
gụt gut5
gư gu7
gừ gu72
gừa gu7a2
gửi gu7i3
gừng gu7ng2
gứng gu7ng1
gươm guom7
gườm guo7m2
gượm guo7m5
gương guong7
gường guo7ng2
gưỡng guo7ng4
gượng guo7ng5
gỵa gya5
hà ha2
hả ha3
há ha1
hạ ha5
hác hac1
hạc hac5
hách hach1
hạch hach5
hài hai2
hải hai3
hãi hai4
hái hai1
hại hai5
haló halo1
hàm ham2
hảm ham3
hãm ham4
hám ham1
hạm ham5
hàn han2
hản han3
hãn han4
hán han1
hạn han5
hàng hang2
hảng hang3
hãng hang4
háng hang1
hạng hang5
hành hanh2
hảnh hanh3
hãnh hanh4
hánh hanh1
hạnh hanh5
hào hao2
hảo hao3
hão hao4
háo hao1
hạo hao5
háp hap1
hạp hap5
hát hat1
hạt hat5
hàu hau2
háu hau1
hảy hay3
hãy hay4
háy hay1
hạy hay5
hắ ha81
hắc ha8c1
hặc ha8c5
hăm ham8
hằm ha8m2
hẳm ha8m3
hằn ha8n2
hẳn ha8n3
hắn ha8n1
hăng hang8
hằng ha8ng2
hẵng ha8ng4
hắng ha8ng1
hắt ha8t1
hấc ha6c1
hậc ha6c5
hâm ham6
hầm ha6m2
hẩm ha6m3
hẫm ha6m4
hấm ha6m1
hậm ha6m5
hân han6
hẫn ha6n4
hấn ha6n1
hận ha6n5
hâng hang6
hẩng ha6ng3
hẫng ha6ng4
hấng ha6ng1
hấp ha6p1
hập ha6p5
hất ha6t1
hật ha6t5
hâu hau6
hầu ha6u2
hẩu ha6u3
hẫu ha6u4
hấu ha6u1
hậu ha6u5
hây hay6
hầy ha6y2
hẩy ha6y3
hẫy ha6y4
hấy ha6y1
hđbt hdbt9
hè he2
hẻ he3
hẽ he4
hé he1
hẹ he5
héc hec1
hécta hecta1
hèm hem2
hẻm hem3
hẹm hem5
hèn hen2
hẻn hen3
hẹn hen5
hẹng heng5
hèo heo2
hẻo heo3
héo heo1
hép hep1
hẹp hep5
hét het1
hẹt het5
hê he6
hề he62
hể he63
hễ he64
hế he61
hệ he65
hếch he6ch1
hệch he6ch5
hêli heli6
hềm he6m2
hên hen6
hển he6n3
hến he6n1
hênh henh6
hềnh he6nh2
hểnh he6nh3
hết he6t1
hệt he6t5
hêu heu6
hều he6u2
hểu he6u3
hếu he6u1
hì hi2
hỉ hi3
hĩ hi4
hí hi1
hích hich1
hịch hich5
hiêm hiem6
hiềm hie6m2
hiểm hie6m3
hiếm hie6m1
hiên hien6
hiền hie6n2
hiển hie6n3
hiến hie6n1
hiện hie6n5
hiêng hieng6
hiểng hie6ng3
hiếng hie6ng1
hiếp hie6p1
hiệp hie6p5
hiết hie6t1
hiệt hie6t5
hiêu hieu6
hiều hie6u2
hiểu hie6u3
hiếu hie6u1
hiệu hie6u5
hĩm him4
hỉn hin3
hình hinh2
hỉnh hinh3
hĩnh hinh4
híp hip1
hít hit1
hìu hiu2
hmông hmong6
hnđ hnd9
hò ho2
hỏ ho3
hó ho1
họ ho5
hoác hoac1
hoách hoach1
hoạch hoach5
hoài hoai2
hoải hoai3
hoãi hoai4
hoái hoai1
hoại hoai5
hoàn hoan2
hoản hoan3
hoãn hoan4
hoán hoan1
hoạn hoan5
hoàng hoang2
hoảng hoang3
hoãng hoang4
hoáng hoang1
hoành hoanh2
hoảnh hoanh3
hoánh hoanh1
hoạnh hoanh5
hoát hoat1
hoạt hoat5
hoáy hoay1
hoắc hoa8c1
hoặc hoa8c5
hoăm hoam8
hoắm hoa8m1
hoằn hoa8n2
hoẳn hoa8n3
hoăng hoang8
hoằng hoa8ng2
hoẵng hoa8ng4
hoắt hoa8t1
hoân hoan6
hóc hoc1
học hoc5
hoẻn hoen3
hoét hoet1
hoẹt hoet5
hòi hoi2
hỏi hoi3
hói hoi1
hòm hom2
hỏm hom3
hõm hom4
hóm hom1
hòn hon2
hỏn hon3
hón hon1
hòng hong2
hỏng hong3
hóng hong1
họng hong5
hóp hop1
họp hop5
hót hot1
hô ho6
hồ ho62
hổ ho63
hỗ ho64
hố ho61
hộ ho65
hốc ho6c1
hộc ho6c5
hôi hoi6
hồi ho6i2
hổi ho6i3
hối ho6i1
hội ho6i5
hôm hom6
hồm ho6m2
hổm ho6m3
hỗm ho6m4
hôn hon6
hồn ho6n2
hổn ho6n3
hỗn ho6n4
hộn ho6n5
hông hong6
hồng ho6ng2
hổng ho6ng3
hỗng ho6ng4
hống ho6ng1
hốp ho6p1
hộp ho6p5
hốt ho6t1
hột ho6t5
hôtel hotel6
hơ ho7
hờ ho72
hở ho73
hớ ho71
hơi hoi7
hời ho7i2
hởi ho7i3
hỡi ho7i4
hới ho7i1
hợi ho7i5
hờm ho7m2
hớm ho7m1
hợm ho7m5
hơn hon7
hờn ho7n2
hớn ho7n1
hơng hong7
hớp ho7p1
hợp ho7p5
hớt ho7t1
hợt ho7t5
hrê hre6
hrệ hre65
hù hu2
hủ hu3
hũ hu4
hú hu1
hụ hu5
hùa hua2
húa hua1
huân huan6
huẩn hua6n3
huấn hua6n1
huất hua6t1
huầy hua6y2
húc huc1
hục huc5
huê hue6
huề hue62
huế hue61
huệ hue65
huếch hue6ch1
huênh huenh6
huểnh hue6nh3
huếnh hue6nh1
hùi hui2
hủi hui3
húi hui1
hụi hui5
hùm hum2
hũm hum4
húm hum1
hụm hum5
hùn hun2
hủn hun3
hùng hung2
hủng hung3
húng hung1
huổi huo6i3
huông huong6
huồng huo6ng2
huống huo6ng1
huơ huo7
huờ huo72
huơn huon7
huờn huo7n2
huỡn huo7n4
húp hup1
hụp hup5
hút hut1
hụt hut5
huých huych1
huỵch huych5
huyên huyen6
huyền huye6n2
huyển huye6n3
huyễn huye6n4
huyến huye6n1
huyện huye6n5
huyết huye6t1
huyệt huye6t5
huỳnh huynh2
huỷnh huynh3
huýnh huynh1
huýt huyt1
hư hu7
hừ hu72
hử hu73
hữ hu74
hứ hu71
hự hu75
hưa hua7
hừa hu7a2
hữa hu7a4
hứa hu7a1
hức hu7c1
hực hu7c5
hừm hu7m2
hưn hun7
hưng hung7
hừng hu7ng2
hửng hu7ng3
hững hu7ng4
hứng hu7ng1
hước huo7c1
hướm huo7m1
hượm huo7m5
hương huong7
hường huo7ng2
hưởng huo7ng3
hướng huo7ng1
hươu huou7
hưu huu7
hữu hu7u4
hựu hu7u5
hỷ hy3
hỹ hy4
hý hy1
hyđro hydro9
ì i2
ỉ i3
ĩ i4
í i1
ị i5
ìa ia2
ỉa ia3
ĩa ia4
ía ia1
ịa ia5
íc ic1
ỉch ich3
ích ich1
ịch ich5
ìh ih2
ìi ii2
ìm im2
ỉm im3
ĩm im4
ím im1
ịm im5
ìn in2
ỉn in3
ĩn in4
ín in1
ịn in5
ỉng ing3
íng ing1
ịng ing5
ình inh2
ỉnh inh3
ĩnh inh4
ính inh1
ịnh inh5
iốt io6t1
iới io7i1
íp ip1
ịp ip5
ít it1
ịt it5
ìu iu2
ỉu iu3
ĩu iu4
íu iu1
ịu iu5
iý iy1
jà ja2
jì ji2
jí ji1
jó jo1
josé jose1
jú ju1
jút jut1
jữ ju74
kách kach1
kađai kadai9
kài kai2
kalá kala1
kalú kalu1
kạn kan5
kcách kcach1
kđrao kdrao9
kè ke2
kẻ ke3
kẽ ke4
ké ke1
kẹ ke5
kéc kec1
kèm kem2
kẻm kem3
kẽm kem4
kém kem1
kèn ken2
kén ken1
kẹn ken5
kẻng keng3
kèo keo2
kẻo keo3
kẽo keo4
kéo keo1
kẹo keo5
kép kep1
kẹp kep5
két ket1
kẹt ket5
kê ke6
kề ke62
kể ke63
kế ke61
kệ ke65
kếch ke6ch1
kệch ke6ch5
kềm ke6m2
kên ken6
kền ke6n2
kêng keng6
kênh kenh6
kềnh ke6nh2
kễnh ke6nh4
kệnh ke6nh5
kếp ke6p1
kết ke6t1
kêu keu6
kều ke6u2
kgông kgong6
khà kha2
khả kha3
khá kha1
khạ kha5
khác khac1
khạc khac5
khách khach1
khải khai3
khái khai1
khại khai5
khảm kham3
khám kham1
khàn khan2
khản khan3
khán khan1
khàng khang2
khảng khang3
kháng khang1
khạng khang5
khành khanh2
khảnh khanh3
khánh khanh1
khào khao2
khảo khao3
kháo khao1
khạo khao5
kháp khap1
khạp khap5
khát khat1
khạt khat5
kháu khau1
khảy khay3
kháy khay1
khắ kha81
khắc kha8c1
khặc kha8c5
khăm kham8
khẳm kha8m3
khắm kha8m1
khăn khan8
khằn kha8n2
khẳn kha8n3
khắn kha8n1
khăng khang8
khằng kha8ng2
khẳng kha8ng3
khắng kha8ng1
khắp kha8p1
khắt kha8t1
khấc kha6c1
khâm kham6
khẩm kha6m3
khấm kha6m1
khân khan6
khẩn kha6n3
khấn kha6n1
khẩng kha6ng3
khấng kha6ng1
khấp kha6p1
khập kha6p5
khất kha6t1
khật kha6t5
khâu khau6
khẩu kha6u3
khấu kha6u1
khậu kha6u5
khẩy kha6y3
khè khe2
khẻ khe3
khẽ khe4
khé khe1
khẹ khe5
khẹc khec5
khém khem1
khèn khen2
khén khen1
khèo kheo2
khẻo kheo3
khéo kheo1
khép khep1
khét khet1
khẹt khet5
khê khe6
khề khe62
khể khe63
khế khe61
khệ khe65
khến khe6n1
khệng khe6ng5
khênh khenh6
khềnh khe6nh2
khểnh khe6nh3
khệnh khe6nh5
khêu kheu6
khều khe6u2
khểu khe6u3
khì khi2
khỉ khi3
khí khi1
khị khi5
khìa khia2
khỉa khia3
khía khia1
khịa khia5
khích khich1
khiêm khiem6
khiểm khie6m3
khiếm khie6m1
khiệm khie6m5
khiên khien6
khiền khie6n2
khiển khie6n3
khiến khie6n1
khiêng khieng6
khiễng khie6ng4
khiếp khie6p1
khiết khie6t1
khiêu khieu6
khiều khie6u2
khiếu khie6u1
khìn khin2
khín khin1
khỉnh khinh3
khĩnh khinh4
khít khit1
khịt khit5
khìu khiu2
khỉu khiu3
khíu khiu1
khịu khiu5
khlá khla1
khò kho2
khỏ kho3
khó kho1
khoác khoac1
khoạc khoac5
khoách khoach1
khoải khoai3
khoái khoai1
khoản khoan3
khoán khoan1
khoảng khoang3
khoáng khoang1
khoảnh khoanh3
khoào khoao2
khoát khoat1
khoạt khoat5
khoáy khoay1
khoắc khoa8c1
khoăm khoam8
khoằm khoa8m2
khoắm khoa8m1
khoăn khoan8
khoắn khoa8n1
khoắng khoa8ng1
khoắt khoa8t1
khóc khoc1
khoèn khoen2
khoèo khoeo2
khoẻo khoeo3
khoét khoet1
khỏi khoi3
khói khoi1
khòm khom2
khóm khom1
khọm khom5
khòn khon2
khọn khon5
khòng khong2
khỏng khong3
khót khot1
khô kho6
khổ kho63
khố kho61
khốc kho6c1
khôg khog6
khôi khoi6
khổi kho6i3
khối kho6i1
khôn khon6
khổn kho6n3
khốn kho6n1
không khong6
khổng kho6ng3
khống kho6ng1
khốt kho6t1
khơ kho7
khờ kho72
khớ kho71
khơi khoi7
khởi kho7i3
khới kho7i1
khơm khom7
khớm kho7m1
khơme khome7
khờn kho7n2
khớn kho7n1
khớp kho7p1
khù khu2
khủ khu3
khũ khu4
khú khu1
khụ khu5
khùa khua2
khủa khua3
khúa khua1
khuân khuan6
khuẩn khua6n3
khuẫn khua6n4
khuâng khuang6
khuất khua6t1
khuây khuay6
khuấy khua6y1
khúc khuc1
khục khuc5
khuê khue6
khuể khue63
khuếch khue6ch1
khúm khum1
khùng khung2
khủng khung3
khuôn khuon6
khuông khuong6
khuơ khuo7
khụt khut5
khuých khuych1
khuyên khuyen6
khuyển khuye6n3
khuyến khuye6n1
khuyết khuye6t1
khuỳnh khuynh2
khuýnh khuynh1
khuỷu khuyu3
khuỵu khuyu5
khư khu7
khừ khu72
khử khu73
khứ khu71
khự khu75
khừa khu7a2
khứa khu7a1
khựa khu7a5
khừng khu7ng2
khửng khu7ng3
khứng khu7ng1
khựng khu7ng5
khước khuo7c1
khươi khuoi7
khươm khuom7
khươn khuon7
khương khuong7
khưỡng khuo7ng4
khướt khuo7t1
khướu khuo7u1
khưu khuu7
khứu khu7u1
khyển khye6n3
kì ki2
kỉ ki3
kĩ ki4
kí ki1
kị ki5
kìa kia2
kỉch kich3
kích kich1
kịch kich5
kiệ kie65
kiêm kiem6
kiềm kie6m2
kiểm kie6m3
kiếm kie6m1
kiệm kie6m5
kiên kien6
kiền kie6n2
kiển kie6n3
kiến kie6n1
kiện kie6n5
kiêng kieng6
kiềng kie6ng2
kiểng kie6ng3
kiễng kie6ng4
kiếng kie6ng1
kiếp kie6p1
kiệp kie6p5
kiết kie6t1
kiệt kie6t5
kiêu kieu6
kiều kie6u2
kiểu kie6u3
kiếu kie6u1
kiệu kie6u5
kiló kilo1
kilô kilo6
kilôgam kilogam6
kilôm kilom6
kilômet kilomet6
kìm kim2
kìn kin2
kín kin1
kịn kin5
kình kinh2
kỉnh kinh3
kính kinh1
kinó kino1
kíp kip1
kịp kip5
kít kit1
kịt kit5
kitô kito6
kĩu kiu4
kíu kiu1
kò ko2
kó ko1
kòp kop2
kót kot1
kô ko6
kốc ko6c1
kôn kon6
kông kong6
kơ ko7
kơi koi7
kpă kpa8
kpăng kpang8
kráp krap1
krăng krang8
krẹ kre5
krêy krey6
krôm krom6
krông krong6
ktlê ktle6
kủ ku3
kúba kuba1
kúc kuc1
kuênh kuenh6
kỳ ky2
kỷ ky3
kỹ ky4
ký ky1
kỵ ky5
là la2
lả la3
lã la4
lá la1
lạ la5
lác lac1
lạc lac5
lách lach1
lạch lach5
lài lai2
lải lai3
lãi lai4
lái lai1
lại lai5
làm lam2
lảm lam3
lãm lam4
lạm lam5
làn lan2
lãn lan4
lán lan1
lạn lan5
làng lang2
lảng lang3
lãng lang4
láng lang1
lạng lang5
lành lanh2
lảnh lanh3
lãnh lanh4
lánh lanh1
lạnh lanh5
lào lao2
lảo lao3
lão lao4
láo lao1
lạo lao5
láp lap1
lạp lap5
lát lat1
lạt lat5
làu lau2
lảu lau3
láu lau1
lạu lau5
lày lay2
lảy lay3
láy lay1
lạy lay5
lắc la8c1
lặc la8c5
lăk lak8
lắk la8k1
lăm lam8
lằm la8m2
lẳm la8m3
lắm la8m1
lặm la8m5
lăn lan8
lằn la8n2
lẳn la8n3
lặn la8n5
lăng lang8
lằng la8ng2
lẳng la8ng3
lẵng la8ng4
lắng la8ng1
lặng la8ng5
lắp la8p1
lặp la8p5
lắt la8t1
lặt la8t5
lấc la6c1
lâm lam6
lầm la6m2
lẩm la6m3
lẫm la6m4
lấm la6m1
lậm la6m5
lân lan6
lần la6n2
lẩn la6n3
lẫn la6n4
lấn la6n1
lận la6n5
lâng lang6
lấng la6ng1
lâp lap6
lấp la6p1
lập la6p5
lất la6t1
lật la6t5
lâu lau6
lầu la6u2
lẩu la6u3
lấu la6u1
lậu la6u5
lây lay6
lầy la6y2
lẩy la6y3
lẫy la6y4
lấy la6y1
lậy la6y5
lè le2
lẻ le3
lẽ le4
lé le1
lẹ le5
léc lec1
lèm lem2
lẻm lem3
lém lem1
lẹm lem5
lèn len2
lẻn len3
lẽn len4
lén len1
lẹn len5
lèng leng2
lẻng leng3
léng leng1
lèo leo2
lẻo leo3
lẽo leo4
léo leo1
lẹo leo5
lép lep1
lẹp lep5
lét let1
lẹt let5
lê le6
lề le62
lể le63
lễ le64
lệ le65
lếch le6ch1
lệch le6ch5
lên len6
lênh lenh6
lềnh le6nh2
lểnh le6nh3
lễnh le6nh4
lệnh le6nh5
lênin lenin6
lết le6t1
lệt le6t5
lêu leu6
lều le6u2
lểu le6u3
lễu le6u4
lếu le6u1
lệu le6u5
lểy le6y3
lếy le6y1
lì li2
lí li1
lị li5
lìa lia2
lía lia1
lịa lia5
líc lic1
lích lich1
lịch lich5
liếc lie6c1
liêm liem6
liềm lie6m2
liễm lie6m4
liếm lie6m1
liệm lie6m5
liên lien6
liền lie6n2
liễn lie6n4
liến lie6n1
liêng lieng6
liềng lie6ng2
liểng lie6ng3
liếng lie6ng1
liệng lie6ng5
liếp lie6p1
liệp lie6p5
liệt lie6t5
liêu lieu6
liều lie6u2
liểu lie6u3
liễu lie6u4
liếu lie6u1
liệu lie6u5
lìm lim2
lỉm lim3
lịm lim5
lìn lin2
lình linh2
lỉnh linh3
lĩnh linh4
lính linh1
lịnh linh5
líp lip1
lịp lip5
lít lit1
lịt lit5
litô lito6
lìu liu2
líu liu1
lịu liu5
lò lo2
lõ lo4
ló lo1
lọ lo5
loạc loac5
loách loach1
loài loai2
loại loai5
loàn loan2
loán loan1
loạn loan5
loàng loang2
loảng loang3
loãng loang4
loáng loang1
loạng loang5
loát loat1
loạt loat5
loăn loan8
loăng loang8
loằng loa8ng2
loắt loa8t1
lóc loc1
lọc loc5
loẻn loen3
loét loet1
loẹt loet5
lòi loi2
lỏi loi3
lõi loi4
lói loi1
lọi loi5
lòm lom2
lỏm lom3
lõm lom4
lóm lom1
lọm lom5
lòn lon2
lỏn lon3
lọn lon5
lòng long2
lỏng long3
lõng long4
lóng long1
lọng long5
lóp lop1
lọp lop5
lót lot1
lọt lot5
lô lo6
lồ lo62
lổ lo63
lỗ lo64
lố lo61
lộ lo65
lôc loc6
lốc lo6c1
lộc lo6c5
lôgic logic6
lôi loi6
lồi lo6i2
lỗi lo6i4
lối lo6i1
lội lo6i5
lôm lom6
lồm lo6m2
lổm lo6m3
lốm lo6m1
lộm lo6m5
lôn lon6
lồn lo6n2
lổn lo6n3
lốn lo6n1
lộn lo6n5
lông long6
lồng lo6ng2
lổng lo6ng3
lộng lo6ng5
lốp lo6p1
lộp lo6p5
lốt lo6t1
lột lo6t5
lơ lo7
lờ lo72
lở lo73
lỡ lo74
lớ lo71
lợ lo75
lơi loi7
lời lo7i2
lởi lo7i3
lỡi lo7i4
lới lo7i1
lợi lo7i5
lờm lo7m2
lởm lo7m3
lỡm lo7m4
lợm lo7m5
lơn lon7
lờn lo7n2
lởn lo7n3
lớn lo7n1
lợn lo7n5
lơng long7
lớp lo7p1
lợp lo7p5
lớt lo7t1
lợt lo7t5
lù lu2
lủ lu3
lũ lu4
lú lu1
lụ lu5
lùa lua2
lũa lua4
lúa lua1
lụa lua5
luán luan1
luân luan6
luẩn lua6n3
luấn lua6n1
luận lua6n5
luật lua6t5
lúc luc1
lục luc5
lùi lui2
lủi lui3
lũi lui4
lúi lui1
lụi lui5
lùm lum2
lủm lum3
lũm lum4
lúm lum1
lụm lum5
lùn lun2
lủn lun3
lũn lun4
lún lun1
lụn lun5
lùng lung2
lủng lung3
lũng lung4
lúng lung1
lụng lung5
luóm luom1
luốc luo6c1
luộc luo6c5
luỗi luo6i4
luôm luom6
luộm luo6m5
luôn luon6
luồn luo6n2
luông luong6
luồng luo6ng2
luỗng luo6ng4
luống luo6ng1
luốt luo6t1
luột luo6t5
lúp lup1
lụp lup5
lút lut1
lụt lut5
luyên luyen6
luyến luye6n1
luyện luye6n5
luyệt luye6t5
luýnh luynh1
lư lu7
lừ lu72
lử lu73
lữ lu74
lự lu75
lưa lua7
lừa lu7a2
lửa lu7a3
lữa lu7a4
lứa lu7a1
lựa lu7a5
lưc luc7
lức lu7c1
lực lu7c5
lừm lu7m2
lưng lung7
lừng lu7ng2
lửng lu7ng3
lững lu7ng4
lứng lu7ng1
lựng lu7ng5
lược luo7c5
lười luo7i2
lưỡi luo7i4
lưới luo7i1
lươm luom7
lườm luo7m2
lượm luo7m5
lươn luon7
lườn luo7n2
lượn luo7n5
lương luong7
lường luo7ng2
lưỡng luo7ng4
lướng luo7ng1
lượng luo7ng5
lướt luo7t1
lượt luo7t5
lứt lu7t1
lưu luu7
lữu lu7u4
lựu lu7u5
lỳ ly2
lỹ ly4
lý ly1
lỵ ly5
mà ma2
mả ma3
mã ma4
má ma1
mạ ma5
mác mac1
mạc mac5
mách mach1
mạch mach5
mài mai2
mải mai3
mãi mai4
mái mai1
mại mai5
màn man2
mản man3
mãn man4
mán man1
mạn man5
màng mang2
mảng mang3
mãng mang4
máng mang1
mạng mang5
mành manh2
mảnh manh3
mãnh manh4
mánh manh1
mạnh manh5
mào mao2
mão mao4
máo mao1
mạo mao5
mạp map5
mát mat1
mạt mat5
matê mate6
matrác matrac1
màu mau2
máu mau1
mày may2
mảy may3
máy may1
mạy may5
mă ma8
mắc ma8c1
mặc ma8c5
măk mak8
măm mam8
mắm ma8m1
măn man8
mằn ma8n2
mẳn ma8n3
mắn ma8n1
mặn ma8n5
măng mang8
mắng ma8ng1
mặp ma8p5
mắt ma8t1
mặt ma8t5
mâm mam6
mầm ma6m2
mẩm ma6m3
mẫm ma6m4
mấm ma6m1
mậm ma6m5
mân man6
mần ma6n2
mẩn ma6n3
mẫn ma6n4
mấn ma6n1
mận ma6n5
mâng mang6
mầng ma6ng2
mâp map6
mấp ma6p1
mập ma6p5
mất ma6t1
mật ma6t5
mâu mau6
mầu ma6u2
mẩu ma6u3
mẫu ma6u4
mấu ma6u1
mậu ma6u5
mây may6
mầy ma6y2
mẩy ma6y3
mấy ma6y1
mè me2
mẻ me3
mẽ me4
mé me1
mẹ me5
méc mec1
mèm mem2
mém mem1
mèn men2
mén men1
mèng meng2
méng meng1
menú menu1
mèo meo2
mẻo meo3
mẽo meo4
méo meo1
mẹo meo5
mép mep1
mẹp mep5
mét met1
mẹt met5
mê me6
mề me62
mể me63
mễ me64
mế me61
mệ me65
mếch me6ch1
mêga mega6
mềm me6m2
mễm me6m4
mên men6
mền me6n2
mễn me6n4
mến me6n1
mênh menh6
mềnh me6nh2
mệnh me6nh5
mết me6t1
mệt me6t5
mêtan metan6
mểu me6u3
mếu me6u1
mì mi2
mỉ mi3
mĩ mi4
mí mi1
mị mi5
mỉa mia3
mĩa mia4
mía mia1
mích mich1
mịch mich5
miẻo mieo3
miên mien6
miền mie6n2
miễn mie6n4
miến mie6n1
miện mie6n5
miêng mieng6
miểng mie6ng3
miếng mie6ng1
miệng mie6ng5
miết mie6t1
miệt mie6t5
miêu mieu6
miều mie6u2
miểu mie6u3
miễu mie6u4
miếu mie6u1
mỉm mim3
mĩm mim4
mím mim1
mìn min2
mịn min5
míng ming1
mình minh2
mỉnh minh3
mính minh1
mịnh minh5
míp mip1
mít mit1
mịt mit5
mìu miu2
míu miu1
mlài mlai2
mlời mlo7i2
mluộm mluo6m5
mnhời mnho7i2
mní mni1
mò mo2
mỏ mo3
mõ mo4
mó mo1
mọ mo5
móc moc1
mọc moc5
mòi moi2
mỏi moi3
mõi moi4
mói moi1
mọi moi5
mòm mom2
mỏm mom3
mõm mom4
móm mom1
mòn mon2
món mon1
mọn mon5
moná mona1
mòng mong2
mỏng mong3
móng mong1
mọng mong5
móp mop1
mọp mop5
mót mot1
mọt mot5
mô mo6
mồ mo62
mổ mo63
mỗ mo64
mố mo61
mộ mo65
môc moc6
mốc mo6c1
mộc mo6c5
môi moi6
mồi mo6i2
mỗi mo6i4
mối mo6i1
mội mo6i5
mộl mo6l5
môm mom6
mồm mo6m2
mômen momen6
môn mon6
mồn mo6n2
mông mong6
mồng mo6ng2
mổng mo6ng3
mỗng mo6ng4
mống mo6ng1
mộng mo6ng5
môt mot6
mốt mo6t1
một mo6t5
mơ mo7
mờ mo72
mở mo73
mỡ mo74
mớ mo71
mợ mo75
mơi moi7
mời mo7i2
mới mo7i1
mợi mo7i5
mơm mom7
mờm mo7m2
mớm mo7m1
mơn mon7
mởn mo7n3
mỡn mo7n4
mớn mo7n1
mớp mo7p1
mrơn mron7
mù mu2
mủ mu3
mũ mu4
mú mu1
mụ mu5
mùa mua2
múa mua1
múc muc1
mục muc5
mùi mui2
mủi mui3
mũi mui4
múi mui1
mụi mui5
mủm mum3
mũm mum4
múm mum1
mùn mun2
mủn mun3
mún mun1
mụn mun5
mùng mung2
mủng mung3
muôi muoi6
muồi muo6i2
muỗi muo6i4
muối muo6i1
muội muo6i5
muỗm muo6m4
muôn muon6
muốn muo6n1
muộn muo6n5
muông muong6
muồng muo6ng2
muổng muo6ng3
muỗng muo6ng4
muống muo6ng1
muốt muo6t1
múp mup1
mụp mup5
muséum museum1
mút mut1
mụt mut5
mư mu7
mự mu75
mưa mua7
mửa mu7a3
mứa mu7a1
mựa mu7a5
mức mu7c1
mực mu7c5
mứn mu7n1
mưng mung7
mừng mu7ng2
mững mu7ng4
mược muo7c5
mươi muoi7
mười muo7i2
mươn muon7
mướn muo7n1
mượn muo7n5
mương muong7
mường muo7ng2
mướp muo7p1
mướt muo7t1
mượt muo7t5
mưỡu muo7u4
mứt mu7t1
mưu muu7
mứu mu7u1
mỳ my2
mỹ my4
mỵ my5
nà na2
nả na3
nã na4
ná na1
nạ na5
nác nac1
nạc nac5
nách nach1
nạch nach5
nài nai2
nải nai3
nãi nai4
nái nai1
nại nai5
nàm nam2
nảm nam3
nám nam1
nạm nam5
nàn nan2
nản nan3
nãn nan4
nán nan1
nạn nan5
nàng nang2
nãng nang4
náng nang1
nạng nang5
nành nanh2
nánh nanh1
nạnh nanh5
nào nao2
não nao4
náo nao1
nạo nao5
nạp nap5
nát nat1
nạt nat5
náu nau1
này nay2
nảy nay3
nãy nay4
náy nay1
nạy nay5
nắc na8c1
nặc na8c5
năm nam8
nằm na8m2
nẳm na8m3
nắm na8m1
năn nan8
nằn na8n2
nắn na8n1
nặn na8n5
năng nang8
nằng na8ng2
nẵng na8ng4
nắng na8ng1
nặng na8ng5
nắp na8p1
nấc na6c1
nâm nam6
nầm na6m2
nẫm na6m4
nấm na6m1
nậm na6m5
nân nan6
nần na6n2
nẫn na6n4
nấn na6n1
nâng nang6
nẫng na6ng4
nấng na6ng1
nậng na6ng5
nấp na6p1
nập na6p5
nất na6t1
nật na6t5
nâu nau6
nẫu na6u4
nấu na6u1
nậu na6u5
nây nay6
nầy na6y2
nẩy na6y3
nẫy na6y4
nấy na6y1
nậy na6y5
nđm ndm9
nè ne2
nẻ ne3
né ne1
ném nem1
nén nen1
nẹn nen5
nèo neo2
nẻo neo3
nẽo neo4
néo neo1
nẹo neo5
nép nep1
nẹp nep5
nét net1
nẹt net5
nê ne6
nề ne62
nể ne63
nễ ne64
nệ ne65
nêm nem6
nếm ne6m1
nệm ne6m5
nên nen6
nền ne6n2
nến ne6n1
nện ne6n5
nếp ne6p1
nết ne6t1
nêu neu6
nếu ne6u1
nếy ne6y1
ngà nga2
ngả nga3
ngã nga4
ngá nga1
ngạ nga5
ngác ngac1
ngạc ngac5
ngách ngach1
ngạch ngach5
ngài ngai2
ngải ngai3
ngãi ngai4
ngái ngai1
ngại ngai5
ngàm ngam2
ngám ngam1
ngàn ngan2
ngán ngan1
ngạn ngan5
ngàng ngang2
ngãng ngang4
ngáng ngang1
ngạng ngang5
ngành nganh2
ngảnh nganh3
ngánh nganh1
ngạnh nganh5
ngào ngao2
ngảo ngao3
ngão ngao4
ngáo ngao1
ngạo ngao5
ngáp ngap1
ngát ngat1
ngạt ngat5
ngàu ngau2
ngáu ngau1
ngày ngay2
ngáy ngay1
ngắc nga8c1
ngăm ngam8
ngằm nga8m2
ngắm nga8m1
ngăn ngan8
ngằn nga8n2
ngắn nga8n1
ngẳng nga8ng3
ngẵng nga8ng4
ngặp nga8p5
ngắt nga8t1
ngặt nga8t5
ngấc nga6c1
ngâm ngam6
ngầm nga6m2
ngẩm nga6m3
ngẫm nga6m4
ngấm nga6m1
ngậm nga6m5
ngân ngan6
ngần nga6n2
ngẩn nga6n3
ngẫn nga6n4
ngấn nga6n1
ngận nga6n5
ngẩng nga6ng3
ngẫng nga6ng4
ngấp nga6p1
ngập nga6p5
ngất nga6t1
ngật nga6t5
ngâu ngau6
ngầu nga6u2
ngẩu nga6u3
ngẫu nga6u4
ngấu nga6u1
ngậu nga6u5
ngây ngay6
ngầy nga6y2
ngấy nga6y1
ngậy nga6y5
ngèo ngeo2
ngẹt nget5
ngệch nge6ch5
nghè nghe2
nghé nghe1
nghẹ nghe5
nghèn nghen2
nghẽn nghen4
nghén nghen1
nghẹn nghen5
nghèo ngheo2
nghẻo ngheo3
nghẽo ngheo4
nghéo ngheo1
nghẹo ngheo5
nghét nghet1
nghẹt nghet5
nghê nghe6
nghề nghe62
nghể nghe63
nghễ nghe64
nghế nghe61
nghệ nghe65
nghếch nghe6ch1
nghệch nghe6ch5
nghển nghe6n3
nghễn nghe6n4
nghến nghe6n1
nghện nghe6n5
nghênh nghenh6
nghểnh nghe6nh3
nghễnh nghe6nh4
nghệt nghe6t5
nghêu ngheu6
nghều nghe6u2
nghểu nghe6u3
nghễu nghe6u4
nghệu nghe6u5
nghì nghi2
nghỉ nghi3
nghĩ nghi4
nghí nghi1
nghị nghi5
nghĩa nghia4
nghía nghia1
nghích nghich1
nghịch nghich5
nghiêm nghiem6
nghiễm nghie6m4
nghiệm nghie6m5
nghiên nghien6
nghiền nghie6n2
nghiễn nghie6n4
nghiến nghie6n1
nghiện nghie6n5
nghiêng nghieng6
nghiênh nghienh6
nghiệp nghie6p5
nghiệt nghie6t5
nghiêu nghieu6
nghìm nghim2
nghỉm nghim3
nghìn nghin2
nghỉn nghin3
nghỉnh nghinh3
nghĩnh nghinh4
nghít nghit1
nghịt nghit5
nghỉu nghiu3
nghịu nghiu5
nghoèo nghoeo2
nghồng ngho6ng2
ngích ngich1
ngịu ngiu5
ngò ngo2
ngỏ ngo3
ngõ ngo4
ngó ngo1
ngọ ngo5
ngoác ngoac1
ngoạc ngoac5
ngoách ngoach1
ngoạch ngoach5
ngoài ngoai2
ngoải ngoai3
ngoái ngoai1
ngoại ngoai5
ngoàm ngoam2
ngoảm ngoam3
ngoạm ngoam5
ngoãn ngoan4
ngoạn ngoan5
ngoảng ngoang3
ngoảnh ngoanh3
ngoãnh ngoanh4
ngoáo ngoao1
ngoáp ngoap1
ngoạt ngoat5
ngoảy ngoay3
ngoáy ngoay1
ngoạy ngoay5
ngoắc ngoa8c1
ngoặc ngoa8c5
ngoằn ngoa8n2
ngoẳn ngoa8n3
ngoằng ngoa8ng2
ngoẵng ngoa8ng4
ngoắng ngoa8ng1
ngoắt ngoa8t1
ngoặt ngoa8t5
ngóc ngoc1
ngọc ngoc5
ngoẻm ngoem3
ngoém ngoem1
ngoẻn ngoen3
ngoèo ngoeo2
ngoẻo ngoeo3
ngoéo ngoeo1
ngoẹo ngoeo5
ngoét ngoet1
ngòi ngoi2
ngõi ngoi4
ngói ngoi1
ngòm ngom2
ngỏm ngom3
ngóm ngom1
ngọm ngom5
ngòn ngon2
ngỏn ngon3
ngón ngon1
ngọn ngon5
ngòng ngong2
ngỏng ngong3
ngõng ngong4
ngóng ngong1
ngọng ngong5
ngóp ngop1
ngót ngot1
ngọt ngot5
ngô ngo6
ngồ ngo62
ngổ ngo63
ngỗ ngo64
ngố ngo61
ngộ ngo65
ngốc ngo6c1
ngộc ngo6c5
ngôi ngoi6
ngồi ngo6i2
ngỗi ngo6i4
ngội ngo6i5
ngôm ngom6
ngồm ngo6m2
ngổm ngo6m3
ngôn ngon6
ngồn ngo6n2
ngổn ngo6n3
ngốn ngo6n1
ngộn ngo6n5
ngông ngong6
ngồng ngo6ng2
ngổng ngo6ng3
ngỗng ngo6ng4
ngộp ngo6p5
ngốt ngo6t1
ngột ngo6t5
ngơ ngo7
ngờ ngo72
ngỡ ngo74
ngớ ngo71
ngợ ngo75
ngơi ngoi7
ngời ngo7i2
ngợi ngo7i5
ngơm ngom7
ngờm ngo7m2
ngỡm ngo7m4
ngợm ngo7m5
ngơn ngon7
ngớn ngo7n1
ngớp ngo7p1
ngợp ngo7p5
ngớt ngo7t1
ngù ngu2
ngủ ngu3
ngũ ngu4
ngú ngu1
ngụ ngu5
ngụa ngua5
nguây nguay6
nguầy ngua6y2
nguẩy ngua6y3
nguấy ngua6y1
nguậy ngua6y5
ngúc nguc1
ngục nguc5
nguếch ngue6ch1
nguệch ngue6ch5
ngùi ngui2
ngủi ngui3
ngũi ngui4
ngủm ngum3
ngụm ngum5
ngùn ngun2
ngủn ngun3
ngùng ngung2
ngủng ngung3
ngúng ngung1
nguôi nguoi6
nguồi nguo6i2
nguội nguo6i5
nguồn nguo6n2
nguơ nguo7
ngụp ngup5
ngút ngut1
ngụt ngut5
nguyên nguyen6
nguyền nguye6n2
nguyễn nguye6n4
nguyện nguye6n5
nguyệt nguye6t5
nguýt nguyt1
nguỷu nguyu3
ngư ngu7
ngừ ngu72
ngữ ngu74
ngứ ngu71
ngự ngu75
ngưa ngua7
ngừa ngu7a2
ngửa ngu7a3
ngữa ngu7a4
ngứa ngu7a1
ngựa ngu7a5
ngực ngu7c5
ngửi ngu7i3
ngưng ngung7
ngừng ngu7ng2
ngửng ngu7ng3
ngứng ngu7ng1
ngước nguo7c1
ngược nguo7c5
ngươi nguoi7
người nguo7i2
ngưởi nguo7i3
ngươn nguon7
ngường nguo7ng2
ngưởng nguo7ng3
ngưỡng nguo7ng4
ngượng nguo7ng5
ngưt ngut7
ngứt ngu7t1
ngưu nguu7
nhà nha2
nhả nha3
nhã nha4
nhá nha1
nhạ nha5
nhác nhac1
nhạc nhac5
nhách nhach1
nhài nhai2
nhải nhai3
nhãi nhai4
nhái nhai1
nhại nhai5
nhàm nham2
nhảm nham3
nhám nham1
nhàn nhan2
nhản nhan3
nhãn nhan4
nhạn nhan5
nhàng nhang2
nhãng nhang4
nháng nhang1
nhạng nhang5
nhành nhanh2
nhảnh nhanh3
nhánh nhanh1
nhạnh nhanh5
nhào nhao2
nhão nhao4
nháo nhao1
nhạo nhao5
nháp nhap1
nhạp nhap5
nhát nhat1
nhạt nhat5
nhàu nhau2
nhảu nhau3
nháu nhau1
nhạu nhau5
nhày nhay2
nhảy nhay3
nháy nhay1
nhạy nhay5
nhắc nha8c1
nhăm nham8
nhằm nha8m2
nhắm nha8m1
nhặm nha8m5
nhăn nhan8
nhằn nha8n2
nhẳn nha8n3
nhẵn nha8n4
nhắn nha8n1
nhặn nha8n5
nhăng nhang8
nhằng nha8ng2
nhẳng nha8ng3
nhẵng nha8ng4
nhắng nha8ng1
nhặng nha8ng5
nhắp nha8p1
nhắt nha8t1
nhặt nha8t5
nhấc nha6c1
nhâm nham6
nhầm nha6m2
nhẩm nha6m3
nhẫm nha6m4
nhấm nha6m1
nhậm nha6m5
nhân nhan6
nhần nha6n2
nhẩn nha6n3
nhẫn nha6n4
nhấn nha6n1
nhận nha6n5
nhâng nhang6
nhấp nha6p1
nhập nha6p5
nhất nha6t1
nhật nha6t5
nhâu nhau6
nhầu nha6u2
nhẩu nha6u3
nhậu nha6u5
nhây nhay6
nhầy nha6y2
nhẩy nha6y3
nhẫy nha6y4
nhấy nha6y1
nhậy nha6y5
nhđm nhdm9
nhè nhe2
nhẻ nhe3
nhẽ nhe4
nhé nhe1
nhẹ nhe5
nhèm nhem2
nhẻm nhem3
nhém nhem1
nhẹm nhem5
nhèn nhen2
nhén nhen1
nhẹn nhen5
nhèo nheo2
nhẻo nheo3
nhẽo nheo4
nhéo nheo1
nhẹo nheo5
nhép nhep1
nhẹp nhep5
nhét nhet1
nhẹt nhet5
nhê nhe6
nhể nhe63
nhễ nhe64
nhếch nhe6ch1
nhệch nhe6ch5
nhện nhe6n5
nhênh nhenh6
nhểu nhe6u3
nhếu nhe6u1
nhệu nhe6u5
nhì nhi2
nhỉ nhi3
nhĩ nhi4
nhí nhi1
nhị nhi5
nhía nhia1
nhích nhich1
nhiếc nhie6c1
nhiêm nhiem6
nhiễm nhie6m4
nhiệm nhie6m5
nhiên nhien6
nhiễn nhie6n4
nhiếp nhie6p1
nhiệp nhie6p5
nhiêt nhiet6
nhiết nhie6t1
nhiệt nhie6t5
nhiêu nhieu6
nhiều nhie6u2
nhiểu nhie6u3
nhiễu nhie6u4
nhiếu nhie6u1
nhím nhim1
nhìn nhin2
nhín nhin1
nhịn nhin5
nhỉnh nhinh3
nhíp nhip1
nhịp nhip5
nhít nhit1
nhịt nhit5
nhìu nhiu2
nhíu nhiu1
nhịu nhiu5
nhò nho2
nhỏ nho3
nhõ nho4
nhó nho1
nhọ nho5
nhoài nhoai2
nhoái nhoai1
nhoàm nhoam2
nhoạm nhoam5
nhoáng nhoang1
nhoạng nhoang5
nhoáy nhoay1
nhoằng nhoa8ng2
nhóc nhoc1
nhọc nhoc5
nhoèn nhoen2
nhoẻn nhoen3
nhoét nhoet1
nhoẹt nhoet5
nhõi nhoi4
nhói nhoi1
nhọi nhoi5
nhòm nhom2
nhỏm nhom3
nhõm nhom4
nhóm nhom1
nhòn nhon2
nhỏn nhon3
nhõn nhon4
nhón nhon1
nhọn nhon5
nhòng nhong2
nhỏng nhong3
nhõng nhong4
nhóng nhong1
nhóp nhop1
nhọp nhop5
nhót nhot1
nhọt nhot5
nhô nho6
nhổ nho63
nhỗ nho64
nhố nho61
nhốc nho6c1
nhôi nhoi6
nhồi nho6i2
nhối nho6i1
nhội nho6i5
nhôm nhom6
nhồm nho6m2
nhổm nho6m3
nhôn nhon6
nhồn nho6n2
nhổn nho6n3
nhốn nho6n1
nhộn nho6n5
nhông nhong6
nhồng nho6ng2
nhộng nho6ng5
nhốt nho6t1
nhột nho6t5
nhơ nho7
nhờ nho72
nhở nho73
nhỡ nho74
nhớ nho71
nhợ nho75
nhơi nhoi7
nhời nho7i2
nhởi nho7i3
nhơm nhom7
nhởm nho7m3
nhớm nho7m1
nhơn nhon7
nhờn nho7n2
nhởn nho7n3
nhỡn nho7n4
nhớn nho7n1
nhợn nho7n5
nhớp nho7p1
nhớt nho7t1
nhợt nho7t5
nhtư nhtu7
nhù nhu2
nhủ nhu3
nhũ nhu4
nhú nhu1
nhụ nhu5
nhúa nhua1
nhụa nhua5
nhuân nhuan6
nhuần nhua6n2
nhuận nhua6n5
nhúc nhuc1
nhục nhuc5
nhuế nhue61
nhuệ nhue65
nhùi nhui2
nhủi nhui3
nhúi nhui1
nhụi nhui5
nhúm nhum1
nhùn nhun2
nhủn nhun3
nhũn nhun4
nhún nhun1
nhùng nhung2
nhủng nhung3
nhũng nhung4
nhúng nhung1
nhụng nhung5
nhuốc nhuo6c1
nhuôm nhuom6
nhuốm nhuo6m1
nhuộm nhuo6m5
nhuồn nhuo6n2
nhút nhut1
nhụt nhut5
nhuyên nhuyen6
nhuyễn nhuye6n4
như nhu7
nhừ nhu72
nhử nhu73
nhữ nhu74
nhứ nhu71
nhự nhu75
nhừa nhu7a2
nhựa nhu7a5
nhức nhu7c1
nhưng nhung7
nhửng nhu7ng3
những nhu7ng4
nhứng nhu7ng1
nhựng nhu7ng5
nhược nhuo7c5
nhương nhuong7
nhường nhuo7ng2
nhưỡng nhuo7ng4
nhướng nhuo7ng1
nhượng nhuo7ng5
nhứt nhu7t1
nhựt nhu7t5
nhữu nhu7u4
nhựu nhu7u5
nì ni2
nỉ ni3
ní ni1
nị ni5
nỉa nia3
nĩa nia4
ních nich1
nịch nich5
niêm niem6
niềm nie6m2
niệm nie6m5
niên nien6
niền nie6n2
niển nie6n3
niễn nie6n4
niến nie6n1
niện nie6n5
niềng nie6ng2
niễng nie6ng4
niếp nie6p1
niệp nie6p5
niết nie6t1
niệt nie6t5
niêu nieu6
niểu nie6u3
niễu nie6u4
niếu nie6u1
niệu nie6u5
ním nim1
nín nin1
nình ninh2
nính ninh1
nịnh ninh5
níp nip1
nít nit1
nịt nit5
níu niu1
nịu niu5
niutơn niuton7
nò no2
nỏ no3
nõ no4
nó no1
nọ no5
noản noan3
noãn noan4
nóc noc1
nọc noc5
nòi noi2
nỏi noi3
nói noi1
nọi noi5
nòm nom2
nỏm nom3
nỏn non3
nõn non4
nón non1
nọn non5
nòng nong2
nóng nong1
nọng nong5
nóp nop1
nót not1
nọt not5
nô no6
nồ no62
nổ no63
nỗ no64
nố no61
nộ no65
nôben noben6
nốc no6c1
nôi noi6
nồi no6i2
nổi no6i3
nỗi no6i4
nối no6i1
nội no6i5
nôm nom6
nồm no6m2
nộm no6m5
nôn non6
nồn no6n2
nộn no6n5
nông nong6
nồng no6ng2
nỗng no6ng4
nống no6ng1
nốp no6p1
nộp no6p5
nốt no6t1
nột no6t5
nơ no7
nờ no72
nở no73
nỡ no74
nớ no71
nợ no75
nơi noi7
nới no7i1
nơm nom7
nờm no7m2
nỡm no7m4
nớp no7p1
nợp no7p5
nớt no7t1
nơtron notron7
nũ nu4
nú nu1
nụ nu5
nủa nua3
nũa nua4
núa nua1
núc nuc1
nục nuc5
núcleo nucleo1
nùi nui2
nũi nui4
núi nui1
nụi nui5
núm num1
nùn nun2
nùng nung2
nủng nung3
nũng nung4
núng nung1
nuốc nuo6c1
nuộc nuo6c5
nuôi nuoi6
nuối nuo6i1
nuốm nuo6m1
nuông nuong6
nuốt nuo6t1
nuột nuo6t5
núp nup1
nút nut1
nư nu7
nử nu73
nữ nu74
nứ nu71
nự nu75
nưa nua7
nửa nu7a3
nữa nu7a4
nứa nu7a1
nức nu7c1
nực nu7c5
nưng nung7
nừng nu7ng2
nứng nu7ng1
nựng nu7ng5
nước nuo7c1
nược nuo7c5
nườm nuo7m2
nương nuong7
nường nuo7ng2
nướng nuo7ng1
nượp nuo7p5
nướu nuo7u1
nứt nu7t1
nưu nuu7
nữu nu7u4
nứu nu7u1
nựu nu7u5
ò o2
ỏ o3
õ o4
ó o1
ọ o5
oác oac1
oạc oac5
oách oach1
oạch oach5
oải oai3
oái oai1
oại oai5
oàm oam2
oản oan3
oán oan1
oàng oang2
oảng oang3
oành oanh2
oánh oanh1
oạp oap5
oát oat1
oạt oat5
oắc oa8c1
oăm oam8
oằn oa8n2
oẳn oa8n3
oăng oang8
oẳng oa8ng3
oắt oa8t1
oặt oa8t5
óc oc1
ọc oc5
òi oi2
ỏi oi3
õi oi4
ói oi1
ọi oi5
olá ola1
òm om2
ỏm om3
õm om4
óm om1
ọm om5
òn on2
ỏn on3
õn on4
ón on1
ọn on5
òng ong2
ỏng ong3
õng ong4
óng ong1
ọng ong5
óp op1
ọp op5
ót ot1
ọt ot5
ô o6
ồ o62
ổ o63
ỗ o64
ố o61
ộ o65
ôb ob6
ôben oben6
ôc oc6
ốc o6c1
ộc o6c5
ôca oca6
ôgam ogam6
ôhai ohai6
ôi oi6
ồi o6i2
ổi o6i3
ỗi o6i4
ối o6i1
ội o6i5
ôin oin6
ộl o6l5
ôla ola6
ôliu oliu6
ôm om6
ồm o6m2
ổm o6m3
ỗm o6m4
ốm o6m1
ộm o6m5
ômet omet6
ômi omi6
ôn on6
ồn o6n2
ổn o6n3
ỗn o6n4
ốn o6n1
ộn o6n5
ône one6
ông ong6
ồng o6ng2
ổng o6ng3
ỗng o6ng4
ống o6ng1
ộng o6ng5
ốp o6p1
ộp o6p5
ôt ot6
ốt o6t1
ột o6t5
ôtel otel6
ơ o7
ờ o72
ở o73
ỡ o74
ớ o71
ợ o75
ơc oc7
ờc o7c2
ớc o7c1
ợc o7c5
ơi oi7
ời o7i2
ởi o7i3
ỡi o7i4
ới o7i1
ợi o7i5
ờl o7l2
ơm om7
ờm o7m2
ởm o7m3
ỡm o7m4
ớm o7m1
ợm o7m5
ơme ome7
ơmi omi7
ơn on7
ờn o7n2
ởn o7n3
ỡn o7n4
ớn o7n1
ợn o7n5
ơng ong7
ờng o7ng2
ởng o7ng3
ỡng o7ng4
ớng o7ng1
ợng o7ng5
ơngen ongen7
ớp o7p1
ợp o7p5
ơt ot7
ớt o7t1
ợt o7t5
ơu ou7
ờu o7u2
ỡu o7u4
ớu o7u1
ợu o7u5
pà pa2
pả pa3
pạ pa5
pác pac1
pạc pac5
pảh pah3
pài pai2
palăng palang8
pán pan1
pàng pang2
panô pano6
pào pao2
páo pao1
páp pap1
pát pat1
pắc pa8c1
păh pah8
pằn pa8n2
păng pang8
pấc pa6c1
pâu pau6
pẻ pe3
péc pec1
pẻng peng3
péo peo1
pê pe6
phà pha2
phả pha3
phá pha1
phạ pha5
phác phac1
phạc phac5
phách phach1
phạch phach5
phài phai2
phải phai3
phái phai1
phàm pham2
phạm pham5
phàn phan2
phản phan3
phãn phan4
phán phan1
phạn phan5
phàng phang2
phảng phang3
phạng phang5
phành phanh2
phảnh phanh3
phạnh phanh5
phào phao2
phảo phao3
pháo phao1
phaolô phaolo6
pháp phap1
phạp phap5
phát phat1
phạt phat5
phảy phay3
pháy phay1
phắc pha8c1
phăm pham8
phăn phan8
phắn pha8n1
phăng phang8
phẳng pha8ng3
phặng pha8ng5
phắp pha8p1
phặp pha8p5
phắt pha8t1
phâm pham6
phầm pha6m2
phẩm pha6m3
phân phan6
phần pha6n2
phẩn pha6n3
phẫn pha6n4
phấn pha6n1
phận pha6n5
phấp pha6p1
phập pha6p5
phất pha6t1
phật pha6t5
phầu pha6u2
phẩu pha6u3
phẫu pha6u4
phấu pha6u1
phây phay6
phẩy pha6y3
phè phe2
phé phe1
phéc phec1
phẹc phec5
phèn phen2
phèng pheng2
phéng pheng1
phèo pheo2
phép phep1
phét phet1
phẹt phet5
phê phe6
phề phe62
phế phe61
phệ phe65
phếch phe6ch1
phệch phe6ch5
phên phen6
phễn phe6n4
phện phe6n5
phềnh phe6nh2
phễnh phe6nh4
phệnh phe6nh5
phết phe6t1
phệt phe6t5
phều phe6u2
phễu phe6u4
phếu phe6u1
phì phi2
phỉ phi3
phí phi1
phị phi5
phìa phia2
phía phia1
phịa phia5
phích phich1
phịch phich5
phiêm phiem6
phiếm phie6m1
phiên phien6
phiền phie6n2
phiến phie6n1
phiện phie6n5
phiêng phieng6
phiết phie6t1
phiệt phie6t5
phiêu phieu6
phiểu phie6u3
phiếu phie6u1
phiệu phie6u5
phím phim1
phìn phin2
phình phinh2
phỉnh phinh3
phĩnh phinh4
phính phinh1
phịt phit5
phịu phiu5
phlạo phlao5
phlắc phla8c1
phò pho2
phó pho1
phóc phoc1
phọc phoc5
phòi phoi2
phón phon1
phòng phong2
phỏng phong3
phóng phong1
phọng phong5
phót phot1
phọt phot5
phô pho6
phồ pho62
phổ pho63
phố pho61
phốc pho6c1
phộc pho6c5
phôi phoi6
phổi pho6i3
phối pho6i1
phôm phom6
phồm pho6m2
phôn phon6
phồn pho6n2
phông phong6
phồng pho6ng2
phổng pho6ng3
phỗng pho6ng4
phộng pho6ng5
phốp pho6p1
phốt pho6t1
phơ pho7
phờ pho72
phở pho73
phớ pho71
phơi phoi7
phời pho7i2
phới pho7i1
phơn phon7
phởn pho7n3
phỡn pho7n4
phớn pho7n1
phớt pho7t1
phrăng phrang8
phù phu2
phủ phu3
phũ phu4
phú phu1
phụ phu5
phúc phuc1
phục phuc5
phủi phui3
phùn phun2
phún phun1
phùng phung2
phủng phung3
phúng phung1
phụng phung5
phúp phup1
phụp phup5
phút phut1
phụt phut5
phư phu7
phứa phu7a1
phựa phu7a5
phức phu7c1
phưng phung7
phừng phu7ng2
phước phuo7c1
phưỡn phuo7n4
phướn phuo7n1
phương phuong7
phường phuo7ng2
phướng phuo7ng1
phượng phuo7ng5
phượt phuo7t5
phượu phuo7u5
phứt phu7t1
phựt phu7t5
phữu phu7u4
phựu phu7u5
phvđ phvd9
pí pi1
pianô piano6
pích pich1
pín pin1
píp pip1
pisát pisat1
pít pit1
plây play6
plông plong6
plơi ploi7
pó po1
pótay potay1
pô po6
pôc poc6
pôn pon6
pông pong6
pốp po6p1
pốt po6t1
pơ po7
pờ po72
pơng pong7
prâng prang6
prô pro6
prông prong6
pù pu2
pú pu1
pụa pua5
púc puc1
puộc puo6c5
pút put1
pư pu7
pươi puoi7
qì qi2
quà qua2
quả qua3
quã qua4
quá qua1
quạ qua5
quác quac1
quạc quac5
quách quach1
quạch quach5
quài quai2
quải quai3
quái quai1
quại quai5
quàn quan2
quản quan3
quán quan1
quàng quang2
quảng quang3
quãng quang4
quáng quang1
quạng quang5
quành quanh2
quảnh quanh3
quánh quanh1
quạnh quanh5
quào quao2
quáo quao1
quát quat1
quạt quat5
quàu quau2
quảu quau3
quáu quau1
quạu quau5
quày quay2
quảy quay3
quáy quay1
quạy quay5
quắc qua8c1
quặc qua8c5
quăm quam8
quằm qua8m2
quẳm qua8m3
quắm qua8m1
quặm qua8m5
quăn quan8
quằn qua8n2
quẳn qua8n3
quắn qua8n1
quặn qua8n5
quăng quang8
quằng qua8ng2
quẳng qua8ng3
quẵng qua8ng4
quặng qua8ng5
quắp qua8p1
quặp qua8p5
quắt qua8t1
quặt qua8t5
quấc qua6c1
quân quan6
quần qua6n2
quẩn qua6n3
quẫn qua6n4
quấn qua6n1
quận qua6n5
quâng quang6
quầng qua6ng2
quẩng qua6ng3
quẫng qua6ng4
quất qua6t1
quật qua6t5
quây quay6
quầy qua6y2
quẩy qua6y3
quẫy qua6y4
quấy qua6y1
quậy qua6y5
què que2
quẻ que3
quẽ que4
qué que1
quèn quen2
quén quen1
quẹn quen5
quèo queo2
quéo queo1
quẹo queo5
quẹp quep5
quét quet1
quẹt quet5
quê que6
quế que61
quệ que65
quệch que6ch5
quên quen6
quện que6n5
quềnh que6nh2
quệnh que6nh5
quết que6t1
quệt que6t5
quều que6u2
quếu que6u1
quì qui2
quỉ qui3
quĩ qui4
quí qui1
quị qui5
quình quinh2
quít quit1
quịt quit5
quíu quiu1
quọ quo5
quoàng quoang2
quoạng quoang5
quoắt quoa8t1
quốc quo6c1
quơ quo7
quờ quo72
quở quo73
quớ quo71
quới quo7i1
quờn quo7n2
quởn quo7n3
quởng quo7ng3
quớt quo7t1
quỳ quy2
quỷ quy3
quỹ quy4
quý quy1
quỵ quy5
quých quych1
quyên quyen6
quyền quye6n2
quyển quye6n3
quyến quye6n1
quyện quye6n5
quyết quye6t1
quyệt quye6t5
quỳng quyng2
quỳnh quynh2
quỷnh quynh3
quýnh quynh1
quýt quyt1
quỵt quyt5
rà ra2
rả ra3
rã ra4
rá ra1
rạ ra5
rác rac1
rạc rac5
rách rach1
rạch rach5
rađi radi9
rađio radio9
raglây raglay6
rài rai2
rải rai3
rãi rai4
rái rai1
rại rai5
ràm ram2
rám ram1
rạm ram5
ràn ran2
rán ran1
rạn ran5
ràng rang2
rảng rang3
ráng rang1
rạng rang5
rành ranh2
rảnh ranh3
rãnh ranh4
rạnh ranh5
ráno rano1
rào rao2
rảo rao3
rão rao4
ráo rao1
rạo rao5
ráp rap1
rạp rap5
rápida rapida1
rápido rapido1
rát rat1
rạt rat5
ràu rau2
rảu rau3
ráu rau1
rày ray2
rảy ray3
rãy ray4
ráy ray1
rạy ray5
rắc ra8c1
rặc ra8c5
răm ram8
rằm ra8m2
rắm ra8m1
rặm ra8m5
răn ran8
rằn ra8n2
rắn ra8n1
rặn ra8n5
răng rang8
rằng ra8ng2
rặng ra8ng5
rắp ra8p1
rắt ra8t1
rặt ra8t5
râm ram6
rầm ra6m2
rẩm ra6m3
rẫm ra6m4
rấm ra6m1
rậm ra6m5
rân ran6
rần ra6n2
rẫn ra6n4
rấn ra6n1
rận ra6n5
râng rang6
rậng ra6ng5
rấp ra6p1
rập ra6p5
rất ra6t1
rật ra6t5
râu rau6
rầu ra6u2
rẫu ra6u4
rậu ra6u5
rây ray6
rầy ra6y2
rẩy ra6y3
rẫy ra6y4
rcăm rcam8
rè re2
rẻ re3
rẽ re4
ré re1
rẹc rec5
rèm rem2
rèn ren2
rén ren1
rẻng reng3
rèo reo2
rẻo reo3
réo reo1
rẹo reo5
rép rep1
rẹp rep5
rét ret1
rẹt ret5
rê re6
rề re62
rể re63
rễ re64
rế re61
rệ re65
rếch re6ch1
rệch re6ch5
rêm rem6
rên ren6
rền re6n2
rến re6n1
rện re6n5
rềnh re6nh2
rểnh re6nh3
rếp re6p1
rệp re6p5
rết re6t1
rệt re6t5
rêu reu6
rều re6u2
rểu re6u3
rệu re6u5
rì ri2
rỉ ri3
rĩ ri4
rí ri1
rị ri5
rìa ria2
rỉa ria3
rịa ria5
ríc ric1
rích rich1
rịch rich5
riếc rie6c1
riềm rie6m2
riêng rieng6
riềng rie6ng2
riếp rie6p1
riết rie6t1
riệt rie6t5
riêu rieu6
riếu rie6u1
rím rim1
rĩn rin4
rịn rin5
rình rinh2
rỉnh rinh3
rĩnh rinh4
rịp rip5
rít rit1
rịt rit5
rítra ritra1
rìu riu2
ríu riu1
rivê rive6
rlâm rlam6
rò ro2
rỏ ro3
rõ ro4
ró ro1
rọ ro5
roàng roang2
róc roc1
rọc roc5
ròi roi2
rỏi roi3
rõi roi4
rói roi1
rọi roi5
ròm rom2
rỏm rom3
róm rom1
rọm rom5
ròn ron2
rỏn ron3
rón ron1
rọn ron5
ròng rong2
rỏng rong3
róng rong1
rọng rong5
rót rot1
rọt rot5
rô ro6
rồ ro62
rổ ro63
rỗ ro64
rố ro61
rộ ro65
rốc ro6c1
rộc ro6c5
rồi ro6i2
rổi ro6i3
rỗi ro6i4
rối ro6i1
rội ro6i5
rôm rom6
rồm ro6m2
rộm ro6m5
rôma roma6
rôn ron6
rổn ro6n3
rốn ro6n1
rộn ro6n5
rông rong6
rồng ro6ng2
rổng ro6ng3
rỗng ro6ng4
rống ro6ng1
rộng ro6ng5
rốp ro6p1
rộp ro6p5
rốt ro6t1
rơ ro7
rờ ro72
rở ro73
rỡ ro74
rớ ro71
rợ ro75
rơi roi7
rời ro7i2
rợi ro7i5
rơm rom7
rờm ro7m2
rởm ro7m3
rớm ro7m1
rợm ro7m5
rơn ron7
rờn ro7n2
rởn ro7n3
rỡn ro7n4
rớn ro7n1
rợn ro7n5
rơngen rongen7
rớp ro7p1
rợp ro7p5
rớt ro7t1
rợt ro7t5
rù ru2
rủ ru3
rũ ru4
rú ru1
rùa rua2
rủa rua3
rũa rua4
rụa rua5
rúc ruc1
rục ruc5
ruê rue6
rùi rui2
rủi rui3
rũi rui4
rúi rui1
rụi rui5
rùm rum2
rúm rum1
rùn run2
rủn run3
rún run1
rùng rung2
rủng rung3
rúng rung1
rụng rung5
ruốc ruo6c1
ruồi ruo6i2
ruổi ruo6i3
ruỗi ruo6i4
ruối ruo6i1
ruộm ruo6m5
ruồng ruo6ng2
ruỗng ruo6ng4
ruộng ruo6ng5
ruột ruo6t5
rúp rup1
rút rut1
rụt rut5
rư ru7
rừ ru72
rứ ru71
rưa rua7
rừa ru7a2
rửa ru7a3
rữa ru7a4
rứa ru7a1
rựa ru7a5
rức ru7c1
rực ru7c5
rưng rung7
rừng ru7ng2
rửng ru7ng3
rước ruo7c1
rươi ruoi7
rười ruo7i2
rưởi ruo7i3
rưỡi ruo7i4
rưới ruo7i1
rượi ruo7i5
rươm ruom7
rườm ruo7m2
rướm ruo7m1
rườn ruo7n2
rướn ruo7n1
rượn ruo7n5
rương ruong7
rường ruo7ng2
rượt ruo7t5
rượu ruo7u5
rứt ru7t1
rựt ru7t5
rỵn ryn5
sà sa2
sả sa3
sã sa4
sá sa1
sạ sa5
sác sac1
sạc sac5
sách sach1
sạch sach5
sài sai2
sải sai3
sãi sai4
sái sai1
sại sai5
saigón saigon1
sakê sake6
salát salat1
salâm salam6
sàm sam2
sảm sam3
sám sam1
sạm sam5
sàn san2
sản san3
sán san1
sạn san5
sàng sang2
sảng sang3
sáng sang1
sành sanh2
sảnh sanh3
sánh sanh1
sào sao2
sảo sao3
são sao4
sáo sao1
sạo sao5
sáp sap1
sạp sap5
sát sat1
sạt sat5
sáu sau1
sảy say3
sãy say4
sắc sa8c1
sặc sa8c5
săm sam8
sắm sa8m1
sặm sa8m5
săn san8
sằn sa8n2
sẳn sa8n3
sẵn sa8n4
sắn sa8n1
săng sang8
sằng sa8ng2
sẵng sa8ng4
sắng sa8ng1
sắp sa8p1
sặp sa8p5
săt sat8
sắt sa8t1
sặt sa8t5
sắu sa8u1
sâm sam6
sầm sa6m2
sẩm sa6m3
sẫm sa6m4
sấm sa6m1
sậm sa6m5
sân san6
sần sa6n2
sẩn sa6n3
sẫn sa6n4
sấn sa6n1
sận sa6n5
sâng sang6
sấp sa6p1
sập sa6p5
sất sa6t1
sật sa6t5
sâu sau6
sầu sa6u2
sẩu sa6u3
sấu sa6u1
sậu sa6u5
sây say6
sầy sa6y2
sẩy sa6y3
sấy sa6y1
sậy sa6y5
sè se2
sẻ se3
sẽ se4
sé se1
sẹ se5
séc sec1
sém sem1
sẹm sem5
sèn sen2
sẻn sen3
sẻng seng3
sèo seo2
sẹo seo5
sét set1
sẹt set5
sê se6
sề se62
sể se63
sễ se64
sế se61
sệ se65
sếch se6ch1
sệch se6ch5
sên sen6
sền se6n2
sến se6n1
sênh senh6
sềnh se6nh2
sểnh se6nh3
sếp se6p1
sệp se6p5
sết se6t1
sệt se6t5
sêu seu6
sếu se6u1
sgần sga6n2
sì si2
sỉ si3
sĩ si4
sí si1
sị si5
sỉa sia3
sịa sia5
sích sich1
sịch sich5
sidét sidet1
siđa sida9
siêm siem6
siểm sie6m3
siên sien6
siển sie6n3
siễn sie6n4
siêng sieng6
siểng sie6ng3
siếp sie6p1
siệp sie6p5
siết sie6t1
siêu sieu6
siếu sie6u1
sìn sin2
sỉn sin3
sín sin1
síne sine1
sình sinh2
sỉnh sinh3
sính sinh1
sịp sip5
sít sit1
sịt sit5
slìn slin2
sò so2
sỏ so3
só so1
sọ so5
soạc soac5
soài soai2
soải soai3
soái soai1
soại soai5
soàn soan2
soán soan1
soạn soan5
soảng soang3
soạng soang5
soát soat1
soạt soat5
sóc soc1
sọc soc5
sòi soi2
sỏi soi3
sõi soi4
sói soi1
sòm som2
sóm som1
sọm som5
sòn son2
sỏn son3
són son1
sòng song2
sõng song4
sóng song1
sót sot1
sọt sot5
sô so6
sồ so62
sổ so63
sỗ so64
số so61
sộ so65
sôc soc6
sốc so6c1
sộc so6c5
sôi soi6
sồi so6i2
sổi so6i3
sồm so6m2
sôn son6
sồn so6n2
sông song6
sồng so6ng2
sổng so6ng3
sống so6ng1
sốp so6p1
sộp so6p5
sốt so6t1
sột so6t5
sôvanh sovanh6
sơ so7
sờ so72
sở so73
sỡ so74
sớ so71
sợ so75
sởi so7i3
sỡi so7i4
sới so7i1
sợi so7i5
sơm som7
sờm so7m2
sớm so7m1
sơmi somi7
sơn son7
sờn so7n2
sởn so7n3
sớn so7n1
sớt so7t1
srêpốc srepo6c61
sró sro1
sù su2
sủ su3
sũ su4
sú su1
sụ su5
sủa sua3
sụa sua5
suân suan6
suất sua6t1
súc suc1
sục suc5
suê sue6
sùi sui2
sủi sui3
sùm sum2
sụm sum5
sún sun1
sụn sun5
sùng sung2
sủng sung3
sũng sung4
súng sung1
sụng sung5
suôi suoi6
suối suo6i1
suôn suon6
suông suong6
suồng suo6ng2
suống suo6ng1
suốt suo6t1
súp sup1
sụp sup5
sút sut1
sụt sut5
sủy suy3
súy suy1
suyền suye6n2
suyển suye6n3
suyễn suye6n4
suyến suye6n1
suýt suyt1
suỵt suyt5
sư su7
sừ su72
sử su73
sữ su74
sứ su71
sự su75
sưa sua7
sửa su7a3
sữa su7a4
sứa su7a1
sức su7c1
sực su7c5
sửi su7i3
sừn su7n2
sưng sung7
sừng su7ng2
sửng su7ng3
sững su7ng4
sựng su7ng5
sưởi suo7i3
sườn suo7n2
sương suong7
sường suo7ng2
sướng suo7ng1
sượng suo7ng5
sướt suo7t1
sượt suo7t5
sứt su7t1
sựt su7t5
sưu suu7
sửu su7u3
sứu su7u1
sỹ sy4
sý sy1
tà ta2
tả ta3
tã ta4
tá ta1
tạ ta5
tác tac1
tạc tac5
tách tach1
tạch tach5
tài tai2
tải tai3
tãi tai4
tái tai1
tại tai5
tàm tam2
tảm tam3
tám tam1
tạm tam5
tàn tan2
tản tan3
tán tan1
tạn tan5
tàng tang2
tảng tang3
táng tang1
tạng tang5
tành tanh2
tảnh tanh3
tánh tanh1
tạnh tanh5
tào tao2
tảo tao3
táo tao1
tạo tao5
táp tap1
tạp tap5
tát tat1
tạt tat5
tàu tau2
táu tau1
tày tay2
tảy tay3
táy tay1
tạy tay5
tắc ta8c1
tặc ta8c5
tăk tak8
tăm tam8
tằm ta8m2
tắm ta8m1
tăn tan8
tằn ta8n2
tẳn ta8n3
tắn ta8n1
tặn ta8n5
tăng tang8
tằng ta8ng2
tắng ta8ng1
tặng ta8ng5
tắp ta8p1
tắt ta8t1
tấc ta6c1
tâm tam6
tầm ta6m2
tẩm ta6m3
tấm ta6m1
tân tan6
tần ta6n2
tẩn ta6n3
tẫn ta6n4
tấn ta6n1
tận ta6n5
tâng tang6
tầng ta6ng2
tấp ta6p1
tập ta6p5
tất ta6t1
tật ta6t5
tâu tau6
tầu ta6u2
tẩu ta6u3
tấu ta6u1
tậu ta6u5
tây tay6
tầy ta6y2
tẩy ta6y3
tấy ta6y1
tbuăn tbuan8
tè te2
tẻ te3
tẽ te4
té te1
téc tec1
tẻh teh3
tèm tem2
tẻm tem3
tém tem1
tèn ten2
tẽn ten4
tén ten1
tèo teo2
tẻo teo3
téo teo1
tẹo teo5
tép tep1
tẹp tep5
tét tet1
tẹt tet5
tê te6
tề te62
tể te63
tễ te64
tế te61
tệ te65
tếch te6ch1
têm tem6
tên ten6
tênh tenh6
tềnh te6nh2
tểnh te6nh3
tễnh te6nh4
tệp te6p5
têt tet6
tết te6t1
tête tete6
têu teu6
tếu te6u1
thà tha2
thả tha3
thá tha1
thác thac1
thạc thac5
thách thach1
thạch thach5
thài thai2
thải thai3
thãi thai4
thái thai1
thại thai5
thàm tham2
thảm tham3
thám tham1
thản than3
thán than1
thàng thang2
thảng thang3
thãng thang4
tháng thang1
thành thanh2
thảnh thanh3
thánh thanh1
thạnh thanh5
thào thao2
thảo thao3
tháo thao1
thạo thao5
tháp thap1
thạp thap5
thát that1
thạt that5
tháu thau1
thày thay2
thảy thay3
tháy thay1
thắc tha8c1
thặc tha8c5
thăm tham8
thẳm tha8m3
thắm tha8m1
thăn than8
thằn tha8n2
thắn tha8n1
thăng thang8
thằng tha8ng2
thẳng tha8ng3
thắng tha8ng1
thặng tha8ng5
thắp tha8p1
thắt tha8t1
thâm tham6
thầm tha6m2
thẩm tha6m3
thẫm tha6m4
thấm tha6m1
thậm tha6m5
thân than6
thần tha6n2
thẩn tha6n3
thẫn tha6n4
thấn tha6n1
thận tha6n5
thấp tha6p1
thập tha6p5
thất tha6t1
thật tha6t5
thâu thau6
thầu tha6u2
thẩu tha6u3
thấu tha6u1
thây thay6
thầy tha6y2
thẩy tha6y3
thấy tha6y1
thè the2
thẻ the3
thẽ the4
thé the1
thèm them2
thém them1
thèn then2
thẻn then3
thẹn then5
thèo theo2
thẻo theo3
thẹo theo5
thép thep1
thẹp thep5
thét thet1
thê the6
thề the62
thể the63
thế the61
thệ the65
thếch the6ch1
thêm them6
thềm the6m2
thến the6n1
thện the6n5
thênh thenh6
thểnh the6nh3
thếp the6p1
thết the6t1
thêu theu6
thều the6u2
thểu the6u3
thì thi2
thỉ thi3
thĩ thi4
thí thi1
thị thi5
thìa thia2
thía thia1
thích thich1
thịch thich5
thiếc thie6c1
thiêm thiem6
thiềm thie6m2
thiểm thie6m3
thiễm thie6m4
thiệm thie6m5
thiên thien6
thiền thie6n2
thiển thie6n3
thiến thie6n1
thiện thie6n5
thiêng thieng6
thiềng thie6ng2
thiếp thie6p1
thiệp thie6p5
thiết thie6t1
thiệt thie6t5
thiêu thieu6
thiều thie6u2
thiểu thie6u3
thiễu thie6u4
thiếu thie6u1
thiệu thie6u5
thím thim1
thìn thin2
thín thin1
thình thinh2
thỉnh thinh3
thính thinh1
thịnh thinh5
thíp thip1
thít thit1
thịt thit5
thìu thiu2
thỉu thiu3
thịu thiu5
thò tho2
thỏ tho3
thó tho1
thọ tho5
thoải thoai3
thoái thoai1
thoại thoai5
thoàn thoan2
thoản thoan3
thoán thoan1
thoảng thoang3
thoáng thoang1
thoát thoat1
thoạt thoat5
thoăn thoan8
thoắng thoa8ng1
thoắt thoa8t1
thóc thoc1
thọc thoc5
thòi thoi2
thỏi thoi3
thói thoi1
thòm thom2
thỏm thom3
thóm thom1
thõn thon4
thòng thong2
thõng thong4
thóp thop1
thót thot1
thọt thot5
thô tho6
thồ tho62
thổ tho63
thố tho61
thộ tho65
thốc tho6c1
thộc tho6c5
thôi thoi6
thồi tho6i2
thổi tho6i3
thối tho6i1
thồm tho6m2
thôn thon6
thồn tho6n2
thổn tho6n3
thỗn tho6n4
thốn tho6n1
thộn tho6n5
thông thong6
thổng tho6ng3
thống tho6ng1
thốp tho6p1
thộp tho6p5
thốt tho6t1
thột tho6t5
thơ tho7
thờ tho72
thở tho73
thớ tho71
thợ tho75
thơi thoi7
thời tho7i2
thởi tho7i3
thới tho7i1
thơm thom7
thớm tho7m1
thơn thon7
thờn tho7n2
thớt tho7t1
thợt tho7t5
thtục thtuc5
thù thu2
thủ thu3
thú thu1
thụ thu5
thùa thua2
thủa thua3
thuân thuan6
thuần thua6n2
thuẩn thua6n3
thuẫn thua6n4
thuấn thua6n1
thuận thua6n5
thuật thua6t5
thúc thuc1
thục thuc5
thuê thue6
thuể thue63
thuế thue61
thùi thui2
thủi thui3
thúi thui1
thụi thui5
thùm thum2
thủm thum3
thùn thun2
thùng thung2
thủng thung3
thũng thung4
thúng thung1
thụng thung5
thuốc thuo6c1
thuộc thuo6c5
thuộm thuo6m5
thuôn thuon6
thuồn thuo6n2
thuỗn thuo6n4
thuốn thuo6n1
thuồng thuo6ng2
thuổng thuo6ng3
thuột thuo6t5
thuở thuo73
thụp thup5
thút thut1
thụt thut5
thuyên thuyen6
thuyền thuye6n2
thuyết thuye6t1
thư thu7
thừ thu72
thử thu73
thữ thu74
thứ thu71
thự thu75
thưa thua7
thừa thu7a2
thửa thu7a3
thứa thu7a1
thữc thu7c4
thức thu7c1
thực thu7c5
thưng thung7
thừng thu7ng2
thửng thu7ng3
thững thu7ng4
thứng thu7ng1
thước thuo7c1
thược thuo7c5
thưỡi thuo7i4
thườn thuo7n2
thưỡn thuo7n4
thương thuong7
thường thuo7ng2
thưởng thuo7ng3
thướng thuo7ng1
thượng thuo7ng5
thướt thuo7t1
thượt thuo7t5
thưu thuu7
thứu thu7u1
tì ti2
tỉ ti3
tĩ ti4
tí ti1
tị ti5
tỉa tia3
tía tia1
tích tich1
tịch tich5
tiẻn tien3
tiếc tie6c1
tiệc tie6c5
tiêm tiem6
tiềm tie6m2
tiếm tie6m1
tiệm tie6m5
tiên tien6
tiền tie6n2
tiển tie6n3
tiễn tie6n4
tiến tie6n1
tiện tie6n5
tiêng tieng6
tiềng tie6ng2
tiếng tie6ng1
tiếp tie6p1
tiệp tie6p5
tiết tie6t1
tiệt tie6t5
tiêu tieu6
tiều tie6u2
tiểu tie6u3
tiễu tie6u4
tiếu tie6u1
tiệu tie6u5
tìm tim2
tỉm tim3
tím tim1
tỉn tin3
tĩn tin4
tín tin1
tịn tin5
tỉng ting3
tình tinh2
tỉnh tinh3
tĩnh tinh4
tính tinh1
tịnh tinh5
típ tip1
tít tit1
tịt tit5
tĩu tiu4
tíu tiu1
tịu tiu5
tlẻ tle3
tlộm tlo6m5
tnđ tnd9
tò to2
tỏ to3
tó to1
tọ to5
toác toac1
toạc toac5
toài toai2
toái toai1
toại toai5
toàn toan2
toản toan3
toán toan1
toàng toang2
toáng toang1
toạng toang5
toánh toanh1
toát toat1
toáy toay1
toắt toa8t1
tóc toc1
tọc toc5
toèn toen2
toét toet1
toẹt toet5
tòi toi2
tỏi toi3
tõi toi4
tói toi1
tòm tom2
tỏm tom3
tõm tom4
tóm tom1
tòn ton2
tỏn ton3
tòng tong2
tỏng tong3
tọng tong5
tóp top1
tọp top5
tót tot1
tọt tot5
tô to6
tồ to62
tổ to63
tố to61
tộ to65
tốc to6c1
tộc to6c5
tôi toi6
tồi to6i2
tối to6i1
tội to6i5
tôm tom6
tôn ton6
tồn to6n2
tổn to6n3
tỗn to6n4
tốn to6n1
tông tong6
tồng to6ng2
tổng to6ng3
tống to6ng1
tộng to6ng5
tốp to6p1
tôt tot6
tốt to6t1
tột to6t5
tơ to7
tờ to72
tở to73
tớ to71
tợ to75
tơi toi7
tời to7i2
tới to7i1
tởm to7m3
tơn ton7
tởn to7n3
tớn to7n1
tợn to7n5
tớp to7p1
tợp to7p5
tớt to7t1
trà tra2
trả tra3
trã tra4
trá tra1
trạ tra5
trác trac1
trạc trac5
trách trach1
trạch trach5
trài trai2
trải trai3
trãi trai4
trái trai1
trại trai5
tràm tram2
trảm tram3
trám tram1
trạm tram5
tràn tran2
trản tran3
trán tran1
trạn tran5
tràng trang2
trảng trang3
tráng trang1
trạng trang5
trành tranh2
tránh tranh1
trạnh tranh5
trào trao2
trảo trao3
tráo trao1
trạo trao5
tráp trap1
trát trat1
trạt trat5
tràu trau2
trảu trau3
trày tray2
trảy tray3
trạy tray5
trắc tra8c1
trặc tra8c5
trăm tram8
trằm tra8m2
trắm tra8m1
trặm tra8m5
trăn tran8
trằn tra8n2
trặn tra8n5
trăng trang8
trắng tra8ng1
trắp tra8p1
trắt tra8t1
trâ tra6
trâm tram6
trầm tra6m2
trẩm tra6m3
trẫm tra6m4
trấm tra6m1
trậm tra6m5
trân tran6
trần tra6n2
trẩn tra6n3
trấn tra6n1
trận tra6n5
trâng trang6
trấp tra6p1
trập tra6p5
trất tra6t1
trật tra6t5
trâu trau6
trầu tra6u2
trẩu tra6u3
trấu tra6u1
trây tray6
trầy tra6y2
trẩy tra6y3
trè tre2
trẻ tre3
trẽ tre4
trẹ tre5
trèm trem2
trém trem1
trèn tren2
trẽn tren4
trèo treo2
trẻo treo3
trẽo treo4
tréo treo1
trẹo treo5
trét tret1
trẹt tret5
trê tre6
trề tre62
trể tre63
trễ tre64
trệ tre65
trếch tre6ch1
trệch tre6ch5
trên tren6
trênh trenh6
trếnh tre6nh1
trết tre6t1
trệt tre6t5
trêu treu6
trều tre6u2
trếu tre6u1
trệu tre6u5
trì tri2
trỉ tri3
trĩ tri4
trí tri1
trị tri5
trìa tria2
trỉa tria3
tría tria1
trịa tria5
trích trich1
trịch trich5
triêm triem6
triền trie6n2
triển trie6n3
triến trie6n1
triện trie6n5
triêng trieng6
triềng trie6ng2
triệng trie6ng5
triếp trie6p1
triệp trie6p5
triết trie6t1
triệt trie6t5
triêu trieu6
triều trie6u2
triệu trie6u5
trịng tring5
trình trinh2
trĩnh trinh4
trính trinh1
trịnh trinh5
trít trit1
trịt trit5
trìu triu2
trĩu triu4
tríu triu1
trịu triu5
trò tro2
trỏ tro3
trọ tro5
tróc troc1
trọc troc5
tròi troi2
trỏi troi3
trói troi1
trọi troi5
tròm trom2
trõm trom4
tróm trom1
tròn tron2
trõn tron4
trọn tron5
tròng trong2
trỏng trong3
tróng trong1
trọng trong5
trót trot1
trọt trot5
trô tro6
trồ tro62
trổ tro63
trỗ tro64
trố tro61
trộ tro65
trốc tro6c1
trộc tro6c5
trôi troi6
trồi tro6i2
trổi tro6i3
trỗi tro6i4
trối tro6i1
trội tro6i5
trôm trom6
trộm tro6m5
trôn tron6
trốn tro6n1
trộn tro6n5
trông trong6
trồng tro6ng2
trổng tro6ng3
trống tro6ng1
trộng tro6ng5
trốt tro6t1
trơ tro7
trờ tro72
trở tro73
trớ tro71
trợ tro75
trơi troi7
trời tro7i2
trới tro7i1
trờm tro7m2
trớm tro7m1
trợm tro7m5
trơn tron7
trờn tro7n2
trớn tro7n1
trợn tro7n5
trơng trong7
trớp tro7p1
trớt tro7t1
trợt tro7t5
trù tru2
trủ tru3
trú tru1
trụ tru5
trụa trua5
truân truan6
truất trua6t1
truật trua6t5
trúc truc1
trục truc5
trùi trui2
trũi trui4
trụi trui5
trùm trum2
trũm trum4
trúm trum1
trụm trum5
trùn trun2
trụn trun5
trùng trung2
trủng trung3
trũng trung4
trúng trung1
trụng trung5
truồi truo6i2
truông truong6
truồng truo6ng2
truột truo6t5
trụp trup5
trút trut1
trụt trut5
truyên truyen6
truyền truye6n2
truyện truye6n5
trư tru7
trừ tru72
trử tru73
trữ tru74
trứ tru71
trự tru75
trưa trua7
trừa tru7a2
trữa tru7a4
trức tru7c1
trực tru7c5
trưng trung7
trừng tru7ng2
trửng tru7ng3
trứng tru7ng1
trước truo7c1
trươi truoi7
trườn truo7n2
trương truong7
trường truo7ng2
trưởng truo7ng3
trưỡng truo7ng4
trướng truo7ng1
trượng truo7ng5
trượt truo7t5
trừu tru7u2
trửu tru7u3
trữu tru7u4
trứu tru7u1
tryền trye6n2
tù tu2
tủ tu3
tú tu1
tụ tu5
tùa tua2
tủa tua3
túa tua1
tuân tuan6
tuần tua6n2
tuẩn tua6n3
tuẫn tua6n4
tuấn tua6n1
tuận tua6n5
tuất tua6t1
túc tuc1
tục tuc5
tuế tue61
tuệ tue65
tuếch tue6ch1
tuệch tue6ch5
tuềnh tue6nh2
tùi tui2
tủi tui3
túi tui1
tụi tui5
tùm tum2
tủm tum3
tũm tum4
túm tum1
tụm tum5
tủn tun3
tùng tung2
tủng tung3
túng tung1
tụng tung5
tuốc tuo6c1
tuộc tuo6c5
tuồi tuo6i2
tuổi tuo6i3
tuồm tuo6m2
tuôn tuon6
tuồn tuo6n2
tuông tuong6
tuồng tuo6ng2
tuốt tuo6t1
tuột tuo6t5
túp tup1
tút tut1
tụt tut5
tuyên tuyen6
tuyền tuye6n2
tuyển tuye6n3
tuyến tuye6n1
tuyết tuye6t1
tuyệt tuye6t5
tuýp tuyp1
tuýt tuyt1
tư tu7
từ tu72
tử tu73
tữ tu74
tứ tu71
tự tu75
tưa tua7
từa tu7a2
tửa tu7a3
tứa tu7a1
tựa tu7a5
tức tu7c1
tưng tung7
từng tu7ng2
tửng tu7ng3
tước tuo7c1
tược tuo7c5
tươi tuoi7
tưởi tuo7i3
tưới tuo7i1
tươm tuom7
tườm tuo7m2
tướn tuo7n1
tương tuong7
tường tuo7ng2
tưởng tuo7ng3
tướng tuo7ng1
tượng tuo7ng5
tướp tuo7p1
tượp tuo7p5
tướt tuo7t1
tượt tuo7t5
tườu tuo7u2
tưu tuu7
tửu tu7u3
tựu tu7u5
tỳ ty2
tỷ ty3
tý ty1
tỵ ty5
ù u2
ủ u3
ũ u4
ú u1
ụ u5
ùa ua2
ủa ua3
ũa ua4
úa ua1
ụa ua5
uân uan6
uẩn ua6n3
uấn ua6n1
uất ua6t1
uẩy ua6y3
ubtư ubtu7
úc uc1
ục uc5
uê ue6
uể ue63
uế ue61
ùi ui2
ủi ui3
ũi ui4
úi ui1
ụi ui5
úk uk1
ùm um2
ủm um3
ũm um4
úm um1
ụm um5
ùn un2
ủn un3
ũn un4
ún un1
ụn un5
ùng ung2
ủng ung3
ũng ung4
úng ung1
ụng ung5
uôm uom6
uốn uo6n1
uông uong6
uổng uo6ng3
uống uo6ng1
uốt uo6t1
uột uo6t5
uở uo73
úp up1
ụp up5
út ut1
ụt ut5
uvtư uvtu7
uých uych1
uỵch uych5
uyên uyen6
uyển uye6n3
uyết uye6t1
uỳnh uynh2
uýnh uynh1
uýt uyt1
ư u7
ừ u72
ử u73
ữ u74
ứ u71
ự u75
ưa ua7
ừa u7a2
ửa u7a3
ữa u7a4
ứa u7a1
ựa u7a5
ưc uc7
ữc u7c4
ức u7c1
ực u7c5
ưcv ucv7
ưd ud7
ửi u7i3
ừm u7m2
ưn un7
ừn u7n2
ứn u7n1
ưng ung7
ừng u7ng2
ửng u7ng3
ững u7ng4
ứng u7ng1
ựng u7ng5
ước uo7c1
ược uo7c5
ươi uoi7
ười uo7i2
ưởi uo7i3
ưỡi uo7i4
ưới uo7i1
ượi uo7i5
ươm uom7
ườm uo7m2
ướm uo7m1
ượm uo7m5
ươn uon7
ườn uo7n2
ưỡn uo7n4
ướn uo7n1
ượn uo7n5
ương uong7
ường uo7ng2
ưởng uo7ng3
ưỡng uo7ng4
ướng uo7ng1
ượng uo7ng5
ướp uo7p1
ượp uo7p5
ướt uo7t1
ượt uo7t5
ươu uou7
ườu uo7u2
ưỡu uo7u4
ướu uo7u1
ượu uo7u5
ưt ut7
ứt u7t1
ựt u7t5
ưu uu7
ừu u7u2
ửu u7u3
ữu u7u4
ứu u7u1
ựu u7u5
và va2
vả va3
vã va4
vá va1
vạ va5
vác vac1
vạc vac5
vách vach1
vạch vach5
vài vai2
vải vai3
vãi vai4
vái vai1
vại vai5
vàm vam2
vạm vam5
vàn van2
vãn van4
ván van1
vạn van5
vàng vang2
vảng vang3
vãng vang4
váng vang1
vạng vang5
vành vanh2
vảnh vanh3
vãnh vanh4
vánh vanh1
vạnh vanh5
vào vao2
váo vao1
vàp vap2
váp vap1
vạp vap5
vát vat1
vạt vat5
vàu vau2
vày vay2
vảy vay3
vãy vay4
váy vay1
vạy vay5
vắc va8c1
vặc va8c5
văm vam8
vằm va8m2
văn van8
vằn va8n2
vắn va8n1
vặn va8n5
văng vang8
vằng va8ng2
vẳng va8ng3
vắng va8ng1
vặng va8ng5
vắp va8p1
vắt va8t1
vặt va8t5
vâm vam6
vậm va6m5
vân van6
vần va6n2
vẩn va6n3
vẫn va6n4
vấn va6n1
vận va6n5
vâng vang6
vầng va6ng2
vấp va6p1
vập va6p5
vất va6t1
vật va6t5
vầu va6u2
vẩu va6u3
vấu va6u1
vây vay6
vầy va6y2
vẩy va6y3
vẫy va6y4
vấy va6y1
vậy va6y5
vè ve2
vẻ ve3
vẽ ve4
vé ve1
véc vec1
vẹm vem5
vèn ven2
vẻn ven3
vén ven1
vẹn ven5
vèo veo2
vẻo veo3
véo veo1
vẹo veo5
vét vet1
vẹt vet5
vê ve6
về ve62
vế ve61
vệ ve65
vếch ve6ch1
vệch ve6ch5
vên ven6
vền ve6n2
vện ve6n5
vênh venh6
vểnh ve6nh3
vết ve6t1
vệt ve6t5
vêtu vetu6
vêu veu6
vều ve6u2
vếu ve6u1
vì vi2
vỉ vi3
vĩ vi4
ví vi1
vị vi5
vỉa via3
vía via1
vích vich1
viêc viec6
việc vie6c5
viêm viem6
viên vien6
viền vie6n2
viển vie6n3
viễn vie6n4
viện vie6n5
viêng vieng6
viếng vie6ng1
việp vie6p5
viêt viet6
viết vie6t1
việt vie6t5
vịm vim5
vín vin1
vịn vin5
vĩnh vinh4
vính vinh1
vịnh vinh5
viọng viong5
vít vit1
vịt vit5
víu viu1
vò vo2
vỏ vo3
võ vo4
vó vo1
vọ vo5
vóc voc1
vọc voc5
vòi voi2
vỏi voi3
vói voi1
vọi voi5
vòm vom2
vòn von2
vỏn von3
vón von1
vòng vong2
vỏng vong3
võng vong4
vóng vong1
vọng vong5
vọp vop5
vót vot1
vọt vot5
vô vo6
vồ vo62
vổ vo63
vỗ vo64
vố vo61
vốc vo6c1
vôi voi6
vồi vo6i2
vối vo6i1
vội vo6i5
vôn von6
vồn vo6n2
vốn vo6n1
vông vong6
vồng vo6ng2
vổng vo6ng3
vống vo6ng1
vốt vo6t1
vơ vo7
vờ vo72
vở vo73
vỡ vo74
vớ vo71
vợ vo75
vơi voi7
vời vo7i2
với vo7i1
vợi vo7i5
vờn vo7n2
vởn vo7n3
vớt vo7t1
vợt vo7t5
vù vu2
vũ vu4
vú vu1
vụ vu5
vùa vua2
vúc vuc1
vục vuc5
vùi vui2
vũm vum4
vùn vun2
vụn vun5
vùng vung2
vũng vung4
vụng vung5
vuối vuo6i1
vuông vuong6
vuốt vuo6t1
vuột vuo6t5
vút vut1
vụt vut5
vư vu7
vừa vu7a2
vữa vu7a4
vựa vu7a5
vức vu7c1
vực vu7c5
vưng vung7
vừng vu7ng2
vửng vu7ng3
vững vu7ng4
vựng vu7ng5
vược vuo7c5
vươn vuon7
vườn vuo7n2
vượn vuo7n5
vương vuong7
vưởng vuo7ng3
vướng vuo7ng1
vượng vuo7ng5
vượt vuo7t5
vứt vu7t1
vưu vuu7
vỹ vy4
vý vy1
xà xa2
xả xa3
xã xa4
xá xa1
xạ xa5
xác xac1
xạc xac5
xách xach1
xạch xach5
xài xai2
xải xai3
xái xai1
xàm xam2
xảm xam3
xám xam1
xạm xam5
xán xan1
xàng xang2
xáng xang1
xành xanh2
xảnh xanh3
xào xao2
xảo xao3
xáo xao1
xạo xao5
xáp xap1
xạp xap5
xát xat1
xàu xau2
xảu xau3
xạu xau5
xảy xay3
xáy xay1
xắc xa8c1
xăm xam8
xắm xa8m1
xăn xan8
xắn xa8n1
xăng xang8
xằng xa8ng2
xẳng xa8ng3
xẵng xa8ng4
xắng xa8ng1
xắp xa8p1
xắt xa8t1
xấ xa61
xấc xa6c1
xâm xam6
xầm xa6m2
xẩm xa6m3
xân xan6
xẩn xa6n3
xấn xa6n1
xấp xa6p1
xập xa6p5
xâu xau6
xầu xa6u2
xẩu xa6u3
xấu xa6u1
xây xay6
xầy xa6y2
xẩy xa6y3
xcô xco6
xè xe2
xẻ xe3
xé xe1
xẹ xe5
xéc xec1
xẹc xec5
xém xem1
xèn xen2
xẻn xen3
xén xen1
xèng xeng2
xẻng xeng3
xèo xeo2
xẻo xeo3
xẽo xeo4
xéo xeo1
xẹo xeo5
xép xep1
xẹp xep5
xét xet1
xẹt xet5
xê xe6
xề xe62
xể xe63
xễ xe64
xế xe61
xệ xe65
xếch xe6ch1
xệch xe6ch5
xềm xe6m2
xên xen6
xển xe6n3
xênh xenh6
xềnh xe6nh2
xểnh xe6nh3
xếp xe6p1
xệp xe6p5
xệt xe6t5
xêu xeu6
xều xe6u2
xệu xe6u5
xì xi2
xỉ xi3
xí xi1
xị xi5
xỉa xia3
xía xia1
xịa xia5
xích xich1
xịch xich5
xiếc xie6c1
xiệc xie6c5
xiêm xiem6
xiểm xie6m3
xiên xien6
xiển xie6n3
xiễn xie6n4
xiềng xie6ng2
xiểng xie6ng3
xiếp xie6p1
xiệp xie6p5
xiết xie6t1
xiêu xieu6
xiều xie6u2
xiểu xie6u3
xiếu xie6u1
ximăng ximang8
xỉn xin3
xín xin1
xịn xin5
xinê xine6
xíng xing1
xình xinh2
xỉnh xinh3
xĩnh xinh4
xính xinh1
xíp xip1
xít xit1
xịt xit5
xìu xiu2
xỉu xiu3
xíu xiu1
xịu xiu5
xò xo2
xỏ xo3
xó xo1
xọ xo5
xoác xoac1
xoạc xoac5
xoạch xoach5
xoài xoai2
xoải xoai3
xoàm xoam2
xoàn xoan2
xoán xoan1
xoàng xoang2
xoảng xoang3
xoạng xoang5
xoành xoanh2
xoát xoat1
xoạt xoat5
xoáy xoay1
xoăn xoan8
xoẳn xoa8n3
xoắn xoa8n1
xoắt xoa8t1
xóc xoc1
xọc xoc5
xoèn xoen2
xoẻng xoeng3
xoét xoet1
xoẹt xoet5
xòi xoi2
xói xoi1
xòm xom2
xõm xom4
xóm xom1
xón xon1
xòng xong2
xỏng xong3
xõng xong4
xóng xong1
xóp xop1
xọp xop5
xót xot1
xô xo6
xồ xo62
xổ xo63
xố xo61
xộ xo65
xốc xo6c1
xộc xo6c5
xôi xoi6
xồi xo6i2
xổi xo6i3
xối xo6i1
xôm xom6
xồm xo6m2
xổm xo6m3
xôn xon6
xồn xo6n2
xổn xo6n3
xốn xo6n1
xộn xo6n5
xông xong6
xồng xo6ng2
xổng xo6ng3
xống xo6ng1
xốp xo6p1
xộp xo6p5
xốt xo6t1
xơ xo7
xờ xo72
xở xo73
xỡ xo74
xớ xo71
xơi xoi7
xời xo7i2
xởi xo7i3
xới xo7i1
xơm xom7
xờm xo7m2
xớm xo7m1
xơn xon7
xởn xo7n3
xớn xo7n1
xớp xo7p1
xợp xo7p5
xớt xo7t1
xợt xo7t5
xrê xre6
xrêpôc xrepoc66
xtiêng xtieng6
xtơ xto7
xtrây xtray6
xù xu2
xủ xu3
xũ xu4
xú xu1
xụ xu5
xùa xua2
xúa xua1
xuân xuan6
xuẩn xua6n3
xuất xua6t1
xuây xuay6
xúc xuc1
xục xuc5
xuê xue6
xuề xue62
xuể xue63
xuế xue61
xuệch xue6ch5
xuềnh xue6nh2
xùi xui2
xủi xui3
xúi xui1
xụi xui5
xùm xum2
xúm xum1
xùng xung2
xủng xung3
xúng xung1
xuôi xuoi6
xuông xuong6
xuồng xuo6ng2
xuổng xuo6ng3
xuống xuo6ng1
xúp xup1
xụp xup5
xút xut1
xụt xut5
xuyên xuyen6
xuyền xuye6n2
xuyển xuye6n3
xuyễn xuye6n4
xuyến xuye6n1
xuyết xuye6t1
xuýt xuyt1
xuỵt xuyt5
xư xu7
xừ xu72
xử xu73
xứ xu71
xự xu75
xưa xua7
xửa xu7a3
xứa xu7a1
xức xu7c1
xực xu7c5
xưng xung7
xừng xu7ng2
xửng xu7ng3
xứng xu7ng1
xước xuo7c1
xược xuo7c5
xười xuo7i2
xương xuong7
xường xuo7ng2
xưởng xuo7ng3
xướng xuo7ng1
xýt xyt1
ỳ y2
ỷ y3
ỹ y4
ý y1
ỵ y5
ỵa ya5
yàm yam2
yán yan1
ých ych1
ỵch ych5
yếc ye6c1
yêm yem6
yểm ye6m3
yếm ye6m1
yên yen6
yển ye6n3
yến ye6n1
yêng yeng6
yểng ye6ng3
yếng ye6ng1
yếp ye6p1
yết ye6t1
yêu yeu6
yều ye6u2
yểu ye6u3
yếu ye6u1
yì yi2
ýn yn1
ỵn yn5
ỳnh ynh2
ỷnh ynh3
ýnh ynh1
yò yo2
yó yo1
ýp yp1
ýt yt1
ỵt yt5
yú yu1
ỷu yu3
ỵu yu5
yùm yum2
zà za2
zabân zaban6
zài zai2
zắc za8c1
zăg zag8
zăng zang8
zép zep1
zéro zero1
zê ze6
zỏm zom3
zô zo6
================================================
FILE: test-data/vietnamese.new.dict.telex1.tdata
================================================
choá choas
choè choef
choẻ choer
choé choes
choẹ choej
chuỳ chuyf
chuỷ chuyr
chuý chuys
doá doas
doạ doaj
đoá ddoas
đoạ ddoaj
goá goas
hoà hoaf
hoả hoar
hoã hoax
hoá hoas
hoạ hoaj
hoè hoef
hoé hoes
hoẹ hoej
huỷ huyr
huý huys
khoà khoaf
khoả khoar
khoã khoax
khoá khoas
khoẻ khoer
khoé khoes
khuỷ khuyr
loà loaf
loả loar
loã loax
loá loas
loè loef
loé loes
luỹ luyx
luý luys
luỵ luyj
ngoà ngoaf
ngoả ngoar
ngoã ngoax
ngoá ngoas
ngoạ ngoaj
ngoè ngoef
ngoẻ ngoer
ngoẽ ngoex
ngoé ngoes
ngoẹ ngoej
nguỳ nguyf
nguỵ nguyj
nhoà nhoaf
nhoá nhoas
nhoè nhoef
nhoé nhoes
nhuỵ nhuyj
noạ noaj
nuỵ nuyj
oà oaf
oả oar
oã oax
oá oas
oạ oaj
oè oef
oẻ oer
oẽ oex
oé oes
oẹ oej
roá roas
soà soaf
soả soar
soã soax
soá soas
soạ soaj
suý suys
thoà thoaf
thoả thoar
thoã thoax
thoá thoas
thuỳ thuyf
thuỷ thuyr
thuý thuys
thuỵ thuyj
toà toaf
toả toar
toạ toaj
toè toef
toẻ toer
toẽ toex
toé toes
truỳ truyf
truỷ truyr
truý truys
truỵ truyj
tuỳ tuyf
tuỷ tuyr
tuý tuys
tuỵ tuyj
uỳ uyf
uỷ uyr
uỹ uyx
uý uys
uỵ uyj
xoà xoaf
xoả xoar
xoã xoax
xoá xoas
xoạ xoaj
xoè xoef
xoẹ xoej
xuỳ xuyf
xuý xuys
================================================
FILE: test-data/vietnamese.new.dict.telex2.tdata
================================================
choá choas
choè choef
choẻ choer
choé choes
choẹ choej
chuỳ chuyf
chuỷ chuyr
chuý chuys
doá doas
doạ doaj
đoá doads
đoạ doadj
goá goas
hoà hoaf
hoả hoar
hoã hoax
hoá hoas
hoạ hoaj
hoè hoef
hoé hoes
hoẹ hoej
huỷ huyr
huý huys
khoà khoaf
khoả khoar
khoã khoax
khoá khoas
khoẻ khoer
khoé khoes
khuỷ khuyr
loà loaf
loả loar
loã loax
loá loas
loè loef
loé loes
luỹ luyx
luý luys
luỵ luyj
ngoà ngoaf
ngoả ngoar
ngoã ngoax
ngoá ngoas
ngoạ ngoaj
ngoè ngoef
ngoẻ ngoer
ngoẽ ngoex
ngoé ngoes
ngoẹ ngoej
nguỳ nguyf
nguỵ nguyj
nhoà nhoaf
nhoá nhoas
nhoè nhoef
nhoé nhoes
nhuỵ nhuyj
noạ noaj
nuỵ nuyj
oà oaf
oả oar
oã oax
oá oas
oạ oaj
oè oef
oẻ oer
oẽ oex
oé oes
oẹ oej
roá roas
soà soaf
soả soar
soã soax
soá soas
soạ soaj
suý suys
thoà thoaf
thoả thoar
thoã thoax
thoá thoas
thuỳ thuyf
thuỷ thuyr
thuý thuys
thuỵ thuyj
toà toaf
toả toar
toạ toaj
toè toef
toẻ toer
toẽ toex
toé toes
truỳ truyf
truỷ truyr
truý truys
truỵ truyj
tuỳ tuyf
tuỷ tuyr
tuý tuys
tuỵ tuyj
uỳ uyf
uỷ uyr
uỹ uyx
uý uys
uỵ uyj
xoà xoaf
xoả xoar
xoã xoax
xoá xoas
xoạ xoaj
xoè xoef
xoẹ xoej
xuỳ xuyf
xuý xuys
================================================
FILE: test-data/vietnamese.new.dict.telex3.tdata
================================================
choá choas
choè choef
choẻ choer
choé choes
choẹ choej
chuỳ chuyf
chuỷ chuyr
chuý chuys
doá doas
doạ doaj
đoá doads
đoạ doadj
goá goas
hoà hoaf
hoả hoar
hoã hoax
hoá hoas
hoạ hoaj
hoè hoef
hoé hoes
hoẹ hoej
huỷ huyr
huý huys
khoà khoaf
khoả khoar
khoã khoax
khoá khoas
khoẻ khoer
khoé khoes
khuỷ khuyr
loà loaf
loả loar
loã loax
loá loas
loè loef
loé loes
luỹ luyx
luý luys
luỵ luyj
ngoà ngoaf
ngoả ngoar
ngoã ngoax
ngoá ngoas
ngoạ ngoaj
ngoè ngoef
ngoẻ ngoer
ngoẽ ngoex
ngoé ngoes
ngoẹ ngoej
nguỳ nguyf
nguỵ nguyj
nhoà nhoaf
nhoá nhoas
nhoè nhoef
nhoé nhoes
nhuỵ nhuyj
noạ noaj
nuỵ nuyj
oà oaf
oả oar
oã oax
oá oas
oạ oaj
oè oef
oẻ oer
oẽ oex
oé oes
oẹ oej
roá roas
soà soaf
soả soar
soã soax
soá soas
soạ soaj
suý suys
thoà thoaf
thoả thoar
thoã thoax
thoá thoas
thuỳ thuyf
thuỷ thuyr
thuý thuys
thuỵ thuyj
toà toaf
toả toar
toạ toaj
toè toef
toẻ toer
toẽ toex
toé toes
truỳ truyf
truỷ truyr
truý truys
truỵ truyj
tuỳ tuyf
tuỷ tuyr
tuý tuys
tuỵ tuyj
uỳ uyf
uỷ uyr
uỹ uyx
uý uys
uỵ uyj
xoà xoaf
xoả xoar
xoã xoax
xoá xoas
xoạ xoaj
xoè xoef
xoẹ xoej
xuỳ xuyf
xuý xuys
================================================
FILE: test-data/vietnamese.new.dict.vni1.tdata
================================================
choá choa1
choè choe2
choẻ choe3
choé choe1
choẹ choe5
chuỳ chuy2
chuỷ chuy3
chuý chuy1
doá doa1
doạ doa5
đoá d9oa1
đoạ d9oa5
goá goa1
hoà hoa2
hoả hoa3
hoã hoa4
hoá hoa1
hoạ hoa5
hoè hoe2
hoé hoe1
hoẹ hoe5
huỷ huy3
huý huy1
khoà khoa2
khoả khoa3
khoã khoa4
khoá khoa1
khoẻ khoe3
khoé khoe1
khuỷ khuy3
loà loa2
loả loa3
loã loa4
loá loa1
loè loe2
loé loe1
luỹ luy4
luý luy1
luỵ luy5
ngoà ngoa2
ngoả ngoa3
ngoã ngoa4
ngoá ngoa1
ngoạ ngoa5
ngoè ngoe2
ngoẻ ngoe3
ngoẽ ngoe4
ngoé ngoe1
ngoẹ ngoe5
nguỳ nguy2
nguỵ nguy5
nhoà nhoa2
nhoá nhoa1
nhoè nhoe2
nhoé nhoe1
nhuỵ nhuy5
noạ noa5
nuỵ nuy5
oà oa2
oả oa3
oã oa4
oá oa1
oạ oa5
oè oe2
oẻ oe3
oẽ oe4
oé oe1
oẹ oe5
roá roa1
soà soa2
soả soa3
soã soa4
soá soa1
soạ soa5
suý suy1
thoà thoa2
thoả thoa3
thoã thoa4
thoá thoa1
thuỳ thuy2
thuỷ thuy3
thuý thuy1
thuỵ thuy5
toà toa2
toả toa3
toạ toa5
toè toe2
toẻ toe3
toẽ toe4
toé toe1
truỳ truy2
truỷ truy3
truý truy1
truỵ truy5
tuỳ tuy2
tuỷ tuy3
tuý tuy1
tuỵ tuy5
uỳ uy2
uỷ uy3
uỹ uy4
uý uy1
uỵ uy5
xoà xoa2
xoả xoa3
xoã xoa4
xoá xoa1
xoạ xoa5
xoè xoe2
xoẹ xoe5
xuỳ xuy2
xuý xuy1
================================================
FILE: test-data/vietnamese.new.dict.vni2.tdata
================================================
choá choa1
choè choe2
choẻ choe3
choé choe1
choẹ choe5
chuỳ chuy2
chuỷ chuy3
chuý chuy1
doá doa1
doạ doa5
đoá doa91
đoạ doa95
goá goa1
hoà hoa2
hoả hoa3
hoã hoa4
hoá hoa1
hoạ hoa5
hoè hoe2
hoé hoe1
hoẹ hoe5
huỷ huy3
huý huy1
khoà khoa2
khoả khoa3
khoã khoa4
khoá khoa1
khoẻ khoe3
khoé khoe1
khuỷ khuy3
loà loa2
loả loa3
loã loa4
loá loa1
loè loe2
loé loe1
luỹ luy4
luý luy1
luỵ luy5
ngoà ngoa2
ngoả ngoa3
ngoã ngoa4
ngoá ngoa1
ngoạ ngoa5
ngoè ngoe2
ngoẻ ngoe3
ngoẽ ngoe4
ngoé ngoe1
ngoẹ ngoe5
nguỳ nguy2
nguỵ nguy5
nhoà nhoa2
nhoá nhoa1
nhoè nhoe2
nhoé nhoe1
nhuỵ nhuy5
noạ noa5
nuỵ nuy5
oà oa2
oả oa3
oã oa4
oá oa1
oạ oa5
oè oe2
oẻ oe3
oẽ oe4
oé oe1
oẹ oe5
roá roa1
soà soa2
soả soa3
soã soa4
soá soa1
soạ soa5
suý suy1
thoà thoa2
thoả thoa3
thoã thoa4
thoá thoa1
thuỳ thuy2
thuỷ thuy3
thuý thuy1
thuỵ thuy5
toà toa2
toả toa3
toạ toa5
toè toe2
toẻ toe3
toẽ toe4
toé toe1
truỳ truy2
truỷ truy3
truý truy1
truỵ truy5
tuỳ tuy2
tuỷ tuy3
tuý tuy1
tuỵ tuy5
uỳ uy2
uỷ uy3
uỹ uy4
uý uy1
uỵ uy5
xoà xoa2
xoả xoa3
xoã xoa4
xoá xoa1
xoạ xoa5
xoè xoe2
xoẹ xoe5
xuỳ xuy2
xuý xuy1
================================================
FILE: test-data/vietnamese.new.dict.vni3.tdata
================================================
choá choa1
choè choe2
choẻ choe3
choé choe1
choẹ choe5
chuỳ chuy2
chuỷ chuy3
chuý chuy1
doá doa1
doạ doa5
đoá doa91
đoạ doa95
goá goa1
hoà hoa2
hoả hoa3
hoã hoa4
hoá hoa1
hoạ hoa5
hoè hoe2
hoé hoe1
hoẹ hoe5
huỷ huy3
huý huy1
khoà khoa2
khoả khoa3
khoã khoa4
khoá khoa1
khoẻ khoe3
khoé khoe1
khuỷ khuy3
loà loa2
loả loa3
loã loa4
loá loa1
loè loe2
loé loe1
luỹ luy4
luý luy1
luỵ luy5
ngoà ngoa2
ngoả ngoa3
ngoã ngoa4
ngoá ngoa1
ngoạ ngoa5
ngoè ngoe2
ngoẻ ngoe3
ngoẽ ngoe4
ngoé ngoe1
ngoẹ ngoe5
nguỳ nguy2
nguỵ nguy5
nhoà nhoa2
nhoá nhoa1
nhoè nhoe2
nhoé nhoe1
nhuỵ nhuy5
noạ noa5
nuỵ nuy5
oà oa2
oả oa3
oã oa4
oá oa1
oạ oa5
oè oe2
oẻ oe3
oẽ oe4
oé oe1
oẹ oe5
roá roa1
soà soa2
soả soa3
soã soa4
soá soa1
soạ soa5
suý suy1
thoà thoa2
thoả thoa3
thoã thoa4
thoá thoa1
thuỳ thuy2
thuỷ thuy3
thuý thuy1
thuỵ thuy5
toà toa2
toả toa3
toạ toa5
toè toe2
toẻ toe3
toẽ toe4
toé toe1
truỳ truy2
truỷ truy3
truý truy1
truỵ truy5
tuỳ tuy2
tuỷ tuy3
tuý tuy1
tuỵ tuy5
uỳ uy2
uỷ uy3
uỹ uy4
uý uy1
uỵ uy5
xoà xoa2
xoả xoa3
xoã xoa4
xoá xoa1
xoạ xoa5
xoè xoe2
xoẹ xoe5
xuỳ xuy2
xuý xuy1
================================================
FILE: test-data/vietnamese.sp.dict.telex1.fix.tdata
================================================
amiđan amiddan
anđt anddt
atnđ atndd
axít axxist
bcđ bcdd
bcđpctntư bcddpctntuw
bcđqg bcddqg
bcđt bcddt
bcđts bcddts
bchtư bchtuw
bđ bdd
bđn bddn
bđs bdds
bđvn bddvn
bêrê beerree
bgdđt bgdddt
bhalêê bhaleeee
bhđc bhddc
bioóc bioosc
boóng booosng
bôxit booxxit
bvđk bvddk
café caffes
cđ cdd
cđsp cddsp
cđv cddv
choòng chooofng
chơro chowrro
cnqsdđ cnqsddd
coóc cooosc
cqđt cqddt
cscđ cscdd
csđn csddn
csđt csddt
csđtlx csddtlx
csđttp csddttp
csđttpmt csddttpmt
ctđ ctdd
ctđl ctddl
dagtđt dagtddt
dđ dddd
đatp ddatp
đb ddb
đba ddba
đbdt ddbdt
đbđ ddbdd
đbđvn ddbddvn
đbkvn ddbkvn
đbp ddbp
đbqh ddbqh
đbscl ddbscl
đbtn ddbtn
đbtsxb ddbtsxb
đc ddc
đcd ddcd
đcdgs ddcdgs
đcdgscs ddcdgscs
đcdgsn ddcdgsn
đcdgsnn ddcdgsnn
đcl ddcl
đclgd ddclgd
đcs ddcs
đcstq ddcstq
đcsvn ddcsvn
đct ddct
đgn ddgn
đh ddh
đhbc ddhbc
đhbk ddhbk
đhbkhcm ddhbkhcm
đhbkhn ddhbkhn
đhbktphcm ddhbktphcm
đhcđ ddhcdd
đhclc ddhclc
đhcn ddhcn
đhct ddhct
đhgtvt ddhgtvt
đhhb ddhhb
đhhvn ddhhvn
đhkh ddhkh
đhkhtn ddhkhtn
đhkhtnhn ddhkhtnhn
đhkhxh ddhkhxh
đhkt ddhkt
đhktcn ddhktcn
đhktqd ddhktqd
đhn ddhn
đhnt ddhnt
đhqg ddhqg
đhqghn ddhqghn
đhsp ddhsp
đk ddk
đkđt ddkddt
đkhk ddkhk
đkkd ddkkd
đkkh ddkkh
đkt ddkt
đkvđ ddkvdd
đkvn ddkvn
đkxt ddkxt
đkz ddkz
đl ddl
đlđ ddldd
đltp ddltp
đm ddm
đmn ddmn
đn ddn
đna ddna
đná ddnas
đnd ddnd
đndtp ddndtp
đnđ ddndd
đnn ddnn
đnt ddnt
đrl ddrl
đsq ddsq
đta ddta
đtd ddtd
đtdđ ddtdddd
đtđ ddtdd
đthvn ddthvn
đtlt ddtlt
đtnn ddtnn
đtqg ddtqg
đttx ddttx
đttxqm ddttxqm
đtv ddtv
đtvhd ddtvhd
đtvn ddtvn
đtxdcb ddtxdcb
đvht ddvht
đvtn ddvtn
đvttn ddvttn
đvưt ddvuwt
êđê eeddee
êrê eerree
gcnđkkd gcnddkkd
gcnqsdđ gcnqsddd
gcnqsdđơ gcnqsdddow
gcnqshnơ gcnqshnow
gdđh gddddh
gdđt gddddt
gđ gdd
gđt gddt
gđtla gddtla
gđtt gddtt
giêsu gieessu
giêxu gieexxu
goòng gooofng
gplhđb gplhddb
hcđ hcdd
hđ hdd
hđba hddba
hđcd hddcd
hđcdgs hddcdgs
hđcdgscs hddcdgscs
hđcdgsn hddcdgsn
hđcdgsnn hddcdgsnn
hđct hddct
hđh hddh
hđkt hddkt
hđlđ hddldd
hđnd hddnd
hđndtp hddndtp
hđnt hddnt
hđqt hddqt
hđrung hddrung
hđt hddt
hđtđ hddtdd
hđts hddts
hđtt hddtt
hđxx hddxx
hlbđ hlbdd
hmnđ hmndd
hngđ hngdd
hoóc hooosc
hqđt hqddt
hsđkdt hsddkdt
htcđ htcdd
kađai kaddai
kdđv kddddv
kdhđc kdhddc
kđcl kddcl
kđclgd kddclgd
kđrao kddrao
kđs kdds
kđt kddt
kđtm kddtm
kđtntl kddtntl
khđt khddt
kilôoát kilooooast
klđt klddt
lđ ldd
lđbđ lddbdd
lđbđvn lddbddvn
lđlđ lddldd
lđtb lddtb
lđtbxh lddtbxh
lllđ llldd
loỏng looorng
ltqđtd ltqddtd
mđhur mddhur
moóc mooosc
môtô mootoo
mtđt mtddt
nđ ndd
nđt nddt
nđvn nddvn
nhđa nhdda
nhđá nhddas
nhđt nhddt
nhđtpt nhddtpt
nlđ nldd
nmđ nmdd
nơron nowrron
nsưt nsuwt
nxbqđnd nxbqddnd
óoc osooc
orăng orrawng
ốk oosk
ôkô ookoo
ôr oorr
ôtô ootoo
ôtôca ootooca
ôxit ooxxit
ôxy ooxxy
pclbtư pclbtuw
pgđ pgdd
poóc pooosc
poọng pooojng
pốk poosk
pôkô pookoo
prôton prooton
qđ qdd
qđnd qddnd
qlđt qlddt
qsdđ qsddd
rđê rddee
sdđnn sddddnn
sđh sddh
sđk sddk
sđnđ sddndd
sđt sddt
sđtla sddtla
skhđt skhddt
smđh smddh
soóc sooosc
svđ svdd
svđv svddv
tđ tdd
tđbkvn tddbkvn
tđc tddc
tgđ tgdd
thcsnđ thcsndd
thktsmđ thktsmdd
thoòng thooofng
tmđt tmddt
tnđh tnddh
tnđt tnddt
toòng tooofng
tơrao towrrao
tpcđ tpcdd
troóc trooosc
tsdđ tsddd
ttbđs ttbdds
ttđb ttddb
ttđm ttddm
tthtcđ tthtcdd
vđ vdd
vđqg vddqg
vđv vddv
vđvqg vddvqg
vhgdttnnđ vhgdttnndd
voọc vooojc
xđgn xddgn
xklđ xkldd
ytcđ ytcdd
ytế ytees
================================================
FILE: test-data/vietnamese.sp.dict.telex2.fix.tdata
================================================
amiđan amidand
anđt andtd
atnđ atndd
axít axits
bcđ bcdd
bcđpctntư bcdpctntudw
bcđqg bcdqgd
bcđt bcdtd
bcđts bcdtsd
bchtư bchtuw
bđ bdd
bđn bdnd
bđs bdsd
bđvn bdvnd
bêrê berreee
bgdđt bgdddt
bhalêê bhaleeee
bhđc bhdcd
bioóc bioocs
boóng booongs
bôxit boxxito
bvđk bvdkd
café caffes
cđ cdd
cđsp cdspd
cđv cdvd
choòng chooongf
chơro chorrow
cnqsdđ cnqsddd
coóc cooocs
cqđt cqdtd
cscđ cscdd
csđn csdnd
csđt csdtd
csđtlx csdtlxd
csđttp csdttpd
csđttpmt csdttpmtd
ctđ ctdd
ctđl ctdld
dagtđt dagtdtd
dđ dddd
đatp datpd
đb dbd
đba dbad
đbđvn dbddvnd
đbkvn dbkvnd
đbp dbpd
đbqh dbqhd
đbscl dbscld
đbtn dbtnd
đbtsxb dbtsxbd
đc dcd
đcd dcdd
đcdgs dcddgs
đcdgscs dcddgscs
đcdgsn dcddgsn
đcdgsnn dcddgsnn
đcl dcld
đclgd dclgdd
đcs dcsd
đcstq dcstqd
đcsvn dcsvnd
đct dctd
đgn dgnd
đh dhd
đhbc dhbcd
đhbk dhbkd
đhbkhcm dhbkhcmd
đhbkhn dhbkhnd
đhbktphcm dhbktphcmd
đhcđ dhcddd
đhclc dhclcd
đhcn dhcnd
đhct dhctd
đhgtvt dhgtvtd
đhhb dhhbd
đhhvn dhhvnd
đhkh dhkhd
đhkhtn dhkhtnd
đhkhtnhn dhkhtnhnd
đhkhxh dhkhxhd
đhkt dhktd
đhktcn dhktcnd
đhktqd dhktqdd
đhn dhnd
đhnt dhntd
đhqg dhqgd
đhqghn dhqghnd
đhsp dhspd
đk dkd
đkđt dkddtdd
đkhk dkhkd
đkkd dkkdd
đkkh dkkhd
đkt dktd
đkvđ dkvddd
đkvn dkvnd
đkxt dkxtd
đkz dkzd
đl dld
đlđ dlddd
đltp dltpd
đm dmd
đmn dmnd
đn dnd
đna dnad
đná dnads
đnd dndd
đndtp dnddtp
đnđ dnddd
đnn dnnd
đnt dntd
đrl drld
đsq dsqd
đta dtad
đtd dtdd
đtdđ dtddddd
đtđ dtddd
đthvn dthvnd
đtlt dtltd
đtnn dtnnd
đtqg dtqgd
đttx dttxd
đttxqm dttxqmd
đtv dtvd
đtvhd dtvhdd
đtvn dtvnd
đtxdcb dtxddcbd
đvht dvhtd
đvtn dvtnd
đvttn dvttnd
đvưt dvutdw
êđê edeede
êrê erreee
gcnđkkd gcndkkdd
gcnqsdđ gcnqsddd
gcnqsdđơ gcnqsddodw
gcnqshnơ gcnqshnow
gdđh gddhd
gdđt gddddt
gđ gdd
gđt gdtd
gđtla gdtlad
gđtt gdttd
giêsu giessue
giêxu giexxue
goòng gooongf
gplhđb gplhdbd
hcđ hcdd
hđ hdd
hđba hdbad
hđcd hdcdd
hđcdgs hdcddgs
hđcdgscs hdcddgscs
hđcdgsn hdcddgsn
hđcdgsnn hdcddgsnn
hđct hdctd
hđh hdhd
hđkt hdktd
hđlđ hdlddd
hđnd hdndd
hđndtp hdnddtp
hđnt hdntd
hđqt hdqtd
hđrung hdrungd
hđt hdtd
hđtđ hdtddd
hđts hdtsd
hđtt hdttd
hđxx hdxxd
hlbđ hlbdd
hmnđ hmndd
hngđ hngdd
hoóc hooocs
hqđt hqdtd
htcđ htcdd
kađai kadaid
kdđv kddvd
kdhđc kdhdcd
kđcl kdcld
kđclgd kdclgdd
kđrao kdraod
kđs kdsd
kđt kdtd
kđtm kdtmd
kđtntl kdtntld
khđt khdtd
kilôoát kiloooatos
klđt kldtd
lđ ldd
lđbđ ldbddd
lđbđvn ldbdvndd
lđlđ ldlddd
lđtb ldtbd
lđtbxh ldtbxhd
lllđ llldd
loỏng looongr
ltqđtd ltqdtdd
mđhur mdhurd
moóc mooocs
môtô motooo
mtđt mtdtd
nđ ndd
nđt ndtd
nđvn ndvnd
nhđa nhdad
nhđá nhdads
nhđt nhdtd
nhđtpt nhdtptd
nlđ nldd
nmđ nmdd
nơron noronw
nsưt nsutw
nxbqđnd nxbqdndd
óoc ooocs
orăng orrangw
ốk okso
ôkô okooo
ôông ooongoo
ôr orro
ôtô otooo
ôtôca otoocao
ôxit oxxito
ôxy oxxyo
ôxy oxyo
pclbtư pclbtuw
pgđ pgdd
poóc pooocs
poọng pooongj
pốk pokso
pôkô pokooo
pôông pooongoo
prôton protono
qđ qdd
qđnd qdndd
qlđt qldtd
qsdđ qsddd
rđê rdede
sdđnn sddnnd
sđh sdhd
sđk sdkd
sđnđ sdnddd
sđt sdtd
sđtla sdtlad
skhđt skhdtd
smđh smdhd
soóc sooocs
svđ svdd
svđv svdvd
tđ tdd
tđbkvn tdbkvnd
tđc tdcd
tgđ tgdd
thcsnđ thcsndd
thktsmđ thktsmdd
thoòng thooongf
tmđt tmdtd
tnđh tndhd
tnđt tndtd
toòng tooongf
tơrao torraow
tpcđ tpcdd
troóc trooocs
tsdđ tsddd
ttbđs ttbdsd
ttđb ttdbd
ttđm ttdmd
tthtcđ tthtcdd
vđ vdd
vđqg vdqgd
vđv vdvd
vđvqg vdvqgd
vhgdttnnđ vhgdttnndd
voọc vooocj
xđgn xdgnd
xklđ xkldd
ytcđ ytcdd
ytế ytees
================================================
FILE: test-data/vietnamese.sp.dict.telex3.fix.tdata
================================================
amiđan amidand
anđt andtd
atnđ atndd
axít axits
bcđ bcdd
bcđpctntư bcdpctntudw
bcđqg bcdqgd
bcđt bcdtd
bcđts bcdtsd
bchtư bchtuw
bđ bdd
bđn bdnd
bđs bdsd
bđvn bdvnd
bêrê berreee
bgdđt bgddtd
bhalêê bhaleeee
bhđc bhdcd
bioóc bioocs
boóng booongs
bôxit boxxito
bvđk bvdkd
café caffes
cđ cdd
cđsp cdspd
cđv cdvd
choòng chooongf
chơro chorrow
cnqsdđ cnqsddd
coóc cooocs
cqđt cqdtd
cscđ cscdd
csđn csdnd
csđt csdtd
csđtlx csdtlxd
csđttp csdttpd
csđttpmt csdttpmtd
ctđ ctdd
ctđl ctdld
dagtđt dagtdtd
dđ dddd
đatp datpd
đb dbd
đba dbad
đbđvn dbddvnd
đbkvn dbkvnd
đbp dbpd
đbqh dbqhd
đbscl dbscld
đbtn dbtnd
đbtsxb dbtsxbd
đc dcd
đcd dcdd
đcdgs dcddgs
đcdgscs dcddgscs
đcdgsn dcddgsn
đcdgsnn dcddgsnn
đcl dcld
đclgd dclgdd
đcs dcsd
đcstq dcstqd
đcsvn dcsvnd
đct dctd
đgn dgnd
đh dhd
đhbc dhbcd
đhbk dhbkd
đhbkhcm dhbkhcmd
đhbkhn dhbkhnd
đhbktphcm dhbktphcmd
đhcđ dhcddd
đhclc dhclcd
đhcn dhcnd
đhct dhctd
đhgtvt dhgtvtd
đhhb dhhbd
đhhvn dhhvnd
đhkh dhkhd
đhkhtn dhkhtnd
đhkhtnhn dhkhtnhnd
đhkhxh dhkhxhd
đhkt dhktd
đhktcn dhktcnd
đhktqd dhktqdd
đhn dhnd
đhnt dhntd
đhqg dhqgd
đhqghn dhqghnd
đhsp dhspd
đk dkd
đkđt dkddtdd
đkhk dkhkd
đkkd dkkdd
đkkh dkkhd
đkt dktd
đkvđ dkvddd
đkvn dkvnd
đkxt dkxtd
đkz dkzd
đl dld
đlđ dlddd
đltp dltpd
đm dmd
đmn dmnd
đn dnd
đna dnad
đná dnads
đnd dndd
đndtp dnddtp
đnđ dnddd
đnn dnnd
đnt dntd
đrl drld
đsq dsqd
đta dtad
đtd dtdd
đtdđ ddtdddd
đtđ dtddd
đthvn dthvnd
đtlt dtltd
đtnn dtnnd
đtqg dtqgd
đttx dttxd
đttxqm dttxqmd
đtv dtvd
đtvhd dtvhdd
đtvn dtvnd
đtxdcb dtxddcbd
đvht dvhtd
đvtn dvtnd
đvttn dvttnd
đvưt dvutdw
êđê edeede
êrê erreee
gcnđkkd gcndkkdd
gcnqsdđ gcnqsddd
gcnqsdđơ gcnqsddodw
gcnqshnơ gcnqshnow
gdđh gddhd
gdđt gddddt
gđ gdd
gđt gdtd
gđtla gdtlad
gđtt gdttd
giêsu giessue
giêxu giexxue
goòng gooongf
gplhđb gplhdbd
hcđ hcdd
hđ hdd
hđba hdbad
hđcd hdcdd
hđcdgs hdcddgs
hđcdgscs hdcddgscs
hđcdgsn hdcddgsn
hđcdgsnn hdcddgsnn
hđct hdctd
hđh hdhd
hđkt hdktd
hđlđ hdlddd
hđnd hdndd
hđndtp hdnddtp
hđnt hdntd
hđqt hdqtd
hđrung hdrungd
hđt hdtd
hđtđ hdtddd
hđts hdtsd
hđtt hdttd
hđxx hdxxd
hlbđ hlbdd
hmnđ hmndd
hngđ hngdd
hoóc hooocs
hqđt hqdtd
hsđkdt hsdkddtd
htcđ htcdd
kađai kadaid
kdđv kddvd
kdhđc kdhdcd
kđcl kdcld
kđclgd kdclgdd
kđrao kdraod
kđs kdsd
kđt kdtd
kđtm kdtmd
kđtntl kdtntld
khđt khdtd
kilôoát kiloooatos
klđt kldtd
lđ ldd
lđbđ ldbddd
lđbđvn ldbdvndd
lđlđ ldlddd
lđtb ldtbd
lđtbxh ldtbxhd
lllđ llldd
loỏng looongr
ltqđtd ltqdtdd
mđhur mdhurd
moóc mooocs
môtô motooo
mtđt mtdtd
nđ ndd
nđt ndtd
nđvn ndvnd
nhđa nhdad
nhđá nhdads
nhđt nhdtd
nhđtpt nhdtptd
nlđ nldd
nmđ nmdd
nơron noronw
nsưt nsutw
nxbqđnd nxbqdndd
óoc ooocs
orăng orrangw
ốk ooks
ôkô okooo
ôông ooongoo
ôr orro
ôtô otooo
ôtôca otoocao
ôxit oxxito
ôxy oxxyo
ôxy oxyo
pclbtư pclbtuw
pgđ pgdd
poóc pooocs
poọng pooongj
pốk pooks
pôkô pokooo
pôồn poooonof
pôông pooongoo
prôton protono
qđ qdd
qđnd qdndd
qlđt qldtd
qsdđ qsddd
rđê rdede
sdđnn sddnnd
sđh sdhd
sđk sdkd
sđnđ sdnddd
sđt sdtd
sđtla sdtlad
skhđt skhdtd
smđh smdhd
soóc sooocs
svđ svdd
svđv svdvd
tđ tdd
tđbkvn tdbkvnd
tđc tdcd
tgđ tgdd
thcsnđ thcsndd
thktsmđ thktsmdd
thoòng thooongf
tmđt tmdtd
tnđh tndhd
tnđt tndtd
toòng tooongf
tơrao torraow
tpcđ tpcdd
troóc trooocs
tsdđ tsddd
ttbđs ttbdsd
ttđb ttdbd
ttđm ttdmd
tthtcđ tthtcdd
vđ vdd
vđqg vdqgd
vđv vdvd
vđvqg vdvqgd
vhgdttnnđ vhgdttnndd
voọc vooocj
xđgn xdgnd
xklđ xkldd
ytcđ ytcdd
ytế ytees
================================================
FILE: test-data/vietnamese.sp.dict.telexw.fix.tdata
================================================
bcđpctntư bcddpctnt]
bchtư bcht]
chơro ch[rro
đvưt ddv]t
gcnqsdđơ gcnqsddd[
gcnqshnơ gcnqshn[
nơron n[rron
nsưt ns]t
pclbtư pclbt]
tơrao t[rrao
================================================
FILE: test-data/vietnamese.sp.dict.vni1.tdata
================================================
amiđan amid9an
anđt and9t
atnđ atnd9
axít axi1t
bcđ bcd9
bcđpctntư bcd9pctntu7
bcđqg bcd9qg
bcđt bcd9t
bcđts bcd9ts
bchtư bchtu7
bđ bd9
bđn bd9n
bđs bd9s
bđvn bd9vn
bêrê be6re6
bgdđt bgdd9t
bhalêê bhale6e6
bhđc bhd9c
bioóc bioo1c
boóng boo1ng
bôxit bo6xit
bvđk bvd9k
café cafe1
cđ cd9
cđsp cd9sp
cđv cd9v
choòng choo2ng
chơro cho7ro
cnqsdđ cnqsdd9
coóc coo1c
cqđt cqd9t
cscđ cscd9
csđn csd9n
csđt csd9t
csđtlx csd9tlx
csđttp csd9ttp
csđttpmt csd9ttpmt
ctđ ctd9
ctđl ctd9l
dagtđt dagtd9t
dđ dd9
đatp d9atp
đb d9b
đba d9ba
đbdt d9bdt
đbđ d9bd9
đbđvn d9bd9vn
đbkvn d9bkvn
đbp d9bp
đbqh d9bqh
đbscl d9bscl
đbtn d9btn
đbtsxb d9btsxb
đc d9c
đcd d9cd
đcdgs d9cdgs
đcdgscs d9cdgscs
đcdgsn d9cdgsn
đcdgsnn d9cdgsnn
đcl d9cl
đclgd d9clgd
đcs d9cs
đcstq d9cstq
đcsvn d9csvn
đct d9ct
đgn d9gn
đh d9h
đhbc d9hbc
đhbk d9hbk
đhbkhcm d9hbkhcm
đhbkhn d9hbkhn
đhbktphcm d9hbktphcm
đhcđ d9hcd9
đhclc d9hclc
đhcn d9hcn
đhct d9hct
đhgtvt d9hgtvt
đhhb d9hhb
đhhvn d9hhvn
đhkh d9hkh
đhkhtn d9hkhtn
đhkhtnhn d9hkhtnhn
đhkhxh d9hkhxh
đhkt d9hkt
đhktcn d9hktcn
đhktqd d9hktqd
đhn d9hn
đhnt d9hnt
đhqg d9hqg
đhqghn d9hqghn
đhsp d9hsp
đk d9k
đkđt d9kd9t
đkhk d9khk
đkkd d9kkd
đkkh d9kkh
đkt d9kt
đkvđ d9kvd9
đkvn d9kvn
đkxt d9kxt
đkz d9kz
đl d9l
đlđ d9ld9
đltp d9ltp
đm d9m
đmn d9mn
đn d9n
đna d9na
đná d9na1
đnd d9nd
đndtp d9ndtp
đnđ d9nd9
đnn d9nn
đnt d9nt
đrl d9rl
đsq d9sq
đta d9ta
đtd d9td
đtdđ d9tdd9
đtđ d9td9
đthvn d9thvn
đtlt d9tlt
đtnn d9tnn
đtqg d9tqg
đttx d9ttx
đttxqm d9ttxqm
đtv d9tv
đtvhd d9tvhd
đtvn d9tvn
đtxdcb d9txdcb
đvht d9vht
đvtn d9vtn
đvttn d9vttn
đvưt d9vu7t
êđê e6d9e6
êrê e6re6
gcnđkkd gcnd9kkd
gcnqsdđ gcnqsdd9
gcnqsdđơ gcnqsdd9o7
gcnqshnơ gcnqshno7
gdđh gdd9h
gdđt gdd9t
gđ gd9
gđt gd9t
gđtla gd9tla
gđtt gd9tt
giêsu gie6su
giêxu gie6xu
goòng goo2ng
gplhđb gplhd9b
hcđ hcd9
hđ hd9
hđba hd9ba
hđcd hd9cd
hđcdgs hd9cdgs
hđcdgscs hd9cdgscs
hđcdgsn hd9cdgsn
hđcdgsnn hd9cdgsnn
hđct hd9ct
hđh hd9h
hđkt hd9kt
hđlđ hd9ld9
hđnd hd9nd
hđndtp hd9ndtp
hđnt hd9nt
hđqt hd9qt
hđrung hd9rung
hđt hd9t
hđtđ hd9td9
hđts hd9ts
hđtt hd9tt
hđxx hd9xx
hlbđ hlbd9
hmnđ hmnd9
hngđ hngd9
hoóc hoo1c
hqđt hqd9t
hsđkdt hsd9kdt
htcđ htcd9
kađai kad9ai
kdđv kdd9v
kdhđc kdhd9c
kđcl kd9cl
kđclgd kd9clgd
kđrao kd9rao
kđs kd9s
kđt kd9t
kđtm kd9tm
kđtntl kd9tntl
khđt khd9t
kilôoát kilo6oa1t
klđt kld9t
lđ ld9
lđbđ ld9bd9
lđbđvn ld9bd9vn
lđlđ ld9ld9
lđtb ld9tb
lđtbxh ld9tbxh
lllđ llld9
loỏng loo3ng
ltqđtd ltqd9td
mđhur md9hur
moóc moo1c
môtô mo6to6
mtđt mtd9t
nđ nd9
nđt nd9t
nđvn nd9vn
nhđa nhd9a
nhđá nhd9a1
nhđt nhd9t
nhđtpt nhd9tpt
nlđ nld9
nmđ nmd9
nơron no7ron
nsưt nsu7t
nxbqđnd nxbqd9nd
óoc o1oc
orăng ora8ng
ốk o61k
ôkô o6ko6
ôông o6o6ng
ôr o6r
ôtô o6to6
ôtôca o6to6ca
ôxi o6xi
ôxit o6xit
ôxy o6xy
pclbtư pclbtu7
pgđ pgd9
poóc poo1c
poọng poo5ng
pốk po61k
pôkô po6ko6
pôồn po6o62n
pôông po6o6ng
prôton pro6ton
qđ qd9
qđnd qd9nd
qlđt qld9t
qsdđ qsdd9
rđê rd9e6
sdđnn sdd9nn
sđh sd9h
sđk sd9k
sđnđ sd9nd9
sđt sd9t
sđtla sd9tla
skhđt skhd9t
smđh smd9h
soóc soo1c
svđ svd9
svđv svd9v
tđ td9
tđbkvn td9bkvn
tđc td9c
tgđ tgd9
thcsnđ thcsnd9
thktsmđ thktsmd9
thoòng thoo2ng
tmđt tmd9t
tnđh tnd9h
tnđt tnd9t
toòng too2ng
tơrao to7rao
tpcđ tpcd9
troóc troo1c
tsdđ tsdd9
ttbđs ttbd9s
ttđb ttd9b
ttđm ttd9m
tthtcđ tthtcd9
vđ vd9
vđqg vd9qg
vđv vd9v
vđvqg vd9vqg
vhgdttnnđ vhgdttnnd9
voọc voo5c
xđgn xd9gn
xklđ xkld9
ytcđ ytcd9
ytế yte61
================================================
FILE: test-data/vietnamese.sp.dict.vni2.tdata
================================================
amiđan amidan9
anđt andt9
atnđ atnd9
axít axit1
bcđ bcd9
bcđpctntư bcdpctntu97
bcđqg bcdqg9
bcđt bcdt9
bcđts bcdts9
bchtư bchtu7
bđ bd9
bđn bdn9
bđs bds9
bđvn bdvn9
bêrê bere66
bgdđt bgddt9
bhalêê bhalee66
bhđc bhdc9
bioóc biooc1
boóng boong1
bôxit boxit6
bvđk bvdk9
café cafe1
cđ cd9
cđsp cdsp9
cđv cdv9
choòng choong2
chơro choro7
cnqsdđ cnqsdd9
coóc cooc1
cqđt cqdt9
cscđ cscd9
csđn csdn9
csđt csdt9
csđtlx csdtlx9
csđttp csdttp9
csđttpmt csdttpmt9
ctđ ctd9
ctđl ctdl9
dagtđt dagtdt9
dđ dd9
đatp datp9
đb db9
đba dba9
đbdt dbdt9
đbđ dbd99
đbđvn dbdvn99
đbkvn dbkvn9
đbp dbp9
đbqh dbqh9
đbscl dbscl9
đbtn dbtn9
đbtsxb dbtsxb9
đc dc9
đcd dcd9
đcdgs dcdgs9
đcdgscs dcdgscs9
đcdgsn dcdgsn9
đcdgsnn dcdgsnn9
đcl dcl9
đclgd dclgd9
đcs dcs9
đcstq dcstq9
đcsvn dcsvn9
đct dct9
đgn dgn9
đh dh9
đhbc dhbc9
đhbk dhbk9
đhbkhcm dhbkhcm9
đhbkhn dhbkhn9
đhbktphcm dhbktphcm9
đhcđ dhcd99
đhclc dhclc9
đhcn dhcn9
đhct dhct9
đhgtvt dhgtvt9
đhhb dhhb9
đhhvn dhhvn9
đhkh dhkh9
đhkhtn dhkhtn9
đhkhtnhn dhkhtnhn9
đhkhxh dhkhxh9
đhkt dhkt9
đhktcn dhktcn9
đhktqd dhktqd9
đhn dhn9
đhnt dhnt9
đhqg dhqg9
đhqghn dhqghn9
đhsp dhsp9
đk dk9
đkđt dkdt99
đkhk dkhk9
đkkd dkkd9
đkkh dkkh9
đkt dkt9
đkvđ dkvd99
đkvn dkvn9
đkxt dkxt9
đkz dkz9
đl dl9
đlđ dld99
đltp dltp9
đm dm9
đmn dmn9
đn dn9
đna dna9
đná dna91
đnd dnd9
đndtp dndtp9
đnđ dnd99
đnn dnn9
đnt dnt9
đrl drl9
đsq dsq9
đta dta9
đtd dtd9
đtdđ dtdd99
đtđ dtd99
đthvn dthvn9
đtlt dtlt9
đtnn dtnn9
đtqg dtqg9
đttx dttx9
đttxqm dttxqm9
đtv dtv9
đtvhd dtvhd9
đtvn dtvn9
đtxdcb dtxdcb9
đvht dvht9
đvtn dvtn9
đvttn dvttn9
đvưt dvut97
êđê ede696
êrê ere66
gcnđkkd gcndkkd9
gcnqsdđ gcnqsdd9
gcnqsdđơ gcnqsddo97
gcnqshnơ gcnqshno7
gdđh gddh9
gdđt gddt9
gđ gd9
gđt gdt9
gđtla gdtla9
gđtt gdtt9
giêsu giesu6
giêxu giexu6
goòng goong2
gplhđb gplhdb9
hcđ hcd9
hđ hd9
hđba hdba9
hđcd hdcd9
hđcdgs hdcdgs9
hđcdgscs hdcdgscs9
hđcdgsn hdcdgsn9
hđcdgsnn hdcdgsnn9
hđct hdct9
hđh hdh9
hđkt hdkt9
hđlđ hdld99
hđnd hdnd9
hđndtp hdndtp9
hđnt hdnt9
hđqt hdqt9
hđrung hdrung9
hđt hdt9
hđtđ hdtd99
hđts hdts9
hđtt hdtt9
hđxx hdxx9
hlbđ hlbd9
hmnđ hmnd9
hngđ hngd9
hoóc hooc1
hqđt hqdt9
hsđkdt hsdkdt9
htcđ htcd9
kađai kadai9
kdđv kddv9
kdhđc kdhdc9
kđcl kdcl9
kđclgd kdclgd9
kđrao kdrao9
kđs kds9
kđt kdt9
kđtm kdtm9
kđtntl kdtntl9
khđt khdt9
kilôoát kilooat61
klđt kldt9
lđ ld9
lđbđ ldbd99
lđbđvn ldbdvn99
lđlđ ldld99
lđtb ldtb9
lđtbxh ldtbxh9
lllđ llld9
loỏng loong3
ltqđtd ltqdtd9
mđhur mdhur9
moóc mooc1
môtô moto66
mtđt mtdt9
nđ nd9
nđt ndt9
nđvn ndvn9
nhđa nhda9
nhđá nhda91
nhđt nhdt9
nhđtpt nhdtpt9
nlđ nld9
nmđ nmd9
nơron noron7
nsưt nsut7
nxbqđnd nxbqdnd9
óoc ooc1
orăng orang8
ốk ok61
ôkô oko66
ôông oong66
ôr or6
ôtô oto66
ôtôca otoca66
ôxi oxi6
ôxit oxit6
ôxy oxy6
pclbtư pclbtu7
pgđ pgd9
poóc pooc1
poọng poong5
pốk pok61
pôkô poko66
pôông poong66
prôton proton6
qđ qd9
qđnd qdnd9
qlđt qldt9
qsdđ qsdd9
rđê rde96
sdđnn sddnn9
sđh sdh9
sđk sdk9
sđnđ sdnd99
sđt sdt9
sđtla sdtla9
skhđt skhdt9
smđh smdh9
soóc sooc1
svđ svd9
svđv svdv9
tđ td9
tđbkvn tdbkvn9
tđc tdc9
tgđ tgd9
thcsnđ thcsnd9
thktsmđ thktsmd9
thoòng thoong2
tmđt tmdt9
tnđh tndh9
tnđt tndt9
toòng toong2
tơrao torao7
tpcđ tpcd9
troóc trooc1
tsdđ tsdd9
ttbđs ttbds9
ttđb ttdb9
ttđm ttdm9
tthtcđ tthtcd9
vđ vd9
vđqg vdqg9
vđv vdv9
vđvqg vdvqg9
vhgdttnnđ vhgdttnnd9
voọc vooc5
xđgn xdgn9
xklđ xkld9
ytcđ ytcd9
ytế yte61
================================================
FILE: test-data/vietnamese.sp.dict.vni3.tdata
================================================
amiđan amidan9
anđt andt9
atnđ atnd9
axít axit1
bcđ bcd9
bcđpctntư bcdpctntu97
bcđqg bcdqg9
bcđt bcdt9
bcđts bcdts9
bchtư bchtu7
bđ bd9
bđn bdn9
bđs bds9
bđvn bdvn9
bêrê bere66
bgdđt bgddt9
bhalêê bhalee66
bhđc bhdc9
bioóc biooc1
boóng boong1
bôxit boxit6
bvđk bvdk9
café cafe1
cđ cd9
cđsp cdsp9
cđv cdv9
choòng choong2
chơro choro7
cnqsdđ cnqsdd9
coóc cooc1
cqđt cqdt9
cscđ cscd9
csđn csdn9
csđt csdt9
csđtlx csdtlx9
csđttp csdttp9
csđttpmt csdttpmt9
ctđ ctd9
ctđl ctdl9
dagtđt dagtdt9
dđ dd9
đatp datp9
đb db9
đba dba9
đbdt dbdt9
đbđ dbd99
đbđvn dbdvn99
đbkvn dbkvn9
đbp dbp9
đbqh dbqh9
đbscl dbscl9
đbtn dbtn9
đbtsxb dbtsxb9
đc dc9
đcd dcd9
đcdgs dcdgs9
đcdgscs dcdgscs9
đcdgsn dcdgsn9
đcdgsnn dcdgsnn9
đcl dcl9
đclgd dclgd9
đcs dcs9
đcstq dcstq9
đcsvn dcsvn9
đct dct9
đgn dgn9
đh dh9
đhbc dhbc9
đhbk dhbk9
đhbkhcm dhbkhcm9
đhbkhn dhbkhn9
đhbktphcm dhbktphcm9
đhcđ dhcd99
đhclc dhclc9
đhcn dhcn9
đhct dhct9
đhgtvt dhgtvt9
đhhb dhhb9
đhhvn dhhvn9
đhkh dhkh9
đhkhtn dhkhtn9
đhkhtnhn dhkhtnhn9
đhkhxh dhkhxh9
đhkt dhkt9
đhktcn dhktcn9
đhktqd dhktqd9
đhn dhn9
đhnt dhnt9
đhqg dhqg9
đhqghn dhqghn9
đhsp dhsp9
đk dk9
đkđt dkdt99
đkhk dkhk9
đkkd dkkd9
đkkh dkkh9
đkt dkt9
đkvđ dkvd99
đkvn dkvn9
đkxt dkxt9
đkz dkz9
đl dl9
đlđ dld99
đltp dltp9
đm dm9
đmn dmn9
đn dn9
đna dna9
đná dna91
đnd dnd9
đndtp dndtp9
đnđ dnd99
đnn dnn9
đnt dnt9
đrl drl9
đsq dsq9
đta dta9
đtd dtd9
đtdđ dtdd99
đtđ dtd99
đthvn dthvn9
đtlt dtlt9
đtnn dtnn9
đtqg dtqg9
đttx dttx9
đttxqm dttxqm9
đtv dtv9
đtvhd dtvhd9
đtvn dtvn9
đtxdcb dtxdcb9
đvht dvht9
đvtn dvtn9
đvttn dvttn9
đvưt dvut97
êđê ede696
êrê ere66
gcnđkkd gcndkkd9
gcnqsdđ gcnqsdd9
gcnqsdđơ gcnqsddo97
gcnqshnơ gcnqshno7
gdđh gddh9
gdđt gddt9
gđ gd9
gđt gdt9
gđtla gdtla9
gđtt gdtt9
giêsu giesu6
giêxu giexu6
goòng goong2
gplhđb gplhdb9
hcđ hcd9
hđ hd9
hđba hdba9
hđcd hdcd9
hđcdgs hdcdgs9
hđcdgscs hdcdgscs9
hđcdgsn hdcdgsn9
hđcdgsnn hdcdgsnn9
hđct hdct9
hđh hdh9
hđkt hdkt9
hđlđ hdld99
hđnd hdnd9
hđndtp hdndtp9
hđnt hdnt9
hđqt hdqt9
hđrung hdrung9
hđt hdt9
hđtđ hdtd99
hđts hdts9
hđtt hdtt9
hđxx hdxx9
hlbđ hlbd9
hmnđ hmnd9
hngđ hngd9
hoóc hooc1
hqđt hqdt9
hsđkdt hsdkdt9
htcđ htcd9
kađai kadai9
kdđv kddv9
kdhđc kdhdc9
kđcl kdcl9
kđclgd kdclgd9
kđrao kdrao9
kđs kds9
kđt kdt9
kđtm kdtm9
kđtntl kdtntl9
khđt khdt9
kilôoát kilooat61
klđt kldt9
lđ ld9
lđbđ ldbd99
lđbđvn ldbdvn99
lđlđ ldld99
lđtb ldtb9
lđtbxh ldtbxh9
lllđ llld9
loỏng loong3
ltqđtd ltqdtd9
mđhur mdhur9
moóc mooc1
môtô moto66
mtđt mtdt9
nđ nd9
nđt ndt9
nđvn ndvn9
nhđa nhda9
nhđá nhda91
nhđt nhdt9
nhđtpt nhdtpt9
nlđ nld9
nmđ nmd9
nơron noron7
nsưt nsut7
nxbqđnd nxbqdnd9
óoc ooc1
orăng orang8
ốk o6k1
ôkô oko66
ôông oong66
ôr or6
ôtô oto66
ôtôca otoca66
ôxi oxi6
ôxit oxit6
ôxy oxy6
pclbtư pclbtu7
pgđ pgd9
poóc pooc1
poọng poong5
pốk po6k1
pôkô poko66
pôồn poo6n62
pôông poong66
prôton proton6
qđ qd9
qđnd qdnd9
qlđt qldt9
qsdđ qsdd9
rđê rde96
sdđnn sddnn9
sđh sdh9
sđk sdk9
sđnđ sdnd99
sđt sdt9
sđtla sdtla9
skhđt skhdt9
smđh smdh9
soóc sooc1
svđ svd9
svđv svdv9
tđ td9
tđbkvn tdbkvn9
tđc tdc9
tgđ tgd9
thcsnđ thcsnd9
thktsmđ thktsmd9
thoòng thoong2
tmđt tmdt9
tnđh tndh9
tnđt tndt9
toòng toong2
tơrao torao7
tpcđ tpcd9
troóc trooc1
tsdđ tsdd9
ttbđs ttbds9
ttđb ttdb9
ttđm ttdm9
tthtcđ tthtcd9
vđ vd9
vđqg vdqg9
vđv vdv9
vđvqg vdvqg9
vhgdttnnđ vhgdttnnd9
voọc vooc5
xđgn xdgn9
xklđ xkld9
ytcđ ytcd9
ytế yte61
================================================
FILE: test-data/vietnamese.std.dict.telex1.tdata
================================================
chóa chosa
chòe chofe
chỏe chore
chóe chose
chọe choje
chùy chufy
chủy chury
chúy chusy
dóa dosa
dọa doja
đóa ddosa
đọa ddoja
góa gosa
hòa hofa
hỏa hora
hõa hoxa
hóa hosa
họa hoja
hòe hofe
hóe hose
họe hoje
hủy hury
húy husy
khòa khofa
khỏa khora
khõa khoxa
khóa khosa
khỏe khore
khóe khose
khủy khury
lòa lofa
lỏa lora
lõa loxa
lóa losa
lòe lofe
lóe lose
lũy luxy
lúy lusy
lụy lujy
ngòa ngofa
ngỏa ngora
ngõa ngoxa
ngóa ngosa
ngọa ngoja
ngòe ngofe
ngỏe ngore
ngõe ngoxe
ngóe ngose
ngọe ngoje
ngùy ngufy
ngụy ngujy
nhòa nhofa
nhóa nhosa
nhòe nhofe
nhóe nhose
nhụy nhujy
nọa noja
nụy nujy
òa ofa
ỏa ora
õa oxa
óa osa
ọa oja
òe ofe
ỏe ore
õe oxe
óe ose
ọe oje
róa rosa
sòa sofa
sỏa sora
sõa soxa
sóa sosa
sọa soja
súy susy
thòa thofa
thỏa thora
thõa thoxa
thóa thosa
thùy thufy
thủy thury
thúy thusy
thụy thujy
tòa tofa
tỏa tora
tọa toja
tòe tofe
tỏe tore
tõe toxe
tóe tose
trùy trufy
trủy trury
trúy trusy
trụy trujy
tùy tufy
tủy tury
túy tusy
tụy tujy
ùy ufy
ủy ury
ũy uxy
úy usy
ụy ujy
xòa xofa
xỏa xora
xõa xoxa
xóa xosa
xọa xoja
xòe xofe
xọe xoje
xùy xufy
xúy xusy
================================================
FILE: test-data/vietnamese.std.dict.telex2.tdata
================================================
chóa choas
chòe choef
chỏe choer
chóe choes
chọe choej
chùy chuyf
chủy chuyr
chúy chuys
dóa doas
dọa doaj
đóa doads
đọa doadj
góa goas
hòa hoaf
hỏa hoar
hõa hoax
hóa hoas
họa hoaj
hòe hoef
hóe hoes
họe hoej
hủy huyr
húy huys
khòa khoaf
khỏa khoar
khõa khoax
khóa khoas
khỏe khoer
khóe khoes
khủy khuyr
lòa loaf
lỏa loar
lõa loax
lóa loas
lòe loef
lóe loes
lũy luyx
lúy luys
lụy luyj
ngòa ngoaf
ngỏa ngoar
ngõa ngoax
ngóa ngoas
ngọa ngoaj
ngòe ngoef
ngỏe ngoer
ngõe ngoex
ngóe ngoes
ngọe ngoej
ngùy nguyf
ngụy nguyj
nhòa nhoaf
nhóa nhoas
nhòe nhoef
nhóe nhoes
nhụy nhuyj
nọa noaj
nụy nuyj
òa oaf
ỏa oar
õa oax
óa oas
ọa oaj
òe oef
ỏe oer
õe oex
óe oes
ọe oej
róa roas
sòa soaf
sỏa soar
sõa soax
sóa soas
sọa soaj
súy suys
thòa thoaf
thỏa thoar
thõa thoax
thóa thoas
thùy thuyf
thủy thuyr
thúy thuys
thụy thuyj
tòa toaf
tỏa toar
tọa toaj
tòe toef
tỏe toer
tõe toex
tóe toes
trùy truyf
trủy truyr
trúy truys
trụy truyj
tùy tuyf
tủy tuyr
túy tuys
tụy tuyj
ùy uyf
ủy uyr
ũy uyx
úy uys
ụy uyj
xòa xoaf
xỏa xoar
xõa xoax
xóa xoas
xọa xoaj
xòe xoef
xọe xoej
xùy xuyf
xúy xuys
================================================
FILE: test-data/vietnamese.std.dict.telex3.tdata
================================================
chóa choas
chòe choef
chỏe choer
chóe choes
chọe choej
chùy chuyf
chủy chuyr
chúy chuys
dóa doas
dọa doaj
đóa doads
đọa doadj
góa goas
hòa hoaf
hỏa hoar
hõa hoax
hóa hoas
họa hoaj
hòe hoef
hóe hoes
họe hoej
hủy huyr
húy huys
khòa khoaf
khỏa khoar
khõa khoax
khóa khoas
khỏe khoer
khóe khoes
khủy khuyr
lòa loaf
lỏa loar
lõa loax
lóa loas
lòe loef
lóe loes
lũy luyx
lúy luys
lụy luyj
ngòa ngoaf
ngỏa ngoar
ngõa ngoax
ngóa ngoas
ngọa ngoaj
ngòe ngoef
ngỏe ngoer
ngõe ngoex
ngóe ngoes
ngọe ngoej
ngùy nguyf
ngụy nguyj
nhòa nhoaf
nhóa nhoas
nhòe nhoef
nhóe nhoes
nhụy nhuyj
nọa noaj
nụy nuyj
òa oaf
ỏa oar
õa oax
óa oas
ọa oaj
òe oef
ỏe oer
õe oex
óe oes
ọe oej
róa roas
sòa soaf
sỏa soar
sõa soax
sóa soas
sọa soaj
súy suys
thòa thoaf
thỏa thoar
thõa thoax
thóa thoas
thùy thuyf
thủy thuyr
thúy thuys
thụy thuyj
tòa toaf
tỏa toar
tọa toaj
tòe toef
tỏe toer
tõe toex
tóe toes
trùy truyf
trủy truyr
trúy truys
trụy truyj
tùy tuyf
tủy tuyr
túy tuys
tụy tuyj
ùy uyf
ủy uyr
ũy uyx
úy uys
ụy uyj
xòa xoaf
xỏa xoar
xõa xoax
xóa xoas
xọa xoaj
xòe xoef
xọe xoej
xùy xuyf
xúy xuys
================================================
FILE: test-data/vietnamese.std.dict.vni1.tdata
================================================
chóa cho1a
chòe cho2e
chỏe cho3e
chóe cho1e
chọe cho5e
chùy chu2y
chủy chu3y
chúy chu1y
dóa do1a
dọa do5a
đóa d9o1a
đọa d9o5a
góa go1a
hòa ho2a
hỏa ho3a
hõa ho4a
hóa ho1a
họa ho5a
hòe ho2e
hóe ho1e
họe ho5e
hủy hu3y
húy hu1y
khòa kho2a
khỏa kho3a
khõa kho4a
khóa kho1a
khỏe kho3e
khóe kho1e
khủy khu3y
lòa lo2a
lỏa lo3a
lõa lo4a
lóa lo1a
lòe lo2e
lóe lo1e
lũy lu4y
lúy lu1y
lụy lu5y
ngòa ngo2a
ngỏa ngo3a
ngõa ngo4a
ngóa ngo1a
ngọa ngo5a
ngòe ngo2e
ngỏe ngo3e
ngõe ngo4e
ngóe ngo1e
ngọe ngo5e
ngùy ngu2y
ngụy ngu5y
nhòa nho2a
nhóa nho1a
nhòe nho2e
nhóe nho1e
nhụy nhu5y
nọa no5a
nụy nu5y
òa o2a
ỏa o3a
õa o4a
óa o1a
ọa o5a
òe o2e
ỏe o3e
õe o4e
óe o1e
ọe o5e
róa ro1a
sòa so2a
sỏa so3a
sõa so4a
sóa so1a
sọa so5a
súy su1y
thòa tho2a
thỏa tho3a
thõa tho4a
thóa tho1a
thùy thu2y
thủy thu3y
thúy thu1y
thụy thu5y
tòa to2a
tỏa to3a
tọa to5a
tòe to2e
tỏe to3e
tõe to4e
tóe to1e
trùy tru2y
trủy tru3y
trúy tru1y
trụy tru5y
tùy tu2y
tủy tu3y
túy tu1y
tụy tu5y
ùy u2y
ủy u3y
ũy u4y
úy u1y
ụy u5y
xòa xo2a
xỏa xo3a
xõa xo4a
xóa xo1a
xọa xo5a
xòe xo2e
xọe xo5e
xùy xu2y
xúy xu1y
================================================
FILE: test-data/vietnamese.std.dict.vni2.tdata
================================================
chóa choa1
chòe choe2
chỏe choe3
chóe choe1
chọe choe5
chùy chuy2
chủy chuy3
chúy chuy1
dóa doa1
dọa doa5
đóa doa91
đọa doa95
góa goa1
hòa hoa2
hỏa hoa3
hõa hoa4
hóa hoa1
họa hoa5
hòe hoe2
hóe hoe1
họe hoe5
hủy huy3
húy huy1
khòa khoa2
khỏa khoa3
khõa khoa4
khóa khoa1
khỏe khoe3
khóe khoe1
khủy khuy3
lòa loa2
lỏa loa3
lõa loa4
lóa loa1
lòe loe2
lóe loe1
lũy luy4
lúy luy1
lụy luy5
ngòa ngoa2
ngỏa ngoa3
ngõa ngoa4
ngóa ngoa1
ngọa ngoa5
ngòe ngoe2
ngỏe ngoe3
ngõe ngoe4
ngóe ngoe1
ngọe ngoe5
ngùy nguy2
ngụy nguy5
nhòa nhoa2
nhóa nhoa1
nhòe nhoe2
nhóe nhoe1
nhụy nhuy5
nọa noa5
nụy nuy5
òa oa2
ỏa oa3
õa oa4
óa oa1
ọa oa5
òe oe2
ỏe oe3
õe oe4
óe oe1
ọe oe5
róa roa1
sòa soa2
sỏa soa3
sõa soa4
sóa soa1
sọa soa5
súy suy1
thòa thoa2
thỏa thoa3
thõa thoa4
thóa thoa1
thùy thuy2
thủy thuy3
thúy thuy1
thụy thuy5
tòa toa2
tỏa toa3
tọa toa5
tòe toe2
tỏe toe3
tõe toe4
tóe toe1
trùy truy2
trủy truy3
trúy truy1
trụy truy5
tùy tuy2
tủy tuy3
túy tuy1
tụy tuy5
ùy uy2
ủy uy3
ũy uy4
úy uy1
ụy uy5
xòa xoa2
xỏa xoa3
xõa xoa4
xóa xoa1
xọa xoa5
xòe xoe2
xọe xoe5
xùy xuy2
xúy xuy1
================================================
FILE: test-data/vietnamese.std.dict.vni3.tdata
================================================
chóa choa1
chòe choe2
chỏe choe3
chóe choe1
chọe choe5
chùy chuy2
chủy chuy3
chúy chuy1
dóa doa1
dọa doa5
đóa doa91
đọa doa95
góa goa1
hòa hoa2
hỏa hoa3
hõa hoa4
hóa hoa1
họa hoa5
hòe hoe2
hóe hoe1
họe hoe5
hủy huy3
húy huy1
khòa khoa2
khỏa khoa3
khõa khoa4
khóa khoa1
khỏe khoe3
khóe khoe1
khủy khuy3
lòa loa2
lỏa loa3
lõa loa4
lóa loa1
lòe loe2
lóe loe1
lũy luy4
lúy luy1
lụy luy5
ngòa ngoa2
ngỏa ngoa3
ngõa ngoa4
ngóa ngoa1
ngọa ngoa5
ngòe ngoe2
ngỏe ngoe3
ngõe ngoe4
ngóe ngoe1
ngọe ngoe5
ngùy nguy2
ngụy nguy5
nhòa nhoa2
nhóa nhoa1
nhòe nhoe2
nhóe nhoe1
nhụy nhuy5
nọa noa5
nụy nuy5
òa oa2
ỏa oa3
õa oa4
óa oa1
ọa oa5
òe oe2
ỏe oe3
õe oe4
óe oe1
ọe oe5
róa roa1
sòa soa2
sỏa soa3
sõa soa4
sóa soa1
sọa soa5
súy suy1
thòa thoa2
thỏa thoa3
thõa thoa4
thóa thoa1
thùy thuy2
thủy thuy3
thúy thuy1
thụy thuy5
tòa toa2
tỏa toa3
tọa toa5
tòe toe2
tỏe toe3
tõe toe4
tóe toe1
trùy truy2
trủy truy3
trúy truy1
trụy truy5
tùy tuy2
tủy tuy3
túy tuy1
tụy tuy5
ùy uy2
ủy uy3
ũy uy4
úy uy1
ụy uy5
xòa xoa2
xỏa xoa3
xõa xoa4
xóa xoa1
xọa xoa5
xòe xoe2
xọe xoe5
xùy xuy2
xúy xuy1
================================================
FILE: wm.bash
================================================
#!/bin/bash
ACTIVE_WINDOW=""
while true
do
sleep 0.5
NEW_ACTIVE_WINDOW=$(xprop -root 32x '\t$0' _NET_ACTIVE_WINDOW | cut -f 2)
if [ "${NEW_ACTIVE_WINDOW}" != "${ACTIVE_WINDOW}" ]
then
echo
ACTIVE_WINDOW=${NEW_ACTIVE_WINDOW}
xprop -id ${ACTIVE_WINDOW} WM_CLASS
echo
echo "Click chuột sang cửa sổ của chương trình cần lấy WM_CLASS hoặc nhấn [CTRL+C] để dừng"
fi
done