encapsulate variables