Implemented dirty attribute tracking