code: @Override
      public boolean retainAll(Collection<?> c) {
          boolean modified = false;
          for(Map.Entry<Integer, Record> e : entries()) {
              Integer rId = e.getKey();
              Record r = e.getValue();
              if(!c.contains(r)) {
                  remove(rId);
                  modified = true;
              }
          }
          if(modified) {
              recalculateMeta();
          }
          return modified;
      }
docs: Retains only the elements in this collection that are contained in the
  specified collection and updates the meta data.
  
  @param c
  @return