Compilers:Principles,Techniques,andTools