Probe createProbe(FontData fontData) {
   Probe result = new Probe(fontData);
   synchronized (probes) {
     probes.put(fontData, result);
   }
   textSizeStorage.storeFont(fontData);
   return result;
 }
 Probe[] getProbes() {
   Probe[] result;
   synchronized (probes) {
     if (probes.isEmpty()) {
       FontData[] fontList = textSizeStorage.getFontList();
       for (int i = 0; i < fontList.length; i++) {
         createProbe(fontList[i]);
       }
     }
     result = new Probe[probes.size()];
     probes.values().toArray(result);
   }
   return result;
 }