some performance testing
some refactoring, using getter and setters