// This file is automatically generated by DemeterJ.

UniversalVisitor {
  start {{ }}
  before { 
    Commands, -> Commands,mousecommandlist,MouseCommandList,
    MouseCommandList, -> MouseCommandList,mousecommand_list,MouseCommand_List,
    MouseCommand,
    TwoButtonCommand, -> TwoButtonCommand,twobuttonmousebutton,TwoButtonMouseButton, -> TwoButtonCommand,basicoperation,BasicOperation, -> TwoButtonCommand,mousecoordinates,MouseCoordinates,
    ThreeButtonCommand, -> ThreeButtonCommand,threebuttonmousebutton,ThreeButtonMouseButton, -> ThreeButtonCommand,basicoperation,BasicOperation, -> ThreeButtonCommand,mousecoordinates,MouseCoordinates,
    WheelButtonCommand, -> WheelButtonCommand,wheelmousebutton,WheelMouseButton, -> WheelButtonCommand,advancedoperation,AdvancedOperation, -> WheelButtonCommand,mousecoordinates,MouseCoordinates,
    BasicButtons,
    TwoButtonMouseButton, -> TwoButtonMouseButton,basicbuttons,BasicButtons,
    ThreeBBasicButtons, -> ThreeBBasicButtons,basicbuttons,BasicButtons,
    ThreeButtonMouseButton,
    WBBasicButtons, -> WBBasicButtons,basicbuttons,BasicButtons,
    WheelMouseButton,
    LeftButton,
    RightButton,
    MiddleButton,
    WheelButton,
    BasicOperation,
    AdvancedOperation,
    ClickOp,
    PressOp,
    ReleaseOp,
    RollUpOp,
    RollDownOp,
    MouseCoordinates, -> MouseCoordinates,mousecoordinate,MouseCoordinate,
    MouseCoordinate,
    PointCoordinate, -> PointCoordinate,x,int, -> PointCoordinate,y,int,
    EmptyCoordinate,
    Main,
    MouseCommand_List, -> MouseCommand_List,first,Nonempty_MouseCommand_List,
    Nonempty_MouseCommand_List, -> Nonempty_MouseCommand_List,it,MouseCommand, -> Nonempty_MouseCommand_List,next,Nonempty_MouseCommand_List
  } {{ }}
  after { 
    Commands, -> Commands,mousecommandlist,MouseCommandList,
    MouseCommandList, -> MouseCommandList,mousecommand_list,MouseCommand_List,
    MouseCommand,
    TwoButtonCommand, -> TwoButtonCommand,twobuttonmousebutton,TwoButtonMouseButton, -> TwoButtonCommand,basicoperation,BasicOperation, -> TwoButtonCommand,mousecoordinates,MouseCoordinates,
    ThreeButtonCommand, -> ThreeButtonCommand,threebuttonmousebutton,ThreeButtonMouseButton, -> ThreeButtonCommand,basicoperation,BasicOperation, -> ThreeButtonCommand,mousecoordinates,MouseCoordinates,
    WheelButtonCommand, -> WheelButtonCommand,wheelmousebutton,WheelMouseButton, -> WheelButtonCommand,advancedoperation,AdvancedOperation, -> WheelButtonCommand,mousecoordinates,MouseCoordinates,
    BasicButtons,
    TwoButtonMouseButton, -> TwoButtonMouseButton,basicbuttons,BasicButtons,
    ThreeBBasicButtons, -> ThreeBBasicButtons,basicbuttons,BasicButtons,
    ThreeButtonMouseButton,
    WBBasicButtons, -> WBBasicButtons,basicbuttons,BasicButtons,
    WheelMouseButton,
    LeftButton,
    RightButton,
    MiddleButton,
    WheelButton,
    BasicOperation,
    AdvancedOperation,
    ClickOp,
    PressOp,
    ReleaseOp,
    RollUpOp,
    RollDownOp,
    MouseCoordinates, -> MouseCoordinates,mousecoordinate,MouseCoordinate,
    MouseCoordinate,
    PointCoordinate, -> PointCoordinate,x,int, -> PointCoordinate,y,int,
    EmptyCoordinate,
    Main,
    MouseCommand_List, -> MouseCommand_List,first,Nonempty_MouseCommand_List,
    Nonempty_MouseCommand_List, -> Nonempty_MouseCommand_List,it,MouseCommand, -> Nonempty_MouseCommand_List,next,Nonempty_MouseCommand_List
  } {{ }}
  finish {{ }}
}