fix the complex expressions also