added logic for exp)