abstract syntax tree — tree representation of the abstract syntactic structure of source code