algorithm determined