merged with new compiler