added improved code