compiler class