conditional complete