docs: @Override
      public synchronized ServoDriver getServoDriver(Pin servoPin) throws IOException {
          List<Pin> servoPins = getDefinedServoPins();
          int index = servoPins.indexOf(servoPin);
          if (index < 0) {
              throw new IllegalArgumentException("Servo driver cannot drive pin " + servoPin);
          }
  
          RPIServoBlasterServoDriver driver = allocatedDrivers.get(servoPin);
          if (driver == null) {
              driver = new RPIServoBlasterServoDriver(servoPin, index, PIN_MAP.get(servoPin), this);
              ensureWriterIsCreated();
          }
  
          return driver;
      }