rewriting (again) - part 1