1 2 3 4 5 6
subshell start before dotcmd before until before return after dotcmd, return value: 0 subshell end