refactor method signatures in event loop