added fail and requeue methods