def save(self, doc):
        if doc.id:
            return self.update(doc)
        else:
            return self.insert(doc)
def _exit_modes_beyond(self, thisMode):
        if not self.modeList: return
        while len(self.modeList) > thisMode + 1: 
            self.modeList.pop().exit()