some refactoring to the interpolatable instance gen. part