refactoring of ini api