Changed productions with | to multiple productions.
Changed generic Name to specific names list FunctionName.
Changed productions with | to multiple productions.
Changed productions with | to multiple productions.
Made optional UNIT= (and similar productions) as two separate productions with the same constructor.  This is needed because UNIT= is syntatic sugar and is dropped in ATerm representation.