refactored some code. Made PushData private for every class