egrep algorithm