field encapsulation