our algo outline