code: def normalize(self):
          
          for attr in self._avm:
              val = self._avm[attr]
              if isinstance(val, Conjunction):
                  val.normalize()
                  if len(val.terms) == 1 and isinstance(val.terms[0], AVM):
                      self._avm[attr] = val.terms[0]
              elif isinstance(val, AVM):
                  val.normalize()
docs: Reduce trivial AVM conjunctions to just the AVM.
  
          For example, in `[ ATTR1 [ ATTR2 val ] ]` the value of `ATTR1`
          could be a conjunction with the sub-AVM `[ ATTR2 val ]`. This
          method removes the conjunction so the sub-AVM nests directly
          (equivalent to `[ ATTR1.ATTR2 val ]` in TDL).