boolean (Object anObject) { if (! (anObject instanceof String)) return false; String str2 = (String) anObject; if (count != str2.count) return false; if (value == str2.value && offset == str2.offset) return true; int i = count; int x = offset; int y = str2.offset; while (--i >= 0) if (value[x++] != str2.value[y++]) return false; return true; }