work on matching
add matching algorithm
working basic search