prepare for push