new simplified ast structure and support for the output node