use bluebird instead of q