code: @Override
      public List<? extends SatConstraint> buildConstraint(BtrPlaceTree t, List<BtrpOperand> args) {
          if (checkConformance(t, args)) {
            @SuppressWarnings("unchecked")
            List<VM> vms = (List<VM>) params[0].transform(this, t, args.get(0));
            @SuppressWarnings("unchecked")
            Collection<Collection<Node>> nss = (Collection<Collection<Node>>) params[1].transform(this, t, args.get(1));
              return vms != null && nss != null ? Collections.singletonList(new Among(vms, nss)) : Collections.emptyList();
          }
          return Collections.emptyList();
      }
docs: Build a constraint.
  
  @param t    the current tree
  @param args the argument. Must be a non-empty set of virtual machines and a multiset of nodes with
  at least two non-empty sets. If the multi set contains only one set, a {@code Fence} constraint is created
  @return the constraint