1strict digraph { 2JAIF [shape=box] 3Java [shape=box] 4"Annotated Java" [shape=box] 5"Augmented AST" [style=bold] 6Source [constraint=false] 7JAIF -> Scene 8Scene -> "Annotations\nw/ AST Paths" [style=bold] 9Java -> Source 10Source -> AST 11AST -> "Augmented AST" [style=bold] 12Source -> "Augmented AST" [style=bold] 13"Augmented AST" -> "Annotated AAST" [style=bold] 14"Augmented AST" -> "Annotations\nw/ AST Paths" [style=bold] 15"Annotation\nSpecifications" -> "Annotations\nw/ AST Paths" [style=dashed] 16"Annotation\nSpecifications" -> "Annotations w/\nCode Locations" [style=dashed] 17"Annotations\nw/ AST Paths" -> "Annotated AAST" 18"Annotated AAST" -> "Annotated Java" 19Source -> Bytecode 20Bytecode -> "Annotated AAST" 21Source -> "Annotated AAST" [style=dashed] 22Source -> "Annotated Java" [style=dashed] 23AST -> "Annotated AAST" [style=dashed] 24AST -> "Annotations\nw/ AST Paths" [style=dashed] 25"Annotations w/\nCode Locations" -> "Annotated AAST" [style=dashed] 26Scene -> "Annotation\nSpecifications" [style=dashed] 27} 28 29