initial retry() implementation