Throwable exceptionToThrow = null;
final ListIterator<SetupAction> itr = setupActions.listIterator(setupActions.size());
while (itr.hasPrevious()) {
final SetupAction action = itr.previous();
try {
action.teardown(properties);
} catch (Throwable e) {
if (exceptionToThrow == null) {
exceptionToThrow = e;
}
}