!752 p { BWImage img = shootScreenBW(); Class loader = hotwire("#1005947"); call(loader, "getData"); Map> md5ToChar = (Map) get(get(loader, "md5ToChar"), "data"); int g = 3; L clips = autoSegment(img, g); new L chars; for (Rect r : clips) { new StringBuffer buf; BWImage lineImg = img.clip(r); for (Rect c : horizontalAutoSplit2ThenAutoCrop(lineImg)) { chars.add(translateRect(c, r.x, r.y)); BWImage charImg = lineImg.clip(c); S md5 = md5OfBWImage(charImg); L meanings = md5ToChar.get(md5); buf.append(empty(meanings) ? "?" : l(meanings) == 1 ? first(meanings) : "[" + join("|", meanings) + "]"); } print(buf); } }