I think we dont need a main if eigen is not defined