Mastering provides hints of two types that help students work through, and ultimately solve, problems. Declarative hints provide advice on how to approach the problem, guiding students to the final answer. Socratic hints break a problem down into smaller sub-problems, which makes it easier for students to complete the original problem.