using promise resolver + relaxed some dependencies