commit 746212f3af7eafa25cedb8e87d7e5933ce0b39ea Author: kirbylife Date: Sun Sep 24 19:03:40 2023 -0600 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ea8c4bf --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/target diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..57e6991 --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,16 @@ +[package] +name = "worsdle" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +chrono = { version = "0.4.31", default-features = false, features = ["wasmbind", "clock"] } +gloo = "0.10.0" +lazy_static = "1.4.0" +log = "0.4.20" +rand = { version = "0.8.5", default-features = false, features = ["alloc"] } +wasm-bindgen = "0.2.87" +wasm-logger = "0.2.0" +yew = { version = "0.20.0", features = ["csr"] } diff --git a/index.html b/index.html new file mode 100644 index 0000000..63f3c61 --- /dev/null +++ b/index.html @@ -0,0 +1,11 @@ + + + + + Yew App + + + +

Hola mundo

+ + diff --git a/src/components/attempt_row.rs b/src/components/attempt_row.rs new file mode 100644 index 0000000..54588cb --- /dev/null +++ b/src/components/attempt_row.rs @@ -0,0 +1,18 @@ +use yew::prelude::*; + +#[derive(Properties, PartialEq)] +pub struct AttemptRowProps { + pub answer: AttrValue, + pub text: AttrValue, +} + +#[function_component] +pub fn AttemptRow(props: &AttemptRowProps) -> Html { + let AttemptRowProps { answer, text } = props; + + html! { + { for answer.chars().zip(text.chars()).map(|(ans, att)| html! {

{ att }

}) } + } +} diff --git a/src/components/current_row.rs b/src/components/current_row.rs new file mode 100644 index 0000000..7523c29 --- /dev/null +++ b/src/components/current_row.rs @@ -0,0 +1,23 @@ +use yew::prelude::*; + +#[derive(Properties, PartialEq)] +pub struct CurrentRowProps { + pub text: AttrValue, +} + +#[function_component] +pub fn CurrentRow(props: &CurrentRowProps) -> Html { + let attempt = { + let mut ret = [' '; 5]; + props + .text + .chars() + .zip(ret.iter_mut()) + .for_each(|(val, ptr)| *ptr = val); + ret + }; + + html! { + { for attempt.map(|c| html! {

{ c }

}) } + } +} diff --git a/src/components/empty_row.rs b/src/components/empty_row.rs new file mode 100644 index 0000000..d424619 --- /dev/null +++ b/src/components/empty_row.rs @@ -0,0 +1,8 @@ +use yew::prelude::*; + +#[function_component] +pub fn EmptyRow() -> Html { + html! { + { for (0..5u8).map(|_| html! {

}) } + } +} diff --git a/src/components/mod.rs b/src/components/mod.rs new file mode 100644 index 0000000..a777834 --- /dev/null +++ b/src/components/mod.rs @@ -0,0 +1,9 @@ +pub use crate::components::attempt_row::AttemptRow; +pub use crate::components::current_row::CurrentRow; +pub use crate::components::empty_row::EmptyRow; +pub use crate::components::result_board::ResultBoard; + +mod attempt_row; +mod current_row; +mod empty_row; +mod result_board; diff --git a/src/components/result_board.rs b/src/components/result_board.rs new file mode 100644 index 0000000..74609b6 --- /dev/null +++ b/src/components/result_board.rs @@ -0,0 +1,35 @@ +use yew::prelude::*; + +#[derive(Properties, PartialEq)] +pub struct ResultBoardProps { + pub answer: AttrValue, + pub attempts: Vec, +} + +#[function_component] +pub fn ResultBoard(props: &ResultBoardProps) -> Html { + let ResultBoardProps { answer, attempts } = props; + let answer_chars = answer.chars(); + + let mut result = String::default(); + + html! { +
{ + for attempts.iter().map(|attempt| { + html! { + <> { + for answer.chars().zip(attempt.chars()).map(| (ans, att)| { + if ans == att { + html! { { "🟩" } } + } else if answer.contains(att) { + html! { { "🟨" } } + } else { + html! { { "⬜" } } + } + }) + } + } + }) + }
+ } +} diff --git a/src/consts.rs b/src/consts.rs new file mode 100644 index 0000000..a5c81be --- /dev/null +++ b/src/consts.rs @@ -0,0 +1,27 @@ +pub const MAX_ATTEMPTS: usize = 6; + +pub enum Key { + Enter, + // 13 + Backspace, + // 8 + CharKey(char), + Ignored, +} + +impl From for Key { + fn from(value: u32) -> Self { + match value { + 8 => Key::Backspace, + 13 => Key::Enter, + 65..=90 => Key::CharKey(value as u8 as char), + 59 => Key::CharKey(209u8 as char), + _ => Key::Ignored, + } + } +} + +pub enum Result { + Win, + Fail, +} diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..ae6ceb0 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,137 @@ +use yew::prelude::*; + +use crate::components::AttemptRow; +use crate::components::CurrentRow; +use crate::components::EmptyRow; +use crate::components::ResultBoard; +use crate::consts::Key; +use crate::consts::Result; +use crate::consts::MAX_ATTEMPTS; +use crate::services::words::{get_all_words, get_word_of_the_day}; +use chrono::Datelike; + +use gloo::console; + +mod components; +mod consts; +mod services; + +#[function_component] +fn App() -> Html { + let answer = use_state(|| get_word_of_the_day()); + let all_the_words = use_memo(|_| get_all_words(), 0); + let attempts: UseStateHandle> = use_state(|| vec![String::default(); MAX_ATTEMPTS]); + let attempt_index = use_state(|| 0usize); + let current_attempt = use_state(|| String::new()); + let result = use_state(|| None::); + + let onkeypress = { + console::log!(chrono::Utc::now().year()); + let current = current_attempt.clone(); + let answer = answer.clone(); + let answer_str = answer.clone().to_string(); + let current_str = current.clone().to_string(); + let attempts = attempts.clone(); + let result = result.clone(); + let index = attempt_index.clone(); + + move |event: KeyboardEvent| { + console::log!(&event); + + if result.is_some() { + return {}; + } + + let key_code = event.key_code(); + + match Key::from(key_code) { + Key::CharKey(c) => { + if current.chars().count() >= 5 { + return (); + } + + let mut new_attempt = current_str.clone(); + new_attempt.push(c); + console::log!(&new_attempt); + current.set(new_attempt); + } + Key::Backspace => { + if current.is_empty() { + return (); + } + + let mut new_attempt = current_str.clone(); + // This unwrap is safe because the potential failura it's already covered + // by the upper if + new_attempt.pop().unwrap(); + console::log!(&new_attempt); + current.set(new_attempt); + } + Key::Enter => { + if current.chars().count() != 5 { + return; + } + + if !all_the_words.contains(¤t) { + return; + } + + let mut new_attempts = attempts.clone().to_vec(); + new_attempts[*index] = current_str.clone(); + + attempts.set(new_attempts); + current.set(String::default()); + index.set(*index + 1); + + if ¤t_str == &answer_str { + result.set(Some(Result::Win)); + } else if *index == MAX_ATTEMPTS { + result.set(Some(Result::Fail)); + } else { + } + } + _ => {} + } + } + }; + + html! { + <> +

{ "Worsdle" }

+
+ { + for attempts.clone().iter().enumerate().map(|(i, attempt)| { + let current = current_attempt.clone().to_string(); + let attempt = attempt.clone(); + + if i < *attempt_index { + let answer = answer.clone().to_string(); + + html! { } + } else if i == *attempt_index { + html! { } + } else { + html! { } + } + }) + } +
+
+ { + match *result { + Some(Result::Win) => "Ganaste!!", + Some(Result::Fail) => "Perdiste :c", + _ => "No deberías ver esto" + } + } + < ResultBoard answer={ answer.to_string().clone() } attempts={(*attempts).clone()} /> +

{ "Vuelve mañana para otro desafío :)" }

+
+ + } +} + +fn main() { + wasm_logger::init(wasm_logger::Config::default()); + yew::Renderer::::new().render(); +} diff --git a/src/services/mod.rs b/src/services/mod.rs new file mode 100644 index 0000000..2d88e1b --- /dev/null +++ b/src/services/mod.rs @@ -0,0 +1 @@ +pub mod words; diff --git a/src/services/words.rs b/src/services/words.rs new file mode 100644 index 0000000..aa28219 --- /dev/null +++ b/src/services/words.rs @@ -0,0 +1,23 @@ +use chrono::Datelike; +use lazy_static::lazy_static; + +lazy_static! { + pub static ref WORDS: Vec = include_str!("../../words.txt") + .lines() + .map(|w| w.to_string()) + .collect(); +} + +pub fn get_all_words() -> &'static WORDS { + &WORDS +} + +pub fn get_word_of_the_day() -> String { + let date = chrono::Utc::now(); + let year = date.year() as usize; + let month = date.month() as usize; + let day = date.day() as usize; + let index = year + month + day; + + WORDS[index % WORDS.len()].clone() +} diff --git a/static/css/styles.css b/static/css/styles.css new file mode 100644 index 0000000..9907a0d --- /dev/null +++ b/static/css/styles.css @@ -0,0 +1,84 @@ +body > * { + font-family: sans-serif; +} + +body { + min-height: 99dvh; + margin-left: 150px; + margin-right: 150px; + display: flex; + align-items: center; + flex-direction: column; +} + +.board { + width: 25%; + height: 25%; + display: grid; + grid-template-columns: 1fr 1fr 1fr 1fr 1fr; + justify-items: center; + justify-self: auto; + gap: 10px; + padding-bottom: 10px; +} + +.board > p { + display: flex; + width: 70px; + height: 70px; + border: 3px solid #444444; + border-radius: 10px; + justify-content: center; + align-items: center; + margin: 0; + font-size: 40px; +} + +.correct { + border-color: #BDD9BF !important; + background-color: #BDD9BF90; + color: black; +} + +.almost { + border-color: #FFC857 !important; + background-color: #FFC85790; + color: black; + +} + +.missed { + border-color: #444444 !important; + background-color: #44444490; + color: white; + +} + +.result { + display: flex; + flex-direction: column; + align-items: center; +} + +.result > span { + font-size: 20px; +} + +.hidden { + visibility: hidden; +} + +.result-board { + display: grid; + grid-template-columns: 1fr 1fr 1fr 1fr 1fr; + width: fit-content; + gap: 2px; +} + +.result-board > span { + margin: 0; + font-size: 20px; + height: 20px; + width: 20px; + +} diff --git a/words.txt b/words.txt new file mode 100644 index 0000000..a0bf814 --- /dev/null +++ b/words.txt @@ -0,0 +1,3862 @@ +ABANO +ABEJA +ABETO +ABONA +ABONE +ABONO +ABRAN +ABRAS +ABREN +ABRIL +ABRIR +ABUSE +ACABE +ACATA +ACATE +ACATO +ACEDA +ACEDE +ACEDO +ACERA +ACERE +ACERO +ACILO +ACOTA +ACOTE +ACOTO +ACTOR +ACTOS +ACUDE +ACURE +ADOBE +ADOBO +ADORA +ADORE +ADORO +ADULE +AFEAN +AFEAR +AFILA +AFILE +AFILO +AFINA +AFINE +AFINO +AFORA +AFORE +AFORO +AGITE +AGOTA +AGOTE +AGOTO +AGRIO +AGUAN +AGUAR +AGUDA +AGUDO +AGUJA +AHOGA +AHOGO +AHORA +AIRAR +AIREE +AJENA +AJENO +AJERO +AJUAR +ALABA +ALABE +ALABO +ALAGA +ALAGO +ALBOR +ALBUR +ALCEN +ALCES +ALDEA +ALEAR +ALEJE +ALEJO +ALERO +ALETA +ALFIL +ALIAS +ALOJA +ALOJE +ALOJO +ALPES +ALTAR +ALZAN +ALZAR +AMBAS +AMEBA +AMENO +AMIGA +AMIGO +ANCHA +ANCHO +ANCLA +ANCLE +ANCLO +ANDAN +ANDAR +ANDAS +ANDEN +ANEGO +ANEXE +ANEXO +ANGLO +ANIDA +ANIDE +ANIDO +ANIMA +ANIMO +ANSIA +ANTRO +ANUAL +ANUDA +ANUDE +ANUDO +ANULE +APEGA +APEGO +APNEA +APODO +APOYA +APOYE +APOYO +APTAR +APURE +AQUEL +ARDER +ARDOR +ARDUO +ARENA +ARETE +ARGOT +ARIES +ARMAN +ARMAR +ARMEN +ARRAS +ARREO +ARROZ +ARTES +ASCUA +ASEAN +ASEAR +ASNOS +ASOME +ASTIL +ASTRO +ASUME +ASUMO +ATABA +ATACA +ATACO +ATICE +ATINA +ATINE +ATINO +ATLAS +ATORE +ATORO +ATRAE +ATRIL +ATRIO +ATROZ +AUDAZ +AUDIO +AUNAR +AUTOR +AVARO +AVIAR +AVISA +AVISE +AVISO +AVIVA +AVIVE +AVIVO +AVOCO +AXILA +AYUDA +AYUDE +AYUDO +AYUNA +AYUNE +AYUNO +AZADA +AZOTA +AZOTE +BABEO +BABOR +BACHE +BAGAR +BAGRE +BAILE +BAJAN +BAJAR +BAJAS +BAJEN +BAJOS +BALAR +BALAS +BALDE +BALSA +BAMBA +BANAL +BANCA +BANCO +BANDA +BANDO +BARBA +BARCA +BARCO +BARDA +BARIO +BARRA +BARRE +BARRO +BASAL +BASAN +BASCA +BASES +BASTA +BASTO +BATEE +BATEN +BATES +BATIR +BAZAR +BEATA +BEATO +BEBAN +BEBEN +BEBER +BECAR +BEIGE +BELGA +BELLO +BESAR +BICHO +BIELA +BILIS +BINGO +BIRLO +BISEL +BIZCA +BIZCO +BLEDO +BLUSA +BOBOS +BOCAL +BOINA +BOLLO +BOLOS +BOLSA +BOLSO +BOMBA +BOMBO +BONOS +BORDA +BORDE +BORDO +BORLA +BORNE +BORRA +BORRE +BORRO +BOSTA +BOTAN +BOXEO +BOZAL +BRAMA +BRASA +BRAVA +BRAVO +BRAZO +BREVE +BRIDA +BRISA +BROCA +BROMA +BROMO +BROTA +BROTE +BROTO +BROZA +BRUJA +BRUJO +BRUMA +BRUTO +BUCAL +BUCEO +BUCHE +BUCLE +BUENA +BUENO +BUFAN +BUFAR +BULBO +BULLA +BULTO +BUQUE +BURDO +BURRA +BURRO +BUSCA +BUSCO +BUSES +BUSTO +BUZOS +CABAL +CABEN +CABER +CABLE +CABRA +CACAO +CACHA +CAFRE +CAJAS +CALAR +CALCA +CALCO +CALDO +CALLA +CALLE +CALLO +CALMA +CALMO +CALOR +CALVA +CALVO +CALZA +CALZO +CAMPO +CANAL +CANES +CANJE +CANOA +CANON +CANSA +CANSO +CANTA +CANTO +CAOBA +CAPAR +CAPAZ +CAQUI +CARAY +CARBA +CARDO +CAREA +CAREO +CARGA +CARGO +CARNE +CAROS +CARRO +CARTA +CASAN +CASAR +CASAS +CASCO +CASPA +CASTA +CASTO +CATAN +CATAR +CATEA +CATEO +CATRE +CAUCE +CAUSA +CAUSO +CAUTA +CAUTO +CAVAN +CAVAR +CAZAR +CEBAR +CEBRA +CEDAN +CEDEN +CEDER +CEDRO +CEGAR +CEJAN +CEJAR +CEJEN +CELAN +CELAR +CELDA +CELTA +CENAN +CENAR +CENIT +CENSA +CENSO +CEPAS +CERCA +CERCO +CERDO +CERIO +CEROS +CERRO +CESAN +CESAR +CESEN +CESIO +CESTA +CESTO +CETRO +CHAPA +CHATA +CHATO +CHAVO +CHECA +CHECO +CHICA +CHICO +CHILE +CHINA +CHINO +CHITE +CHIVA +CHIVO +CHOCA +CHOCO +CHOPO +CHULA +CHULO +CHUPE +CHUTE +CHUTO +CHUZA +CHUZO +CICLO +CIDRO +CIEGO +CIELO +CIFRA +CIFRO +CINCO +CINTA +CINTO +CIRCO +CIRIO +CISNE +CITAN +CITAR +CITAS +CIVIL +CLAMA +CLAMO +CLARA +CLARO +CLASE +CLAVA +CLAVE +CLAVO +CLERO +CLIMA +CLORO +COBRA +COBRE +COBRO +COCER +COCES +COCHE +CODOS +COFIA +COFRE +COJOS +COLAR +COLAS +COLMA +COLMO +COLON +COLOR +COMAL +COMAN +COMBO +COMEN +COMER +CONGO +COPAS +COPEE +COPIA +COPIE +COPIO +COPLA +COPOS +COQUE +CORAL +COREA +COROS +CORRA +CORRE +CORRO +CORTA +CORTE +CORTO +COSAN +COSEN +COSER +COSTA +COSTE +COSTO +COXIS +CRASA +CRASO +CREAN +CREAR +CRECE +CREDO +CREEN +CREER +CREMA +CREMO +CRIAR +CRIBA +CROAR +CROMO +CRUCE +CRUDO +CRUEL +CRUJA +CRUJE +CRUJO +CRUZA +CRUZO +CUAJA +CUAJO +CUBIL +CUBRA +CUBRO +CUCAR +CUECE +CUELA +CUELO +CUERO +CUEVA +CUIDA +CUIDO +CUITA +CULPA +CULPO +CULTA +CULTO +CUNDE +CUOTA +CURAN +CURAR +CUREN +CURES +CURRA +CURRO +CURRY +CURSA +CURSI +CURSO +CURUL +CURVA +CURVO +CUTIS +CUTRE +DABAN +DABLE +DACIO +DADOR +DAGAS +DALES +DALIA +DALLE +DAMOS +DANCE +DANDI +DANDO +DANES +DANOS +DANTE +DANZO +DARDO +DARES +DARME +DARSE +DATAN +DATAR +DATEN +DEBER +DEBLA +DEBUT +DECIR +DEDAL +DEDIL +DEJAR +DELGA +DELIO +DELTA +DEMOS +DENLE +DENLO +DENME +DENSA +DENSE +DENSO +DENTE +DESDE +DESEE +DESGA +DEUDA +DEUDO +DEZME +DIADO +DIANA +DICAZ +DICEN +DICHA +DICHO +DICTA +DICTE +DICTO +DIEGO +DIERA +DIERE +DIESE +DIETA +DIETE +DIETO +DIGAN +DIGNA +DIGNE +DIGNO +DILES +DIMAN +DIMEN +DIMIR +DIMOS +DINAR +DINOS +DIODO +DIOSA +DIOSO +DIQUE +DISCO +DISTE +DIUCA +DOBLA +DOBLE +DOBLO +DOCTA +DOCTO +DOGAL +DOGMA +DOGRE +DOLAR +DOLER +DOLOR +DOMAR +DOMBO +DONAN +DONAR +DONDE +DONEN +DONES +DOPAR +DORAL +DORAN +DORAR +DOREN +DORIO +DORNA +DORSO +DOSEL +DOSES +DOSIS +DOTAL +DOTAR +DRABA +DRAGO +DRAMA +DRENA +DRENE +DRINO +DRIZA +DROGA +DROGO +DROPE +DRUPA +DRUSO +DUBIO +DUCAL +DUCES +DUCHE +DUCHO +DUDAR +DUELA +DUELE +DUELO +DUETO +DUJOS +DULAR +DULCE +DUNDA +DUNDO +DUPLA +DUPLO +DUQUE +DURAN +DURAR +DUREN +DUROS +EBRIA +EBRIO +ECHAN +ECHAR +ECHAS +ECHEN +EDEMA +EDITE +EDRAR +EDUCA +EDUCE +EDUCO +EDUJE +EFEBO +EGUAR +EJIDO +ELATO +ELCHE +ELEVE +ELIDE +ELIGE +ELIJE +ELLOS +ELOTE +ELUDE +EMANE +EMITE +EMPRE +EMULE +ENANO +ENEAL +ENEJE +ENEMA +ENERO +ENOJA +ENOJE +ENOJO +ENSAY +ENTRA +ENTRE +ENTRO +EOLIO +EQUIS +ERAIS +ERBIO +ERCER +EREBO +ERGIO +ERIAL +ERICE +ERIGE +ERIJO +ERINA +ERIZA +ERIZO +ERMAR +EROGA +EROGO +ERRAJ +ERRAR +ERROR +ERUTE +ESCOA +ESTAR +ESTAY +ESTER +ESTOY +ESTRO +ETANO +ETAPA +ETILO +ETNIA +EUBEO +EVADE +EVITE +EVOCO +EXIGE +EXIJO +EXIME +EXORE +EXTRA +EXUDE +FABLA +FACER +FACES +FACHO +FACTO +FAENE +FAGOS +FAGOT +FAJAN +FAJAR +FAJEN +FALAZ +FALCA +FALCO +FALDA +FALLE +FALLO +FALSA +FALSE +FALSO +FALTE +FALTO +FANAL +FANGO +FANOS +FARDA +FARDE +FARDO +FARIO +FAROE +FAROL +FARRO +FARSA +FASTO +FATAL +FATOS +FATUO +FAUNO +FAVOR +FEBLE +FECAL +FECHA +FECHE +FECHO +FELIZ +FELPA +FELPE +FELPO +FEMAR +FERAZ +FERIE +FERIR +FEROZ +FERRE +FERRO +FERRY +FESTA +FETAL +FEUDA +FEUDE +FEUDO +FIBRA +FICAR +FICHA +FICHE +FICHO +FICUS +FIDEO +FIERA +FIERO +FIGLE +FIJAN +FIJAR +FIJEN +FILAN +FILAR +FILEN +FILFA +FILIA +FILIE +FILIO +FILMA +FILME +FILMO +FILOS +FINAL +FINAN +FINAR +FINCA +FINCO +FINEN +FINES +FINGE +FINIR +FINJO +FINTE +FIQUE +FIRMA +FIRME +FIRMO +FISCO +FISGO +FITOS +FIZAR +FLACA +FLACO +FLAMA +FLASH +FLATO +FLECO +FLEJA +FLEJE +FLEJO +FLEMA +FLETE +FLEXO +FLOJA +FLOJO +FLORA +FLORE +FLORO +FLOTA +FLOTE +FLOTO +FLUIR +FLUIS +FLUJO +FLUYA +FLUYE +FLUYO +FOBIA +FOCAL +FOCHA +FOCOS +FOFOS +FOLGO +FOLIA +FOLIE +FOLIO +FOLLA +FOLLE +FOLLO +FONDA +FONDO +FONIO +FONJE +FOQUE +FORAL +FORAS +FORCE +FORJE +FORMA +FORME +FORMO +FORNE +FORRA +FORRE +FORRO +FOSAN +FOSAR +FOSCA +FOSCO +FOSEN +FRADE +FRAGA +FRASE +FRECE +FRENA +FRENE +FRENO +FRESE +FRETA +FRETE +FRETO +FREZO +FRICO +FRIOR +FRISE +FRISO +FRITA +FRITE +FRITO +FROGO +FROTE +FRUIR +FRUTA +FRUTE +FRUTO +FUEGO +FUERA +FUERE +FUERO +FUESE +FUFAN +FUFAR +FUFEN +FUGAR +FUGAZ +FUGIR +FUINA +FULAR +FULGE +FULJA +FULJO +FULLA +FUMAN +FUMAR +FUMEN +FUMOS +FUNDA +FUNDE +FUNDO +FUNGE +FUNJO +FURIA +FUROR +FUSCA +FUSCO +FUSIL +FUSOR +FUSTA +FUSTE +FUTRE +GACEL +GACHA +GACHO +GAFAN +GAFAR +GAFEN +GAFOS +GAITA +GAJOS +GALAS +GALEA +GALES +GALGA +GALGO +GALIO +GALLA +GALLE +GALLO +GAMBA +GAMMA +GAMOS +GANAN +GANAR +GANEN +GANGA +GANSO +GANTE +GARBA +GARBE +GARBO +GARFA +GARLA +GARLE +GARLO +GARRA +GARRE +GARRO +GARZA +GARZO +GASEE +GASES +GASTA +GASTE +GASTO +GATEA +GATEE +GATEO +GATOS +GAVIA +GAYAR +GAZNE +GELES +GEMIR +GENIO +GENTE +GESTE +GESTO +GHANA +GIBAN +GIBAO +GIBAR +GIBEN +GIRAN +GIRAR +GIREN +GIROS +GLEBA +GLOBO +GLOSA +GLOSE +GLOSO +GNEIS +GNOMO +GOBIO +GOCHO +GOFIO +GOFRE +GOLEE +GOLES +GOLFA +GOLFO +GOLPE +GOMAR +GOMER +GONCE +GORDA +GORDO +GORJA +GORME +GORRA +GORRO +GOTEE +GOTEO +GOZAR +GOZNE +GRABE +GRADA +GRADE +GRADO +GRAFO +GRAJO +GRAMA +GRAME +GRAMO +GRANA +GRANE +GRANO +GRANT +GRAPA +GRAPE +GRAPO +GRASA +GRASO +GRATA +GRATE +GRATO +GRAVA +GRAVE +GRAVO +GRAYS +GREBA +GRECO +GREDA +GREEN +GRELO +GRIFA +GRIFE +GRIFO +GRIMA +GRIPE +GRITE +GRITO +GROAR +GROSO +GRUIR +GRUJE +GRUMO +GRUPA +GRUPO +GRUTA +GUACO +GUAMO +GUANO +GUAPO +GUARA +GUARE +GUARO +GUASO +GUATA +GUATE +GUATO +GUAYE +GUAYO +GUBIA +GUETO +GUIAR +GUIDO +GUIJA +GUIJO +GUION +GUIPE +GUIRI +GUISE +GUISO +GUITE +GUITO +GULES +GURDO +GUSTA +GUSTE +GUSTO +GUZLA +HABAR +HABER +HABIZ +HABLA +HABLE +HACEN +HACER +HACES +HACHA +HACHE +HACHO +HACIA +HADAR +HAFIZ +HAGAN +HALAN +HALAR +HALDA +HALEN +HALLS +HALOS +HAMEZ +HAMPO +HANZO +HARBE +HARCA +HAREM +HARMA +HARPA +HARRE +HARTA +HARTE +HARTO +HASTA +HATEE +HAUTE +HAVAR +HAYAL +HAYAN +HAZLE +HAZLO +HAZME +HAZTE +HEBRA +HECHA +HECHO +HEDER +HEDOR +HELAR +HELEA +HELEE +HELEO +HELIO +HELOR +HEMOS +HENAL +HENAR +HENIL +HENRY +HERIA +HERIL +HERIR +HERMA +HERPE +HERTZ +HERVE +HESPE +HETEO +HEVEA +HIATO +HIDRA +HIELA +HIELE +HIELO +HIENA +HIERA +HIERE +HIERO +HIJOS +HILAN +HILAR +HILEN +HILOS +HIMEN +HIMNO +HIMPE +HINCA +HINCO +HINDI +HIPAR +HIPPY +HIRCO +HIRME +HISCA +HISPE +HITAR +HOBBY +HOBOS +HOGAR +HOJEE +HOLCO +HOLEE +HONDA +HONDO +HONGO +HONOR +HONRA +HONRE +HONRO +HOPAR +HOPEE +HOQUE +HORCA +HORCO +HORDA +HORMA +HORNO +HORRA +HORRE +HORRO +HOSCO +HOSPA +HOSTE +HOTEL +HOZAR +HUACO +HUCHO +HUECA +HUECO +HUELE +HUELO +HUERA +HUERO +HUESA +HUESO +HUEVA +HUEVE +HUEVO +HUICH +HUIFA +HUIRO +HULLA +HUMAN +HUMAR +HUMEE +HUMEN +HUMOR +HUMUS +HUNDE +HUNDO +HURGO +HURRA +HURTE +HURTO +HUSME +HUSMO +IBAIS +ICACO +ICHAL +ICONO +IDEAL +IDEAR +IGUAL +IGUAR +IJADA +ILION +IMADA +IMANA +IMANE +IMANO +IMELA +IMITE +IMPAR +IMPLE +INANE +INCOE +INDIA +INDIO +INFLA +INFLE +INFLO +INGLE +INSTE +IONES +IRGAN +IRGUE +IRISE +ISLAM +ISTMO +ITERA +ITERE +ITERO +ITRIO +IZOTE +JABRE +JACER +JACOS +JACTE +JADEE +JADEO +JADIE +JAECE +JAEZA +JAEZO +JAIBA +JALAR +JALDE +JALDO +JALEE +JALEO +JALMA +JAMAR +JAMBA +JAQUE +JARAL +JARBE +JAROS +JARRA +JARRE +JARRO +JASAR +JASEN +JASPE +JATEO +JATIB +JAUDO +JAUJA +JAULA +JAUTO +JEDAR +JEITO +JELIZ +JEMAL +JEQUE +JERBO +JEREZ +JERGA +JERPA +JETAR +JIBIA +JIFIA +JIJAS +JIJEE +JIMIO +JISCA +JITAN +JITAR +JITEN +JODER +JOFOR +JONIO +JOPAR +JOPEE +JORCO +JORFE +JORGE +JORRO +JOULE +JOVEN +JOYEL +JUANA +JUDAS +JUEGO +JUERA +JUGAR +JUJEE +JUJUY +JULIO +JUMAN +JUMAR +JUMEN +JUNCE +JUNCO +JUNIO +JUNTA +JUNTE +JUNTO +JUNZO +JURAN +JURAR +JURAS +JUREL +JUREN +JUSTA +JUSTE +JUSTO +JUVIA +JUZGA +JUZGO +KAPPA +KARMA +KENYA +KIRIE +KITTS +KURDO +LABIA +LABIO +LABOR +LABRA +LABRE +LABRO +LACEE +LACEN +LACHA +LACIA +LACIO +LACRE +LACTE +LADAS +LADEE +LADOS +LADRA +LADRE +LADRO +LADYS +LAGAR +LAGOS +LAICO +LAIDO +LAMAN +LAMBE +LAMBO +LAMEN +LAMER +LAMIA +LAMPA +LAMPE +LAMPO +LANAR +LANCE +LANDE +LANGA +LANKA +LANZA +LANZO +LAPSA +LAPSO +LAQUE +LARDA +LARDE +LARDO +LARGA +LARGO +LARRA +LARVA +LASCO +LASTE +LATAN +LATAZ +LATEN +LATIR +LATOS +LAUDA +LAUDE +LAUDO +LAUNA +LAURO +LAVAN +LAVAR +LAVEN +LAXAR +LAYAR +LAZAN +LAZAR +LAZOS +LECHA +LECHE +LECHO +LEELO +LEEME +LEGAL +LEGAN +LEGAR +LEGOS +LEGRA +LEGRE +LEGRO +LEGUA +LEGUE +LEILA +LEIMA +LEJOS +LEMBO +LENCA +LENTA +LENTE +LENTO +LEONA +LEPRA +LERDA +LERDO +LESNA +LESTE +LETAL +LETEA +LETEO +LETRA +LEUCO +LEUDA +LEUDE +LEUDO +LEVAN +LEVAR +LEVEN +LEVES +LEZDA +LEZNA +LEZNE +LIABA +LIADO +LIANA +LIAOS +LIARA +LIARE +LIASE +LIATE +LIAZA +LIBAR +LIBIA +LIBIO +LIBRA +LIBRE +LIBRO +LICEO +LICIA +LICIO +LICOR +LICUA +LICUE +LICUO +LIDIE +LIEGO +LIGAN +LIGAR +LIGHT +LIGIO +LIGUE +LIGUR +LIJAN +LIJAR +LIJEN +LILAC +LILAO +LIMAN +LIMAR +LIMBO +LIMEN +LINAO +LINAR +LINCE +LINDA +LINDE +LINDO +LINEA +LINEE +LINEO +LINFA +LINIO +LINOS +LIOSA +LIOSO +LIPES +LIPIS +LIRIA +LIRIO +LISIE +LISIS +LISTA +LISTE +LISTO +LITAR +LITIO +LITIS +LITRE +LITRO +LITUO +LIUDE +LIVOR +LIZOS +LLACA +LLAGO +LLAME +LLANA +LLANO +LLAPE +LLAVE +LLECO +LLEGA +LLEGO +LLENA +LLENE +LLENO +LLERA +LLEVA +LLEVE +LLEVO +LLORA +LLORE +LLORO +LLOSA +LOBEE +LOBOS +LOCAL +LOCHE +LOCOS +LOCRO +LODOS +LOGAR +LOGIA +LOGIS +LOGRE +LOGRO +LOICA +LOINA +LOMBA +LOMBO +LOMEE +LOMOS +LONGA +LONGO +LONJA +LORES +LOROS +LORZA +LOSAN +LOSAR +LOSEN +LOTEE +LUCEN +LUCHA +LUCHE +LUCHO +LUCIO +LUCIR +LUCRE +LUCRO +LUDAN +LUDEN +LUDIA +LUDIE +LUDIO +LUDIR +LUEGO +LUGAR +LUGRE +LUISA +LUJAR +LUMBO +LUMEN +LUMIA +LUNAR +LUNES +LUPIA +LUPUS +LURTE +LUTOS +LUVIA +LUXAR +LUZCA +LUZCO +MACAR +MACAU +MACEE +MACHA +MACHE +MACHI +MACHO +MACIA +MACIS +MACRO +MADOR +MADRE +MAESA +MAESE +MAFIA +MAGIE +MAGMA +MAGNO +MAGRA +MAGRO +MAJAL +MAJAR +MALAR +MALEE +MALES +MALLA +MALLE +MALLO +MALTA +MALVE +MAMAN +MAMAR +MAMAS +MAMBO +MAMEN +MAMEY +MAMUT +MANAN +MANAR +MANCO +MANDA +MANDE +MANDO +MANEA +MANEE +MANEN +MANEO +MANGA +MANGO +MANIR +MANOS +MANSA +MANSO +MANTA +MANTO +MAQUI +MARCA +MARCE +MARCO +MAREA +MAREE +MAREO +MARES +MARGA +MARGO +MARRA +MARRE +MARRO +MARSO +MARTA +MARTE +MARZO +MASAN +MASAR +MASCO +MASEN +MASLO +MASTO +MATAN +MATAR +MATEE +MATEN +MATEO +MATIZ +MAULE +MAURE +MAURO +MAYAL +MAYAN +MAYAR +MAYEE +MAYEN +MAYOR +MAZAR +MAZNE +MEAJA +MEATO +MECEN +MECER +MECHA +MECHE +MECHO +MEDIA +MEDIE +MEDIO +MEDIR +MEDRA +MEDRE +MEDRO +MEIGO +MEJAN +MEJEN +MEJER +MEJOR +MELAR +MELCA +MELGA +MELGO +MELIS +MELLA +MELLE +MELLO +MELSA +MELVA +MEMOS +MENAR +MENDA +MENEE +MENEO +MENOR +MENSA +MENSO +MENTA +MENTE +MERAN +MERAR +MERCO +MEREN +MEREY +MERGO +MERLO +MERME +MESAN +MESAR +MESAS +MESEN +MESES +MESMO +MESTO +METAL +METAN +METEN +METER +METRO +MEZAN +MIAGO +MIAJA +MICER +MICHO +MICRO +MIDAN +MIDEN +MIEDO +MIELA +MIELE +MIELO +MIERA +MIGAN +MIGAR +MIGRA +MIGRE +MIGRO +MIGUE +MILLO +MILPA +MIMAR +MINAL +MINAN +MINAR +MINEN +MINGO +MINIE +MINIO +MIOMA +MIOPE +MIRAN +MIRAR +MIRAS +MIREN +MIRLE +MIRLO +MIRRA +MIRTO +MIRZA +MISAL +MISAR +MISIL +MISIO +MISMO +MISTA +MISTE +MISTO +MITIN +MITOS +MITRE +MIXTO +MOCAR +MOCEE +MOCHA +MOCHE +MOCHO +MOCIL +MODAL +MODIO +MOFAR +MOGOL +MOGOS +MOJAN +MOJAR +MOJEL +MOJEN +MOLAN +MOLAR +MOLDA +MOLDE +MOLDO +MOLEN +MOLER +MOLES +MOLLA +MOLLE +MOLSO +MOMEE +MOMIO +MONDA +MONDE +MONDO +MONEE +MONGO +MONJE +MONOS +MONTA +MONTE +MONTO +MOQUE +MORAL +MORAN +MORAR +MORAS +MORBO +MORCA +MORCO +MOREN +MORFA +MORFO +MORGA +MORIR +MOROS +MORRA +MORRO +MORSE +MOSCA +MOSCO +MOSTE +MOSTO +MOTEE +MOTEL +MOTIL +MOTOR +MOVER +MOXTE +MOZOS +MUCHA +MUCHO +MUDAN +MUDAR +MUDEN +MUDEZ +MUDOS +MUECA +MUELA +MUELE +MUELO +MUERA +MUERE +MUERO +MUESO +MUEVA +MUEVE +MUEVO +MUFLE +MUGAN +MUGAR +MUGIR +MUGOR +MUGRE +MUGUE +MUJER +MULAR +MULAS +MULLA +MULLE +MULLO +MULSO +MULTE +MUNDO +MUQUE +MURAL +MURAN +MURAR +MUREN +MURGA +MURIA +MURTA +MUSAR +MUSCA +MUSCO +MUSEO +MUSGA +MUSGO +MUSIR +MUSLO +MUTAN +MUTAR +MUTEN +MUTIS +MUTUO +NABAB +NABAL +NABAR +NABLA +NACEN +NACER +NACES +NACHO +NACRE +NADAN +NADAR +NADEN +NADIE +NADIR +NAFRE +NAFTA +NAGUA +NAHUA +NAIFE +NAIPE +NAIRE +NALCA +NALGA +NANCE +NANEE +NANSA +NANTE +NAPEO +NAQUE +NARDO +NARES +NARIZ +NARRE +NASAL +NATAL +NATOS +NAURU +NAUTA +NAVAL +NAZCA +NAZCO +NECEE +NECIA +NECIO +NEGAR +NEGRA +NEGRO +NEGUS +NELDO +NEMEO +NENIA +NEPAL +NESGO +NEUMA +NEVAR +NEVIS +NIARA +NIAZO +NICHO +NICLE +NIDAL +NIDIA +NIDIO +NIEGA +NIEGO +NIELE +NIETO +NIEVA +NIEVE +NIEVO +NIGUA +NIMBE +NIMIO +NINFO +NIOTO +NITRE +NITRO +NIVEL +NOBEL +NOBLE +NOCHE +NOCIR +NOCLA +NOGAL +NOMON +NONIO +NOPAL +NORAY +NORIA +NORMA +NORTE +NOTAN +NOTAR +NOTEN +NOTOS +NOTRO +NOVAL +NOVAN +NOVAR +NOVEL +NOVEN +NOVIE +NOVIO +NUBIO +NUBLA +NUBLE +NUBLO +NUCIR +NUCOS +NUERA +NUEVA +NUEVE +NUEVO +NULOS +NUMEN +NUNCA +NUTRA +NUTRE +NUTRO +OASIS +OBESO +OBLEA +OBRAN +OBRAR +OBREN +OBSTA +OBSTE +OBVIE +OBVIO +OCASO +OCELO +OCENA +OCIAR +OCUJE +OCUMO +OCUPA +OCUPE +OCUPO +ODIAR +OESTE +OFITA +OHMIO +OIDOR +OJEAR +OJERA +OJETE +OJITO +OJIVA +OJOSA +OJOSO +OJOTA +OLEAR +OLELE +OLEME +OLIVE +OLIVO +OLLAO +OLLAR +OLOTE +OMEGA +OMERO +OMEYA +OMINE +OMISO +OMITE +ONCEE +ONDEE +ONECE +OPACO +OPERA +OPERE +OPERO +OPILA +OPILE +OPILO +OPINA +OPINE +OPINO +OPTAN +OPTAR +OPTEN +ORATE +ORDEN +OREAR +OREJA +ORFRE +ORIBE +ORIVE +ORLAR +ORNAR +ORNEE +OROYA +ORUGA +ORUJO +ORZAR +OSEAR +OSERO +OSMIO +OSTIA +OSTRO +OSUDO +OSUNO +OTEAR +OTERO +OTILE +OTOBA +OVABA +OVADO +OVARA +OVARE +OVASE +OVEJA +OVERO +OVINO +OVULE +OXEAR +OXIDA +OXIDE +OXIDO +OZONO +PACEN +PACER +PACHA +PACHO +PACTA +PACTE +PACTO +PADRE +PAFIO +PAGAN +PAGAR +PAGAS +PAGEL +PAGOS +PAGRO +PAGUE +PAICO +PAILA +PAIRE +PAJAR +PAJEE +PAJEL +PAJUZ +PALAU +PALCO +PALEA +PALEE +PALEO +PALES +PALIO +PALLE +PALMA +PALME +PALMO +PALOS +PALPA +PALPE +PALPO +PAMPA +PANAL +PANAS +PANCA +PANCO +PANDA +PANDE +PANDO +PANEL +PANES +PANOS +PANSA +PANZA +PAPAL +PAPAN +PAPAR +PAPAS +PAPEE +PAPEL +PAPEN +PAPOS +PARAN +PARAR +PARAS +PARCA +PARCE +PARCO +PARDA +PARDO +PAREA +PAREE +PAREN +PAREO +PARES +PARGO +PARIO +PARIR +PARLE +PAROS +PARPE +PARRA +PARRE +PARRO +PARTA +PARTE +PARTO +PARVA +PARVO +PASAN +PASAR +PASAS +PASEE +PASEN +PASEO +PASME +PASMO +PASTA +PASTE +PASTO +PATAO +PATEA +PATEE +PATEO +PATIO +PATOS +PAULA +PAULE +PAUSE +PAUTE +PAVOR +PAYAR +PAZCA +PAZCO +PEAJE +PEANA +PEBRE +PECAR +PECHA +PECHE +PECHO +PECIO +PECTE +PEDAL +PEDIR +PEDRO +PEGAN +PEGAR +PEGUE +PEINA +PEINE +PEINO +PELAN +PELAR +PELEE +PELEN +PELIS +PELLA +PELLO +PELMA +PELTA +PELVI +PENAL +PENAN +PENAR +PENCA +PENCO +PENDA +PENDE +PENDO +PENEN +PENOL +PEORA +PEPLO +PERAL +PERAS +PERCA +PERLE +PERNA +PERNO +PEROL +PERRA +PERRO +PERSA +PERTA +PESAN +PESAR +PESCA +PESCO +PESEN +PESTE +PETAR +PETRA +PIADA +PIADO +PIAFE +PIALE +PIANO +PICAN +PICAR +PICHE +PICHI +PICOR +PICOS +PIDAN +PIDEN +PIEJO +PIEZA +PIFIE +PILAN +PILAR +PILEN +PILLA +PILLE +PINAR +PINCE +PINES +PINGO +PINNA +PINOL +PINOS +PINTA +PINTE +PINTO +PINZA +PINZO +PIOJO +PIOLA +PIOLE +PIOLO +PIPAN +PIPAR +PIPEN +PIQUE +PIRAN +PIRAR +PIRCO +PIREN +PIRLA +PIROS +PIRRE +PISAN +PISAR +PISAS +PISCO +PISEN +PISPE +PISTA +PISTE +PISTO +PITAN +PITAO +PITAR +PITEN +PITIO +PIULE +PIUNE +PIURE +PIZCA +PIZCO +PIZZA +PLACA +PLACE +PLACO +PLAGO +PLANA +PLANO +PLATA +PLATO +PLAYA +PLAYO +PLAZA +PLAZO +PLEBE +PLECA +PLENA +PLENO +PLEON +PLEPA +PLEXO +PLICA +PLISE +PLOMA +PLOME +PLOMO +PLUMA +POBRE +POCHO +PODAN +PODAR +PODAS +PODEN +PODER +PODIO +PODRE +POEMA +POETA +POLAR +POLCO +POLEN +POLEO +POLIO +POLIR +POLIS +POLLA +POLLO +POLVO +POMAR +POMPO +PONEN +PONER +PONGA +PONGO +PONLE +PONLO +PONTE +PONTO +POPAN +POPAR +POPEN +PORGO +PORNO +PORRA +PORRO +PORTA +PORTE +PORTO +POSAN +POSAR +POSAS +POSCA +POSEA +POSEE +POSEN +POSEO +POSMO +POSTA +POSTE +POTAR +POTRA +POTRO +POYAN +POYAR +POYEN +PRADO +PRAVA +PRAVO +PRESA +PRESO +PREST +PRIMA +PRIME +PRIMO +PRIOR +PRISA +PRIVE +PROBO +PRONO +PRORA +PROSA +PRUNO +PUBES +PUBIS +PUCHO +PUCIA +PUDIN +PUDIO +PUDIR +PUDOR +PUDRA +PUDRE +PUDRO +PUGNA +PUGNE +PUGNO +PUJAN +PUJAR +PUJEN +PULAN +PULEN +PULGA +PULIR +PULLA +PULPA +PULPO +PULSA +PULSE +PULSO +PUNAN +PUNAR +PUNCE +PUNEN +PUNES +PUNGE +PUNIR +PUNJO +PUNTA +PUNTE +PUNTO +PUNZA +PUNZO +PUPAR +PUREE +PURGA +PURGO +PUROS +PURRA +PURRE +PURRO +PUTEE +PUTOS +PUYAR +PUZOL +QATAR +QUEDE +QUEDO +QUEJA +QUEJE +QUEJO +QUEMA +QUEME +QUEMO +QUENA +QUEPO +QUERA +QUESO +QUIEN +QUIER +QUIJO +QUILO +QUIMO +QUINA +QUINO +QUISE +QUISO +QUITA +QUITE +QUITO +RABAL +RABEE +RABEL +RABIA +RABIE +RABIO +RABOS +RACHE +RADAR +RADIA +RADIE +RADIO +RAFAL +RAFEE +RAFIA +RAGUA +RAHEZ +RAIJO +RAJAR +RALBE +RALEE +RALLE +RALLO +RAMAL +RAMIO +RAMOS +RAMPE +RANDA +RANGO +RAPAN +RAPAR +RAPAZ +RAPEN +RAPTE +RAPTO +RAQUE +RAREE +RASAN +RASAR +RASCO +RASEN +RASGO +RASOS +RASPA +RASPE +RASPO +RATEA +RATEE +RATEO +RATIO +RAUDO +RAUTA +RAYAN +RAYAR +RAYEN +RAYOS +RAZAR +REARA +REARE +REBLE +RECIA +RECIO +RECRE +RECTA +RECTE +RECTO +RECUA +REDAN +REDAR +REDEN +REDIL +REDOL +REDOR +REDRO +REFEZ +REGAR +REGIO +REGIR +REGLA +REGLE +REGLO +REHAZ +REINE +REINO +REJOS +RELAX +RELEJ +RELOJ +RELSO +RELVE +REMAR +REMES +REMOS +RENAL +RENCA +RENCO +RENDA +RENDE +RENGA +RENGO +RENIL +RENTA +RENTE +REPTE +RESAL +RESOL +RESTE +RESTO +RETAR +RETEL +RETES +RETOR +RETRO +REUMA +REVER +REYAR +REZAR +REZNO +RIADA +RICEN +RICIO +RICOS +RIEGO +RIELA +RIELE +RIELO +RIERA +RIERE +RIESE +RIFAR +RIFLE +RIGEN +RIGOR +RIJAN +RILAR +RIMAR +RINDE +RINGO +RIOJA +RIPIA +RIPIE +RIPIO +RISCA +RISCO +RISPO +RITME +RITMO +RITOS +RIVAL +RIZAN +RIZAR +RIZOS +ROANO +ROBAR +ROBLA +ROBLE +ROBLO +ROBOT +ROBRE +ROCHA +ROCHE +ROCHO +RODAL +RODAR +RODEE +RODEO +RODIO +ROELA +ROETE +ROGAR +ROJAL +ROJEE +ROJOS +ROLAN +ROLAR +ROLDE +ROLEN +ROLEO +ROLLA +ROLLE +ROLLO +ROMBO +ROMEO +ROMOS +ROMPA +ROMPE +ROMPO +RONCE +RONCO +RONDA +RONDE +RONES +RONZO +ROPAS +ROQUE +RORAR +RORRO +ROSAL +ROSAR +ROSCA +ROSCO +ROSEE +ROSJO +ROSTE +ROTAL +ROTAN +ROTAR +ROTEN +ROTOR +ROUGE +ROZAR +ROZNE +RUANO +RUBIA +RUBIO +RUBLO +RUBOR +RUBRO +RUCAR +RUCHE +RUCIO +RUECA +RUEDA +RUEDE +RUEDO +RUEGO +RUEJO +RUGAN +RUGAR +RUGBY +RUGIR +RUGUE +RUIDO +RUINE +RULAR +RUMBA +RUMBE +RUMBO +RUMIE +RUMOR +RUNGO +RUNOS +RUPIA +RURAL +RUSCO +RUSIA +RUSTE +RUTAR +RUTEL +SABEN +SABEO +SABER +SABIA +SABIO +SABLE +SABOR +SABRE +SACAN +SACAR +SACAS +SACHE +SACIE +SACIO +SACOS +SACRE +SACRO +SAETA +SAETE +SAETO +SAGAZ +SAINT +SAJAR +SALAN +SALAR +SALAZ +SALCE +SALDE +SALDO +SALEE +SALEN +SALEP +SALGA +SALGO +SALIO +SALIR +SALLA +SALLE +SALLO +SALMA +SALME +SALMO +SALOL +SALPA +SALSO +SALTA +SALTE +SALTO +SALVA +SALVE +SALVO +SAMIO +SAMOA +SAMPA +SANAN +SANAR +SANCO +SANEE +SANEN +SANGO +SANIE +SANJE +SANOS +SANSO +SANTO +SAQUE +SARAO +SARDE +SARDO +SARGA +SARGO +SARNA +SARRO +SARTA +SARZA +SARZO +SATIS +SAUCE +SAUNA +SAVIA +SAYAL +SECAN +SECAR +SECOS +SECTA +SECUA +SEDAL +SEDAN +SEDAR +SEDEE +SEDEN +SEGAR +SEGUR +SEICO +SEISE +SELES +SELLA +SELLE +SELLO +SELVA +SEMEN +SEMOS +SENDA +SENIL +SEPAN +SEPIA +SEQUE +SERAS +SERBA +SERES +SERIA +SERIE +SERIO +SERNA +SERPA +SERTE +SERVO +SESEE +SESEO +SESGO +SESMO +SEXMO +SEXTA +SEXTO +SEXYS +SIBIL +SICLO +SIDRA +SIEGA +SIEGO +SIENA +SIESO +SIETE +SIGAN +SIGLO +SIGMA +SIGNA +SIGNE +SIGNO +SIGUE +SILBE +SILBO +SILES +SILFO +SILGO +SILLA +SILVA +SIMIO +SINGO +SIRGO +SIRIA +SIRIO +SIRLE +SIRTE +SIRVE +SISAN +SISAR +SISCA +SISEE +SISEN +SISMO +SITIE +SITIO +SOASE +SOBAN +SOBAR +SOBEN +SOBEO +SOBRA +SOBRE +SOBRO +SOCAZ +SOCIA +SOCIO +SODIO +SOGAS +SOLAR +SOLAS +SOLAZ +SOLEA +SOLEE +SOLEO +SOLER +SOLES +SOLFA +SOLIO +SOLLA +SOLOS +SOMOS +SONAR +SONDA +SONDE +SONDO +SONSO +SOPAN +SOPAR +SOPEE +SOPEN +SOPES +SOPLA +SOPLE +SOPLO +SOPOR +SORBA +SORBE +SORBO +SORCE +SORDA +SORDO +SORGO +SORNE +SORRA +SOSAR +SOSIA +SOTAR +SOTOL +SOVOZ +SPORT +SPRAY +STOCK +SUAVE +SUBIR +SUCIA +SUCIO +SUDAN +SUDAR +SUDEN +SUDOR +SUECO +SUELA +SUELE +SUELO +SUENA +SUENE +SUENO +SUERO +SUFRE +SUITE +SUIZA +SUIZO +SUMAN +SUMAR +SUMEN +SUMIR +SUPLE +SURCA +SURCO +SURDE +SURGE +SURJA +SURJO +SURTA +SURTE +SURTO +SUSTO +SUTIL +TABEA +TABES +TABLA +TABLE +TABLO +TABOR +TACAR +TACAS +TACEN +TACHE +TACHO +TACTO +TAFIA +TAGUA +TAIFA +TAIGA +TAIME +TAINA +TAJAN +TAJAR +TAJEA +TAJEN +TALAR +TALCO +TALIO +TALLA +TALLE +TALLO +TALMA +TALPA +TAMAL +TAMBO +TAMIL +TAMIZ +TAMOS +TANCO +TANDA +TANGE +TANGO +TANJO +TANOR +TANTO +TAPAN +TAPAR +TAPAS +TAPEN +TAPIA +TAPIE +TAPIO +TAPIR +TAPIS +TAPIZ +TAQUE +TARAN +TARAR +TARAY +TARCO +TARDA +TARDE +TARDO +TAREA +TAREN +TARJE +TARRO +TARSO +TARTA +TASAN +TASAR +TASCA +TASCO +TASEN +TASIO +TASTO +TAUCA +TAUCO +TAURO +TAZAN +TAZAR +TEBEO +TECES +TECHA +TECHE +TECHO +TECLE +TECLO +TEDIO +TEGEO +TEGUA +TEJAN +TEJAR +TEJEN +TEJER +TEJOS +TELAR +TELES +TELLS +TEMER +TEMOR +TEMPO +TENAZ +TENCA +TENER +TENGA +TENGO +TENIA +TENIS +TENLO +TENME +TENOR +TENSA +TENSE +TENSO +TENTE +TENUE +TEOSO +TERCA +TERCO +TERMO +TERNA +TERNE +TERNO +TERSE +TERSO +TESAN +TESAR +TESEN +TESIS +TESLA +TESOS +TESTA +TESTE +TESTO +TETAN +TETAR +TETEN +TEXTO +TIACA +TIARA +TIBIA +TIBIE +TIBIO +TIENE +TIESA +TIESO +TIFUS +TIGRE +TILDA +TILDE +TILDO +TILIA +TILLE +TILMA +TILOS +TIMAN +TIMAR +TIMBA +TIMEN +TIMOL +TIMOR +TIMOS +TIMPA +TINCA +TINCO +TINGE +TINOS +TINTA +TINTE +TINTO +TIPLE +TIPOS +TIQUE +TIRAN +TIRAR +TIREN +TIRIO +TIRSO +TISIS +TISTE +TITAR +TITEE +TIZNA +TIZNE +TIZNO +TIZOS +TLACO +TOBAR +TOCAN +TOCAR +TOCAS +TOCEN +TOCHA +TOCHE +TOCHO +TOCIO +TOESA +TOJAL +TOJOS +TOLDA +TOLDE +TOLDO +TOLLA +TOLLO +TOLMO +TOLVA +TOMAN +TOMAR +TOMEN +TONAL +TONAN +TONAR +TONCA +TONDO +TONEL +TONEN +TONGA +TONGO +TONOS +TONTA +TONTO +TOPAR +TOPEE +TOQUE +TORAL +TORCA +TORCE +TORCO +TORDA +TORDO +TOREE +TOREO +TORGA +TORGO +TORIL +TORIO +TORMO +TORNA +TORNE +TORNO +TORPE +TORRA +TORRE +TORSO +TORTA +TORVO +TOSAN +TOSCO +TOSEN +TOSER +TOTAL +TOURS +TOZAN +TOZAR +TRABA +TRABE +TRABO +TRACA +TRACE +TRAEN +TRAER +TRAGO +TRAJE +TRAJO +TRAMA +TRAME +TRAMO +TRAPA +TRAPE +TRAPO +TRARO +TRATA +TRATE +TRATO +TRAZA +TRAZO +TREBO +TRECE +TREJA +TREME +TRENO +TREPA +TREPE +TREPO +TRETA +TRIAR +TRIBU +TRICE +TRIGA +TRIGO +TRILE +TRINE +TRINO +TRIPA +TRIPE +TRISE +TRIZA +TRIZO +TROCE +TROJA +TROJE +TROLE +TRONA +TRONO +TROPA +TROPO +TROTE +TROVE +TROZA +TROZO +TRUCA +TRUCO +TRUFE +TRUJA +TUDEL +TUECO +TUERA +TUFOS +TULIO +TULLE +TUMBA +TUMBE +TUMBO +TUMOR +TUMOS +TUNAR +TUNCO +TUNDA +TUNDE +TUNDO +TUNEE +TUPAN +TUPEN +TUPIR +TURAR +TURBA +TURBE +TURBO +TURCO +TURMA +TURNE +TURNO +TURRA +TURRE +TURRO +TUSAN +TUSAR +TUSEN +TUTEE +TUTOR +TUYOS +UBICA +UBICO +UCASE +UFANE +UFANO +UJIER +ULEMA +ULTRA +ULULE +UMBRO +UMERO +UNCEN +UNCIA +UNCIR +UNGIR +UNIDO +UNILE +UNILO +UNIME +UNTAN +UNTAR +UNTEN +UNZAN +URAPE +URATO +URDAN +URDEN +URDIR +URGIR +URUGA +USALE +USALO +USAME +USIER +USUAL +USURE +UVADA +UVERO +UVIAR +VACAN +VACAR +VACUO +VADEE +VAGAR +VAHAN +VAHAR +VAHEE +VAHEN +VAINA +VALAR +VALEN +VALER +VALGA +VALGO +VALLA +VALLE +VALLO +VALOR +VALSE +VALVA +VAMOS +VANEA +VANEE +VANEO +VANOS +VAPOR +VAQUE +VARAL +VARAN +VARAR +VAREE +VAREN +VAREO +VARGA +VARIO +VARIZ +VASAR +VASCO +VASOS +VASTA +VASTO +VATIO +VAYAN +VECEN +VEDAN +VEDAR +VEDEN +VEDLE +VEDLO +VEDME +VEJAR +VELAN +VELAR +VELEN +VELLO +VELOS +VELOZ +VENAL +VENCE +VENDA +VENDE +VENDO +VENGA +VENGO +VENIA +VENIR +VENOS +VENTA +VENTE +VENUS +VENZA +VENZO +VERAZ +VERBO +VERDE +VERES +VERIL +VERJA +VERLA +VERLE +VERLO +VERME +VEROS +VERSA +VERSE +VERSO +VERTE +VESTE +VETAR +VETEE +VEZAN +VEZAR +VIADA +VIAJE +VIBRE +VICHE +VICIA +VICIE +VICIO +VICTO +VIDEO +VIDES +VIEJA +VIEJO +VIENE +VIGOR +VILLA +VINAR +VINCO +VINOS +VINTA +VIOLE +VIRAL +VIRAN +VIRAR +VIREN +VIRGO +VIRIL +VIRUS +VISAN +VISAR +VISCO +VISEE +VISEN +VISIR +VISOR +VISOS +VISTA +VISTE +VISTO +VITAL +VITAN +VITAR +VITEN +VITRE +VIUDA +VIUDO +VIVAC +VIVAN +VIVAR +VIVAS +VIVAZ +VIVEN +VIVIR +VIVOS +VOCAL +VOCEE +VODKA +VOILA +VOLAR +VOLEA +VOLEE +VOLEO +VOLVO +VORAZ +VOSEE +VOTAN +VOTAR +VOTEN +VOTOS +VOZNE +VUELA +VUELE +VUELO +VULGO +VULVA +WEBER +YACEN +YACER +YACES +YACIO +YAGAN +YAGUA +YAMBO +YANTA +YAPAR +YARDA +YAZCA +YAZCO +YAZGA +YAZGO +YEDRA +YEGUA +YELMO +YEMEN +YENDO +YENTE +YERBA +YERGO +YERMA +YERME +YERMO +YERNO +YERRE +YERRO +YERTA +YERTO +YERVO +YESAR +YESCA +YEZGO +YOGAR +YOGUR +YUGOS +YUNTO +ZABRA +ZACEE +ZAFAR +ZAFIO +ZAGAL +ZAINA +ZAINO +ZALEA +ZALEE +ZALLE +ZAMBO +ZAMPE +ZANCA +ZANCO +ZANGA +ZANJE +ZAPAR +ZAPEE +ZAQUE +ZARBO +ZARCO +ZARJA +ZARPA +ZARPE +ZARZA +ZARZO +ZENDO +ZENIT +ZOCOS +ZOFRA +ZOIZO +ZOMPO +ZONAL +ZONZO +ZORRA +ZORRO +ZUAVO +ZUBIA +ZUECO +ZUELA +ZUIZA +ZULLE +ZUMBE +ZUMOS +ZURCE +ZURDE +ZURDO +ZUREE +ZURRE +ZURZA +ZURZO +ZUZAR