class SwitchedVlanPropertiesAnswerer extends Answerer {

  public static Multiset<Row> getProperties(
      SpecifierContext ctxt,
      Map<String, Configuration> configurations,
      Set<String> nodes,
      InterfaceSpecifier interfaceSpecifier,
      boolean excludeShutInterfaces,
      IntegerSpace vlans,
      Map<String, ColumnMetadata> columns) {
    Multiset<Row> rows = HashMultiset.create();
    for (String node : nodes) {
      Map<Integer, ImmutableSet.Builder<NodeInterfacePair>> switchedVlanInterfaces =
          new HashMap<>();
      ImmutableMap.Builder<Integer, Integer> vlanVnisBuilder = ImmutableMap.builder();
      computeNodeVlanProperties(
          ctxt,
          configurations.get(node),
          interfaceSpecifier,
          excludeShutInterfaces,
          vlans,
          switchedVlanInterfaces,
          vlanVnisBuilder);
      populateNodeRows(node, switchedVlanInterfaces, vlanVnisBuilder, columns, rows);
    }
    return rows;
  }

  public  SwitchedVlanPropertiesAnswerer(Question question, IBatfish batfish);

}