simple behavious and argument parsing