Node implementation of puzzle