code: def convert(self, obj):
          
          if self.pristine_if_invalid:
              raise NotImplementedError('pristine_if_invalid option is not supported yet')
  
          nex = get_nexml_el(obj)
          assert nex
          self._recursive_convert_dict(nex)
          # pluralization simplifications in hbf:
          # convert dicts to lists for the primary datastructures...
          self._dict_to_list_of_dicts(nex, 'otus')
          self._dict_to_list_of_dicts(nex, 'otus', 'otu')
          self._dict_to_list_of_dicts(nex, 'trees')
          self._dict_to_list_of_dicts(nex, 'trees', 'tree')
          self._dict_to_list_of_dicts(nex, 'trees', 'tree', 'node')
          self._dict_to_list_of_dicts(nex, 'trees', 'tree', 'edge')
          if self._add_tree_xsi_type:
              for tb in nex.get('trees', []):
                  for t in tb.get('tree', []):
                      t.setdefault('@xsi:type', 'nex:FloatTree')
          nex['@nexml2json'] = str(DIRECT_HONEY_BADGERFISH)
          return obj
docs: Takes a dict corresponding to the honeybadgerfish JSON blob of the 1.0.* type and
          converts it to BY_ID_HONEY_BADGERFISH version. The object is modified in place
          and returned.