static Map<S, O> listToReversedWordTree(L<S> l) {
  ret listToReversedWordTree(l, "x"); // any old value that is not a map
}

static Map<S, O> listToReversedWordTree(L<S> l, S value) {
  Map<S, O> tree = ciMap();
  for (S s : unnull(l))
    wordTreeAdd(tree, reversed(javaTokC(s)), value);
  ret simplifyWordTree(tree);
}