def update_maintenance_window(WindowId=None, Name=None, Schedule=None,
    Duration=None, Cutoff=None, AllowUnassociatedTargets=None, Enabled=None):
    """
    Updates an existing Maintenance Window. Only specified parameters are modified.
    See also: AWS API Documentation
    
    
    :example: response = client.update_maintenance_window(
        WindowId='string',
        Name='string',
        Schedule='string',
        Duration=123,
        Cutoff=123,
        AllowUnassociatedTargets=True|False,
        Enabled=True|False
    )
    
    
    :type WindowId: string
    :param WindowId: [REQUIRED]
            The ID of the Maintenance Window to update.
            

    :type Name: string
    :param Name: The name of the Maintenance Window.

    :type Schedule: string
    :param Schedule: The schedule of the Maintenance Window in the form of a cron or rate expression.

    :type Duration: integer
    :param Duration: The duration of the Maintenance Window in hours.

    :type Cutoff: integer
    :param Cutoff: The number of hours before the end of the Maintenance Window that Systems Manager stops scheduling new tasks for execution.

    :type AllowUnassociatedTargets: boolean
    :param AllowUnassociatedTargets: Whether targets must be registered with the Maintenance Window before tasks can be defined for those targets.

    :type Enabled: boolean
    :param Enabled: Whether the Maintenance Window is enabled.

    :rtype: dict
    :return: {
        'WindowId': 'string',
        'Name': 'string',
        'Schedule': 'string',
        'Duration': 123,
        'Cutoff': 123,
        'AllowUnassociatedTargets': True|False,
        'Enabled': True|False
    }
    
    
    """
    pass
