what does push do