More structured. Same fonctionality
add retry mode