improve shell