puzzle definition: parsing and accessors