'xsi_type': 'Money',
                  'microAmount': str(bid_amount)
              }
          }]
      }
      adgroup_criterion = {
          'xsi_type': 'BiddableAdGroupCriterion',
          'biddingStrategyConfiguration': bidding_strategy_configuration
      }
    else:
      adgroup_criterion = {
          'xsi_type': 'NegativeAdGroupCriterion'
      }
    adgroup_criterion['adGroupId'] = adgroup_id
    adgroup_criterion['criterion'] = unit
    CreateAddOperation(adgroup_criterion)
    result = adgroup_criterion_service.mutate(adgroup_criterion_service)
    return unit
def CreateAddOperation(criterion):
    """Creates an AdGroupCriterionOperation for the given criterion.
    Args:
      criterion: The criterion we want to add.
    """
    operation = {
        'operator': 'ADD',
        'operand': criterion
    }
    operations.append(operation)
if __name__ == '__main__':
  adwords_client = adwords.AdWordsClient.LoadFromStorage('********.yaml')
  main(adwords_client)
I do not see where to modify the biddableadgroup criterion to the productpartition type -- this code is much more difficult for me to follow along with :(.