3 int do_precomposition(int base, int comb) {
5 int max = sizeof(precompositions) / sizeof(precompositions[0]) - 1;
7 int sought = (base << 16) | comb, that;
11 mid = (min + max) / 2;
12 that = (precompositions[mid].base << 16) | (precompositions[mid].comb);
15 } else if (that > sought) {
18 return precompositions[mid].replacement;