I think this function have to accept a done callback