Masking/Unmasking FSM:
----------------------
Default Input Files:  mask.data, (mask.data_events)
Default Output Files:  mask.results, (mask.results_un)
 
mask.data_events contains the masking info of mask.data FSM. This file is automatically obtained by 
  concatenating "_events" to the end of first input filename specified by user. Please make sure this 
  event file is created before running the application. The controllability info is ignored here.
mask.results contains the result of masking mask.data FSM with masking information in mask.data_events
mask.results_un contains the result of masking mask.data FSM with masking information in mask.data_events.
  This file needs not to be specified by user since it is automatically created by concatenating "un" to
  the output file (for masking operation) specified by user.

   (a)  Mask:
        ----
Underlying function: void fsm_mask(FILE*, FSM*, FSM*)
 
This function is used to mask a state machine.  The first argument
is a pointer to the input file containing the masking information.
The next argument is a pointer to the machine to be masked and the
last argument is used to return the results.


   (b)  Unmask:
        -----
Underlying function: void fsm_unmask(FILE*, FSM*, FSM*)
 
This function is used to unmask a state machine i.e. does the
inverse of the previous function.  Once again the first argument
is a pointer to the input file containing the masking information,
the second argument is a pointer to the machine to be unmasked and
the third argument is used to return the results.
