docs: public void startWork(String workUnit) throws InterruptedException {
          if (waitInProgress.get())
              LOG.warn("Claiming work during wait!");
          LOG.info("Successfully claimed {}: {}. Starting...", config.workUnitName, workUnit);
          final boolean added = myWorkUnits.add(workUnit);
  
          if (added) {
              if (balancingPolicy instanceof MeteredBalancingPolicy) {
                  MeteredBalancingPolicy mbp = (MeteredBalancingPolicy) balancingPolicy;
                  Meter meter = mbp.findOrCreateMetrics(workUnit);
                  ((SmartListener) listener).startWork(workUnit, meter);
              } else {
                  ((ClusterListener) listener).startWork(workUnit);
              }
          } else {
              LOG.warn("Detected that %s is already a member of my work units; not starting twice!", workUnit);
          }
      }