code: def make_combined_condition(conditions_list, condition_name):
      
      if len(conditions_list) < 2:
          # Can't make a condition if <2 conditions provided.
          return None
  
      # Total number of conditions allows in an Fn::Or statement. See docs:
      # https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-conditions.html#intrinsic-function-reference-conditions-or
      max_conditions = 10
  
      conditions = {}
      conditions_length = len(conditions_list)
      # Get number of conditions needed, then minus one to use them as 0-based indices
      zero_based_num_conditions = calculate_number_of_conditions(conditions_length, max_conditions) - 1
  
      while len(conditions_list) > 1:
          new_condition_name = condition_name
          # If more than 1 new condition is needed, add a number to the end of the name
          if zero_based_num_conditions > 0:
              new_condition_name = '{}{}'.format(condition_name, zero_based_num_conditions)
              zero_based_num_conditions -= 1
          new_condition_content = make_or_condition(conditions_list[:max_conditions])
          conditions_list = conditions_list[max_conditions:]
          conditions_list.append(new_condition_name)
          conditions[new_condition_name] = new_condition_content
      return conditions
docs: Makes a combined condition using Fn::Or. Since Fn::Or only accepts up to 10 conditions,
      this method optionally creates multiple conditions. These conditions are named based on
      the condition_name parameter that is passed into the method.
  
      :param list conditions_list: list of conditions
      :param string condition_name: base name desired for new condition
      :return: dictionary of condition_name: condition_value