@echo off
:-
:-  Boom builder for ASL 1.2c0
:-  Generated by iMatix Boom from standard.pwl
:-  
:-  Copyright (c) 1996-2009 iMatix Corporation
:-  All rights reserved.
:-  
:-  This file is licensed under the BSD license as follows:
:-  
:-  Redistribution and use in source and binary forms, with or without
:-  modification, are permitted provided that the following conditions
:-  are met:
:-  
:-  * Redistributions of source code must retain the above copyright
:-    notice, this list of conditions and the following disclaimer.
:-  * Redistributions in binary form must reproduce the above copyright
:-    notice, this list of conditions and the following disclaimer in
:-    the documentation and/or other materials provided with the
:-    distribution.
:-  * Neither the name of iMatix Corporation nor the names of its
:-    contributors may be used to endorse or promote products derived
:-    from this software without specific prior written permission.
:-  
:-  THIS SOFTWARE IS PROVIDED BY IMATIX CORPORATION "AS IS" AND ANY
:-  EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
:-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
:-  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL IMATIX CORPORATION BE
:-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
:-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
:-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
:-  BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
:-  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
:-  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
:-  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
:-
:-  Start CMD.EXE version detection
verify other 2>nul
setlocal enableextensions
if errorlevel 0 goto __cmd_ok
echo %0: This command requires command extensions version 2 in CMD.EXE.  
echo %0: Please use a supported system (Windows 2000 or newer).
exit
:__cmd_ok
setlocal enabledelayedexpansion
:-  End CMD.EXE version detection
goto :init
:-
:-  Subroutine: boom_model_init
:-  Initialises BOOM_MODEL to default if not set
:-  Expands BOOM_MODEL components into individual environment variables
:-
:boom_model_init
if "!BOOM_MODEL!"=="" (
    set BOOM_MODEL=release,st
)
set BOOM_MODEL__PLACEHOLDER=1
for /f "usebackq delims==" %%v in (`set BOOM_MODEL_`) do set %%v=
set BOOM_MODEL__PLACEHOLDER=
for %%m in (!BOOM_MODEL!) do set BOOM_MODEL_%%m=1
:-  If the user set BOOM_MODEL but did not include release/debug or st/mt
:-  set these to defaults.
if not "!BOOM_MODEL_RELEASE!"=="1" (
    if not "!BOOM_MODEL_DEBUG!"=="1" (
        set BOOM_MODEL_RELEASE=1
        set BOOM_MODEL=!BOOM_MODEL!,release
    )
)
if not "!BOOM_MODEL_ST!"=="1" (
    if not "!BOOM_MODEL_MT!"=="1" (
        set BOOM_MODEL_ST=1
        set BOOM_MODEL=!BOOM_MODEL!,st
    )
)
goto :eof
:init
setlocal
:-
:-  Set environment variables to point to install location
:-  Start by using final IBASE, then handle -install path
set self=%0
set MY_VERSION=1.2c0
set OLDPATH=!PATH!
set OLDPERLLIB=!PERLLIB!
if .!IBASE!==. (
    echo boom E: [ASL]: The IBASE variable is not set.             Please set it to the location where ASL should be installed.
    exit /b 1
)
if .%1==.-v (
    set BOOM_TRACE=1
    shift
)
call :boom_model_init
if .%1==.-install goto tempinst
:-  Normal use, use IBASE
    set PATH=!IBASE!\bin;!PATH!
    set PERLLIB=!IBASE!\bin;!PERLLIB!
    set INCDIR_ALT=!IBASE!\include
    set _INSTALL_ROOT=!IBASE!
    goto process

:tempinst
:-  Building product, we use -install directory first, then IBASE
    if not exist %2 (
       echo "Invalid command syntax - please contact imatix-tech"
       exit /b 1
    )
    pushd %2
    set _LOCAL_BASE=!cd!
    popd
    set PATH=!_LOCAL_BASE!\bin;!IBASE!\bin;!PATH!
    set PERLLIB=!_LOCAL_BASE!\bin;!IBASE!\bin;!PERLLIB!
    set INCDIR_ALT=!_LOCAL_BASE!\include;!IBASE!\include
    set _INSTALL_ROOT=!_LOCAL_BASE!
    shift
    shift
    goto process

:batch
    shift

:process
    set state=initial
    set event=ok
    set debug=0
    goto s_!state!

:---------------------------   BUILD BINARY FILES   ---------------------------

:a_build_binary_files
    goto :eof

:--------------------------   BUILD SOURCE PACKAGES   -------------------------

:a_build_source_packages
   if exist _package.lst del _package.lst
    if exist asl\version.h echo asl\version.h>>_package.lst
    if exist asl\asl.h echo asl\asl.h>>_package.lst
    if exist asl\asl.xnf echo asl\asl.xnf>>_package.lst
    if exist asl\asl_gen.gsl echo asl\asl_gen.gsl>>_package.lst
    if exist asl\asl_preproc.gsl echo asl\asl_preproc.gsl>>_package.lst
    if exist asl\asl_inherit.gsl echo asl\asl_inherit.gsl>>_package.lst
    if exist asl\asl_parse.gsl echo asl\asl_parse.gsl>>_package.lst
    if exist asl\asl_doc.txt echo asl\asl_doc.txt>>_package.lst
    if exist asl\asl_stdc.gsl echo asl\asl_stdc.gsl>>_package.lst
    if exist asl\asl_java.gsl echo asl\asl_java.gsl>>_package.lst
    if exist asl\asl_csharp.gsl echo asl\asl_csharp.gsl>>_package.lst
    if exist asl\asl_doc.gsl echo asl\asl_doc.gsl>>_package.lst
    if exist asl\asl_constants.gsl echo asl\asl_constants.gsl>>_package.lst
    if exist asl\asl_method_class.gsl echo asl\asl_method_class.gsl>>_package.lst
    if exist asl\asl_content_class.gsl echo asl\asl_content_class.gsl>>_package.lst
    if exist asl\asl_client_connection.gsl echo asl\asl_client_connection.gsl>>_package.lst
    if exist asl\asl_client_session.gsl echo asl\asl_client_session.gsl>>_package.lst
    if exist asl\asl_client_agent.gsl echo asl\asl_client_agent.gsl>>_package.lst
    if exist asl\asl_server_agent.gsl echo asl\asl_server_agent.gsl>>_package.lst
    if exist asl\asl_agent_common.gsl echo asl\asl_agent_common.gsl>>_package.lst
    if exist asl\asl_channel.icl echo asl\asl_channel.icl>>_package.lst
    if exist asl\asl_server_connection.icl echo asl\asl_server_connection.icl>>_package.lst
    if exist asl\asl_server_channel.icl echo asl\asl_server_channel.icl>>_package.lst
    if exist asl\asl_client_channel.icl echo asl\asl_client_channel.icl>>_package.lst
    if exist asl\asl_broker.icl echo asl\asl_broker.icl>>_package.lst
    if exist asl\asl_field.icl echo asl\asl_field.icl>>_package.lst
    if exist asl\asl_field_list.icl echo asl\asl_field_list.icl>>_package.lst
    if exist asl\asl_base.asl echo asl\asl_base.asl>>_package.lst
    if exist asl\asl_constants.asl echo asl\asl_constants.asl>>_package.lst
    if exist asl\asl_connection.asl echo asl\asl_connection.asl>>_package.lst
    if exist asl\asl_channel.asl echo asl\asl_channel.asl>>_package.lst
    if exist asl\asl_client.asl echo asl\asl_client.asl>>_package.lst
    if exist asl\asl_server.asl echo asl\asl_server.asl>>_package.lst
    if exist asl\asl_direct.asl echo asl\asl_direct.asl>>_package.lst
    if exist asl\demo.asl echo asl\demo.asl>>_package.lst
    if exist asl\demo_exchange.asl echo asl\demo_exchange.asl>>_package.lst
    if exist asl\demo_queue.asl echo asl\demo_queue.asl>>_package.lst
    if exist asl\demo_basic.asl echo asl\demo_basic.asl>>_package.lst
    if exist asl\demo_cli.c echo asl\demo_cli.c>>_package.lst
    if exist asl\demo_client_proto.asl echo asl\demo_client_proto.asl>>_package.lst
    if exist asl\demo_client_method.icl echo asl\demo_client_method.icl>>_package.lst
    if exist asl\demo_client_agent.smt echo asl\demo_client_agent.smt>>_package.lst
    if exist asl\demo_client_config.opf echo asl\demo_client_config.opf>>_package.lst
    if exist asl\demo_client_classes.icl echo asl\demo_client_classes.icl>>_package.lst
    if exist asl\demo_client_connection.icl echo asl\demo_client_connection.icl>>_package.lst
    if exist asl\demo_client_session.icl echo asl\demo_client_session.icl>>_package.lst
    if exist asl\demo_client_channel.icl echo asl\demo_client_channel.icl>>_package.lst
    if exist asl\demo_client_channel_table.icl echo asl\demo_client_channel_table.icl>>_package.lst
    if exist asl\demo_srv.c echo asl\demo_srv.c>>_package.lst
    if exist asl\demo_server_proto.asl echo asl\demo_server_proto.asl>>_package.lst
    if exist asl\demo_server_main.inc echo asl\demo_server_main.inc>>_package.lst
    if exist asl\demo_server_config.opf echo asl\demo_server_config.opf>>_package.lst
    if exist asl\demo_server_method.icl echo asl\demo_server_method.icl>>_package.lst
    if exist asl\demo_server_agent.smt echo asl\demo_server_agent.smt>>_package.lst
    if exist asl\demo_server_classes.icl echo asl\demo_server_classes.icl>>_package.lst
    if exist asl\demo_server_connection.icl echo asl\demo_server_connection.icl>>_package.lst
    if exist asl\demo_server_connection_table.icl echo asl\demo_server_connection_table.icl>>_package.lst
    if exist asl\demo_server_connection_list.icl echo asl\demo_server_connection_list.icl>>_package.lst
    if exist asl\demo_server_channel.icl echo asl\demo_server_channel.icl>>_package.lst
    if exist asl\demo_server_channel_agent.smt echo asl\demo_server_channel_agent.smt>>_package.lst
    if exist asl\demo_server_channel_table.icl echo asl\demo_server_channel_table.icl>>_package.lst
    if exist asl\demo_broker.icl echo asl\demo_broker.icl>>_package.lst
    if exist asl\demo_broker_agent.smt echo asl\demo_broker_agent.smt>>_package.lst
    if exist asl\demo_exchange.icl echo asl\demo_exchange.icl>>_package.lst
    if exist asl\demo_exchange_table.icl echo asl\demo_exchange_table.icl>>_package.lst
    if exist asl\demo_exchange_agent.smt echo asl\demo_exchange_agent.smt>>_package.lst
    if exist asl\demo_queue.icl echo asl\demo_queue.icl>>_package.lst
    if exist asl\demo_queue_table.icl echo asl\demo_queue_table.icl>>_package.lst
    if exist asl\demo_queue_list.icl echo asl\demo_queue_list.icl>>_package.lst
    if exist asl\demo_queue_agent.smt echo asl\demo_queue_agent.smt>>_package.lst
    if exist asl\demo_lease.icl echo asl\demo_lease.icl>>_package.lst
    if exist asl\demo_lease_table.icl echo asl\demo_lease_table.icl>>_package.lst
    if exist asl\demo_content_basic.icl echo asl\demo_content_basic.icl>>_package.lst
    if exist asl\demo_content_basic_list.icl echo asl\demo_content_basic_list.icl>>_package.lst
    if exist asl\demo_constants.icl echo asl\demo_constants.icl>>_package.lst
    if exist asl\demo_srv_resource.rc echo asl\demo_srv_resource.rc>>_package.lst
    if exist asl\demo_srv_base.cfg echo asl\demo_srv_base.cfg>>_package.lst
    if exist asl\icl_make_doc.ignore echo asl\icl_make_doc.ignore>>_package.lst
    if exist asl\prelude.pdl echo asl\prelude.pdl>>_package.lst
    if exist asl\license.gpl echo asl\license.gpl>>_package.lst
    if exist asl\project.pdl echo asl\project.pdl>>_package.lst
    if exist asl\readme.txt echo asl\readme.txt>>_package.lst
    if exist asl\asl_field_test.c echo asl\asl_field_test.c>>_package.lst
    if exist asl\asl_field.h echo asl\asl_field.h>>_package.lst
    if exist asl\asl_field.c echo asl\asl_field.c>>_package.lst
    if exist asl\asl_field_list_test.c echo asl\asl_field_list_test.c>>_package.lst
    if exist asl\asl_field_list.h echo asl\asl_field_list.h>>_package.lst
    if exist asl\asl_field_list.c echo asl\asl_field_list.c>>_package.lst
    if exist asl\demo_client_method_test.c echo asl\demo_client_method_test.c>>_package.lst
    if exist asl\demo_client_method.h echo asl\demo_client_method.h>>_package.lst
    if exist asl\demo_client_method.c echo asl\demo_client_method.c>>_package.lst
    if exist asl\demo_client_agent.h echo asl\demo_client_agent.h>>_package.lst
    if exist asl\demo_client_agent.c echo asl\demo_client_agent.c>>_package.lst
    if exist asl\demo_client_config.icl echo asl\demo_client_config.icl>>_package.lst
    if exist asl\demo_client_config_test.c echo asl\demo_client_config_test.c>>_package.lst
    if exist asl\demo_client_config.h echo asl\demo_client_config.h>>_package.lst
    if exist asl\demo_client_config.c echo asl\demo_client_config.c>>_package.lst
    if exist asl\demo_client_config.txt echo asl\demo_client_config.txt>>_package.lst
    if exist asl\demo_client_classes.h echo asl\demo_client_classes.h>>_package.lst
    if exist asl\demo_client_classes.c echo asl\demo_client_classes.c>>_package.lst
    if exist asl\demo_client_connection_test.c echo asl\demo_client_connection_test.c>>_package.lst
    if exist asl\demo_client_connection.h echo asl\demo_client_connection.h>>_package.lst
    if exist asl\demo_client_connection.c echo asl\demo_client_connection.c>>_package.lst
    if exist asl\demo_client_session_test.c echo asl\demo_client_session_test.c>>_package.lst
    if exist asl\demo_client_session.h echo asl\demo_client_session.h>>_package.lst
    if exist asl\demo_client_session.c echo asl\demo_client_session.c>>_package.lst
    if exist asl\demo_client_channel_test.c echo asl\demo_client_channel_test.c>>_package.lst
    if exist asl\demo_client_channel.h echo asl\demo_client_channel.h>>_package.lst
    if exist asl\demo_client_channel.c echo asl\demo_client_channel.c>>_package.lst
    if exist asl\demo_client_channel_table_test.c echo asl\demo_client_channel_table_test.c>>_package.lst
    if exist asl\demo_client_channel_table.h echo asl\demo_client_channel_table.h>>_package.lst
    if exist asl\demo_client_channel_table.c echo asl\demo_client_channel_table.c>>_package.lst
    if exist asl\demo_server_config.icl echo asl\demo_server_config.icl>>_package.lst
    if exist asl\demo_server_config_test.c echo asl\demo_server_config_test.c>>_package.lst
    if exist asl\demo_server_config.h echo asl\demo_server_config.h>>_package.lst
    if exist asl\demo_server_config.c echo asl\demo_server_config.c>>_package.lst
    if exist asl\demo_server_config.txt echo asl\demo_server_config.txt>>_package.lst
    if exist asl\demo_server_method_test.c echo asl\demo_server_method_test.c>>_package.lst
    if exist asl\demo_server_method.h echo asl\demo_server_method.h>>_package.lst
    if exist asl\demo_server_method.c echo asl\demo_server_method.c>>_package.lst
    if exist asl\demo_server_agent.h echo asl\demo_server_agent.h>>_package.lst
    if exist asl\demo_server_agent.c echo asl\demo_server_agent.c>>_package.lst
    if exist asl\demo_server_classes.h echo asl\demo_server_classes.h>>_package.lst
    if exist asl\demo_server_classes.c echo asl\demo_server_classes.c>>_package.lst
    if exist asl\demo_server_connection_test.c echo asl\demo_server_connection_test.c>>_package.lst
    if exist asl\demo_server_connection.h echo asl\demo_server_connection.h>>_package.lst
    if exist asl\demo_server_connection.c echo asl\demo_server_connection.c>>_package.lst
    if exist asl\demo_server_connection_table_test.c echo asl\demo_server_connection_table_test.c>>_package.lst
    if exist asl\demo_server_connection_table.h echo asl\demo_server_connection_table.h>>_package.lst
    if exist asl\demo_server_connection_table.c echo asl\demo_server_connection_table.c>>_package.lst
    if exist asl\demo_server_connection_list_test.c echo asl\demo_server_connection_list_test.c>>_package.lst
    if exist asl\demo_server_connection_list.h echo asl\demo_server_connection_list.h>>_package.lst
    if exist asl\demo_server_connection_list.c echo asl\demo_server_connection_list.c>>_package.lst
    if exist asl\demo_server_channel_test.c echo asl\demo_server_channel_test.c>>_package.lst
    if exist asl\demo_server_channel.h echo asl\demo_server_channel.h>>_package.lst
    if exist asl\demo_server_channel.c echo asl\demo_server_channel.c>>_package.lst
    if exist asl\demo_server_channel_agent.h echo asl\demo_server_channel_agent.h>>_package.lst
    if exist asl\demo_server_channel_agent.c echo asl\demo_server_channel_agent.c>>_package.lst
    if exist asl\demo_server_channel_table_test.c echo asl\demo_server_channel_table_test.c>>_package.lst
    if exist asl\demo_server_channel_table.h echo asl\demo_server_channel_table.h>>_package.lst
    if exist asl\demo_server_channel_table.c echo asl\demo_server_channel_table.c>>_package.lst
    if exist asl\demo_broker_test.c echo asl\demo_broker_test.c>>_package.lst
    if exist asl\demo_broker.h echo asl\demo_broker.h>>_package.lst
    if exist asl\demo_broker.c echo asl\demo_broker.c>>_package.lst
    if exist asl\demo_broker_agent.h echo asl\demo_broker_agent.h>>_package.lst
    if exist asl\demo_broker_agent.c echo asl\demo_broker_agent.c>>_package.lst
    if exist asl\demo_exchange_test.c echo asl\demo_exchange_test.c>>_package.lst
    if exist asl\demo_exchange.h echo asl\demo_exchange.h>>_package.lst
    if exist asl\demo_exchange.c echo asl\demo_exchange.c>>_package.lst
    if exist asl\demo_exchange_table_test.c echo asl\demo_exchange_table_test.c>>_package.lst
    if exist asl\demo_exchange_table.h echo asl\demo_exchange_table.h>>_package.lst
    if exist asl\demo_exchange_table.c echo asl\demo_exchange_table.c>>_package.lst
    if exist asl\demo_exchange_agent.h echo asl\demo_exchange_agent.h>>_package.lst
    if exist asl\demo_exchange_agent.c echo asl\demo_exchange_agent.c>>_package.lst
    if exist asl\demo_queue_test.c echo asl\demo_queue_test.c>>_package.lst
    if exist asl\demo_queue.h echo asl\demo_queue.h>>_package.lst
    if exist asl\demo_queue.c echo asl\demo_queue.c>>_package.lst
    if exist asl\demo_queue_table_test.c echo asl\demo_queue_table_test.c>>_package.lst
    if exist asl\demo_queue_table.h echo asl\demo_queue_table.h>>_package.lst
    if exist asl\demo_queue_table.c echo asl\demo_queue_table.c>>_package.lst
    if exist asl\demo_queue_list_test.c echo asl\demo_queue_list_test.c>>_package.lst
    if exist asl\demo_queue_list.h echo asl\demo_queue_list.h>>_package.lst
    if exist asl\demo_queue_list.c echo asl\demo_queue_list.c>>_package.lst
    if exist asl\demo_queue_agent.h echo asl\demo_queue_agent.h>>_package.lst
    if exist asl\demo_queue_agent.c echo asl\demo_queue_agent.c>>_package.lst
    if exist asl\demo_lease_test.c echo asl\demo_lease_test.c>>_package.lst
    if exist asl\demo_lease.h echo asl\demo_lease.h>>_package.lst
    if exist asl\demo_lease.c echo asl\demo_lease.c>>_package.lst
    if exist asl\demo_lease_table_test.c echo asl\demo_lease_table_test.c>>_package.lst
    if exist asl\demo_lease_table.h echo asl\demo_lease_table.h>>_package.lst
    if exist asl\demo_lease_table.c echo asl\demo_lease_table.c>>_package.lst
    if exist asl\demo_content_basic_test.c echo asl\demo_content_basic_test.c>>_package.lst
    if exist asl\demo_content_basic.h echo asl\demo_content_basic.h>>_package.lst
    if exist asl\demo_content_basic.c echo asl\demo_content_basic.c>>_package.lst
    if exist asl\demo_content_basic_list_test.c echo asl\demo_content_basic_list_test.c>>_package.lst
    if exist asl\demo_content_basic_list.h echo asl\demo_content_basic_list.h>>_package.lst
    if exist asl\demo_content_basic_list.c echo asl\demo_content_basic_list.c>>_package.lst
    if exist asl\demo_constants.h echo asl\demo_constants.h>>_package.lst
    if exist asl\demo_constants.c echo asl\demo_constants.c>>_package.lst
    if exist asl\demo_srv_resource.icl echo asl\demo_srv_resource.icl>>_package.lst
    if exist asl\demo_srv_resource_test.c echo asl\demo_srv_resource_test.c>>_package.lst
    if exist asl\demo_srv_resource.h echo asl\demo_srv_resource.h>>_package.lst
    if exist asl\demo_srv_resource.c echo asl\demo_srv_resource.c>>_package.lst
    if exist asl\stamp_generate echo asl\stamp_generate>>_package.lst
    if exist asl\configure echo asl\configure>>_package.lst
    if exist asl\Makefile.unix echo asl\Makefile.unix>>_package.lst
    if exist asl\boomake echo asl\boomake>>_package.lst
    if exist asl\configure.bat echo asl\configure.bat>>_package.lst
    if exist asl\Makefile.win32 echo asl\Makefile.win32>>_package.lst
    if exist asl\boomake.bat echo asl\boomake.bat>>_package.lst
    if exist asl\boomakew.bat echo asl\boomakew.bat>>_package.lst
    if exist asl\libasl.vcproj echo asl\libasl.vcproj>>_package.lst
    if exist asl\pal\asl_pal.gsl echo asl\pal\asl_pal.gsl>>_package.lst
    if exist asl\pal\asl_pal_stdc.gsl echo asl\pal\asl_pal_stdc.gsl>>_package.lst
    if exist asl\pal\asl_pal_xnf.gsl echo asl\pal\asl_pal_xnf.gsl>>_package.lst
    if exist asl\pal\asl_pal_txt.gsl echo asl\pal\asl_pal_txt.gsl>>_package.lst
    if exist asl\pal\palguide.txt echo asl\pal\palguide.txt>>_package.lst
    if exist asl\pal\pal echo asl\pal\pal>>_package.lst
    if exist asl\pal\pal.bat echo asl\pal\pal.bat>>_package.lst
    if exist asl\pal\demo_pal.xnf echo asl\pal\demo_pal.xnf>>_package.lst
    if exist asl\pal\demo_pal_stdc.gsl echo asl\pal\demo_pal_stdc.gsl>>_package.lst
    if exist asl\pal\demo_pal_codegen.gsl echo asl\pal\demo_pal_codegen.gsl>>_package.lst
    if exist asl\pal\demo_pal_gen.gsl echo asl\pal\demo_pal_gen.gsl>>_package.lst
    if exist asl\pal\demo_pal_inherit.gsl echo asl\pal\demo_pal_inherit.gsl>>_package.lst
    if exist asl\pal\demo_pal_parse.gsl echo asl\pal\demo_pal_parse.gsl>>_package.lst
    if exist asl\pal\demo_pal_preproc.gsl echo asl\pal\demo_pal_preproc.gsl>>_package.lst
    if exist asl\pal\hello.pal echo asl\pal\hello.pal>>_package.lst
    if exist asl\pal\loop1.pal echo asl\pal\loop1.pal>>_package.lst
    if exist asl\pal\loop2.pal echo asl\pal\loop2.pal>>_package.lst
    if exist asl\pal\content.pal echo asl\pal\content.pal>>_package.lst
    if exist asl\pal\macros.pal echo asl\pal\macros.pal>>_package.lst
    if exist asl\pal\session.pal echo asl\pal\session.pal>>_package.lst
    if exist asl\pal\single.pal echo asl\pal\single.pal>>_package.lst
    if exist asl\pal\single2.pal echo asl\pal\single2.pal>>_package.lst
    if exist asl\pal\symbols.pal echo asl\pal\symbols.pal>>_package.lst
    if exist asl\pal\waiting.pal echo asl\pal\waiting.pal>>_package.lst
    if exist asl\pal\content_file.pal echo asl\pal\content_file.pal>>_package.lst
    if exist asl\pal\content_exec.pal echo asl\pal\content_exec.pal>>_package.lst
    if exist asl\pal\content_body.pal echo asl\pal\content_body.pal>>_package.lst
    if exist asl\pal\cmdline.pal echo asl\pal\cmdline.pal>>_package.lst
    if exist asl\pal\webserver.pal echo asl\pal\webserver.pal>>_package.lst
    if exist asl\pal\stress.pal echo asl\pal\stress.pal>>_package.lst
    if exist asl\pal\im_read.pal echo asl\pal\im_read.pal>>_package.lst
    if exist asl\pal\im_send.pal echo asl\pal\im_send.pal>>_package.lst
    if exist asl\pal\palguide*.html echo asl\pal\palguide*.html>>_package.lst
    echo "Source package successfully generated">stamp_source
    echo "stamp_source">>_package.lst
    echo boom I: [ASL]: Building ASL-!MY_VERSION!-src.zip...
    zip  -rq _package -@<_package.lst
    unzip -q _package -d ASL-!MY_VERSION!
    if exist  ASL-!MY_VERSION!-src.zip del ASL-!MY_VERSION!-src.zip
    zip -rmq ASL-!MY_VERSION!-src.zip ASL-!MY_VERSION!
    del _package.zip
    del _package.lst
    del stamp_source
    goto :eof

:----------------------   CHECK ALL SOURCE FILES EXIST   ----------------------

:a_check_all_source_files_exist
    if not exist version.h (
        echo boom E: [ASL]: version.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl.h (
        echo boom E: [ASL]: asl.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl.xnf (
        echo boom E: [ASL]: asl.xnf is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_gen.gsl (
        echo boom E: [ASL]: asl_gen.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_preproc.gsl (
        echo boom E: [ASL]: asl_preproc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_inherit.gsl (
        echo boom E: [ASL]: asl_inherit.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_parse.gsl (
        echo boom E: [ASL]: asl_parse.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_doc.txt (
        echo boom E: [ASL]: asl_doc.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_stdc.gsl (
        echo boom E: [ASL]: asl_stdc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_java.gsl (
        echo boom E: [ASL]: asl_java.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_csharp.gsl (
        echo boom E: [ASL]: asl_csharp.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_doc.gsl (
        echo boom E: [ASL]: asl_doc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_constants.gsl (
        echo boom E: [ASL]: asl_constants.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_method_class.gsl (
        echo boom E: [ASL]: asl_method_class.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_content_class.gsl (
        echo boom E: [ASL]: asl_content_class.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_connection.gsl (
        echo boom E: [ASL]: asl_client_connection.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_session.gsl (
        echo boom E: [ASL]: asl_client_session.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_agent.gsl (
        echo boom E: [ASL]: asl_client_agent.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_agent.gsl (
        echo boom E: [ASL]: asl_server_agent.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_agent_common.gsl (
        echo boom E: [ASL]: asl_agent_common.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_channel.icl (
        echo boom E: [ASL]: asl_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_connection.icl (
        echo boom E: [ASL]: asl_server_connection.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_channel.icl (
        echo boom E: [ASL]: asl_server_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_channel.icl (
        echo boom E: [ASL]: asl_client_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_broker.icl (
        echo boom E: [ASL]: asl_broker.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field.icl (
        echo boom E: [ASL]: asl_field.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list.icl (
        echo boom E: [ASL]: asl_field_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_base.asl (
        echo boom E: [ASL]: asl_base.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_constants.asl (
        echo boom E: [ASL]: asl_constants.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_connection.asl (
        echo boom E: [ASL]: asl_connection.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_channel.asl (
        echo boom E: [ASL]: asl_channel.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client.asl (
        echo boom E: [ASL]: asl_client.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server.asl (
        echo boom E: [ASL]: asl_server.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_direct.asl (
        echo boom E: [ASL]: asl_direct.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo.asl (
        echo boom E: [ASL]: demo.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.asl (
        echo boom E: [ASL]: demo_exchange.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.asl (
        echo boom E: [ASL]: demo_queue.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_basic.asl (
        echo boom E: [ASL]: demo_basic.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_cli.c (
        echo boom E: [ASL]: demo_cli.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_proto.asl (
        echo boom E: [ASL]: demo_client_proto.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_method.icl (
        echo boom E: [ASL]: demo_client_method.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_agent.smt (
        echo boom E: [ASL]: demo_client_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.opf (
        echo boom E: [ASL]: demo_client_config.opf is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_classes.icl (
        echo boom E: [ASL]: demo_client_classes.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_connection.icl (
        echo boom E: [ASL]: demo_client_connection.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_session.icl (
        echo boom E: [ASL]: demo_client_session.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel.icl (
        echo boom E: [ASL]: demo_client_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_table.icl (
        echo boom E: [ASL]: demo_client_channel_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv.c (
        echo boom E: [ASL]: demo_srv.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_proto.asl (
        echo boom E: [ASL]: demo_server_proto.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_main.inc (
        echo boom E: [ASL]: demo_server_main.inc is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.opf (
        echo boom E: [ASL]: demo_server_config.opf is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_method.icl (
        echo boom E: [ASL]: demo_server_method.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_agent.smt (
        echo boom E: [ASL]: demo_server_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_classes.icl (
        echo boom E: [ASL]: demo_server_classes.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection.icl (
        echo boom E: [ASL]: demo_server_connection.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_table.icl (
        echo boom E: [ASL]: demo_server_connection_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_list.icl (
        echo boom E: [ASL]: demo_server_connection_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel.icl (
        echo boom E: [ASL]: demo_server_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_agent.smt (
        echo boom E: [ASL]: demo_server_channel_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_table.icl (
        echo boom E: [ASL]: demo_server_channel_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker.icl (
        echo boom E: [ASL]: demo_broker.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_agent.smt (
        echo boom E: [ASL]: demo_broker_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.icl (
        echo boom E: [ASL]: demo_exchange.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_table.icl (
        echo boom E: [ASL]: demo_exchange_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_agent.smt (
        echo boom E: [ASL]: demo_exchange_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.icl (
        echo boom E: [ASL]: demo_queue.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_table.icl (
        echo boom E: [ASL]: demo_queue_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list.icl (
        echo boom E: [ASL]: demo_queue_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_agent.smt (
        echo boom E: [ASL]: demo_queue_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease.icl (
        echo boom E: [ASL]: demo_lease.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_table.icl (
        echo boom E: [ASL]: demo_lease_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic.icl (
        echo boom E: [ASL]: demo_content_basic.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_list.icl (
        echo boom E: [ASL]: demo_content_basic_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_constants.icl (
        echo boom E: [ASL]: demo_constants.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.rc (
        echo boom E: [ASL]: demo_srv_resource.rc is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_base.cfg (
        echo boom E: [ASL]: demo_srv_base.cfg is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist icl_make_doc.ignore (
        echo boom E: [ASL]: icl_make_doc.ignore is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist project.pdl (
        echo boom E: [ASL]: project.pdl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist readme.txt (
        echo boom E: [ASL]: readme.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_test.c (
        echo boom E: [ASL]: asl_field_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field.h (
        echo boom E: [ASL]: asl_field.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field.c (
        echo boom E: [ASL]: asl_field.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list_test.c (
        echo boom E: [ASL]: asl_field_list_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list.h (
        echo boom E: [ASL]: asl_field_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list.c (
        echo boom E: [ASL]: asl_field_list.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_method_test.c (
        echo boom E: [ASL]: demo_client_method_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_method.h (
        echo boom E: [ASL]: demo_client_method.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_method.c (
        echo boom E: [ASL]: demo_client_method.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_agent.h (
        echo boom E: [ASL]: demo_client_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_agent.c (
        echo boom E: [ASL]: demo_client_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.icl (
        echo boom E: [ASL]: demo_client_config.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config_test.c (
        echo boom E: [ASL]: demo_client_config_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.h (
        echo boom E: [ASL]: demo_client_config.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.c (
        echo boom E: [ASL]: demo_client_config.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.txt (
        echo boom E: [ASL]: demo_client_config.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_classes.h (
        echo boom E: [ASL]: demo_client_classes.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_classes.c (
        echo boom E: [ASL]: demo_client_classes.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_connection_test.c (
        echo boom E: [ASL]: demo_client_connection_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_connection.h (
        echo boom E: [ASL]: demo_client_connection.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_connection.c (
        echo boom E: [ASL]: demo_client_connection.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_session_test.c (
        echo boom E: [ASL]: demo_client_session_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_session.h (
        echo boom E: [ASL]: demo_client_session.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_session.c (
        echo boom E: [ASL]: demo_client_session.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_test.c (
        echo boom E: [ASL]: demo_client_channel_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel.h (
        echo boom E: [ASL]: demo_client_channel.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel.c (
        echo boom E: [ASL]: demo_client_channel.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_table_test.c (
        echo boom E: [ASL]: demo_client_channel_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_table.h (
        echo boom E: [ASL]: demo_client_channel_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_table.c (
        echo boom E: [ASL]: demo_client_channel_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.icl (
        echo boom E: [ASL]: demo_server_config.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config_test.c (
        echo boom E: [ASL]: demo_server_config_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.h (
        echo boom E: [ASL]: demo_server_config.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.c (
        echo boom E: [ASL]: demo_server_config.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.txt (
        echo boom E: [ASL]: demo_server_config.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_method_test.c (
        echo boom E: [ASL]: demo_server_method_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_method.h (
        echo boom E: [ASL]: demo_server_method.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_method.c (
        echo boom E: [ASL]: demo_server_method.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_agent.h (
        echo boom E: [ASL]: demo_server_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_agent.c (
        echo boom E: [ASL]: demo_server_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_classes.h (
        echo boom E: [ASL]: demo_server_classes.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_classes.c (
        echo boom E: [ASL]: demo_server_classes.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_test.c (
        echo boom E: [ASL]: demo_server_connection_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection.h (
        echo boom E: [ASL]: demo_server_connection.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection.c (
        echo boom E: [ASL]: demo_server_connection.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_table_test.c (
        echo boom E: [ASL]: demo_server_connection_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_table.h (
        echo boom E: [ASL]: demo_server_connection_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_table.c (
        echo boom E: [ASL]: demo_server_connection_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_list_test.c (
        echo boom E: [ASL]: demo_server_connection_list_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_list.h (
        echo boom E: [ASL]: demo_server_connection_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_list.c (
        echo boom E: [ASL]: demo_server_connection_list.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_test.c (
        echo boom E: [ASL]: demo_server_channel_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel.h (
        echo boom E: [ASL]: demo_server_channel.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel.c (
        echo boom E: [ASL]: demo_server_channel.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_agent.h (
        echo boom E: [ASL]: demo_server_channel_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_agent.c (
        echo boom E: [ASL]: demo_server_channel_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_table_test.c (
        echo boom E: [ASL]: demo_server_channel_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_table.h (
        echo boom E: [ASL]: demo_server_channel_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_table.c (
        echo boom E: [ASL]: demo_server_channel_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_test.c (
        echo boom E: [ASL]: demo_broker_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker.h (
        echo boom E: [ASL]: demo_broker.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker.c (
        echo boom E: [ASL]: demo_broker.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_agent.h (
        echo boom E: [ASL]: demo_broker_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_agent.c (
        echo boom E: [ASL]: demo_broker_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_test.c (
        echo boom E: [ASL]: demo_exchange_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.h (
        echo boom E: [ASL]: demo_exchange.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.c (
        echo boom E: [ASL]: demo_exchange.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_table_test.c (
        echo boom E: [ASL]: demo_exchange_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_table.h (
        echo boom E: [ASL]: demo_exchange_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_table.c (
        echo boom E: [ASL]: demo_exchange_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_agent.h (
        echo boom E: [ASL]: demo_exchange_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_agent.c (
        echo boom E: [ASL]: demo_exchange_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_test.c (
        echo boom E: [ASL]: demo_queue_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.h (
        echo boom E: [ASL]: demo_queue.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.c (
        echo boom E: [ASL]: demo_queue.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_table_test.c (
        echo boom E: [ASL]: demo_queue_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_table.h (
        echo boom E: [ASL]: demo_queue_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_table.c (
        echo boom E: [ASL]: demo_queue_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list_test.c (
        echo boom E: [ASL]: demo_queue_list_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list.h (
        echo boom E: [ASL]: demo_queue_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list.c (
        echo boom E: [ASL]: demo_queue_list.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_agent.h (
        echo boom E: [ASL]: demo_queue_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_agent.c (
        echo boom E: [ASL]: demo_queue_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_test.c (
        echo boom E: [ASL]: demo_lease_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease.h (
        echo boom E: [ASL]: demo_lease.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease.c (
        echo boom E: [ASL]: demo_lease.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_table_test.c (
        echo boom E: [ASL]: demo_lease_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_table.h (
        echo boom E: [ASL]: demo_lease_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_table.c (
        echo boom E: [ASL]: demo_lease_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_test.c (
        echo boom E: [ASL]: demo_content_basic_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic.h (
        echo boom E: [ASL]: demo_content_basic.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic.c (
        echo boom E: [ASL]: demo_content_basic.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_list_test.c (
        echo boom E: [ASL]: demo_content_basic_list_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_list.h (
        echo boom E: [ASL]: demo_content_basic_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_list.c (
        echo boom E: [ASL]: demo_content_basic_list.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_constants.h (
        echo boom E: [ASL]: demo_constants.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_constants.c (
        echo boom E: [ASL]: demo_constants.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.icl (
        echo boom E: [ASL]: demo_srv_resource.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource_test.c (
        echo boom E: [ASL]: demo_srv_resource_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.h (
        echo boom E: [ASL]: demo_srv_resource.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.c (
        echo boom E: [ASL]: demo_srv_resource.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist stamp_generate (
        echo boom E: [ASL]: stamp_generate is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist configure (
        echo boom E: [ASL]: configure is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist Makefile.unix (
        echo boom E: [ASL]: Makefile.unix is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist boomake (
        echo boom E: [ASL]: boomake is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist configure.bat (
        echo boom E: [ASL]: configure.bat is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist Makefile.win32 (
        echo boom E: [ASL]: Makefile.win32 is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist boomake.bat (
        echo boom E: [ASL]: boomake.bat is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist boomakew.bat (
        echo boom E: [ASL]: boomakew.bat is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist libasl.vcproj (
        echo boom E: [ASL]: libasl.vcproj is missing, cannot continue
        set _exception=1
        goto :eof
    )
    pushd pal
    if not exist asl_pal.gsl (
        echo boom E: [ASL]: asl_pal.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_stdc.gsl (
        echo boom E: [ASL]: asl_pal_stdc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_xnf.gsl (
        echo boom E: [ASL]: asl_pal_xnf.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_txt.gsl (
        echo boom E: [ASL]: asl_pal_txt.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist palguide.txt (
        echo boom E: [ASL]: palguide.txt is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist pal.bat (
        echo boom E: [ASL]: pal.bat is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal.xnf (
        echo boom E: [ASL]: demo_pal.xnf is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_stdc.gsl (
        echo boom E: [ASL]: demo_pal_stdc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_codegen.gsl (
        echo boom E: [ASL]: demo_pal_codegen.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_gen.gsl (
        echo boom E: [ASL]: demo_pal_gen.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_inherit.gsl (
        echo boom E: [ASL]: demo_pal_inherit.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_parse.gsl (
        echo boom E: [ASL]: demo_pal_parse.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_preproc.gsl (
        echo boom E: [ASL]: demo_pal_preproc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist hello.pal (
        echo boom E: [ASL]: hello.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist loop1.pal (
        echo boom E: [ASL]: loop1.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist loop2.pal (
        echo boom E: [ASL]: loop2.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content.pal (
        echo boom E: [ASL]: content.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist macros.pal (
        echo boom E: [ASL]: macros.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist session.pal (
        echo boom E: [ASL]: session.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist single.pal (
        echo boom E: [ASL]: single.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist single2.pal (
        echo boom E: [ASL]: single2.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist symbols.pal (
        echo boom E: [ASL]: symbols.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist waiting.pal (
        echo boom E: [ASL]: waiting.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content_file.pal (
        echo boom E: [ASL]: content_file.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content_exec.pal (
        echo boom E: [ASL]: content_exec.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content_body.pal (
        echo boom E: [ASL]: content_body.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist cmdline.pal (
        echo boom E: [ASL]: cmdline.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist webserver.pal (
        echo boom E: [ASL]: webserver.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist stress.pal (
        echo boom E: [ASL]: stress.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist im_read.pal (
        echo boom E: [ASL]: im_read.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist im_send.pal (
        echo boom E: [ASL]: im_send.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist palguide*.html (
        echo boom E: [ASL]: palguide*.html is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    popd
    goto :eof

:------------------------   CHECK BINARY FILES EXIST   ------------------------

:a_check_binary_files_exist
    if not exist libasl.lib (
        echo boom E: [ASL]: libasl.lib is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl.h (
        echo boom E: [ASL]: asl.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_gen.gsl (
        echo boom E: [ASL]: asl_gen.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_preproc.gsl (
        echo boom E: [ASL]: asl_preproc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_inherit.gsl (
        echo boom E: [ASL]: asl_inherit.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_parse.gsl (
        echo boom E: [ASL]: asl_parse.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_stdc.gsl (
        echo boom E: [ASL]: asl_stdc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_java.gsl (
        echo boom E: [ASL]: asl_java.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_csharp.gsl (
        echo boom E: [ASL]: asl_csharp.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_doc.gsl (
        echo boom E: [ASL]: asl_doc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_constants.gsl (
        echo boom E: [ASL]: asl_constants.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_method_class.gsl (
        echo boom E: [ASL]: asl_method_class.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_content_class.gsl (
        echo boom E: [ASL]: asl_content_class.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_connection.gsl (
        echo boom E: [ASL]: asl_client_connection.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_session.gsl (
        echo boom E: [ASL]: asl_client_session.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_agent.gsl (
        echo boom E: [ASL]: asl_client_agent.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_agent.gsl (
        echo boom E: [ASL]: asl_server_agent.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_agent_common.gsl (
        echo boom E: [ASL]: asl_agent_common.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_channel.icl (
        echo boom E: [ASL]: asl_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_connection.icl (
        echo boom E: [ASL]: asl_server_connection.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_channel.icl (
        echo boom E: [ASL]: asl_server_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_channel.icl (
        echo boom E: [ASL]: asl_client_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_broker.icl (
        echo boom E: [ASL]: asl_broker.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_base.asl (
        echo boom E: [ASL]: asl_base.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_constants.asl (
        echo boom E: [ASL]: asl_constants.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_connection.asl (
        echo boom E: [ASL]: asl_connection.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_channel.asl (
        echo boom E: [ASL]: asl_channel.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client.asl (
        echo boom E: [ASL]: asl_client.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server.asl (
        echo boom E: [ASL]: asl_server.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_direct.asl (
        echo boom E: [ASL]: asl_direct.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo.asl (
        echo boom E: [ASL]: demo.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.asl (
        echo boom E: [ASL]: demo_exchange.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.asl (
        echo boom E: [ASL]: demo_queue.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_basic.asl (
        echo boom E: [ASL]: demo_basic.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_agent.smt (
        echo boom E: [ASL]: demo_client_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_agent.smt (
        echo boom E: [ASL]: demo_server_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_agent.smt (
        echo boom E: [ASL]: demo_server_channel_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_agent.smt (
        echo boom E: [ASL]: demo_broker_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_agent.smt (
        echo boom E: [ASL]: demo_exchange_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_agent.smt (
        echo boom E: [ASL]: demo_queue_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist readme.txt (
        echo boom E: [ASL]: readme.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field.h (
        echo boom E: [ASL]: asl_field.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list.h (
        echo boom E: [ASL]: asl_field_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_method.h (
        echo boom E: [ASL]: demo_client_method.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_agent.h (
        echo boom E: [ASL]: demo_client_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.h (
        echo boom E: [ASL]: demo_client_config.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.txt (
        echo boom E: [ASL]: demo_client_config.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_classes.h (
        echo boom E: [ASL]: demo_client_classes.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_connection.h (
        echo boom E: [ASL]: demo_client_connection.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_session.h (
        echo boom E: [ASL]: demo_client_session.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel.h (
        echo boom E: [ASL]: demo_client_channel.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_table.h (
        echo boom E: [ASL]: demo_client_channel_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.h (
        echo boom E: [ASL]: demo_server_config.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.txt (
        echo boom E: [ASL]: demo_server_config.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_method.h (
        echo boom E: [ASL]: demo_server_method.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_agent.h (
        echo boom E: [ASL]: demo_server_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_classes.h (
        echo boom E: [ASL]: demo_server_classes.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection.h (
        echo boom E: [ASL]: demo_server_connection.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_table.h (
        echo boom E: [ASL]: demo_server_connection_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_list.h (
        echo boom E: [ASL]: demo_server_connection_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel.h (
        echo boom E: [ASL]: demo_server_channel.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_agent.h (
        echo boom E: [ASL]: demo_server_channel_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_table.h (
        echo boom E: [ASL]: demo_server_channel_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker.h (
        echo boom E: [ASL]: demo_broker.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_agent.h (
        echo boom E: [ASL]: demo_broker_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.h (
        echo boom E: [ASL]: demo_exchange.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_table.h (
        echo boom E: [ASL]: demo_exchange_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_agent.h (
        echo boom E: [ASL]: demo_exchange_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.h (
        echo boom E: [ASL]: demo_queue.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_table.h (
        echo boom E: [ASL]: demo_queue_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list.h (
        echo boom E: [ASL]: demo_queue_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_agent.h (
        echo boom E: [ASL]: demo_queue_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease.h (
        echo boom E: [ASL]: demo_lease.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_table.h (
        echo boom E: [ASL]: demo_lease_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic.h (
        echo boom E: [ASL]: demo_content_basic.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_list.h (
        echo boom E: [ASL]: demo_content_basic_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_constants.h (
        echo boom E: [ASL]: demo_constants.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.h (
        echo boom E: [ASL]: demo_srv_resource.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    pushd pal
    if not exist asl_pal.gsl (
        echo boom E: [ASL]: asl_pal.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_stdc.gsl (
        echo boom E: [ASL]: asl_pal_stdc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_xnf.gsl (
        echo boom E: [ASL]: asl_pal_xnf.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_txt.gsl (
        echo boom E: [ASL]: asl_pal_txt.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist palguide.txt (
        echo boom E: [ASL]: palguide.txt is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist pal.bat (
        echo boom E: [ASL]: pal.bat is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_stdc.gsl (
        echo boom E: [ASL]: demo_pal_stdc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_codegen.gsl (
        echo boom E: [ASL]: demo_pal_codegen.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_gen.gsl (
        echo boom E: [ASL]: demo_pal_gen.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_inherit.gsl (
        echo boom E: [ASL]: demo_pal_inherit.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_parse.gsl (
        echo boom E: [ASL]: demo_pal_parse.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_preproc.gsl (
        echo boom E: [ASL]: demo_pal_preproc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist palguide*.html (
        echo boom E: [ASL]: palguide*.html is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    popd
    goto :eof

:-------------------------   CHECK OPERATING CONTEXT   ------------------------

:a_check_operating_context
    set event=repository
    if exist stamp_source   set event=source
    if exist stamp_stripped set event=stripped
    goto :eof

:------------------------   CHECK PROJECT FILES EXIST   -----------------------

:a_check_project_files_exist
    if not exist version.h (
        echo boom E: [ASL]: version.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl.h (
        echo boom E: [ASL]: asl.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl.xnf (
        echo boom E: [ASL]: asl.xnf is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_stdc.gsl (
        echo boom E: [ASL]: asl_stdc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_java.gsl (
        echo boom E: [ASL]: asl_java.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_csharp.gsl (
        echo boom E: [ASL]: asl_csharp.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_doc.gsl (
        echo boom E: [ASL]: asl_doc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_constants.gsl (
        echo boom E: [ASL]: asl_constants.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_method_class.gsl (
        echo boom E: [ASL]: asl_method_class.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_content_class.gsl (
        echo boom E: [ASL]: asl_content_class.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_connection.gsl (
        echo boom E: [ASL]: asl_client_connection.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_session.gsl (
        echo boom E: [ASL]: asl_client_session.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_agent.gsl (
        echo boom E: [ASL]: asl_client_agent.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_agent.gsl (
        echo boom E: [ASL]: asl_server_agent.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_agent_common.gsl (
        echo boom E: [ASL]: asl_agent_common.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_channel.icl (
        echo boom E: [ASL]: asl_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_connection.icl (
        echo boom E: [ASL]: asl_server_connection.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_channel.icl (
        echo boom E: [ASL]: asl_server_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_channel.icl (
        echo boom E: [ASL]: asl_client_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_broker.icl (
        echo boom E: [ASL]: asl_broker.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field.icl (
        echo boom E: [ASL]: asl_field.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list.icl (
        echo boom E: [ASL]: asl_field_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_base.asl (
        echo boom E: [ASL]: asl_base.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_constants.asl (
        echo boom E: [ASL]: asl_constants.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_connection.asl (
        echo boom E: [ASL]: asl_connection.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_channel.asl (
        echo boom E: [ASL]: asl_channel.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client.asl (
        echo boom E: [ASL]: asl_client.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server.asl (
        echo boom E: [ASL]: asl_server.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_direct.asl (
        echo boom E: [ASL]: asl_direct.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo.asl (
        echo boom E: [ASL]: demo.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.asl (
        echo boom E: [ASL]: demo_exchange.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.asl (
        echo boom E: [ASL]: demo_queue.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_basic.asl (
        echo boom E: [ASL]: demo_basic.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_cli.c (
        echo boom E: [ASL]: demo_cli.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_proto.asl (
        echo boom E: [ASL]: demo_client_proto.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.opf (
        echo boom E: [ASL]: demo_client_config.opf is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_classes.icl (
        echo boom E: [ASL]: demo_client_classes.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel.icl (
        echo boom E: [ASL]: demo_client_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv.c (
        echo boom E: [ASL]: demo_srv.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_proto.asl (
        echo boom E: [ASL]: demo_server_proto.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_main.inc (
        echo boom E: [ASL]: demo_server_main.inc is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.opf (
        echo boom E: [ASL]: demo_server_config.opf is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_classes.icl (
        echo boom E: [ASL]: demo_server_classes.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection.icl (
        echo boom E: [ASL]: demo_server_connection.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel.icl (
        echo boom E: [ASL]: demo_server_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker.icl (
        echo boom E: [ASL]: demo_broker.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.icl (
        echo boom E: [ASL]: demo_exchange.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.icl (
        echo boom E: [ASL]: demo_queue.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list.icl (
        echo boom E: [ASL]: demo_queue_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease.icl (
        echo boom E: [ASL]: demo_lease.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.rc (
        echo boom E: [ASL]: demo_srv_resource.rc is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_base.cfg (
        echo boom E: [ASL]: demo_srv_base.cfg is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist icl_make_doc.ignore (
        echo boom E: [ASL]: icl_make_doc.ignore is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist project.pdl (
        echo boom E: [ASL]: project.pdl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist readme.txt (
        echo boom E: [ASL]: readme.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist boomake (
        echo boom E: [ASL]: boomake is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist boomake.bat (
        echo boom E: [ASL]: boomake.bat is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist boomakew.bat (
        echo boom E: [ASL]: boomakew.bat is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist pal\nul (
        echo boom E: [ASL]: directory pal is missing, cannot continue
        set _exception=1
        goto :eof
    )
    pushd pal
    if not exist asl_pal.gsl (
        echo boom E: [ASL]: asl_pal.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_stdc.gsl (
        echo boom E: [ASL]: asl_pal_stdc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_xnf.gsl (
        echo boom E: [ASL]: asl_pal_xnf.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_txt.gsl (
        echo boom E: [ASL]: asl_pal_txt.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist palguide.txt (
        echo boom E: [ASL]: palguide.txt is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist pal.bat (
        echo boom E: [ASL]: pal.bat is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist hello.pal (
        echo boom E: [ASL]: hello.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist loop1.pal (
        echo boom E: [ASL]: loop1.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist loop2.pal (
        echo boom E: [ASL]: loop2.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content.pal (
        echo boom E: [ASL]: content.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist macros.pal (
        echo boom E: [ASL]: macros.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist session.pal (
        echo boom E: [ASL]: session.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist single.pal (
        echo boom E: [ASL]: single.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist single2.pal (
        echo boom E: [ASL]: single2.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist symbols.pal (
        echo boom E: [ASL]: symbols.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist waiting.pal (
        echo boom E: [ASL]: waiting.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content_file.pal (
        echo boom E: [ASL]: content_file.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content_exec.pal (
        echo boom E: [ASL]: content_exec.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content_body.pal (
        echo boom E: [ASL]: content_body.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist cmdline.pal (
        echo boom E: [ASL]: cmdline.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist webserver.pal (
        echo boom E: [ASL]: webserver.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist stress.pal (
        echo boom E: [ASL]: stress.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist im_read.pal (
        echo boom E: [ASL]: im_read.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist im_send.pal (
        echo boom E: [ASL]: im_send.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    popd
    goto :eof

:------------------------   CHECK SOURCE FILES EXIST   ------------------------

:a_check_source_files_exist
    if not exist version.h (
        echo boom E: [ASL]: version.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl.h (
        echo boom E: [ASL]: asl.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl.xnf (
        echo boom E: [ASL]: asl.xnf is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_gen.gsl (
        echo boom E: [ASL]: asl_gen.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_preproc.gsl (
        echo boom E: [ASL]: asl_preproc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_inherit.gsl (
        echo boom E: [ASL]: asl_inherit.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_parse.gsl (
        echo boom E: [ASL]: asl_parse.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_doc.txt (
        echo boom E: [ASL]: asl_doc.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_stdc.gsl (
        echo boom E: [ASL]: asl_stdc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_java.gsl (
        echo boom E: [ASL]: asl_java.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_csharp.gsl (
        echo boom E: [ASL]: asl_csharp.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_doc.gsl (
        echo boom E: [ASL]: asl_doc.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_constants.gsl (
        echo boom E: [ASL]: asl_constants.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_method_class.gsl (
        echo boom E: [ASL]: asl_method_class.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_content_class.gsl (
        echo boom E: [ASL]: asl_content_class.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_connection.gsl (
        echo boom E: [ASL]: asl_client_connection.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_session.gsl (
        echo boom E: [ASL]: asl_client_session.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_agent.gsl (
        echo boom E: [ASL]: asl_client_agent.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_agent.gsl (
        echo boom E: [ASL]: asl_server_agent.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_agent_common.gsl (
        echo boom E: [ASL]: asl_agent_common.gsl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_channel.icl (
        echo boom E: [ASL]: asl_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_connection.icl (
        echo boom E: [ASL]: asl_server_connection.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server_channel.icl (
        echo boom E: [ASL]: asl_server_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client_channel.icl (
        echo boom E: [ASL]: asl_client_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_broker.icl (
        echo boom E: [ASL]: asl_broker.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field.icl (
        echo boom E: [ASL]: asl_field.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list.icl (
        echo boom E: [ASL]: asl_field_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_base.asl (
        echo boom E: [ASL]: asl_base.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_constants.asl (
        echo boom E: [ASL]: asl_constants.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_connection.asl (
        echo boom E: [ASL]: asl_connection.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_channel.asl (
        echo boom E: [ASL]: asl_channel.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_client.asl (
        echo boom E: [ASL]: asl_client.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_server.asl (
        echo boom E: [ASL]: asl_server.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_direct.asl (
        echo boom E: [ASL]: asl_direct.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo.asl (
        echo boom E: [ASL]: demo.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.asl (
        echo boom E: [ASL]: demo_exchange.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.asl (
        echo boom E: [ASL]: demo_queue.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_basic.asl (
        echo boom E: [ASL]: demo_basic.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_cli.c (
        echo boom E: [ASL]: demo_cli.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_proto.asl (
        echo boom E: [ASL]: demo_client_proto.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_method.icl (
        echo boom E: [ASL]: demo_client_method.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_agent.smt (
        echo boom E: [ASL]: demo_client_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.opf (
        echo boom E: [ASL]: demo_client_config.opf is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_classes.icl (
        echo boom E: [ASL]: demo_client_classes.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_connection.icl (
        echo boom E: [ASL]: demo_client_connection.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_session.icl (
        echo boom E: [ASL]: demo_client_session.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel.icl (
        echo boom E: [ASL]: demo_client_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_table.icl (
        echo boom E: [ASL]: demo_client_channel_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv.c (
        echo boom E: [ASL]: demo_srv.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_proto.asl (
        echo boom E: [ASL]: demo_server_proto.asl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_main.inc (
        echo boom E: [ASL]: demo_server_main.inc is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.opf (
        echo boom E: [ASL]: demo_server_config.opf is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_method.icl (
        echo boom E: [ASL]: demo_server_method.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_agent.smt (
        echo boom E: [ASL]: demo_server_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_classes.icl (
        echo boom E: [ASL]: demo_server_classes.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection.icl (
        echo boom E: [ASL]: demo_server_connection.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_table.icl (
        echo boom E: [ASL]: demo_server_connection_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_list.icl (
        echo boom E: [ASL]: demo_server_connection_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel.icl (
        echo boom E: [ASL]: demo_server_channel.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_agent.smt (
        echo boom E: [ASL]: demo_server_channel_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_table.icl (
        echo boom E: [ASL]: demo_server_channel_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker.icl (
        echo boom E: [ASL]: demo_broker.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_agent.smt (
        echo boom E: [ASL]: demo_broker_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.icl (
        echo boom E: [ASL]: demo_exchange.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_table.icl (
        echo boom E: [ASL]: demo_exchange_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_agent.smt (
        echo boom E: [ASL]: demo_exchange_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.icl (
        echo boom E: [ASL]: demo_queue.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_table.icl (
        echo boom E: [ASL]: demo_queue_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list.icl (
        echo boom E: [ASL]: demo_queue_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_agent.smt (
        echo boom E: [ASL]: demo_queue_agent.smt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease.icl (
        echo boom E: [ASL]: demo_lease.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_table.icl (
        echo boom E: [ASL]: demo_lease_table.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic.icl (
        echo boom E: [ASL]: demo_content_basic.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_list.icl (
        echo boom E: [ASL]: demo_content_basic_list.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_constants.icl (
        echo boom E: [ASL]: demo_constants.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.rc (
        echo boom E: [ASL]: demo_srv_resource.rc is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_base.cfg (
        echo boom E: [ASL]: demo_srv_base.cfg is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist icl_make_doc.ignore (
        echo boom E: [ASL]: icl_make_doc.ignore is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist project.pdl (
        echo boom E: [ASL]: project.pdl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist readme.txt (
        echo boom E: [ASL]: readme.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_test.c (
        echo boom E: [ASL]: asl_field_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field.h (
        echo boom E: [ASL]: asl_field.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field.c (
        echo boom E: [ASL]: asl_field.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list_test.c (
        echo boom E: [ASL]: asl_field_list_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list.h (
        echo boom E: [ASL]: asl_field_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist asl_field_list.c (
        echo boom E: [ASL]: asl_field_list.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_method_test.c (
        echo boom E: [ASL]: demo_client_method_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_method.h (
        echo boom E: [ASL]: demo_client_method.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_method.c (
        echo boom E: [ASL]: demo_client_method.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_agent.h (
        echo boom E: [ASL]: demo_client_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_agent.c (
        echo boom E: [ASL]: demo_client_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.icl (
        echo boom E: [ASL]: demo_client_config.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config_test.c (
        echo boom E: [ASL]: demo_client_config_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.h (
        echo boom E: [ASL]: demo_client_config.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.c (
        echo boom E: [ASL]: demo_client_config.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_config.txt (
        echo boom E: [ASL]: demo_client_config.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_classes.h (
        echo boom E: [ASL]: demo_client_classes.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_classes.c (
        echo boom E: [ASL]: demo_client_classes.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_connection_test.c (
        echo boom E: [ASL]: demo_client_connection_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_connection.h (
        echo boom E: [ASL]: demo_client_connection.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_connection.c (
        echo boom E: [ASL]: demo_client_connection.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_session_test.c (
        echo boom E: [ASL]: demo_client_session_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_session.h (
        echo boom E: [ASL]: demo_client_session.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_session.c (
        echo boom E: [ASL]: demo_client_session.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_test.c (
        echo boom E: [ASL]: demo_client_channel_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel.h (
        echo boom E: [ASL]: demo_client_channel.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel.c (
        echo boom E: [ASL]: demo_client_channel.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_table_test.c (
        echo boom E: [ASL]: demo_client_channel_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_table.h (
        echo boom E: [ASL]: demo_client_channel_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_client_channel_table.c (
        echo boom E: [ASL]: demo_client_channel_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.icl (
        echo boom E: [ASL]: demo_server_config.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config_test.c (
        echo boom E: [ASL]: demo_server_config_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.h (
        echo boom E: [ASL]: demo_server_config.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.c (
        echo boom E: [ASL]: demo_server_config.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_config.txt (
        echo boom E: [ASL]: demo_server_config.txt is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_method_test.c (
        echo boom E: [ASL]: demo_server_method_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_method.h (
        echo boom E: [ASL]: demo_server_method.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_method.c (
        echo boom E: [ASL]: demo_server_method.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_agent.h (
        echo boom E: [ASL]: demo_server_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_agent.c (
        echo boom E: [ASL]: demo_server_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_classes.h (
        echo boom E: [ASL]: demo_server_classes.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_classes.c (
        echo boom E: [ASL]: demo_server_classes.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_test.c (
        echo boom E: [ASL]: demo_server_connection_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection.h (
        echo boom E: [ASL]: demo_server_connection.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection.c (
        echo boom E: [ASL]: demo_server_connection.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_table_test.c (
        echo boom E: [ASL]: demo_server_connection_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_table.h (
        echo boom E: [ASL]: demo_server_connection_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_table.c (
        echo boom E: [ASL]: demo_server_connection_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_list_test.c (
        echo boom E: [ASL]: demo_server_connection_list_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_list.h (
        echo boom E: [ASL]: demo_server_connection_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_connection_list.c (
        echo boom E: [ASL]: demo_server_connection_list.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_test.c (
        echo boom E: [ASL]: demo_server_channel_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel.h (
        echo boom E: [ASL]: demo_server_channel.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel.c (
        echo boom E: [ASL]: demo_server_channel.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_agent.h (
        echo boom E: [ASL]: demo_server_channel_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_agent.c (
        echo boom E: [ASL]: demo_server_channel_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_table_test.c (
        echo boom E: [ASL]: demo_server_channel_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_table.h (
        echo boom E: [ASL]: demo_server_channel_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_server_channel_table.c (
        echo boom E: [ASL]: demo_server_channel_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_test.c (
        echo boom E: [ASL]: demo_broker_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker.h (
        echo boom E: [ASL]: demo_broker.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker.c (
        echo boom E: [ASL]: demo_broker.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_agent.h (
        echo boom E: [ASL]: demo_broker_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_broker_agent.c (
        echo boom E: [ASL]: demo_broker_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_test.c (
        echo boom E: [ASL]: demo_exchange_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.h (
        echo boom E: [ASL]: demo_exchange.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange.c (
        echo boom E: [ASL]: demo_exchange.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_table_test.c (
        echo boom E: [ASL]: demo_exchange_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_table.h (
        echo boom E: [ASL]: demo_exchange_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_table.c (
        echo boom E: [ASL]: demo_exchange_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_agent.h (
        echo boom E: [ASL]: demo_exchange_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_exchange_agent.c (
        echo boom E: [ASL]: demo_exchange_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_test.c (
        echo boom E: [ASL]: demo_queue_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.h (
        echo boom E: [ASL]: demo_queue.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue.c (
        echo boom E: [ASL]: demo_queue.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_table_test.c (
        echo boom E: [ASL]: demo_queue_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_table.h (
        echo boom E: [ASL]: demo_queue_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_table.c (
        echo boom E: [ASL]: demo_queue_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list_test.c (
        echo boom E: [ASL]: demo_queue_list_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list.h (
        echo boom E: [ASL]: demo_queue_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_list.c (
        echo boom E: [ASL]: demo_queue_list.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_agent.h (
        echo boom E: [ASL]: demo_queue_agent.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_queue_agent.c (
        echo boom E: [ASL]: demo_queue_agent.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_test.c (
        echo boom E: [ASL]: demo_lease_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease.h (
        echo boom E: [ASL]: demo_lease.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease.c (
        echo boom E: [ASL]: demo_lease.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_table_test.c (
        echo boom E: [ASL]: demo_lease_table_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_table.h (
        echo boom E: [ASL]: demo_lease_table.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_lease_table.c (
        echo boom E: [ASL]: demo_lease_table.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_test.c (
        echo boom E: [ASL]: demo_content_basic_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic.h (
        echo boom E: [ASL]: demo_content_basic.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic.c (
        echo boom E: [ASL]: demo_content_basic.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_list_test.c (
        echo boom E: [ASL]: demo_content_basic_list_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_list.h (
        echo boom E: [ASL]: demo_content_basic_list.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_content_basic_list.c (
        echo boom E: [ASL]: demo_content_basic_list.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_constants.h (
        echo boom E: [ASL]: demo_constants.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_constants.c (
        echo boom E: [ASL]: demo_constants.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.icl (
        echo boom E: [ASL]: demo_srv_resource.icl is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource_test.c (
        echo boom E: [ASL]: demo_srv_resource_test.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.h (
        echo boom E: [ASL]: demo_srv_resource.h is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist demo_srv_resource.c (
        echo boom E: [ASL]: demo_srv_resource.c is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist stamp_generate (
        echo boom E: [ASL]: stamp_generate is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist configure (
        echo boom E: [ASL]: configure is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist Makefile.unix (
        echo boom E: [ASL]: Makefile.unix is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist boomake (
        echo boom E: [ASL]: boomake is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist configure.bat (
        echo boom E: [ASL]: configure.bat is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist Makefile.win32 (
        echo boom E: [ASL]: Makefile.win32 is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist boomake.bat (
        echo boom E: [ASL]: boomake.bat is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist boomakew.bat (
        echo boom E: [ASL]: boomakew.bat is missing, cannot continue
        set _exception=1
        goto :eof
    )
    if not exist libasl.vcproj (
        echo boom E: [ASL]: libasl.vcproj is missing, cannot continue
        set _exception=1
        goto :eof
    )
    pushd pal
    if not exist asl_pal.gsl (
        echo boom E: [ASL]: asl_pal.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_stdc.gsl (
        echo boom E: [ASL]: asl_pal_stdc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_xnf.gsl (
        echo boom E: [ASL]: asl_pal_xnf.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist asl_pal_txt.gsl (
        echo boom E: [ASL]: asl_pal_txt.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist palguide.txt (
        echo boom E: [ASL]: palguide.txt is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist pal.bat (
        echo boom E: [ASL]: pal.bat is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal.xnf (
        echo boom E: [ASL]: demo_pal.xnf is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_stdc.gsl (
        echo boom E: [ASL]: demo_pal_stdc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_codegen.gsl (
        echo boom E: [ASL]: demo_pal_codegen.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_gen.gsl (
        echo boom E: [ASL]: demo_pal_gen.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_inherit.gsl (
        echo boom E: [ASL]: demo_pal_inherit.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_parse.gsl (
        echo boom E: [ASL]: demo_pal_parse.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist demo_pal_preproc.gsl (
        echo boom E: [ASL]: demo_pal_preproc.gsl is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist hello.pal (
        echo boom E: [ASL]: hello.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist loop1.pal (
        echo boom E: [ASL]: loop1.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist loop2.pal (
        echo boom E: [ASL]: loop2.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content.pal (
        echo boom E: [ASL]: content.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist macros.pal (
        echo boom E: [ASL]: macros.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist session.pal (
        echo boom E: [ASL]: session.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist single.pal (
        echo boom E: [ASL]: single.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist single2.pal (
        echo boom E: [ASL]: single2.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist symbols.pal (
        echo boom E: [ASL]: symbols.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist waiting.pal (
        echo boom E: [ASL]: waiting.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content_file.pal (
        echo boom E: [ASL]: content_file.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content_exec.pal (
        echo boom E: [ASL]: content_exec.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist content_body.pal (
        echo boom E: [ASL]: content_body.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist cmdline.pal (
        echo boom E: [ASL]: cmdline.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist webserver.pal (
        echo boom E: [ASL]: webserver.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist stress.pal (
        echo boom E: [ASL]: stress.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist im_read.pal (
        echo boom E: [ASL]: im_read.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist im_send.pal (
        echo boom E: [ASL]: im_send.pal is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    if not exist palguide*.html (
        echo boom E: [ASL]: palguide*.html is missing, cannot continue
    popd
        set _exception=1
        goto :eof
    )
    popd
    goto :eof

:--------------------------   INSTALL DELIVERABLES   --------------------------

:a_install_deliverables
    echo boom I: [ASL]: installing ASL into !_INSTALL_ROOT!...
    if not exist !_INSTALL_ROOT! mkdir !_INSTALL_ROOT!
    if not exist !_INSTALL_ROOT!\lib\nul mkdir !_INSTALL_ROOT!\lib\
    if "!BOOM_TRACE!"=="1" echo copy/y libasl.lib !_INSTALL_ROOT!\lib\>nul
    verify>nul
    call copy/y libasl.lib !_INSTALL_ROOT!\lib\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y libasl.lib !_INSTALL_ROOT!\lib\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\include\nul mkdir !_INSTALL_ROOT!\include\
    if "!BOOM_TRACE!"=="1" echo copy/y asl.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y asl.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\bin\nul mkdir !_INSTALL_ROOT!\bin\
    if "!BOOM_TRACE!"=="1" echo copy/y asl_gen.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_gen.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_gen.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_preproc.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_preproc.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_preproc.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_inherit.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_inherit.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_inherit.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_parse.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_parse.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_parse.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_stdc.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_stdc.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_stdc.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_java.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_java.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_java.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_csharp.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_csharp.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_csharp.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_doc.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_doc.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_doc.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_constants.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_constants.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_constants.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_method_class.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_method_class.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_method_class.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_content_class.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_content_class.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_content_class.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_client_connection.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_client_connection.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_client_connection.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_client_session.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_client_session.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_client_session.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_client_agent.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_client_agent.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_client_agent.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_server_agent.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_server_agent.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_server_agent.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_agent_common.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_agent_common.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_agent_common.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_channel.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_channel.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_channel.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_server_connection.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_server_connection.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_server_connection.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_server_channel.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_server_channel.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_server_channel.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_client_channel.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_client_channel.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_client_channel.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_broker.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_broker.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_broker.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_field.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_field.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_field.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_field_list.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_field_list.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_field_list.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_base.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_base.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_base.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_constants.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_constants.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_constants.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_connection.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_connection.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_connection.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_channel.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_channel.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_channel.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_client.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_client.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_client.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_server.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_server.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_server.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_direct.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y asl_direct.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_direct.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_exchange.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_exchange.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_exchange.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_queue.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_queue.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_queue.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_basic.asl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_basic.asl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_basic.asl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_method.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_client_method.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_method.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_agent.smt !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_client_agent.smt !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_agent.smt !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_config.opf !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_client_config.opf !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_config.opf !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_classes.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_client_classes.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_classes.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_connection.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_client_connection.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_connection.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_session.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_client_session.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_session.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_config.opf !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_server_config.opf !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_config.opf !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_agent.smt !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_server_agent.smt !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_agent.smt !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_channel_agent.smt !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_server_channel_agent.smt !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_channel_agent.smt !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_broker_agent.smt !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_broker_agent.smt !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_broker_agent.smt !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_exchange_agent.smt !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_exchange_agent.smt !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_exchange_agent.smt !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_queue_agent.smt !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_queue_agent.smt !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_queue_agent.smt !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_content_basic.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_content_basic.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_content_basic.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_content_basic_list.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_content_basic_list.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_content_basic_list.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_constants.icl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_constants.icl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_constants.icl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\doc\ASL\nul mkdir !_INSTALL_ROOT!\doc\ASL\
    if "!BOOM_TRACE!"=="1" echo copy/y readme.txt !_INSTALL_ROOT!\doc\ASL\>nul
    verify>nul
    call copy/y readme.txt !_INSTALL_ROOT!\doc\ASL\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y readme.txt !_INSTALL_ROOT!\doc\ASL\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\include\nul mkdir !_INSTALL_ROOT!\include\
    if "!BOOM_TRACE!"=="1" echo copy/y asl_field.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y asl_field.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_field.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y asl_field_list.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y asl_field_list.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y asl_field_list.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_method.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_client_method.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_method.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_agent.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_client_agent.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_agent.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_config.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_client_config.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_config.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\bin\nul mkdir !_INSTALL_ROOT!\bin\
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_config.txt !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_client_config.txt !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_config.txt !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\include\nul mkdir !_INSTALL_ROOT!\include\
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_classes.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_client_classes.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_classes.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_connection.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_client_connection.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_connection.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_session.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_client_session.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_session.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_channel.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_client_channel.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_channel.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_client_channel_table.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_client_channel_table.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_client_channel_table.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_config.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_config.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_config.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\bin\nul mkdir !_INSTALL_ROOT!\bin\
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_config.txt !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y demo_server_config.txt !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_config.txt !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\include\nul mkdir !_INSTALL_ROOT!\include\
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_method.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_method.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_method.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_agent.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_agent.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_agent.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_classes.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_classes.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_classes.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_connection.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_connection.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_connection.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_connection_table.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_connection_table.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_connection_table.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_connection_list.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_connection_list.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_connection_list.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_channel.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_channel.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_channel.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_channel_agent.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_channel_agent.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_channel_agent.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_server_channel_table.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_server_channel_table.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_server_channel_table.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_broker.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_broker.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_broker.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_broker_agent.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_broker_agent.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_broker_agent.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_exchange.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_exchange.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_exchange.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_exchange_table.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_exchange_table.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_exchange_table.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_exchange_agent.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_exchange_agent.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_exchange_agent.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_queue.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_queue.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_queue.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_queue_table.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_queue_table.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_queue_table.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_queue_list.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_queue_list.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_queue_list.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_queue_agent.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_queue_agent.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_queue_agent.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_lease.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_lease.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_lease.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_lease_table.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_lease_table.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_lease_table.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_content_basic.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_content_basic.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_content_basic.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_content_basic_list.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_content_basic_list.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_content_basic_list.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_constants.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_constants.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_constants.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y demo_srv_resource.h !_INSTALL_ROOT!\include\>nul
    verify>nul
    call copy/y demo_srv_resource.h !_INSTALL_ROOT!\include\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y demo_srv_resource.h !_INSTALL_ROOT!\include\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\bin\nul mkdir !_INSTALL_ROOT!\bin\
    if "!BOOM_TRACE!"=="1" echo copy/y pal\asl_pal.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\asl_pal.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\asl_pal.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y pal\asl_pal_stdc.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\asl_pal_stdc.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\asl_pal_stdc.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y pal\asl_pal_xnf.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\asl_pal_xnf.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\asl_pal_xnf.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y pal\asl_pal_txt.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\asl_pal_txt.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\asl_pal_txt.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\doc\ASL\nul mkdir !_INSTALL_ROOT!\doc\ASL\
    if "!BOOM_TRACE!"=="1" echo copy/y pal\palguide.txt !_INSTALL_ROOT!\doc\ASL\>nul
    verify>nul
    call copy/y pal\palguide.txt !_INSTALL_ROOT!\doc\ASL\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\palguide.txt !_INSTALL_ROOT!\doc\ASL\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\bin\nul mkdir !_INSTALL_ROOT!\bin\
    if "!BOOM_TRACE!"=="1" echo copy/y pal\pal.bat !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\pal.bat !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\pal.bat !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y pal\demo_pal_stdc.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\demo_pal_stdc.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\demo_pal_stdc.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y pal\demo_pal_codegen.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\demo_pal_codegen.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\demo_pal_codegen.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y pal\demo_pal_gen.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\demo_pal_gen.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\demo_pal_gen.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y pal\demo_pal_inherit.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\demo_pal_inherit.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\demo_pal_inherit.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y pal\demo_pal_parse.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\demo_pal_parse.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\demo_pal_parse.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo copy/y pal\demo_pal_preproc.gsl !_INSTALL_ROOT!\bin\>nul
    verify>nul
    call copy/y pal\demo_pal_preproc.gsl !_INSTALL_ROOT!\bin\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\demo_pal_preproc.gsl !_INSTALL_ROOT!\bin\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if not exist !_INSTALL_ROOT!\doc\ASL\nul mkdir !_INSTALL_ROOT!\doc\ASL\
    if "!BOOM_TRACE!"=="1" echo copy/y pal\palguide*.html !_INSTALL_ROOT!\doc\ASL\>nul
    verify>nul
    call copy/y pal\palguide*.html !_INSTALL_ROOT!\doc\ASL\>nul
    if errorlevel 1 (
        echo boom E: [ASL]: 'copy/y pal\palguide*.html !_INSTALL_ROOT!\doc\ASL\>nul' failed - stop.
        set _exception=1
        goto :eof
    )
    if exist installer.bat (
    if "!BOOM_TRACE!"=="1" echo installer
    verify>nul
    call installer
    if errorlevel 1 (
        echo boom E: [ASL]: 'installer' failed - stop.
        set _exception=1
        goto :eof
    )
    )
    goto :eof

:-----------------------   PRODUCE ALL GENERATED FILES   ----------------------

:a_produce_all_generated_files
    echo boom I: [ASL]: Generating files...
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 asl.xnf
    verify>nul
    call gsl -q -quiet:1 asl.xnf
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 asl.xnf' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 asl_field.icl
    verify>nul
    call gsl -q -quiet:1 asl_field.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 asl_field.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 asl_field_list.icl
    verify>nul
    call gsl -q -quiet:1 asl_field_list.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 asl_field_list.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo.asl
    verify>nul
    call gsl -q -quiet:1 demo.asl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo.asl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_proto.asl
    verify>nul
    call gsl -q -quiet:1 demo_client_proto.asl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_proto.asl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_method.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_method.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_method.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_client_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_config.opf
    verify>nul
    call gsl -q -quiet:1 demo_client_config.opf
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_config.opf' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_classes.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_classes.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_classes.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_connection.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_connection.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_connection.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_session.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_session.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_session.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_channel.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_channel.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_channel.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_channel_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_channel_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_channel_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_proto.asl
    verify>nul
    call gsl -q -quiet:1 demo_server_proto.asl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_proto.asl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_config.opf
    verify>nul
    call gsl -q -quiet:1 demo_server_config.opf
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_config.opf' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_method.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_method.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_method.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_server_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_classes.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_classes.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_classes.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_connection.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_connection.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_connection.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_connection_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_connection_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_connection_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_connection_list.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_connection_list.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_connection_list.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_channel.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_channel.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_channel.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_channel_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_server_channel_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_channel_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_channel_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_channel_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_channel_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_broker.icl
    verify>nul
    call gsl -q -quiet:1 demo_broker.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_broker.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_broker_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_broker_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_broker_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_exchange.icl
    verify>nul
    call gsl -q -quiet:1 demo_exchange.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_exchange.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_exchange_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_exchange_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_exchange_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_exchange_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_exchange_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_exchange_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_queue.icl
    verify>nul
    call gsl -q -quiet:1 demo_queue.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_queue.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_queue_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_queue_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_queue_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_queue_list.icl
    verify>nul
    call gsl -q -quiet:1 demo_queue_list.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_queue_list.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_queue_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_queue_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_queue_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_lease.icl
    verify>nul
    call gsl -q -quiet:1 demo_lease.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_lease.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_lease_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_lease_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_lease_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_content_basic.icl
    verify>nul
    call gsl -q -quiet:1 demo_content_basic.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_content_basic.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_content_basic_list.icl
    verify>nul
    call gsl -q -quiet:1 demo_content_basic_list.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_content_basic_list.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_constants.icl
    verify>nul
    call gsl -q -quiet:1 demo_constants.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_constants.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo perl -S ipr_resource.pl -@ demo_srv_resource.rc
    verify>nul
    call perl -S ipr_resource.pl -@ demo_srv_resource.rc
    if errorlevel 1 (
        echo boom E: [ASL]: 'perl -S ipr_resource.pl -@ demo_srv_resource.rc' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_config.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_config.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_config.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_config.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_config.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_config.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_srv_resource.icl
    verify>nul
    call gsl -q -quiet:1 demo_srv_resource.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_srv_resource.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    pushd pal

        set PATH=..;%PATH%
        gsl -q -quiet:1 -target:pal demo.asl
        gsl -q -quiet:1 demo_pal.xnf
      
    if "!BOOM_TRACE!"=="1" echo gurudoc palguide.txt
    verify>nul
    call gurudoc palguide.txt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gurudoc palguide.txt' failed - stop.
        set _exception=1
        goto :eof
    )
    popd
    echo Source files successfully generated>stamp_generate
    goto :eof

:-------------------------   PRODUCE GENERATED FILES   ------------------------

:a_produce_generated_files
    echo boom I: [ASL]: Generating files...
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 asl.xnf
    verify>nul
    call gsl -q -quiet:1 asl.xnf
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 asl.xnf' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 asl_field.icl
    verify>nul
    call gsl -q -quiet:1 asl_field.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 asl_field.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 asl_field_list.icl
    verify>nul
    call gsl -q -quiet:1 asl_field_list.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 asl_field_list.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo.asl
    verify>nul
    call gsl -q -quiet:1 demo.asl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo.asl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_proto.asl
    verify>nul
    call gsl -q -quiet:1 demo_client_proto.asl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_proto.asl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_method.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_method.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_method.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_client_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_config.opf
    verify>nul
    call gsl -q -quiet:1 demo_client_config.opf
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_config.opf' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_classes.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_classes.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_classes.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_connection.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_connection.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_connection.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_session.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_session.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_session.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_channel.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_channel.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_channel.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_channel_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_channel_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_channel_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_proto.asl
    verify>nul
    call gsl -q -quiet:1 demo_server_proto.asl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_proto.asl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_config.opf
    verify>nul
    call gsl -q -quiet:1 demo_server_config.opf
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_config.opf' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_method.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_method.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_method.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_server_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_classes.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_classes.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_classes.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_connection.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_connection.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_connection.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_connection_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_connection_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_connection_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_connection_list.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_connection_list.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_connection_list.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_channel.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_channel.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_channel.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_channel_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_server_channel_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_channel_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_channel_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_channel_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_channel_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_broker.icl
    verify>nul
    call gsl -q -quiet:1 demo_broker.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_broker.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_broker_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_broker_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_broker_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_exchange.icl
    verify>nul
    call gsl -q -quiet:1 demo_exchange.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_exchange.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_exchange_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_exchange_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_exchange_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_exchange_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_exchange_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_exchange_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_queue.icl
    verify>nul
    call gsl -q -quiet:1 demo_queue.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_queue.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_queue_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_queue_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_queue_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_queue_list.icl
    verify>nul
    call gsl -q -quiet:1 demo_queue_list.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_queue_list.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_queue_agent.smt
    verify>nul
    call gsl -q -quiet:1 demo_queue_agent.smt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_queue_agent.smt' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_lease.icl
    verify>nul
    call gsl -q -quiet:1 demo_lease.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_lease.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_lease_table.icl
    verify>nul
    call gsl -q -quiet:1 demo_lease_table.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_lease_table.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_content_basic.icl
    verify>nul
    call gsl -q -quiet:1 demo_content_basic.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_content_basic.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_content_basic_list.icl
    verify>nul
    call gsl -q -quiet:1 demo_content_basic_list.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_content_basic_list.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_constants.icl
    verify>nul
    call gsl -q -quiet:1 demo_constants.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_constants.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo perl -S ipr_resource.pl -@ demo_srv_resource.rc
    verify>nul
    call perl -S ipr_resource.pl -@ demo_srv_resource.rc
    if errorlevel 1 (
        echo boom E: [ASL]: 'perl -S ipr_resource.pl -@ demo_srv_resource.rc' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_client_config.icl
    verify>nul
    call gsl -q -quiet:1 demo_client_config.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_client_config.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_server_config.icl
    verify>nul
    call gsl -q -quiet:1 demo_server_config.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_server_config.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" echo gsl -q -quiet:1 demo_srv_resource.icl
    verify>nul
    call gsl -q -quiet:1 demo_srv_resource.icl
    if errorlevel 1 (
        echo boom E: [ASL]: 'gsl -q -quiet:1 demo_srv_resource.icl' failed - stop.
        set _exception=1
        goto :eof
    )
    pushd pal

        set PATH=..;%PATH%
        gsl -q -quiet:1 -target:pal demo.asl
        gsl -q -quiet:1 demo_pal.xnf
      
    if "!BOOM_TRACE!"=="1" echo gurudoc palguide.txt
    verify>nul
    call gurudoc palguide.txt
    if errorlevel 1 (
        echo boom E: [ASL]: 'gurudoc palguide.txt' failed - stop.
        set _exception=1
        goto :eof
    )
    popd
    echo Source files successfully generated>stamp_generate
    goto :eof

:------------------------   REMOVE GENERATED BINARIES   -----------------------

:a_remove_generated_binaries
    if exist libasl.lib del libasl.lib
    if exist demo_srv.exe del demo_srv.exe
    if exist demo_cli.exe del demo_cli.exe
    if exist asl_field_test_test.obj del asl_field_test_test.obj
    if exist asl_field_test_test.exe del asl_field_test_test.exe
    if exist asl_field.obj del asl_field.obj
    if exist asl_field_list_test_test.obj del asl_field_list_test_test.obj
    if exist asl_field_list_test_test.exe del asl_field_list_test_test.exe
    if exist asl_field_list.obj del asl_field_list.obj
    if exist demo_cli.obj del demo_cli.obj
    if exist demo_cli.exe del demo_cli.exe
    if exist demo_client_method_test_test.obj del demo_client_method_test_test.obj
    if exist demo_client_method_test_test.exe del demo_client_method_test_test.exe
    if exist demo_client_method.obj del demo_client_method.obj
    if exist demo_client_agent.obj del demo_client_agent.obj
    if exist demo_client_config_test_test.obj del demo_client_config_test_test.obj
    if exist demo_client_config_test_test.exe del demo_client_config_test_test.exe
    if exist demo_client_config.obj del demo_client_config.obj
    if exist demo_client_classes.obj del demo_client_classes.obj
    if exist demo_client_connection_test_test.obj del demo_client_connection_test_test.obj
    if exist demo_client_connection_test_test.exe del demo_client_connection_test_test.exe
    if exist demo_client_connection.obj del demo_client_connection.obj
    if exist demo_client_session_test_test.obj del demo_client_session_test_test.obj
    if exist demo_client_session_test_test.exe del demo_client_session_test_test.exe
    if exist demo_client_session.obj del demo_client_session.obj
    if exist demo_client_channel_test_test.obj del demo_client_channel_test_test.obj
    if exist demo_client_channel_test_test.exe del demo_client_channel_test_test.exe
    if exist demo_client_channel.obj del demo_client_channel.obj
    if exist demo_client_channel_table_test_test.obj del demo_client_channel_table_test_test.obj
    if exist demo_client_channel_table_test_test.exe del demo_client_channel_table_test_test.exe
    if exist demo_client_channel_table.obj del demo_client_channel_table.obj
    if exist demo_srv.obj del demo_srv.obj
    if exist demo_srv.exe del demo_srv.exe
    if exist demo_server_config_test_test.obj del demo_server_config_test_test.obj
    if exist demo_server_config_test_test.exe del demo_server_config_test_test.exe
    if exist demo_server_config.obj del demo_server_config.obj
    if exist demo_server_method_test_test.obj del demo_server_method_test_test.obj
    if exist demo_server_method_test_test.exe del demo_server_method_test_test.exe
    if exist demo_server_method.obj del demo_server_method.obj
    if exist demo_server_agent.obj del demo_server_agent.obj
    if exist demo_server_classes.obj del demo_server_classes.obj
    if exist demo_server_connection_test_test.obj del demo_server_connection_test_test.obj
    if exist demo_server_connection_test_test.exe del demo_server_connection_test_test.exe
    if exist demo_server_connection.obj del demo_server_connection.obj
    if exist demo_server_connection_table_test_test.obj del demo_server_connection_table_test_test.obj
    if exist demo_server_connection_table_test_test.exe del demo_server_connection_table_test_test.exe
    if exist demo_server_connection_table.obj del demo_server_connection_table.obj
    if exist demo_server_connection_list_test_test.obj del demo_server_connection_list_test_test.obj
    if exist demo_server_connection_list_test_test.exe del demo_server_connection_list_test_test.exe
    if exist demo_server_connection_list.obj del demo_server_connection_list.obj
    if exist demo_server_channel_test_test.obj del demo_server_channel_test_test.obj
    if exist demo_server_channel_test_test.exe del demo_server_channel_test_test.exe
    if exist demo_server_channel.obj del demo_server_channel.obj
    if exist demo_server_channel_agent.obj del demo_server_channel_agent.obj
    if exist demo_server_channel_table_test_test.obj del demo_server_channel_table_test_test.obj
    if exist demo_server_channel_table_test_test.exe del demo_server_channel_table_test_test.exe
    if exist demo_server_channel_table.obj del demo_server_channel_table.obj
    if exist demo_broker_test_test.obj del demo_broker_test_test.obj
    if exist demo_broker_test_test.exe del demo_broker_test_test.exe
    if exist demo_broker.obj del demo_broker.obj
    if exist demo_broker_agent.obj del demo_broker_agent.obj
    if exist demo_exchange_test_test.obj del demo_exchange_test_test.obj
    if exist demo_exchange_test_test.exe del demo_exchange_test_test.exe
    if exist demo_exchange.obj del demo_exchange.obj
    if exist demo_exchange_table_test_test.obj del demo_exchange_table_test_test.obj
    if exist demo_exchange_table_test_test.exe del demo_exchange_table_test_test.exe
    if exist demo_exchange_table.obj del demo_exchange_table.obj
    if exist demo_exchange_agent.obj del demo_exchange_agent.obj
    if exist demo_queue_test_test.obj del demo_queue_test_test.obj
    if exist demo_queue_test_test.exe del demo_queue_test_test.exe
    if exist demo_queue.obj del demo_queue.obj
    if exist demo_queue_table_test_test.obj del demo_queue_table_test_test.obj
    if exist demo_queue_table_test_test.exe del demo_queue_table_test_test.exe
    if exist demo_queue_table.obj del demo_queue_table.obj
    if exist demo_queue_list_test_test.obj del demo_queue_list_test_test.obj
    if exist demo_queue_list_test_test.exe del demo_queue_list_test_test.exe
    if exist demo_queue_list.obj del demo_queue_list.obj
    if exist demo_queue_agent.obj del demo_queue_agent.obj
    if exist demo_lease_test_test.obj del demo_lease_test_test.obj
    if exist demo_lease_test_test.exe del demo_lease_test_test.exe
    if exist demo_lease.obj del demo_lease.obj
    if exist demo_lease_table_test_test.obj del demo_lease_table_test_test.obj
    if exist demo_lease_table_test_test.exe del demo_lease_table_test_test.exe
    if exist demo_lease_table.obj del demo_lease_table.obj
    if exist demo_content_basic_test_test.obj del demo_content_basic_test_test.obj
    if exist demo_content_basic_test_test.exe del demo_content_basic_test_test.exe
    if exist demo_content_basic.obj del demo_content_basic.obj
    if exist demo_content_basic_list_test_test.obj del demo_content_basic_list_test_test.obj
    if exist demo_content_basic_list_test_test.exe del demo_content_basic_list_test_test.exe
    if exist demo_content_basic_list.obj del demo_content_basic_list.obj
    if exist demo_constants.obj del demo_constants.obj
    if exist demo_srv_resource_test_test.obj del demo_srv_resource_test_test.obj
    if exist demo_srv_resource_test_test.exe del demo_srv_resource_test_test.exe
    if exist demo_srv_resource.obj del demo_srv_resource.obj
    if exist asl_field_test.obj del asl_field_test.obj
    if exist asl_field_test.exe del asl_field_test.exe
    if exist asl_field.obj del asl_field.obj
    if exist asl_field_list_test.obj del asl_field_list_test.obj
    if exist asl_field_list_test.exe del asl_field_list_test.exe
    if exist asl_field_list.obj del asl_field_list.obj
    if exist demo_client_method_test.obj del demo_client_method_test.obj
    if exist demo_client_method_test.exe del demo_client_method_test.exe
    if exist demo_client_method.obj del demo_client_method.obj
    if exist demo_client_agent.obj del demo_client_agent.obj
    if exist demo_client_config_test.obj del demo_client_config_test.obj
    if exist demo_client_config_test.exe del demo_client_config_test.exe
    if exist demo_client_config.obj del demo_client_config.obj
    if exist demo_client_classes.obj del demo_client_classes.obj
    if exist demo_client_connection_test.obj del demo_client_connection_test.obj
    if exist demo_client_connection_test.exe del demo_client_connection_test.exe
    if exist demo_client_connection.obj del demo_client_connection.obj
    if exist demo_client_session_test.obj del demo_client_session_test.obj
    if exist demo_client_session_test.exe del demo_client_session_test.exe
    if exist demo_client_session.obj del demo_client_session.obj
    if exist demo_client_channel_test.obj del demo_client_channel_test.obj
    if exist demo_client_channel_test.exe del demo_client_channel_test.exe
    if exist demo_client_channel.obj del demo_client_channel.obj
    if exist demo_client_channel_table_test.obj del demo_client_channel_table_test.obj
    if exist demo_client_channel_table_test.exe del demo_client_channel_table_test.exe
    if exist demo_client_channel_table.obj del demo_client_channel_table.obj
    if exist demo_server_config_test.obj del demo_server_config_test.obj
    if exist demo_server_config_test.exe del demo_server_config_test.exe
    if exist demo_server_config.obj del demo_server_config.obj
    if exist demo_server_method_test.obj del demo_server_method_test.obj
    if exist demo_server_method_test.exe del demo_server_method_test.exe
    if exist demo_server_method.obj del demo_server_method.obj
    if exist demo_server_agent.obj del demo_server_agent.obj
    if exist demo_server_classes.obj del demo_server_classes.obj
    if exist demo_server_connection_test.obj del demo_server_connection_test.obj
    if exist demo_server_connection_test.exe del demo_server_connection_test.exe
    if exist demo_server_connection.obj del demo_server_connection.obj
    if exist demo_server_connection_table_test.obj del demo_server_connection_table_test.obj
    if exist demo_server_connection_table_test.exe del demo_server_connection_table_test.exe
    if exist demo_server_connection_table.obj del demo_server_connection_table.obj
    if exist demo_server_connection_list_test.obj del demo_server_connection_list_test.obj
    if exist demo_server_connection_list_test.exe del demo_server_connection_list_test.exe
    if exist demo_server_connection_list.obj del demo_server_connection_list.obj
    if exist demo_server_channel_test.obj del demo_server_channel_test.obj
    if exist demo_server_channel_test.exe del demo_server_channel_test.exe
    if exist demo_server_channel.obj del demo_server_channel.obj
    if exist demo_server_channel_agent.obj del demo_server_channel_agent.obj
    if exist demo_server_channel_table_test.obj del demo_server_channel_table_test.obj
    if exist demo_server_channel_table_test.exe del demo_server_channel_table_test.exe
    if exist demo_server_channel_table.obj del demo_server_channel_table.obj
    if exist demo_broker_test.obj del demo_broker_test.obj
    if exist demo_broker_test.exe del demo_broker_test.exe
    if exist demo_broker.obj del demo_broker.obj
    if exist demo_broker_agent.obj del demo_broker_agent.obj
    if exist demo_exchange_test.obj del demo_exchange_test.obj
    if exist demo_exchange_test.exe del demo_exchange_test.exe
    if exist demo_exchange.obj del demo_exchange.obj
    if exist demo_exchange_table_test.obj del demo_exchange_table_test.obj
    if exist demo_exchange_table_test.exe del demo_exchange_table_test.exe
    if exist demo_exchange_table.obj del demo_exchange_table.obj
    if exist demo_exchange_agent.obj del demo_exchange_agent.obj
    if exist demo_queue_test.obj del demo_queue_test.obj
    if exist demo_queue_test.exe del demo_queue_test.exe
    if exist demo_queue.obj del demo_queue.obj
    if exist demo_queue_table_test.obj del demo_queue_table_test.obj
    if exist demo_queue_table_test.exe del demo_queue_table_test.exe
    if exist demo_queue_table.obj del demo_queue_table.obj
    if exist demo_queue_list_test.obj del demo_queue_list_test.obj
    if exist demo_queue_list_test.exe del demo_queue_list_test.exe
    if exist demo_queue_list.obj del demo_queue_list.obj
    if exist demo_queue_agent.obj del demo_queue_agent.obj
    if exist demo_lease_test.obj del demo_lease_test.obj
    if exist demo_lease_test.exe del demo_lease_test.exe
    if exist demo_lease.obj del demo_lease.obj
    if exist demo_lease_table_test.obj del demo_lease_table_test.obj
    if exist demo_lease_table_test.exe del demo_lease_table_test.exe
    if exist demo_lease_table.obj del demo_lease_table.obj
    if exist demo_content_basic_test.obj del demo_content_basic_test.obj
    if exist demo_content_basic_test.exe del demo_content_basic_test.exe
    if exist demo_content_basic.obj del demo_content_basic.obj
    if exist demo_content_basic_list_test.obj del demo_content_basic_list_test.obj
    if exist demo_content_basic_list_test.exe del demo_content_basic_list_test.exe
    if exist demo_content_basic_list.obj del demo_content_basic_list.obj
    if exist demo_constants.obj del demo_constants.obj
    if exist demo_srv_resource_test.obj del demo_srv_resource_test.obj
    if exist demo_srv_resource_test.exe del demo_srv_resource_test.exe
    if exist demo_srv_resource.obj del demo_srv_resource.obj
    if exist pal\libasl.lib del pal\libasl.lib
    pushd pal
    popd
    if exist vc60.pdb del vc60.pdb
    goto :eof

:------------------------   REMOVE GENERATED SOURCES   ------------------------

:a_remove_generated_sources
    if exist asl_gen.gsl del asl_gen.gsl
    if exist asl_preproc.gsl del asl_preproc.gsl
    if exist asl_inherit.gsl del asl_inherit.gsl
    if exist asl_parse.gsl del asl_parse.gsl
    if exist asl_doc.txt del asl_doc.txt
    if exist demo_client_method.icl del demo_client_method.icl
    if exist demo_client_agent.smt del demo_client_agent.smt
    if exist demo_client_connection.icl del demo_client_connection.icl
    if exist demo_client_session.icl del demo_client_session.icl
    if exist demo_client_channel_table.icl del demo_client_channel_table.icl
    if exist demo_server_method.icl del demo_server_method.icl
    if exist demo_server_agent.smt del demo_server_agent.smt
    if exist demo_server_connection_table.icl del demo_server_connection_table.icl
    if exist demo_server_connection_list.icl del demo_server_connection_list.icl
    if exist demo_server_channel_agent.smt del demo_server_channel_agent.smt
    if exist demo_server_channel_table.icl del demo_server_channel_table.icl
    if exist demo_broker_agent.smt del demo_broker_agent.smt
    if exist demo_exchange_table.icl del demo_exchange_table.icl
    if exist demo_exchange_agent.smt del demo_exchange_agent.smt
    if exist demo_queue_table.icl del demo_queue_table.icl
    if exist demo_queue_agent.smt del demo_queue_agent.smt
    if exist demo_lease_table.icl del demo_lease_table.icl
    if exist demo_content_basic.icl del demo_content_basic.icl
    if exist demo_content_basic_list.icl del demo_content_basic_list.icl
    if exist demo_constants.icl del demo_constants.icl
    if exist asl_field_test.c del asl_field_test.c
    if exist asl_field.h del asl_field.h
    if exist asl_field.c del asl_field.c
    if exist asl_field_list_test.c del asl_field_list_test.c
    if exist asl_field_list.h del asl_field_list.h
    if exist asl_field_list.c del asl_field_list.c
    if exist demo_client_method_test.c del demo_client_method_test.c
    if exist demo_client_method.h del demo_client_method.h
    if exist demo_client_method.c del demo_client_method.c
    if exist demo_client_agent.h del demo_client_agent.h
    if exist demo_client_agent.c del demo_client_agent.c
    if exist demo_client_config.icl del demo_client_config.icl
    if exist demo_client_config_test.c del demo_client_config_test.c
    if exist demo_client_config.h del demo_client_config.h
    if exist demo_client_config.c del demo_client_config.c
    if exist demo_client_config.txt del demo_client_config.txt
    if exist demo_client_classes.h del demo_client_classes.h
    if exist demo_client_classes.c del demo_client_classes.c
    if exist demo_client_connection_test.c del demo_client_connection_test.c
    if exist demo_client_connection.h del demo_client_connection.h
    if exist demo_client_connection.c del demo_client_connection.c
    if exist demo_client_session_test.c del demo_client_session_test.c
    if exist demo_client_session.h del demo_client_session.h
    if exist demo_client_session.c del demo_client_session.c
    if exist demo_client_channel_test.c del demo_client_channel_test.c
    if exist demo_client_channel.h del demo_client_channel.h
    if exist demo_client_channel.c del demo_client_channel.c
    if exist demo_client_channel_table_test.c del demo_client_channel_table_test.c
    if exist demo_client_channel_table.h del demo_client_channel_table.h
    if exist demo_client_channel_table.c del demo_client_channel_table.c
    if exist demo_server_config.icl del demo_server_config.icl
    if exist demo_server_config_test.c del demo_server_config_test.c
    if exist demo_server_config.h del demo_server_config.h
    if exist demo_server_config.c del demo_server_config.c
    if exist demo_server_config.txt del demo_server_config.txt
    if exist demo_server_method_test.c del demo_server_method_test.c
    if exist demo_server_method.h del demo_server_method.h
    if exist demo_server_method.c del demo_server_method.c
    if exist demo_server_agent.h del demo_server_agent.h
    if exist demo_server_agent.c del demo_server_agent.c
    if exist demo_server_classes.h del demo_server_classes.h
    if exist demo_server_classes.c del demo_server_classes.c
    if exist demo_server_connection_test.c del demo_server_connection_test.c
    if exist demo_server_connection.h del demo_server_connection.h
    if exist demo_server_connection.c del demo_server_connection.c
    if exist demo_server_connection_table_test.c del demo_server_connection_table_test.c
    if exist demo_server_connection_table.h del demo_server_connection_table.h
    if exist demo_server_connection_table.c del demo_server_connection_table.c
    if exist demo_server_connection_list_test.c del demo_server_connection_list_test.c
    if exist demo_server_connection_list.h del demo_server_connection_list.h
    if exist demo_server_connection_list.c del demo_server_connection_list.c
    if exist demo_server_channel_test.c del demo_server_channel_test.c
    if exist demo_server_channel.h del demo_server_channel.h
    if exist demo_server_channel.c del demo_server_channel.c
    if exist demo_server_channel_agent.h del demo_server_channel_agent.h
    if exist demo_server_channel_agent.c del demo_server_channel_agent.c
    if exist demo_server_channel_table_test.c del demo_server_channel_table_test.c
    if exist demo_server_channel_table.h del demo_server_channel_table.h
    if exist demo_server_channel_table.c del demo_server_channel_table.c
    if exist demo_broker_test.c del demo_broker_test.c
    if exist demo_broker.h del demo_broker.h
    if exist demo_broker.c del demo_broker.c
    if exist demo_broker_agent.h del demo_broker_agent.h
    if exist demo_broker_agent.c del demo_broker_agent.c
    if exist demo_exchange_test.c del demo_exchange_test.c
    if exist demo_exchange.h del demo_exchange.h
    if exist demo_exchange.c del demo_exchange.c
    if exist demo_exchange_table_test.c del demo_exchange_table_test.c
    if exist demo_exchange_table.h del demo_exchange_table.h
    if exist demo_exchange_table.c del demo_exchange_table.c
    if exist demo_exchange_agent.h del demo_exchange_agent.h
    if exist demo_exchange_agent.c del demo_exchange_agent.c
    if exist demo_queue_test.c del demo_queue_test.c
    if exist demo_queue.h del demo_queue.h
    if exist demo_queue.c del demo_queue.c
    if exist demo_queue_table_test.c del demo_queue_table_test.c
    if exist demo_queue_table.h del demo_queue_table.h
    if exist demo_queue_table.c del demo_queue_table.c
    if exist demo_queue_list_test.c del demo_queue_list_test.c
    if exist demo_queue_list.h del demo_queue_list.h
    if exist demo_queue_list.c del demo_queue_list.c
    if exist demo_queue_agent.h del demo_queue_agent.h
    if exist demo_queue_agent.c del demo_queue_agent.c
    if exist demo_lease_test.c del demo_lease_test.c
    if exist demo_lease.h del demo_lease.h
    if exist demo_lease.c del demo_lease.c
    if exist demo_lease_table_test.c del demo_lease_table_test.c
    if exist demo_lease_table.h del demo_lease_table.h
    if exist demo_lease_table.c del demo_lease_table.c
    if exist demo_content_basic_test.c del demo_content_basic_test.c
    if exist demo_content_basic.h del demo_content_basic.h
    if exist demo_content_basic.c del demo_content_basic.c
    if exist demo_content_basic_list_test.c del demo_content_basic_list_test.c
    if exist demo_content_basic_list.h del demo_content_basic_list.h
    if exist demo_content_basic_list.c del demo_content_basic_list.c
    if exist demo_constants.h del demo_constants.h
    if exist demo_constants.c del demo_constants.c
    if exist demo_srv_resource.icl del demo_srv_resource.icl
    if exist demo_srv_resource_test.c del demo_srv_resource_test.c
    if exist demo_srv_resource.h del demo_srv_resource.h
    if exist demo_srv_resource.c del demo_srv_resource.c
    if exist stamp_generate del stamp_generate
    if exist configure del configure
    if exist Makefile.unix del Makefile.unix
    if exist configure.bat del configure.bat
    if exist Makefile.win32 del Makefile.win32
    if exist libasl.vcproj del libasl.vcproj
    if exist pal\demo_pal.xnf del pal\demo_pal.xnf
    if exist pal\demo_pal_stdc.gsl del pal\demo_pal_stdc.gsl
    if exist pal\demo_pal_codegen.gsl del pal\demo_pal_codegen.gsl
    if exist pal\demo_pal_gen.gsl del pal\demo_pal_gen.gsl
    if exist pal\demo_pal_inherit.gsl del pal\demo_pal_inherit.gsl
    if exist pal\demo_pal_parse.gsl del pal\demo_pal_parse.gsl
    if exist pal\demo_pal_preproc.gsl del pal\demo_pal_preproc.gsl
    if exist pal\palguide.gdl del pal\palguide.gdl
    if exist pal\palguide*.html del pal\palguide*.html
    pushd pal
    popd
    if exist ASL_*.zip del ASL_*.zip
    goto :eof

:-------------------------   REPORT HELP INFORMATION   ------------------------

:a_report_help_information
    echo The commands you can currently use on this project are:
    echo.
    goto r_!state!
    goto :eof

:-------------------------   REPORT PROJECT VERSION   -------------------------

:a_report_project_version
    echo ASL-1.2c0
    goto :eof

:--------------------------   RUN REGRESSION TESTS   --------------------------

:a_run_regression_tests
    echo boom I: [ASL]: Running regression tests...
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=asl_field_test
    ) else (
        set RUN_COMMAND=asl_field_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=asl_field_list_test
    ) else (
        set RUN_COMMAND=asl_field_list_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_client_method_test
    ) else (
        set RUN_COMMAND=demo_client_method_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_client_config_test
    ) else (
        set RUN_COMMAND=demo_client_config_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_client_connection_test
    ) else (
        set RUN_COMMAND=demo_client_connection_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_client_session_test
    ) else (
        set RUN_COMMAND=demo_client_session_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_client_channel_test
    ) else (
        set RUN_COMMAND=demo_client_channel_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_client_channel_table_test
    ) else (
        set RUN_COMMAND=demo_client_channel_table_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_server_config_test
    ) else (
        set RUN_COMMAND=demo_server_config_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_server_method_test
    ) else (
        set RUN_COMMAND=demo_server_method_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_server_connection_test
    ) else (
        set RUN_COMMAND=demo_server_connection_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_server_connection_table_test
    ) else (
        set RUN_COMMAND=demo_server_connection_table_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_server_connection_list_test
    ) else (
        set RUN_COMMAND=demo_server_connection_list_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_server_channel_test
    ) else (
        set RUN_COMMAND=demo_server_channel_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_server_channel_table_test
    ) else (
        set RUN_COMMAND=demo_server_channel_table_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_broker_test
    ) else (
        set RUN_COMMAND=demo_broker_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_exchange_test
    ) else (
        set RUN_COMMAND=demo_exchange_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_exchange_table_test
    ) else (
        set RUN_COMMAND=demo_exchange_table_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_queue_test
    ) else (
        set RUN_COMMAND=demo_queue_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_queue_table_test
    ) else (
        set RUN_COMMAND=demo_queue_table_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_queue_list_test
    ) else (
        set RUN_COMMAND=demo_queue_list_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_lease_test
    ) else (
        set RUN_COMMAND=demo_lease_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_lease_table_test
    ) else (
        set RUN_COMMAND=demo_lease_table_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_content_basic_test
    ) else (
        set RUN_COMMAND=demo_content_basic_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_content_basic_list_test
    ) else (
        set RUN_COMMAND=demo_content_basic_list_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    if "!BOOM_TRACE!"=="1" (
        set RUN_COMMAND=demo_srv_resource_test
    ) else (
        set RUN_COMMAND=demo_srv_resource_test -q
    )
    if "!BOOM_TRACE!"=="1" echo !RUN_COMMAND!
    verify>nul
    call !RUN_COMMAND!
    if errorlevel 1 (
        echo boom E: [ASL]: '!RUN_COMMAND!' failed - stop.
        set _exception=1
        goto :eof
    )
    pushd pal
    popd
    :-  Run local selftest script if present
    if exist selftest.bat (
    if "!BOOM_TRACE!"=="1" echo selftest
    verify>nul
    call selftest
    if errorlevel 1 (
        echo boom E: [ASL]: 'selftest' failed - stop.
        set _exception=1
        goto :eof
    )
    )
    goto :eof

:-----------------------   USE SOURCE CONTROL REVISION   ----------------------

:a_use_source_control_revision
    set SVN_REVISION=svn
    if exist .svn
ul (
        for /f "usebackq tokens=1,2 delims=: " %%v in (`svn info`) do if "%%v"=="Revision" set SVN_REVISION=%%w
    )
    set MY_VERSION=!MY_VERSION!-!SVN_REVISION!
    goto :eof

:s_initial
    if "!debug!"=="1" echo State: initial
    if "!event!"=="" goto s_1_empty
    if "!event!"=="ok" goto s_1_1
    goto s_win32
:s_1_1
    if "!debug!"=="1" echo Event: ok
    set event=
    if "!debug!"=="1" echo Action: check operating context
    set _exception=
    call :a_check_operating_context
    if "!_exception!"=="1" exit /b 1
    set state=initial_check
    goto s_!state!
:s_1_empty
    if "!debug!"=="1" echo Get event from user
    set event=%1
    shift
    if "!event!"=="" set event=empty
    goto s_initial
:r_initial
    goto r_win32

:s_initial_check
    if "!debug!"=="1" echo State: initial check
    if "!event!"=="" goto s_2_empty
    if "!event!"=="repository" goto s_2_1
    if "!event!"=="source" goto s_2_2
    if "!event!"=="stripped" goto s_2_3
    goto s_win32
:s_2_1
    if "!debug!"=="1" echo Event: repository
    set event=
    set state=repository
    goto s_!state!
:s_2_2
    if "!debug!"=="1" echo Event: source
    set event=
    set state=source
    goto s_!state!
:s_2_3
    if "!debug!"=="1" echo Event: stripped
    set event=
    set state=stripped
    goto s_!state!
:s_2_empty
    if "!debug!"=="1" echo Get event from user
    set event=%1
    shift
    if "!event!"=="" set event=empty
    goto s_initial_check
:r_initial_check
    goto r_win32

:s_repository
    if "!debug!"=="1" echo State: repository
    if "!event!"=="" goto s_3_empty
    if "!event!"=="build" goto s_3_1
    if "!event!"=="compile" goto s_3_2
    if "!event!"=="clean" goto s_3_3
    if "!event!"=="regen" goto s_3_4
    if "!event!"=="allgen" goto s_3_5
    if "!event!"=="distrib" goto s_3_6
    if "!event!"=="distsrc" goto s_3_7
    if "!event!"=="distrev" goto s_3_8
    goto s_default
:s_3_1
    if "!debug!"=="1" echo Event: build
    set event=
    if "!debug!"=="1" echo Action: check project files exist
    set _exception=
    call :a_check_project_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: produce generated files
    set _exception=
    call :a_produce_generated_files
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: check source files exist
    set _exception=
    call :a_check_source_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: build binary files
    set _exception=
    call :a_build_binary_files
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_3_2
    if "!debug!"=="1" echo Event: compile
    set event=
    if "!debug!"=="1" echo Action: check source files exist
    set _exception=
    call :a_check_source_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: build binary files
    set _exception=
    call :a_build_binary_files
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_3_3
    if "!debug!"=="1" echo Event: clean
    set event=
    if "!debug!"=="1" echo Action: remove generated sources
    set _exception=
    call :a_remove_generated_sources
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: remove generated binaries
    set _exception=
    call :a_remove_generated_binaries
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_3_4
    if "!debug!"=="1" echo Event: regen
    set event=
    if "!debug!"=="1" echo Action: check project files exist
    set _exception=
    call :a_check_project_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: produce generated files
    set _exception=
    call :a_produce_generated_files
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_3_5
    if "!debug!"=="1" echo Event: allgen
    set event=
    if "!debug!"=="1" echo Action: check project files exist
    set _exception=
    call :a_check_project_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: produce all generated files
    set _exception=
    call :a_produce_all_generated_files
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_3_6
    if "!debug!"=="1" echo Event: distrib
    set event=
    if "!debug!"=="1" echo Action: produce all generated files
    set _exception=
    call :a_produce_all_generated_files
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: check all source files exist
    set _exception=
    call :a_check_all_source_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: build source packages
    set _exception=
    call :a_build_source_packages
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_3_7
    if "!debug!"=="1" echo Event: distsrc
    set event=
    if "!debug!"=="1" echo Action: produce all generated files
    set _exception=
    call :a_produce_all_generated_files
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: check all source files exist
    set _exception=
    call :a_check_all_source_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: build source packages
    set _exception=
    call :a_build_source_packages
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_3_8
    if "!debug!"=="1" echo Event: distrev
    set event=
    if "!debug!"=="1" echo Action: produce all generated files
    set _exception=
    call :a_produce_all_generated_files
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: check all source files exist
    set _exception=
    call :a_check_all_source_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: use source control revision
    set _exception=
    call :a_use_source_control_revision
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: build source packages
    set _exception=
    call :a_build_source_packages
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_3_empty
    if "!debug!"=="1" echo Get event from user
    set event=%1
    shift
    if "!event!"=="" set event=empty
    goto s_repository
:r_repository
echo build:
    echo   From the raw project sources, produces all generated files, and
    echo     compiles all source files.
echo compile:
    echo   From the raw project sources, compiles all source files without any
    echo     code generation.
echo clean:
    echo   When working with the raw project sources, removes all generated
    echo     source and binary files from the project directory.
echo regen:
    echo   Produces generated files required for building using the
    echo     current model.
echo allgen:
    echo   Produces all generated files.
echo distrib:
    echo   Creates a source distribution for the project.  Note that binary
    echo     distributions can only be created at the product level.
echo distsrc:
    echo   Equivalent to distrib, provided for compatibility.
echo distrev:
    echo   Creates a source distribution for the project.  Builds distribution
    echo     packages based on source control version number. Note that binary
    echo     distributions can only be created at the product level.
    goto r_default

:s_source
    if "!debug!"=="1" echo State: source
    if "!event!"=="" goto s_4_empty
    if "!event!"=="build" goto s_4_1
    if "!event!"=="clean" goto s_4_2
    if "!event!"=="regen" goto s_4_3
    if "!event!"=="allgen" goto s_4_4
    goto s_default
:s_4_1
    if "!debug!"=="1" echo Event: build
    set event=
    if "!debug!"=="1" echo Action: check source files exist
    set _exception=
    call :a_check_source_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: build binary files
    set _exception=
    call :a_build_binary_files
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_4_2
    if "!debug!"=="1" echo Event: clean
    set event=
    if "!debug!"=="1" echo Action: remove generated binaries
    set _exception=
    call :a_remove_generated_binaries
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_4_3
    if "!debug!"=="1" echo Event: regen
    set event=
    if "!debug!"=="1" echo Action: check project files exist
    set _exception=
    call :a_check_project_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: produce generated files
    set _exception=
    call :a_produce_generated_files
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_4_4
    if "!debug!"=="1" echo Event: allgen
    set event=
    if "!debug!"=="1" echo Action: check project files exist
    set _exception=
    call :a_check_project_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: produce all generated files
    set _exception=
    call :a_produce_all_generated_files
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_4_empty
    if "!debug!"=="1" echo Get event from user
    set event=%1
    shift
    if "!event!"=="" set event=empty
    goto s_source
:r_source
echo build:
    echo   From the packaged sources, compiles all source files without any
    echo     code generation.
echo clean:
    echo   When working with the packaged sources, removes all generated
    echo     binary files from the project directory.
echo regen:
    echo   Produces generated files required for building using the
    echo     current model.
echo allgen:
    echo   Produces all generated files.
    goto r_default

:s_stripped
    if "!debug!"=="1" echo State: stripped
    if "!event!"=="" goto s_5_empty
    if "!event!"=="build" goto s_5_1
    if "!event!"=="clean" goto s_5_2
    goto s_default
:s_5_1
    if "!debug!"=="1" echo Event: build
    set event=
    if "!debug!"=="1" echo Action: build binary files
    set _exception=
    call :a_build_binary_files
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_5_2
    if "!debug!"=="1" echo Event: clean
    set event=
    if "!debug!"=="1" echo Action: remove generated binaries
    set _exception=
    call :a_remove_generated_binaries
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_5_empty
    if "!debug!"=="1" echo Get event from user
    set event=%1
    shift
    if "!event!"=="" set event=empty
    goto s_stripped
:r_stripped
echo build:
    echo   From the stripped-down packaged sources, compiles all source files
    echo     without any code generation.
echo clean:
    echo   When working with the packaged sources, removes all generated
    echo     binary files from the project directory.
    goto r_default

:s_default
    if "!debug!"=="1" echo State: default
    if "!event!"=="" goto s_6_empty
    if "!event!"=="install" goto s_6_1
    if "!event!"=="test" goto s_6_2
    if "!event!"=="help" goto s_6_3
    if "!event!"=="version" goto s_6_4
    if "!event!"=="empty" goto s_6_5
    goto s_win32
:s_6_1
    if "!debug!"=="1" echo Event: install
    set event=
    if "!debug!"=="1" echo Action: check binary files exist
    set _exception=
    call :a_check_binary_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: install deliverables
    set _exception=
    call :a_install_deliverables
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_6_2
    if "!debug!"=="1" echo Event: test
    set event=
    if "!debug!"=="1" echo Action: check binary files exist
    set _exception=
    call :a_check_binary_files_exist
    if "!_exception!"=="1" exit /b 1
    if "!debug!"=="1" echo Action: run regression tests
    set _exception=
    call :a_run_regression_tests
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_6_3
    if "!debug!"=="1" echo Event: help
    set event=
    if "!debug!"=="1" echo Action: report help information
    set _exception=
    call :a_report_help_information
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_6_4
    if "!debug!"=="1" echo Event: version
    set event=
    if "!debug!"=="1" echo Action: report project version
    set _exception=
    call :a_report_project_version
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_6_5
    if "!debug!"=="1" echo Event: empty
    set event=
    if "!debug!"=="1" echo Action: report help information
    set _exception=
    call :a_report_help_information
    if "!_exception!"=="1" exit /b 1
    if not "%1"=="" goto process
    exit /b 0
:s_6_empty
    if "!debug!"=="1" echo Get event from user
    set event=%1
    shift
    if "!event!"=="" set event=empty
    goto s_default
:r_default
echo install:
    echo   Installs deliverables into the final or temporary install tree.
    echo     This action is only valid after a successful build.
echo test:
    echo   Runs regression tests for the project.
echo help:
    echo   Shows a list of the commands allowed on the project.
echo version:
    echo   Show project version.
    goto r_win32


exit /b 0
