added compiler and component