java source for searching