def GetUsers():
	users   	= []

	query = """
			SELECT Id, Username_s__c 
			FROM Account 
			WHERE Support_Package__c in ('Premier', 'Elite', 'Elite VIP') and Account_Status__c = 'Customer'
			"""

	# Create object for Salesforce methods
	sfdc = SalesforceTask(config.sfUser, config.sfPass, config.sfApiToken)
	results = sfdc.sfdc_query(query)

	for row in results['results']:
		user_list = row['Username_s__c'].split(',')
		for user in user_list:
			users.append(user.strip())

	return users
	except Exception, err:
		logging.error(err)
		sys.exit()

	# Get the last modified timestamp from internal database
	startTime = { "startTime" : mysqlDb.pull_job_timestamp('SFDC_CONTACT_LM_PULL') }
	logging.info("Pulling an internal start time of {0}".format(startTime))

	##### Extract modified SFDC Contacts#####
	logging.info("Pulling Authorized Support Contacts from Salesforce")
	sfdcQuery = """
				SELECT Email, MailingPostalCode, Phone, Authorized_Support_Contact__c 
				FROM Contact 
				WHERE LastModifiedDate > %(startTime)s
				""" % startTime
	sfdcResults = sfdc.sfdc_query(sfdcQuery)

	for contact in sfdcResults['results']:
		data = { }
		data['tags'] = []
		user_id = 0
					
		# Verify the user has already been created in Zendesk
		if contact['Email'] != '':
			email = contact['Email']
			z = zd.search_by_email(email)
			if z['count']:
				user_id = z['users'][0]['id'] 
				data["email"] = email	
			
		# Only update Zendesk if the user already exists	
else:
	logging.basicConfig(format='%(asctime)s | %(levelname)s | %(filename)s | %(message)s', level=logging.DEBUG, filename=config.logFile)

sfdc = SalesforceTask(config.sfUser, config.sfPass, config.sfApiToken)
mysqlDb = MySqlTask(config.mysql_username, config.mysql_password, config.mysql_host, config.mysql_database)

sfdc_update = {}

# Get the last modified timestamp from internal database
startTime = mysqlDb.pull_job_timestamp('SFDC_DATASIFT_USER_ID')
logging.info("Pulling SFDC_DATASIFT_USER_ID; start time of {0}".format(startTime))

# Pull from SFDC
query = "Select Id, DataSift_UserID__c, Name FROM Account WHERE Account_Status__c = 'Customer' and DataSift_UserID__c != '' and LastModifiedDate > {0}".format(startTime)

results = sfdc.sfdc_query(query)

if results['count'] > 0:
	for account in results['results']:
		if account['Id'] not in sfdc_update:
			sfdc_update[account['Id']] = []
		ids = re.findall(r'[0-9]+', account['DataSift_UserID__c'])
		if len(ids):
			for i in ids:
				# Query Users table
				mquery = "SELECT user_id, email, username FROM users WHERE user_id = '{0}'".format(i)
				mysqlDb.connect()
				r = mysqlDb.select_query(mquery)

				if len(r):
					data = {