Subversion Repositories SmartDukaan

Rev

Rev 9049 | Blame | Compare with Previous | Last modification | View Log | RSS feed

#
# Autogenerated by Thrift Compiler (0.7.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#

from thrift.Thrift import *
import shop2020.thriftpy.generic.GenericService
from ttypes import *
from thrift.Thrift import TProcessor
from thrift.transport import TTransport
from thrift.protocol import TBinaryProtocol, TProtocol
try:
  from thrift.protocol import fastbinary
except:
  fastbinary = None


class Iface(shop2020.thriftpy.generic.GenericService.Iface):
  def addAdwordsCampaign(self, campaign):
    """
    Parameters:
     - campaign
    """
    pass

  def addAdwordsAdGroup(self, adgroup):
    """
    Parameters:
     - adgroup
    """
    pass

  def addAdwordsAdGroupAd(self, adgroupad):
    """
    Parameters:
     - adgroupad
    """
    pass

  def addAdwordsAdKeyword(self, adkeyword):
    """
    Parameters:
     - adkeyword
    """
    pass

  def updateAdwordsCampaign(self, campaign):
    """
    Parameters:
     - campaign
    """
    pass

  def updateAdwordsAdGroup(self, adgroup):
    """
    Parameters:
     - adgroup
    """
    pass

  def updateAdwordsAdKeyword(self, adkeyword):
    """
    Parameters:
     - adkeyword
    """
    pass

  def updateAdwordsAdGroupAd(self, adgroupad):
    """
    Parameters:
     - adgroupad
    """
    pass

  def deleteAdwordsCampaign(self, campaignId):
    """
    Parameters:
     - campaignId
    """
    pass

  def deleteAdwordsAdGroup(self, adgroupId):
    """
    Parameters:
     - adgroupId
    """
    pass

  def deleteAdwordsAdGroupAd(self, adgroupadId):
    """
    Parameters:
     - adgroupadId
    """
    pass

  def deleteAdwordsAdKeyword(self, criterionId):
    """
    Parameters:
     - criterionId
    """
    pass

  def getAdwordsCampaignByCampaignId(self, campaignId):
    """
    Parameters:
     - campaignId
    """
    pass

  def getAdwordsAdGroupByAdGroupId(self, adgroupId):
    """
    Parameters:
     - adgroupId
    """
    pass

  def getAdwordsAdgroupAdByAdId(self, adgroupadId):
    """
    Parameters:
     - adgroupadId
    """
    pass

  def getAdwordsAdKeywordByCriterionIdAndAdGroupId(self, criterionId, adgroupId):
    """
    Parameters:
     - criterionId
     - adgroupId
    """
    pass

  def getAdwordsAdKeywordsByAdgroupId(self, adgroupId):
    """
    Parameters:
     - adgroupId
    """
    pass

  def getAdwordsAdGroupAdsByAdgroupId(self, adgroupId):
    """
    Parameters:
     - adgroupId
    """
    pass

  def getAdwordsAdGroupsByCampaignId(self, campaignId):
    """
    Parameters:
     - campaignId
    """
    pass

  def getAllAdwordsCampaigns(self, ):
    pass

  def getAllAdwordsAdGroups(self, ):
    pass

  def getAllAdwordsAdGroupAds(self, ):
    pass

  def getAllAdwordsAdKeywords(self, ):
    pass


class Client(shop2020.thriftpy.generic.GenericService.Client, Iface):
  def __init__(self, iprot, oprot=None):
    shop2020.thriftpy.generic.GenericService.Client.__init__(self, iprot, oprot)

  def addAdwordsCampaign(self, campaign):
    """
    Parameters:
     - campaign
    """
    self.send_addAdwordsCampaign(campaign)
    self.recv_addAdwordsCampaign()

  def send_addAdwordsCampaign(self, campaign):
    self._oprot.writeMessageBegin('addAdwordsCampaign', TMessageType.CALL, self._seqid)
    args = addAdwordsCampaign_args()
    args.campaign = campaign
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_addAdwordsCampaign(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = addAdwordsCampaign_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def addAdwordsAdGroup(self, adgroup):
    """
    Parameters:
     - adgroup
    """
    self.send_addAdwordsAdGroup(adgroup)
    self.recv_addAdwordsAdGroup()

  def send_addAdwordsAdGroup(self, adgroup):
    self._oprot.writeMessageBegin('addAdwordsAdGroup', TMessageType.CALL, self._seqid)
    args = addAdwordsAdGroup_args()
    args.adgroup = adgroup
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_addAdwordsAdGroup(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = addAdwordsAdGroup_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def addAdwordsAdGroupAd(self, adgroupad):
    """
    Parameters:
     - adgroupad
    """
    self.send_addAdwordsAdGroupAd(adgroupad)
    self.recv_addAdwordsAdGroupAd()

  def send_addAdwordsAdGroupAd(self, adgroupad):
    self._oprot.writeMessageBegin('addAdwordsAdGroupAd', TMessageType.CALL, self._seqid)
    args = addAdwordsAdGroupAd_args()
    args.adgroupad = adgroupad
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_addAdwordsAdGroupAd(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = addAdwordsAdGroupAd_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def addAdwordsAdKeyword(self, adkeyword):
    """
    Parameters:
     - adkeyword
    """
    self.send_addAdwordsAdKeyword(adkeyword)
    self.recv_addAdwordsAdKeyword()

  def send_addAdwordsAdKeyword(self, adkeyword):
    self._oprot.writeMessageBegin('addAdwordsAdKeyword', TMessageType.CALL, self._seqid)
    args = addAdwordsAdKeyword_args()
    args.adkeyword = adkeyword
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_addAdwordsAdKeyword(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = addAdwordsAdKeyword_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def updateAdwordsCampaign(self, campaign):
    """
    Parameters:
     - campaign
    """
    self.send_updateAdwordsCampaign(campaign)
    self.recv_updateAdwordsCampaign()

  def send_updateAdwordsCampaign(self, campaign):
    self._oprot.writeMessageBegin('updateAdwordsCampaign', TMessageType.CALL, self._seqid)
    args = updateAdwordsCampaign_args()
    args.campaign = campaign
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_updateAdwordsCampaign(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = updateAdwordsCampaign_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def updateAdwordsAdGroup(self, adgroup):
    """
    Parameters:
     - adgroup
    """
    self.send_updateAdwordsAdGroup(adgroup)
    self.recv_updateAdwordsAdGroup()

  def send_updateAdwordsAdGroup(self, adgroup):
    self._oprot.writeMessageBegin('updateAdwordsAdGroup', TMessageType.CALL, self._seqid)
    args = updateAdwordsAdGroup_args()
    args.adgroup = adgroup
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_updateAdwordsAdGroup(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = updateAdwordsAdGroup_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def updateAdwordsAdKeyword(self, adkeyword):
    """
    Parameters:
     - adkeyword
    """
    self.send_updateAdwordsAdKeyword(adkeyword)
    self.recv_updateAdwordsAdKeyword()

  def send_updateAdwordsAdKeyword(self, adkeyword):
    self._oprot.writeMessageBegin('updateAdwordsAdKeyword', TMessageType.CALL, self._seqid)
    args = updateAdwordsAdKeyword_args()
    args.adkeyword = adkeyword
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_updateAdwordsAdKeyword(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = updateAdwordsAdKeyword_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def updateAdwordsAdGroupAd(self, adgroupad):
    """
    Parameters:
     - adgroupad
    """
    self.send_updateAdwordsAdGroupAd(adgroupad)
    self.recv_updateAdwordsAdGroupAd()

  def send_updateAdwordsAdGroupAd(self, adgroupad):
    self._oprot.writeMessageBegin('updateAdwordsAdGroupAd', TMessageType.CALL, self._seqid)
    args = updateAdwordsAdGroupAd_args()
    args.adgroupad = adgroupad
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_updateAdwordsAdGroupAd(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = updateAdwordsAdGroupAd_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def deleteAdwordsCampaign(self, campaignId):
    """
    Parameters:
     - campaignId
    """
    self.send_deleteAdwordsCampaign(campaignId)
    self.recv_deleteAdwordsCampaign()

  def send_deleteAdwordsCampaign(self, campaignId):
    self._oprot.writeMessageBegin('deleteAdwordsCampaign', TMessageType.CALL, self._seqid)
    args = deleteAdwordsCampaign_args()
    args.campaignId = campaignId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_deleteAdwordsCampaign(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = deleteAdwordsCampaign_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def deleteAdwordsAdGroup(self, adgroupId):
    """
    Parameters:
     - adgroupId
    """
    self.send_deleteAdwordsAdGroup(adgroupId)
    self.recv_deleteAdwordsAdGroup()

  def send_deleteAdwordsAdGroup(self, adgroupId):
    self._oprot.writeMessageBegin('deleteAdwordsAdGroup', TMessageType.CALL, self._seqid)
    args = deleteAdwordsAdGroup_args()
    args.adgroupId = adgroupId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_deleteAdwordsAdGroup(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = deleteAdwordsAdGroup_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def deleteAdwordsAdGroupAd(self, adgroupadId):
    """
    Parameters:
     - adgroupadId
    """
    self.send_deleteAdwordsAdGroupAd(adgroupadId)
    self.recv_deleteAdwordsAdGroupAd()

  def send_deleteAdwordsAdGroupAd(self, adgroupadId):
    self._oprot.writeMessageBegin('deleteAdwordsAdGroupAd', TMessageType.CALL, self._seqid)
    args = deleteAdwordsAdGroupAd_args()
    args.adgroupadId = adgroupadId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_deleteAdwordsAdGroupAd(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = deleteAdwordsAdGroupAd_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def deleteAdwordsAdKeyword(self, criterionId):
    """
    Parameters:
     - criterionId
    """
    self.send_deleteAdwordsAdKeyword(criterionId)
    self.recv_deleteAdwordsAdKeyword()

  def send_deleteAdwordsAdKeyword(self, criterionId):
    self._oprot.writeMessageBegin('deleteAdwordsAdKeyword', TMessageType.CALL, self._seqid)
    args = deleteAdwordsAdKeyword_args()
    args.criterionId = criterionId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_deleteAdwordsAdKeyword(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = deleteAdwordsAdKeyword_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.gasex is not None:
      raise result.gasex
    return

  def getAdwordsCampaignByCampaignId(self, campaignId):
    """
    Parameters:
     - campaignId
    """
    self.send_getAdwordsCampaignByCampaignId(campaignId)
    return self.recv_getAdwordsCampaignByCampaignId()

  def send_getAdwordsCampaignByCampaignId(self, campaignId):
    self._oprot.writeMessageBegin('getAdwordsCampaignByCampaignId', TMessageType.CALL, self._seqid)
    args = getAdwordsCampaignByCampaignId_args()
    args.campaignId = campaignId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAdwordsCampaignByCampaignId(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAdwordsCampaignByCampaignId_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAdwordsCampaignByCampaignId failed: unknown result");

  def getAdwordsAdGroupByAdGroupId(self, adgroupId):
    """
    Parameters:
     - adgroupId
    """
    self.send_getAdwordsAdGroupByAdGroupId(adgroupId)
    return self.recv_getAdwordsAdGroupByAdGroupId()

  def send_getAdwordsAdGroupByAdGroupId(self, adgroupId):
    self._oprot.writeMessageBegin('getAdwordsAdGroupByAdGroupId', TMessageType.CALL, self._seqid)
    args = getAdwordsAdGroupByAdGroupId_args()
    args.adgroupId = adgroupId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAdwordsAdGroupByAdGroupId(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAdwordsAdGroupByAdGroupId_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAdwordsAdGroupByAdGroupId failed: unknown result");

  def getAdwordsAdgroupAdByAdId(self, adgroupadId):
    """
    Parameters:
     - adgroupadId
    """
    self.send_getAdwordsAdgroupAdByAdId(adgroupadId)
    return self.recv_getAdwordsAdgroupAdByAdId()

  def send_getAdwordsAdgroupAdByAdId(self, adgroupadId):
    self._oprot.writeMessageBegin('getAdwordsAdgroupAdByAdId', TMessageType.CALL, self._seqid)
    args = getAdwordsAdgroupAdByAdId_args()
    args.adgroupadId = adgroupadId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAdwordsAdgroupAdByAdId(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAdwordsAdgroupAdByAdId_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAdwordsAdgroupAdByAdId failed: unknown result");

  def getAdwordsAdKeywordByCriterionIdAndAdGroupId(self, criterionId, adgroupId):
    """
    Parameters:
     - criterionId
     - adgroupId
    """
    self.send_getAdwordsAdKeywordByCriterionIdAndAdGroupId(criterionId, adgroupId)
    return self.recv_getAdwordsAdKeywordByCriterionIdAndAdGroupId()

  def send_getAdwordsAdKeywordByCriterionIdAndAdGroupId(self, criterionId, adgroupId):
    self._oprot.writeMessageBegin('getAdwordsAdKeywordByCriterionIdAndAdGroupId', TMessageType.CALL, self._seqid)
    args = getAdwordsAdKeywordByCriterionIdAndAdGroupId_args()
    args.criterionId = criterionId
    args.adgroupId = adgroupId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAdwordsAdKeywordByCriterionIdAndAdGroupId(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAdwordsAdKeywordByCriterionIdAndAdGroupId_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAdwordsAdKeywordByCriterionIdAndAdGroupId failed: unknown result");

  def getAdwordsAdKeywordsByAdgroupId(self, adgroupId):
    """
    Parameters:
     - adgroupId
    """
    self.send_getAdwordsAdKeywordsByAdgroupId(adgroupId)
    return self.recv_getAdwordsAdKeywordsByAdgroupId()

  def send_getAdwordsAdKeywordsByAdgroupId(self, adgroupId):
    self._oprot.writeMessageBegin('getAdwordsAdKeywordsByAdgroupId', TMessageType.CALL, self._seqid)
    args = getAdwordsAdKeywordsByAdgroupId_args()
    args.adgroupId = adgroupId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAdwordsAdKeywordsByAdgroupId(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAdwordsAdKeywordsByAdgroupId_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAdwordsAdKeywordsByAdgroupId failed: unknown result");

  def getAdwordsAdGroupAdsByAdgroupId(self, adgroupId):
    """
    Parameters:
     - adgroupId
    """
    self.send_getAdwordsAdGroupAdsByAdgroupId(adgroupId)
    return self.recv_getAdwordsAdGroupAdsByAdgroupId()

  def send_getAdwordsAdGroupAdsByAdgroupId(self, adgroupId):
    self._oprot.writeMessageBegin('getAdwordsAdGroupAdsByAdgroupId', TMessageType.CALL, self._seqid)
    args = getAdwordsAdGroupAdsByAdgroupId_args()
    args.adgroupId = adgroupId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAdwordsAdGroupAdsByAdgroupId(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAdwordsAdGroupAdsByAdgroupId_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAdwordsAdGroupAdsByAdgroupId failed: unknown result");

  def getAdwordsAdGroupsByCampaignId(self, campaignId):
    """
    Parameters:
     - campaignId
    """
    self.send_getAdwordsAdGroupsByCampaignId(campaignId)
    return self.recv_getAdwordsAdGroupsByCampaignId()

  def send_getAdwordsAdGroupsByCampaignId(self, campaignId):
    self._oprot.writeMessageBegin('getAdwordsAdGroupsByCampaignId', TMessageType.CALL, self._seqid)
    args = getAdwordsAdGroupsByCampaignId_args()
    args.campaignId = campaignId
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAdwordsAdGroupsByCampaignId(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAdwordsAdGroupsByCampaignId_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAdwordsAdGroupsByCampaignId failed: unknown result");

  def getAllAdwordsCampaigns(self, ):
    self.send_getAllAdwordsCampaigns()
    return self.recv_getAllAdwordsCampaigns()

  def send_getAllAdwordsCampaigns(self, ):
    self._oprot.writeMessageBegin('getAllAdwordsCampaigns', TMessageType.CALL, self._seqid)
    args = getAllAdwordsCampaigns_args()
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAllAdwordsCampaigns(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAllAdwordsCampaigns_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllAdwordsCampaigns failed: unknown result");

  def getAllAdwordsAdGroups(self, ):
    self.send_getAllAdwordsAdGroups()
    return self.recv_getAllAdwordsAdGroups()

  def send_getAllAdwordsAdGroups(self, ):
    self._oprot.writeMessageBegin('getAllAdwordsAdGroups', TMessageType.CALL, self._seqid)
    args = getAllAdwordsAdGroups_args()
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAllAdwordsAdGroups(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAllAdwordsAdGroups_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllAdwordsAdGroups failed: unknown result");

  def getAllAdwordsAdGroupAds(self, ):
    self.send_getAllAdwordsAdGroupAds()
    return self.recv_getAllAdwordsAdGroupAds()

  def send_getAllAdwordsAdGroupAds(self, ):
    self._oprot.writeMessageBegin('getAllAdwordsAdGroupAds', TMessageType.CALL, self._seqid)
    args = getAllAdwordsAdGroupAds_args()
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAllAdwordsAdGroupAds(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAllAdwordsAdGroupAds_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllAdwordsAdGroupAds failed: unknown result");

  def getAllAdwordsAdKeywords(self, ):
    self.send_getAllAdwordsAdKeywords()
    return self.recv_getAllAdwordsAdKeywords()

  def send_getAllAdwordsAdKeywords(self, ):
    self._oprot.writeMessageBegin('getAllAdwordsAdKeywords', TMessageType.CALL, self._seqid)
    args = getAllAdwordsAdKeywords_args()
    args.write(self._oprot)
    self._oprot.writeMessageEnd()
    self._oprot.trans.flush()

  def recv_getAllAdwordsAdKeywords(self, ):
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
    if mtype == TMessageType.EXCEPTION:
      x = TApplicationException()
      x.read(self._iprot)
      self._iprot.readMessageEnd()
      raise x
    result = getAllAdwordsAdKeywords_result()
    result.read(self._iprot)
    self._iprot.readMessageEnd()
    if result.success is not None:
      return result.success
    if result.gasex is not None:
      raise result.gasex
    raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllAdwordsAdKeywords failed: unknown result");


class Processor(shop2020.thriftpy.generic.GenericService.Processor, Iface, TProcessor):
  def __init__(self, handler):
    shop2020.thriftpy.generic.GenericService.Processor.__init__(self, handler)
    self._processMap["addAdwordsCampaign"] = Processor.process_addAdwordsCampaign
    self._processMap["addAdwordsAdGroup"] = Processor.process_addAdwordsAdGroup
    self._processMap["addAdwordsAdGroupAd"] = Processor.process_addAdwordsAdGroupAd
    self._processMap["addAdwordsAdKeyword"] = Processor.process_addAdwordsAdKeyword
    self._processMap["updateAdwordsCampaign"] = Processor.process_updateAdwordsCampaign
    self._processMap["updateAdwordsAdGroup"] = Processor.process_updateAdwordsAdGroup
    self._processMap["updateAdwordsAdKeyword"] = Processor.process_updateAdwordsAdKeyword
    self._processMap["updateAdwordsAdGroupAd"] = Processor.process_updateAdwordsAdGroupAd
    self._processMap["deleteAdwordsCampaign"] = Processor.process_deleteAdwordsCampaign
    self._processMap["deleteAdwordsAdGroup"] = Processor.process_deleteAdwordsAdGroup
    self._processMap["deleteAdwordsAdGroupAd"] = Processor.process_deleteAdwordsAdGroupAd
    self._processMap["deleteAdwordsAdKeyword"] = Processor.process_deleteAdwordsAdKeyword
    self._processMap["getAdwordsCampaignByCampaignId"] = Processor.process_getAdwordsCampaignByCampaignId
    self._processMap["getAdwordsAdGroupByAdGroupId"] = Processor.process_getAdwordsAdGroupByAdGroupId
    self._processMap["getAdwordsAdgroupAdByAdId"] = Processor.process_getAdwordsAdgroupAdByAdId
    self._processMap["getAdwordsAdKeywordByCriterionIdAndAdGroupId"] = Processor.process_getAdwordsAdKeywordByCriterionIdAndAdGroupId
    self._processMap["getAdwordsAdKeywordsByAdgroupId"] = Processor.process_getAdwordsAdKeywordsByAdgroupId
    self._processMap["getAdwordsAdGroupAdsByAdgroupId"] = Processor.process_getAdwordsAdGroupAdsByAdgroupId
    self._processMap["getAdwordsAdGroupsByCampaignId"] = Processor.process_getAdwordsAdGroupsByCampaignId
    self._processMap["getAllAdwordsCampaigns"] = Processor.process_getAllAdwordsCampaigns
    self._processMap["getAllAdwordsAdGroups"] = Processor.process_getAllAdwordsAdGroups
    self._processMap["getAllAdwordsAdGroupAds"] = Processor.process_getAllAdwordsAdGroupAds
    self._processMap["getAllAdwordsAdKeywords"] = Processor.process_getAllAdwordsAdKeywords

  def process(self, iprot, oprot):
    (name, type, seqid) = iprot.readMessageBegin()
    if name not in self._processMap:
      iprot.skip(TType.STRUCT)
      iprot.readMessageEnd()
      x = TApplicationException(TApplicationException.UNKNOWN_METHOD, 'Unknown function %s' % (name))
      oprot.writeMessageBegin(name, TMessageType.EXCEPTION, seqid)
      x.write(oprot)
      oprot.writeMessageEnd()
      oprot.trans.flush()
      return
    else:
      self._processMap[name](self, seqid, iprot, oprot)
    return True

  def process_addAdwordsCampaign(self, seqid, iprot, oprot):
    args = addAdwordsCampaign_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = addAdwordsCampaign_result()
    try:
      self._handler.addAdwordsCampaign(args.campaign)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("addAdwordsCampaign", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_addAdwordsAdGroup(self, seqid, iprot, oprot):
    args = addAdwordsAdGroup_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = addAdwordsAdGroup_result()
    try:
      self._handler.addAdwordsAdGroup(args.adgroup)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("addAdwordsAdGroup", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_addAdwordsAdGroupAd(self, seqid, iprot, oprot):
    args = addAdwordsAdGroupAd_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = addAdwordsAdGroupAd_result()
    try:
      self._handler.addAdwordsAdGroupAd(args.adgroupad)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("addAdwordsAdGroupAd", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_addAdwordsAdKeyword(self, seqid, iprot, oprot):
    args = addAdwordsAdKeyword_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = addAdwordsAdKeyword_result()
    try:
      self._handler.addAdwordsAdKeyword(args.adkeyword)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("addAdwordsAdKeyword", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_updateAdwordsCampaign(self, seqid, iprot, oprot):
    args = updateAdwordsCampaign_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = updateAdwordsCampaign_result()
    try:
      self._handler.updateAdwordsCampaign(args.campaign)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("updateAdwordsCampaign", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_updateAdwordsAdGroup(self, seqid, iprot, oprot):
    args = updateAdwordsAdGroup_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = updateAdwordsAdGroup_result()
    try:
      self._handler.updateAdwordsAdGroup(args.adgroup)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("updateAdwordsAdGroup", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_updateAdwordsAdKeyword(self, seqid, iprot, oprot):
    args = updateAdwordsAdKeyword_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = updateAdwordsAdKeyword_result()
    try:
      self._handler.updateAdwordsAdKeyword(args.adkeyword)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("updateAdwordsAdKeyword", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_updateAdwordsAdGroupAd(self, seqid, iprot, oprot):
    args = updateAdwordsAdGroupAd_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = updateAdwordsAdGroupAd_result()
    try:
      self._handler.updateAdwordsAdGroupAd(args.adgroupad)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("updateAdwordsAdGroupAd", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_deleteAdwordsCampaign(self, seqid, iprot, oprot):
    args = deleteAdwordsCampaign_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = deleteAdwordsCampaign_result()
    try:
      self._handler.deleteAdwordsCampaign(args.campaignId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("deleteAdwordsCampaign", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_deleteAdwordsAdGroup(self, seqid, iprot, oprot):
    args = deleteAdwordsAdGroup_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = deleteAdwordsAdGroup_result()
    try:
      self._handler.deleteAdwordsAdGroup(args.adgroupId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("deleteAdwordsAdGroup", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_deleteAdwordsAdGroupAd(self, seqid, iprot, oprot):
    args = deleteAdwordsAdGroupAd_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = deleteAdwordsAdGroupAd_result()
    try:
      self._handler.deleteAdwordsAdGroupAd(args.adgroupadId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("deleteAdwordsAdGroupAd", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_deleteAdwordsAdKeyword(self, seqid, iprot, oprot):
    args = deleteAdwordsAdKeyword_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = deleteAdwordsAdKeyword_result()
    try:
      self._handler.deleteAdwordsAdKeyword(args.criterionId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("deleteAdwordsAdKeyword", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAdwordsCampaignByCampaignId(self, seqid, iprot, oprot):
    args = getAdwordsCampaignByCampaignId_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAdwordsCampaignByCampaignId_result()
    try:
      result.success = self._handler.getAdwordsCampaignByCampaignId(args.campaignId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAdwordsCampaignByCampaignId", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAdwordsAdGroupByAdGroupId(self, seqid, iprot, oprot):
    args = getAdwordsAdGroupByAdGroupId_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAdwordsAdGroupByAdGroupId_result()
    try:
      result.success = self._handler.getAdwordsAdGroupByAdGroupId(args.adgroupId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAdwordsAdGroupByAdGroupId", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAdwordsAdgroupAdByAdId(self, seqid, iprot, oprot):
    args = getAdwordsAdgroupAdByAdId_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAdwordsAdgroupAdByAdId_result()
    try:
      result.success = self._handler.getAdwordsAdgroupAdByAdId(args.adgroupadId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAdwordsAdgroupAdByAdId", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAdwordsAdKeywordByCriterionIdAndAdGroupId(self, seqid, iprot, oprot):
    args = getAdwordsAdKeywordByCriterionIdAndAdGroupId_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAdwordsAdKeywordByCriterionIdAndAdGroupId_result()
    try:
      result.success = self._handler.getAdwordsAdKeywordByCriterionIdAndAdGroupId(args.criterionId, args.adgroupId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAdwordsAdKeywordByCriterionIdAndAdGroupId", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAdwordsAdKeywordsByAdgroupId(self, seqid, iprot, oprot):
    args = getAdwordsAdKeywordsByAdgroupId_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAdwordsAdKeywordsByAdgroupId_result()
    try:
      result.success = self._handler.getAdwordsAdKeywordsByAdgroupId(args.adgroupId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAdwordsAdKeywordsByAdgroupId", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAdwordsAdGroupAdsByAdgroupId(self, seqid, iprot, oprot):
    args = getAdwordsAdGroupAdsByAdgroupId_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAdwordsAdGroupAdsByAdgroupId_result()
    try:
      result.success = self._handler.getAdwordsAdGroupAdsByAdgroupId(args.adgroupId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAdwordsAdGroupAdsByAdgroupId", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAdwordsAdGroupsByCampaignId(self, seqid, iprot, oprot):
    args = getAdwordsAdGroupsByCampaignId_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAdwordsAdGroupsByCampaignId_result()
    try:
      result.success = self._handler.getAdwordsAdGroupsByCampaignId(args.campaignId)
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAdwordsAdGroupsByCampaignId", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAllAdwordsCampaigns(self, seqid, iprot, oprot):
    args = getAllAdwordsCampaigns_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAllAdwordsCampaigns_result()
    try:
      result.success = self._handler.getAllAdwordsCampaigns()
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAllAdwordsCampaigns", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAllAdwordsAdGroups(self, seqid, iprot, oprot):
    args = getAllAdwordsAdGroups_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAllAdwordsAdGroups_result()
    try:
      result.success = self._handler.getAllAdwordsAdGroups()
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAllAdwordsAdGroups", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAllAdwordsAdGroupAds(self, seqid, iprot, oprot):
    args = getAllAdwordsAdGroupAds_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAllAdwordsAdGroupAds_result()
    try:
      result.success = self._handler.getAllAdwordsAdGroupAds()
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAllAdwordsAdGroupAds", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()

  def process_getAllAdwordsAdKeywords(self, seqid, iprot, oprot):
    args = getAllAdwordsAdKeywords_args()
    args.read(iprot)
    iprot.readMessageEnd()
    result = getAllAdwordsAdKeywords_result()
    try:
      result.success = self._handler.getAllAdwordsAdKeywords()
    except GoogleAdwordsServiceException, gasex:
      result.gasex = gasex
    oprot.writeMessageBegin("getAllAdwordsAdKeywords", TMessageType.REPLY, seqid)
    result.write(oprot)
    oprot.writeMessageEnd()
    oprot.trans.flush()


# HELPER FUNCTIONS AND STRUCTURES

class addAdwordsCampaign_args:
  """
  Attributes:
   - campaign
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'campaign', (AdwordsCampaign, AdwordsCampaign.thrift_spec), None, ), # 1
  )

  def __init__(self, campaign=None,):
    self.campaign = campaign

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.campaign = AdwordsCampaign()
          self.campaign.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('addAdwordsCampaign_args')
    if self.campaign is not None:
      oprot.writeFieldBegin('campaign', TType.STRUCT, 1)
      self.campaign.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class addAdwordsCampaign_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('addAdwordsCampaign_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class addAdwordsAdGroup_args:
  """
  Attributes:
   - adgroup
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'adgroup', (AdwordsAdGroup, AdwordsAdGroup.thrift_spec), None, ), # 1
  )

  def __init__(self, adgroup=None,):
    self.adgroup = adgroup

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.adgroup = AdwordsAdGroup()
          self.adgroup.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('addAdwordsAdGroup_args')
    if self.adgroup is not None:
      oprot.writeFieldBegin('adgroup', TType.STRUCT, 1)
      self.adgroup.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class addAdwordsAdGroup_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('addAdwordsAdGroup_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class addAdwordsAdGroupAd_args:
  """
  Attributes:
   - adgroupad
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'adgroupad', (AdwordsAdGroupAd, AdwordsAdGroupAd.thrift_spec), None, ), # 1
  )

  def __init__(self, adgroupad=None,):
    self.adgroupad = adgroupad

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.adgroupad = AdwordsAdGroupAd()
          self.adgroupad.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('addAdwordsAdGroupAd_args')
    if self.adgroupad is not None:
      oprot.writeFieldBegin('adgroupad', TType.STRUCT, 1)
      self.adgroupad.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class addAdwordsAdGroupAd_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('addAdwordsAdGroupAd_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class addAdwordsAdKeyword_args:
  """
  Attributes:
   - adkeyword
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'adkeyword', (AdwordsAdKeyword, AdwordsAdKeyword.thrift_spec), None, ), # 1
  )

  def __init__(self, adkeyword=None,):
    self.adkeyword = adkeyword

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.adkeyword = AdwordsAdKeyword()
          self.adkeyword.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('addAdwordsAdKeyword_args')
    if self.adkeyword is not None:
      oprot.writeFieldBegin('adkeyword', TType.STRUCT, 1)
      self.adkeyword.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class addAdwordsAdKeyword_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('addAdwordsAdKeyword_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class updateAdwordsCampaign_args:
  """
  Attributes:
   - campaign
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'campaign', (AdwordsCampaign, AdwordsCampaign.thrift_spec), None, ), # 1
  )

  def __init__(self, campaign=None,):
    self.campaign = campaign

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.campaign = AdwordsCampaign()
          self.campaign.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('updateAdwordsCampaign_args')
    if self.campaign is not None:
      oprot.writeFieldBegin('campaign', TType.STRUCT, 1)
      self.campaign.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class updateAdwordsCampaign_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('updateAdwordsCampaign_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class updateAdwordsAdGroup_args:
  """
  Attributes:
   - adgroup
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'adgroup', (AdwordsAdGroup, AdwordsAdGroup.thrift_spec), None, ), # 1
  )

  def __init__(self, adgroup=None,):
    self.adgroup = adgroup

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.adgroup = AdwordsAdGroup()
          self.adgroup.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('updateAdwordsAdGroup_args')
    if self.adgroup is not None:
      oprot.writeFieldBegin('adgroup', TType.STRUCT, 1)
      self.adgroup.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class updateAdwordsAdGroup_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('updateAdwordsAdGroup_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class updateAdwordsAdKeyword_args:
  """
  Attributes:
   - adkeyword
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'adkeyword', (AdwordsAdKeyword, AdwordsAdKeyword.thrift_spec), None, ), # 1
  )

  def __init__(self, adkeyword=None,):
    self.adkeyword = adkeyword

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.adkeyword = AdwordsAdKeyword()
          self.adkeyword.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('updateAdwordsAdKeyword_args')
    if self.adkeyword is not None:
      oprot.writeFieldBegin('adkeyword', TType.STRUCT, 1)
      self.adkeyword.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class updateAdwordsAdKeyword_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('updateAdwordsAdKeyword_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class updateAdwordsAdGroupAd_args:
  """
  Attributes:
   - adgroupad
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'adgroupad', (AdwordsAdGroupAd, AdwordsAdGroupAd.thrift_spec), None, ), # 1
  )

  def __init__(self, adgroupad=None,):
    self.adgroupad = adgroupad

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.adgroupad = AdwordsAdGroupAd()
          self.adgroupad.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('updateAdwordsAdGroupAd_args')
    if self.adgroupad is not None:
      oprot.writeFieldBegin('adgroupad', TType.STRUCT, 1)
      self.adgroupad.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class updateAdwordsAdGroupAd_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('updateAdwordsAdGroupAd_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class deleteAdwordsCampaign_args:
  """
  Attributes:
   - campaignId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'campaignId', None, None, ), # 1
  )

  def __init__(self, campaignId=None,):
    self.campaignId = campaignId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.campaignId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('deleteAdwordsCampaign_args')
    if self.campaignId is not None:
      oprot.writeFieldBegin('campaignId', TType.I64, 1)
      oprot.writeI64(self.campaignId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class deleteAdwordsCampaign_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('deleteAdwordsCampaign_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class deleteAdwordsAdGroup_args:
  """
  Attributes:
   - adgroupId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'adgroupId', None, None, ), # 1
  )

  def __init__(self, adgroupId=None,):
    self.adgroupId = adgroupId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.adgroupId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('deleteAdwordsAdGroup_args')
    if self.adgroupId is not None:
      oprot.writeFieldBegin('adgroupId', TType.I64, 1)
      oprot.writeI64(self.adgroupId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class deleteAdwordsAdGroup_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('deleteAdwordsAdGroup_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class deleteAdwordsAdGroupAd_args:
  """
  Attributes:
   - adgroupadId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'adgroupadId', None, None, ), # 1
  )

  def __init__(self, adgroupadId=None,):
    self.adgroupadId = adgroupadId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.adgroupadId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('deleteAdwordsAdGroupAd_args')
    if self.adgroupadId is not None:
      oprot.writeFieldBegin('adgroupadId', TType.I64, 1)
      oprot.writeI64(self.adgroupadId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class deleteAdwordsAdGroupAd_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('deleteAdwordsAdGroupAd_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class deleteAdwordsAdKeyword_args:
  """
  Attributes:
   - criterionId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'criterionId', None, None, ), # 1
  )

  def __init__(self, criterionId=None,):
    self.criterionId = criterionId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.criterionId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('deleteAdwordsAdKeyword_args')
    if self.criterionId is not None:
      oprot.writeFieldBegin('criterionId', TType.I64, 1)
      oprot.writeI64(self.criterionId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class deleteAdwordsAdKeyword_result:
  """
  Attributes:
   - gasex
  """

  thrift_spec = (
    None, # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, gasex=None,):
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('deleteAdwordsAdKeyword_result')
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsCampaignByCampaignId_args:
  """
  Attributes:
   - campaignId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'campaignId', None, None, ), # 1
  )

  def __init__(self, campaignId=None,):
    self.campaignId = campaignId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.campaignId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsCampaignByCampaignId_args')
    if self.campaignId is not None:
      oprot.writeFieldBegin('campaignId', TType.I64, 1)
      oprot.writeI64(self.campaignId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsCampaignByCampaignId_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.STRUCT, 'success', (AdwordsCampaign, AdwordsCampaign.thrift_spec), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.STRUCT:
          self.success = AdwordsCampaign()
          self.success.read(iprot)
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsCampaignByCampaignId_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.STRUCT, 0)
      self.success.write(oprot)
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdGroupByAdGroupId_args:
  """
  Attributes:
   - adgroupId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'adgroupId', None, None, ), # 1
  )

  def __init__(self, adgroupId=None,):
    self.adgroupId = adgroupId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.adgroupId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdGroupByAdGroupId_args')
    if self.adgroupId is not None:
      oprot.writeFieldBegin('adgroupId', TType.I64, 1)
      oprot.writeI64(self.adgroupId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdGroupByAdGroupId_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.STRUCT, 'success', (AdwordsAdGroup, AdwordsAdGroup.thrift_spec), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.STRUCT:
          self.success = AdwordsAdGroup()
          self.success.read(iprot)
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdGroupByAdGroupId_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.STRUCT, 0)
      self.success.write(oprot)
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdgroupAdByAdId_args:
  """
  Attributes:
   - adgroupadId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'adgroupadId', None, None, ), # 1
  )

  def __init__(self, adgroupadId=None,):
    self.adgroupadId = adgroupadId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.adgroupadId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdgroupAdByAdId_args')
    if self.adgroupadId is not None:
      oprot.writeFieldBegin('adgroupadId', TType.I64, 1)
      oprot.writeI64(self.adgroupadId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdgroupAdByAdId_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.STRUCT, 'success', (AdwordsAdGroupAd, AdwordsAdGroupAd.thrift_spec), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.STRUCT:
          self.success = AdwordsAdGroupAd()
          self.success.read(iprot)
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdgroupAdByAdId_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.STRUCT, 0)
      self.success.write(oprot)
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdKeywordByCriterionIdAndAdGroupId_args:
  """
  Attributes:
   - criterionId
   - adgroupId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'criterionId', None, None, ), # 1
    (2, TType.I64, 'adgroupId', None, None, ), # 2
  )

  def __init__(self, criterionId=None, adgroupId=None,):
    self.criterionId = criterionId
    self.adgroupId = adgroupId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.criterionId = iprot.readI64();
        else:
          iprot.skip(ftype)
      elif fid == 2:
        if ftype == TType.I64:
          self.adgroupId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdKeywordByCriterionIdAndAdGroupId_args')
    if self.criterionId is not None:
      oprot.writeFieldBegin('criterionId', TType.I64, 1)
      oprot.writeI64(self.criterionId)
      oprot.writeFieldEnd()
    if self.adgroupId is not None:
      oprot.writeFieldBegin('adgroupId', TType.I64, 2)
      oprot.writeI64(self.adgroupId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdKeywordByCriterionIdAndAdGroupId_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.STRUCT, 'success', (AdwordsAdKeyword, AdwordsAdKeyword.thrift_spec), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.STRUCT:
          self.success = AdwordsAdKeyword()
          self.success.read(iprot)
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdKeywordByCriterionIdAndAdGroupId_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.STRUCT, 0)
      self.success.write(oprot)
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdKeywordsByAdgroupId_args:
  """
  Attributes:
   - adgroupId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'adgroupId', None, None, ), # 1
  )

  def __init__(self, adgroupId=None,):
    self.adgroupId = adgroupId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.adgroupId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdKeywordsByAdgroupId_args')
    if self.adgroupId is not None:
      oprot.writeFieldBegin('adgroupId', TType.I64, 1)
      oprot.writeI64(self.adgroupId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdKeywordsByAdgroupId_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.LIST, 'success', (TType.STRUCT,(AdwordsAdKeyword, AdwordsAdKeyword.thrift_spec)), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.LIST:
          self.success = []
          (_etype3, _size0) = iprot.readListBegin()
          for _i4 in xrange(_size0):
            _elem5 = AdwordsAdKeyword()
            _elem5.read(iprot)
            self.success.append(_elem5)
          iprot.readListEnd()
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdKeywordsByAdgroupId_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.LIST, 0)
      oprot.writeListBegin(TType.STRUCT, len(self.success))
      for iter6 in self.success:
        iter6.write(oprot)
      oprot.writeListEnd()
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdGroupAdsByAdgroupId_args:
  """
  Attributes:
   - adgroupId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'adgroupId', None, None, ), # 1
  )

  def __init__(self, adgroupId=None,):
    self.adgroupId = adgroupId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.adgroupId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdGroupAdsByAdgroupId_args')
    if self.adgroupId is not None:
      oprot.writeFieldBegin('adgroupId', TType.I64, 1)
      oprot.writeI64(self.adgroupId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdGroupAdsByAdgroupId_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.LIST, 'success', (TType.STRUCT,(AdwordsAdGroupAd, AdwordsAdGroupAd.thrift_spec)), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.LIST:
          self.success = []
          (_etype10, _size7) = iprot.readListBegin()
          for _i11 in xrange(_size7):
            _elem12 = AdwordsAdGroupAd()
            _elem12.read(iprot)
            self.success.append(_elem12)
          iprot.readListEnd()
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdGroupAdsByAdgroupId_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.LIST, 0)
      oprot.writeListBegin(TType.STRUCT, len(self.success))
      for iter13 in self.success:
        iter13.write(oprot)
      oprot.writeListEnd()
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdGroupsByCampaignId_args:
  """
  Attributes:
   - campaignId
  """

  thrift_spec = (
    None, # 0
    (1, TType.I64, 'campaignId', None, None, ), # 1
  )

  def __init__(self, campaignId=None,):
    self.campaignId = campaignId

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 1:
        if ftype == TType.I64:
          self.campaignId = iprot.readI64();
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdGroupsByCampaignId_args')
    if self.campaignId is not None:
      oprot.writeFieldBegin('campaignId', TType.I64, 1)
      oprot.writeI64(self.campaignId)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAdwordsAdGroupsByCampaignId_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.LIST, 'success', (TType.STRUCT,(AdwordsAdGroup, AdwordsAdGroup.thrift_spec)), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.LIST:
          self.success = []
          (_etype17, _size14) = iprot.readListBegin()
          for _i18 in xrange(_size14):
            _elem19 = AdwordsAdGroup()
            _elem19.read(iprot)
            self.success.append(_elem19)
          iprot.readListEnd()
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAdwordsAdGroupsByCampaignId_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.LIST, 0)
      oprot.writeListBegin(TType.STRUCT, len(self.success))
      for iter20 in self.success:
        iter20.write(oprot)
      oprot.writeListEnd()
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAllAdwordsCampaigns_args:

  thrift_spec = (
  )

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAllAdwordsCampaigns_args')
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAllAdwordsCampaigns_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.LIST, 'success', (TType.STRUCT,(AdwordsCampaign, AdwordsCampaign.thrift_spec)), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.LIST:
          self.success = []
          (_etype24, _size21) = iprot.readListBegin()
          for _i25 in xrange(_size21):
            _elem26 = AdwordsCampaign()
            _elem26.read(iprot)
            self.success.append(_elem26)
          iprot.readListEnd()
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAllAdwordsCampaigns_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.LIST, 0)
      oprot.writeListBegin(TType.STRUCT, len(self.success))
      for iter27 in self.success:
        iter27.write(oprot)
      oprot.writeListEnd()
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAllAdwordsAdGroups_args:

  thrift_spec = (
  )

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAllAdwordsAdGroups_args')
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAllAdwordsAdGroups_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.LIST, 'success', (TType.STRUCT,(AdwordsAdGroup, AdwordsAdGroup.thrift_spec)), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.LIST:
          self.success = []
          (_etype31, _size28) = iprot.readListBegin()
          for _i32 in xrange(_size28):
            _elem33 = AdwordsAdGroup()
            _elem33.read(iprot)
            self.success.append(_elem33)
          iprot.readListEnd()
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAllAdwordsAdGroups_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.LIST, 0)
      oprot.writeListBegin(TType.STRUCT, len(self.success))
      for iter34 in self.success:
        iter34.write(oprot)
      oprot.writeListEnd()
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAllAdwordsAdGroupAds_args:

  thrift_spec = (
  )

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAllAdwordsAdGroupAds_args')
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAllAdwordsAdGroupAds_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.LIST, 'success', (TType.STRUCT,(AdwordsAdGroupAd, AdwordsAdGroupAd.thrift_spec)), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.LIST:
          self.success = []
          (_etype38, _size35) = iprot.readListBegin()
          for _i39 in xrange(_size35):
            _elem40 = AdwordsAdGroupAd()
            _elem40.read(iprot)
            self.success.append(_elem40)
          iprot.readListEnd()
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAllAdwordsAdGroupAds_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.LIST, 0)
      oprot.writeListBegin(TType.STRUCT, len(self.success))
      for iter41 in self.success:
        iter41.write(oprot)
      oprot.writeListEnd()
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAllAdwordsAdKeywords_args:

  thrift_spec = (
  )

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAllAdwordsAdKeywords_args')
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)

class getAllAdwordsAdKeywords_result:
  """
  Attributes:
   - success
   - gasex
  """

  thrift_spec = (
    (0, TType.LIST, 'success', (TType.STRUCT,(AdwordsAdKeyword, AdwordsAdKeyword.thrift_spec)), None, ), # 0
    (1, TType.STRUCT, 'gasex', (GoogleAdwordsServiceException, GoogleAdwordsServiceException.thrift_spec), None, ), # 1
  )

  def __init__(self, success=None, gasex=None,):
    self.success = success
    self.gasex = gasex

  def read(self, iprot):
    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
      return
    iprot.readStructBegin()
    while True:
      (fname, ftype, fid) = iprot.readFieldBegin()
      if ftype == TType.STOP:
        break
      if fid == 0:
        if ftype == TType.LIST:
          self.success = []
          (_etype45, _size42) = iprot.readListBegin()
          for _i46 in xrange(_size42):
            _elem47 = AdwordsAdKeyword()
            _elem47.read(iprot)
            self.success.append(_elem47)
          iprot.readListEnd()
        else:
          iprot.skip(ftype)
      elif fid == 1:
        if ftype == TType.STRUCT:
          self.gasex = GoogleAdwordsServiceException()
          self.gasex.read(iprot)
        else:
          iprot.skip(ftype)
      else:
        iprot.skip(ftype)
      iprot.readFieldEnd()
    iprot.readStructEnd()

  def write(self, oprot):
    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
      return
    oprot.writeStructBegin('getAllAdwordsAdKeywords_result')
    if self.success is not None:
      oprot.writeFieldBegin('success', TType.LIST, 0)
      oprot.writeListBegin(TType.STRUCT, len(self.success))
      for iter48 in self.success:
        iter48.write(oprot)
      oprot.writeListEnd()
      oprot.writeFieldEnd()
    if self.gasex is not None:
      oprot.writeFieldBegin('gasex', TType.STRUCT, 1)
      self.gasex.write(oprot)
      oprot.writeFieldEnd()
    oprot.writeFieldStop()
    oprot.writeStructEnd()

  def validate(self):
    return


  def __repr__(self):
    L = ['%s=%r' % (key, value)
      for key, value in self.__dict__.iteritems()]
    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))

  def __eq__(self, other):
    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__

  def __ne__(self, other):
    return not (self == other)