!752 static MultiMap shortDefinitions; p { load("shortDefinitions"); } synchronized answer { if (!tb()) null; if "a * is a *" { S in = toLowerCase(m.unq(0), out = toLowerCase(m.unq(1)); if (shortDefinitions.containsPair(in, out)) ret "I know"; shortDefinitions.put(in, out); ret "OK!"; } if "a * is not a *" { S in = toLowerCase(m.unq(0)); if (eqic(shortDefinitions.get(in), m.unq(1))) { shortDefinitions.remove(in); ret "Removed!"; } } if "what is a *" { S in = toLowerCase(m.unq(0)); S out = shortDefinitions.get(in); if (nempty(out)) ret format("A * is a *", in, out); } }