feat added promises to util