making some more changes to promises logic.