docs: @SuppressWarnings({
  			"unchecked", "rawtypes"
  	})
  	public Map<String, String> getStringMap(final Class<? extends Map> clazz) {
  		try {
  			final Map<String, String> map = clazz.newInstance();
  			final int len = getVInt();
  			for (int i = 0; i < len; i++) {
  				map.put(getString(), getString());
  			}
  			return map;
  		} catch (InstantiationException e) {
  			throw new IllegalArgumentException("Invalid class", e);
  		} catch (IllegalAccessException e) {
  			throw new IllegalArgumentException("Invalid class", e);
  		}
  	}