refactorization to manage old rules with a separated class