how long does a cough last