public interface Hint {

    /**
     * Returns a String whose length is the same length as the puzzle's solution.
     * If no characters in a given guess are correctly placed, this String
     * will contain only '-' characters.  For each character in the guess
     * that is in the correct location (same location as in the solution),
     * this String will contain that character.
     *
     * So, for a secret word of 'hello' and a guess of 'melts',
     * getCorrectlyPlaced() would return "-el--"
     *
     * So, for a secret word of 'helps' and a guess of 'hello',
     * getCorrectlyPlaced() would return "hel--" since the
     * first three characters are correctly placed.
     *
     * @return a String indicating correctly placed characters
     */
    public String getCorrectlyPlaced();

    /**
     * Returns a String whose length is the same length as the puzzle's solution.
     * Indicates which characters in the guess are in the puzzle's solution
     * but not at the same location as in the guess.
     *
     * So, for a secret word of 'chase' and a guess of 'hello',
     * getIncorrectlyPlaced() would return "-h--e"
     *
     * Note that for a secret word of 'helps' and a guess of 'hello',
     * getIncorrectlyPlaced() would return "----". The
     * second 'l' is not incorrectly placed; rather, it is
     * not needed to complete the solution given that the first
     * three letters are 'hel'.
     *
     * @return a String indicating correctly placed characters
     */
    public String getIncorrectlyPlaced();

    /**
     * Returns a String whose length is between 0 and the length of the solution.
     * Indicates characters in the guess that are not anywhere in the solution.
     *
     * So, for a secret word of 'helps' and a guess of 'hello',
     * getNotInPuzzle() would return "lo". Note, that it *does not* simply return "o".
     *
     * @return a String indicating correctly placed characters
     */
    public String getNotInPuzzle();

    /**
     *
     * @return true if the guess solved the puzzle.
     */
    public boolean isWin();
}