from typing import Collection


def find_valid_words(dictionary: Collection[str], candidates: Collection[str]) -> Collection[str]:
    """Finds valid words from 'candidates' as found in
    the given words list.
    dictionary: the list to be used as a dictionary. Only strings in the dictionary are considered valid words
    candidates: strings to be tested for validity
    """
    dictionary, perms = set(dictionary), set(candidates)
    return dictionary & perms