Encapsulate all the fields