- refactoring of the classe and the tests, still work in progress...