@classmethod
def get_initkwargs(cls, form_list=None, initial_dict=None, instance_dict=
    None, condition_dict=None, *args, **kwargs):
    """Create a dict with all needed parameters.

         For the form wizard instances.

        * `form_list` - is a list of forms. The list entries can be single form
          classes or tuples of (`step_name`, `form_class`). If you pass a list
          of forms, the wizardview will convert the class list to
          (`zero_based_counter`, `form_class`). This is needed to access the
          form for a specific step.
        * `initial_dict` - contains a dictionary of initial data dictionaries.
          The key should be equal to the `step_name` in the `form_list` (or
          the str of the zero based counter - if no step_names added in the
          `form_list`)
        * `instance_dict` - contains a dictionary whose values are model
          instances if the step is based on a ``ModelForm`` and querysets if
          the step is based on a ``ModelFormSet``. The key should be equal to
          the `step_name` in the `form_list`. Same rules as for `initial_dict`
          apply.
        * `condition_dict` - contains a dictionary of boolean values or
          callables. If the value of for a specific `step_name` is callable it
          will be called with the wizardview instance as the only argument.
          If the return value is true, the step's form will be used.
        """
    kwargs.update({'initial_dict': initial_dict or kwargs.pop(
        'initial_dict', getattr(cls, 'initial_dict', None)) or {},
        'instance_dict': instance_dict or kwargs.pop('instance_dict',
        getattr(cls, 'instance_dict', None)) or {}, 'condition_dict': 
        condition_dict or kwargs.pop('condition_dict', getattr(cls,
        'condition_dict', None)) or {}})
    return kwargs
