added doAll