how long does it take viagra to work and how long does it last