source code for command parser