A solution to Rubik's cube and related puzzles.