retry behaviour now working like a charm (WAY more logic!)