implementing some suggestions