0.0.0.3 promises refactor