implementing traveling