exchange list refactoring. new cycle