add ShellParser