code: def exec_cmd(self, command, **kwargs):
          
  
          kwargs = self._reduce_boolean_pair(kwargs, 'online', 'offline')
          if 'offline' in kwargs:
              self._meta_data['exclusive_attributes'].append(
                  ('offline', 'standby'))
  
          if 'online' in kwargs:
              self._meta_data['exclusive_attributes'].append(
                  ('online', 'standby'))
          self._is_allowed_command(command)
          self._check_command_parameters(**kwargs)
          return self._exec_cmd(command, **kwargs)
docs: Defining custom method to append 'exclusive_attributes'.
  
          WARNING: Some parameters are hyphenated therefore the function
                   will need to utilize variable keyword argument syntax.
                   This only applies when utilCmdArgs method is not in use.
  
                   eg.
  
                   param_set ={'standby':True 'traffic-group': 'traffic-group-1'}
                   bigip.tm.sys.failover.exec_cmd('run', **param_set
  
          The 'standby' attribute cannot be present with either 'offline'
          or 'online' attribute, whichever is present. Additionally
          we check for existence of same attribute values in
          'offline' and 'online' if both present.
  
  
          note:: There is also another way of using failover endpoint,
                 by the means of 'utilCmdArgs' attribute, here the syntax
                 will resemble more that of the 'tmsh run sys failover...'
                 command.
                      eg. exec_cmd('run', utilCmdArgs='standby traffic-group
                      traffic-group-1')
  
          :: raises InvalidParameterValue