<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def asset_create_combo(self, name, combo, tag='', description=''):
        '''asset_create_combo name, combination, tag, description
        Creates a new combination asset list.  Operands can be either asset list
        IDs or be a nested combination asset list.

        UN-DOCUMENTED CALL: This function is not considered stable.

        AND = intersection
        OR = union
        operand = asset list ID or nested combination.
        operator = intersection or union.

        Example:

        combo = {
            'operand1': {
                'operand1': '2',
                'operand2': '2',
                'operation': 'union',
            },
            'operand2': '3',
            'operation': 'intersection'
        }


        :param name: Name of the asset list.
        :type name: string
        :param combo: dict
        :param tag: The tag of the asset list.
        :type tag: string
        :param description: Description of the asset list.
        :type description: string
        '''
        return self.raw_query('asset', 'add', data={
            'name': name,
            'description': description,
            'type': 'combination',
            'combinations': combo,
        })