call do logic