screenshot logic is in separate class