fix promise v2