interfaceinfo constructor refactored