docs: def reorder_indices(self, indices_order):
          'reorder all the indices'
          # allow mixed index syntax like int
          indices_order, single = convert_index_to_keys(self.indices, indices_order)
          old_indices = force_list(self.indices.keys())
  
          if indices_order == old_indices: # no changes
              return
  
          if set(old_indices) != set(indices_order):
              raise KeyError('Keys in the new order do not match existing keys')
  
  #        if len(old_indices) == 0: # already return since indices_order must equal to old_indices
  #            return
  
          # must have more than 1 index to reorder
          new_idx = [old_indices.index(i) for i in indices_order]
          # reorder items
          items = [map(i.__getitem__, new_idx) for i in self.items()]
          self.clear(True)
          _MI_init(self, items, indices_order)