def create_rule(ListenerArn=None, Conditions=None, Priority=None, Actions=None
    ):
    """
    Creates a rule for the specified listener.
    Each rule can have one action and one condition. Rules are evaluated in priority order, from the lowest value to the highest value. When the condition for a rule is met, the specified action is taken. If no conditions are met, the default action for the default rule is taken. For more information, see Listener Rules in the Application Load Balancers Guide .
    To view your current rules, use  DescribeRules . To update a rule, use  ModifyRule . To set the priorities of your rules, use  SetRulePriorities . To delete a rule, use  DeleteRule .
    See also: AWS API Documentation
    
    Examples
    This example creates a rule that forwards requests to the specified target group if the URL contains the specified pattern (for example, /img/*).
    Expected Output:
    
    :example: response = client.create_rule(
        ListenerArn='string',
        Conditions=[
            {
                'Field': 'string',
                'Values': [
                    'string',
                ]
            },
        ],
        Priority=123,
        Actions=[
            {
                'Type': 'forward',
                'TargetGroupArn': 'string'
            },
        ]
    )
    
    
    :type ListenerArn: string
    :param ListenerArn: [REQUIRED]
            The Amazon Resource Name (ARN) of the listener.
            

    :type Conditions: list
    :param Conditions: [REQUIRED]
            A condition. Each condition specifies a field name and a single value.
            If the field name is host-header , you can specify a single host name (for example, my.example.com). A host name is case insensitive, can be up to 128 characters in length, and can contain any of the following characters. Note that you can include up to three wildcard characters.
            A-Z, a-z, 0-9
            .
            (matches 0 or more characters)
            ? (matches exactly 1 character)
            If the field name is path-pattern , you can specify a single path pattern. A path pattern is case sensitive, can be up to 128 characters in length, and can contain any of the following characters. Note that you can include up to three wildcard characters.
            A-Z, a-z, 0-9
            _ - . $ / ~ ' ' @ : +
            (using amp;)
            (matches 0 or more characters)
            ? (matches exactly 1 character)
            (dict) --Information about a condition for a rule.
            Field (string) --The name of the field. The possible values are host-header and path-pattern .
            Values (list) --The condition value.
            If the field name is host-header , you can specify a single host name (for example, my.example.com). A host name is case insensitive, can be up to 128 characters in length, and can contain any of the following characters. Note that you can include up to three wildcard characters.
            A-Z, a-z, 0-9
            .
            (matches 0 or more characters)
            ? (matches exactly 1 character)
            If the field name is path-pattern , you can specify a single path pattern (for example, /img/*). A path pattern is case sensitive, can be up to 128 characters in length, and can contain any of the following characters. Note that you can include up to three wildcard characters.
            A-Z, a-z, 0-9
            _ - . $ / ~ ' ' @ : +
            (using amp;)
            (matches 0 or more characters)
            ? (matches exactly 1 character)
            (string) --
            
            

    :type Priority: integer
    :param Priority: [REQUIRED]
            The priority for the rule. A listener can't have multiple rules with the same priority.
            

    :type Actions: list
    :param Actions: [REQUIRED]
            An action. Each action has the type forward and specifies a target group.
            (dict) --Information about an action.
            Type (string) -- [REQUIRED]The type of action.
            TargetGroupArn (string) -- [REQUIRED]The Amazon Resource Name (ARN) of the target group.
            
            

    :rtype: dict
    :return: {
        'Rules': [
            {
                'RuleArn': 'string',
                'Priority': 'string',
                'Conditions': [
                    {
                        'Field': 'string',
                        'Values': [
                            'string',
                        ]
                    },
                ],
                'Actions': [
                    {
                        'Type': 'forward',
                        'TargetGroupArn': 'string'
                    },
                ],
                'IsDefault': True|False
            },
        ]
    }
    
    
    :returns: 
    A-Z, a-z, 0-9
    
    .
    
    
    
    (matches 0 or more characters)
    
    
    ? (matches exactly 1 character)
    
    """
    pass
