encapsulate set/get method to avoid operating field directly
merge