Added Promises (still needs to be Implemented)