add tack functionality