code: def flag_change(self, flags, level, location=None, worksheet=None, message=''):
          '''
          Wraps the pushing of a change flag into the flags dictionary to handle
          all edge cases/auto-filling.
          '''
          if not isinstance(level, basestring):
              try:
                  level = self.FLAG_LEVEL_CODES[level]
              except KeyError:
                  level = 'fatal'
  
          if location == None:
              location = (-1, -1)
  
          ftuple = self.FlagLevelTuple(level, location, worksheet, message)
  
          # Handle flags[level] not being present
          try:
              flags[level].append(ftuple)
          except KeyError:
              flags[level] = [ftuplef flag_change(self, flags, level, location=None, worksheet=None, message=''):
          '''
          Wraps the pushing of a change flag into the flags dictionary to handle
          all edge cases/auto-filling.
          '''
          if not isinstance(level, basestring):
              try:
                  level = self.FLAG_LEVEL_CODES[level]
              except KeyError:
                  level = 'fatal'
  
          if location == None:
              location = (-1, -1)
  
          ftuple = self.FlagLevelTuple(level, location, worksheet, message)
  
          # Handle flags[level] not being present
          try:
              flags[level].append(ftuple)
          except KeyError:
              flags[level] = [ftuple]
docs: Wraps the pushing of a change flag into the flags dictionary to handle
          all edge cases/auto-filling.