https://profilpelajar.com/en/Krauss_matching_wildcards_algorithm