- made IMain lazy