more shell logic