=head1 RETURN VALUES

Upon successful completion, a value of B<0> (B<XER_OK>) is returned.
Otherwise, one of the following error codes is returned:

=over 5

=item *

B<1 => B<XER_Usage>

=item *

B<2 => B<XER_Abort>

=item *

B<3 => B<XER_BootStrap>

=item *

B<4 => B<XER_ProcessArguments>

=item *

B<5 => B<XER_ReadProperties>

=item *

B<6 => B<XER_CheckDependencies>

=item *

B<7 => B<XER_Configure>

=item *

B<8 => B<XER_GetStage>

=item *

B<9 => B<XER_RunStage>

=item *

B<10 => B<XER_PutStage>

=item *

B<11 => B<XER_MultiStage>

=item *

B<12 => B<XER_GetUrl>

=item *

B<13 => B<XER_CloneProperties>

=item *

B<20 => B<XER_Cleanup>

=item *

B<27 => B<XER_Cleanup_Configure> (B<XER_Cleanup> + B<XER_Configure>)

=item *

B<28 => B<XER_Cleanup_GetStage> (B<XER_Cleanup> + B<XER_GetStage>)

=item *

B<29 => B<XER_Cleanup_RunStage> (B<XER_Cleanup> + B<XER_RunStage>)

=item *

B<30 => B<XER_Cleanup_PutStage> (B<XER_Cleanup> + B<XER_PutStage>)

=item *

B<31 => B<XER_Cleanup_MultiStage> (B<XER_Cleanup> + B<XER_MultiStage>)

=back

If the command line does not conform to the required syntax, a value
of B<1> (B<XER_Usage>) is returned.  A value of B<2> (B<XER_Abort>)
means the program encountered a critical or unexpected error and had
to abort immediately.  The remaining exit codes roughly indicate which
subsystem encountered the fatal error.  If the error code is
B<XER_MultiStage>, then multiple stages (e.g., GET/RUN/PUT) failed.

