add rest function