// solving the capacity checking problem from hw 2 // without modifying the host // visitor has own stack to keep track of initial value (@ import java.util.*; @) Container = "(" List(Item) Capacity ")". Item : Container | Simple. List(S) ~ {S}. Simple = Ident Weight. Capacity = Integer. Weight = Integer. MyStack = *extends* Stack. CheckingVisitor = InitialVisitor Integer. SummingVisitor = Integer. InitialVisitor = // takes care of computing initial value Integer // result for communication // with checking visitor MyStack SummingVisitor. Main = .