refractoring executeStep