maybe the timeout should be extracted into a constant or property