subshell start before dotcmd before until before return after dotcmd, return value: 0 subshell end