(Program (Function (Empty) (Empty) (Empty) {-(RequiredParameter {-(Empty)-} {-(Empty)-} {-(Empty)-} {-(Assignment {-(Identifier)-} {-(Empty)-})-})-} (RequiredParameter (Empty) (Empty) (Empty) (Assignment (Identifier) (Empty))) {+(RequiredParameter {+(Empty)+} {+(Empty)+} {+(Empty)+} {+(Assignment {+(Identifier)+} {+(Empty)+})+})+} (Statements (Return { (Plus {-(Identifier)-} {-(Identifier)-}) ->(Times {+(Identifier)+} {+(Identifier)+}) }))))