new compiler is not very clean or purty