--------- beginning of main
--------- beginning of system
