added functionality to compiler