refactored "Part III"