Added puzzle functionality