began working on getting multiple runs before refresh working with a semaphore. not quite done yet