working on shell