code: def class_box(self, cn: ClassDefinitionName) -> str:
          
          slot_defs: List[str] = []
          if cn not in self.box_generated and (not self.focus_classes or cn in self.focus_classes):
              cls = self.schema.classes[cn]
              for slotname in self.filtered_cls_slots(cn, all_slots=True):
                  slot = self.schema.slots[slotname]
                  if not slot.range or slot.range in builtin_names or slot.range in self.schema.types:
                      mod = self.prop_modifier(cls, slot)
                      slot_defs.append(underscore(self.aliased_slot_name(slot)) +
                                       mod + ':' +
                                       underscore(slot.range) + self.cardinality(slot))
              self.box_generated.add(cn)
          self.referenced.add(cn)
          return '[' + camelcase(cn) + ('|' + ';'.join(slot_defs) if slot_defs else '') + ']'
docs: Generate a box for the class.  Populate its interior only if (a) it hasn't previously been generated and
          (b) it appears in the gen_classes list
  
          @param cn:
          @param inherited:
          @return: