use unicode_normalization::UnicodeNormalization;
pub fn normalize_input(input: &str) -> String {
let nfkc: String = input.nfkc().collect();
nfkc.chars().filter(|c| !is_invisible(*c)).collect()
}
fn is_invisible(c: char) -> bool {
matches!(
c,
'\u{200B}' | '\u{200C}' | '\u{200D}' | '\u{FEFF}' )
}