Adding foreign AST optional support