2 version of shell. with separate classes