use the template definition as default for first/previous/next/last; added __toString() for auto rendering