refactored member variables