static S replaceCodeTokensUsingMap_curly(S s, SS map) { ret join(replaceCodeTokensUsingMap_curly(javaTok(s), map); } static LS replaceCodeTokensUsingMap_curly(LS tok, SS map) { LS out = emptyList(tok); for i over tok: { out.add(odd(i) ? lookupOrKeep_curly(map, tok.get(i)) : tok.get(i)); } ret out; } sS replaceCodeTokensUsingMap_curly(SS map, S s) { ret replaceCodeTokensUsingMap_curly(s, map); }