!7 p { Concepts in = new Concepts("#1006104").safeLoad(); L lines = (L) cget(first(list(in, "RecogInfo")), "lines"); new TreeSet md5s; new Matches m; for (S s : lines) if (matchStart("the images *", s, m)) { md5s.addAll(splitAtSpace($1)); } print("MD5s we're looking for: " + struct(md5s)); Concepts in2 = new Concepts("#1005951").load(); new HashMap md5ToImage; for (GrabbedImage gi : list(in2, GrabbedImage)) { if (md5s.contains(gi.md5)) md5ToImage.put(gi.md5, gi.image); for (BWImage cImg : horizontalAutoSplitToImages(gi.image)) { S md5 = md5OfBWImage(cImg); if (md5s.contains(md5)) md5ToImage.put(md5, cImg); } } int found = 0; for (S md5 : md5s) { BWImage img = md5ToImage.get(md5); if (img != null) ++found; } print("Found: " + found + "/" + l(md5s)); }