code: private void tidy() {
          nonPermanent.entrySet().stream()
                  .map(entry -> {
                      List<WeakReference<IzouSoundLineBaseClass>> collect = entry.getValue().stream()
                              .filter(izouSoundLineWeakReference -> izouSoundLineWeakReference.get() != null)
                              .collect(Collectors.toList());
                      if (!collect.isEmpty()) {
                          nonPermanent.put(entry.getKey(), collect);
                          return null;
                      } else {
                          return entry;
                      }
                  })
                  .filter(Objects::nonNull)
                  .forEach(entry -> nonPermanent.remove(entry.getKey()));
      }
docs: removes obsolete references