put everything in run loop