+#if !IT_KEY_HAVE_SEQNO
+void key_write_x (struct strtab *t, int cmd, struct it_key *k, const char *str)
+{
+ void **oldinfo;
+
+ if (strtab_src (t, str, &oldinfo))
+ ((struct it_key *) *oldinfo)->freq++;
+ else
+ {
+ *oldinfo = xmalloc (sizeof(*k));
+ memcpy (*oldinfo, k, sizeof(*k));
+ ((struct it_key *) *oldinfo)->freq = 1;
+ }
+}
+#endif
+
+void key_rec_flush (const char *str, void *info, void *data)
+{
+ key_write (*((int*) data), (struct it_key *)info, str);
+ xfree (info);
+}
+
+void text_extract (struct strtab *t, SYSNO sysno, int cmd, const char *fname)