work version / refactoring in progress2 /