#8 refactoring to make easier implementing localize
close #7