docs: def execute(self, method, *args, **kargs):
          result = None
  
          '''
              max 10 rechecks
          '''
          for i in range(0, 10):
              try:
  
                  method_map = {
                      'get_lead_by_id': self.get_lead_by_id,
                      'get_multiple_leads_by_filter_type': self.get_multiple_leads_by_filter_type,
                      'get_multiple_leads_by_list_id': self.get_multiple_leads_by_list_id,
                      'get_multiple_leads_by_list_id_yield': self.get_multiple_leads_by_list_id_yield,
                      'get_multiple_leads_by_program_id': self.get_multiple_leads_by_program_id,
                      'get_multiple_leads_by_program_id_yield': self.get_multiple_leads_by_program_id_yield,
                      'change_lead_program_status': self.change_lead_program_status,
                      'create_update_leads': self.create_update_leads,
                      'associate_lead': self.associate_lead,
                      'push_lead': self.push_lead,
                      'merge_lead': self.merge_lead,
                      'get_lead_partitions': self.get_lead_partitions,
                      'create_list': self.create_list,
                      'update_list': self.update_list,
                      'delete_list': self.delete_list,
                      'get_list_by_id': self.get_list_by_id,
                      'get_list_by_name': self.get_list_by_name,
                      'get_multiple_lists': self.get_multiple_lists,
                      'browse_lists': self.browse_lists,
                      'add_leads_to_list': self.add_leads_to_list,
                      'remove_leads_from_list': self.remove_leads_from_list,
                      'member_of_list': self.member_of_list,
                      'get_campaign_by_id': self.get_campaign_by_id,
                      'get_multiple_campaigns': self.get_multiple_campaigns,
                      'schedule_campaign': self.schedule_campaign,
                      'request_campaign': self.request_campaign,
                      'import_lead': self.import_lead,
                      'get_import_lead_status': self.get_import_lead_status,
                      'get_import_failure_file': self.get_import_failure_file,
                      'get_import_warning_file': self.get_import_warning_file,
                      'describe': self.describe,
                      'get_activity_types': self.get_activity_types,
                      'get_paging_token': self.get_paging_token,
                      'get_lead_activities': self.get_lead_activities,
                      'get_lead_activities_yield': self.get_lead_activities_yield,
                      'get_lead_changes': self.get_lead_changes,
                      'get_lead_changes_yield': self.get_lead_changes_yield,
                      'add_custom_activities': self.add_custom_activities,
                      'get_daily_usage': self.get_daily_usage,
                      'get_last_7_days_usage': self.get_last_7_days_usage,
                      'get_daily_errors': self.get_daily_errors,
                      'get_last_7_days_errors': self.get_last_7_days_errors,
                      'delete_lead': self.delete_lead,
                      'get_deleted_leads': self.get_deleted_leads,
                      'update_leads_partition': self.update_leads_partition,
                      'create_folder': self.create_folder,
                      'get_folder_by_id': self.get_folder_by_id,
                      'get_folder_by_name': self.get_folder_by_name,
                      'get_folder_contents': self.get_folder_contents,
                      'update_folder': self.update_folder,
                      'delete_folder': self.delete_folder,
                      'browse_folders': self.browse_folders,
                      'create_token': self.create_token,
                      'get_tokens': self.get_tokens,
                      'delete_tokens': self.delete_tokens,
                      'create_email_template': self.create_email_template,
                      'get_email_template_by_id': self.get_email_template_by_id,
                      'get_email_template_by_name': self.get_email_template_by_name,
                      'update_email_template': self.update_email_template,
                      'delete_email_template': self.delete_email_template,
                      'get_email_templates': self.get_email_templates,
                      'get_email_templates_yield': self.get_email_templates_yield,
                      'get_email_template_content': self.get_email_template_content,
                      'update_email_template_content': self.update_email_template_content,
                      'approve_email_template': self.approve_email_template,
                      'unapprove_email_template': self.unapprove_email_template,
                      'discard_email_template_draft': self.discard_email_template_draft,
                      'clone_email_template': self.clone_email_template,
                      'create_email': self.create_email,
                      'get_email_by_id': self.get_email_by_id,
                      'get_email_by_name': self.get_email_by_name,
                      'delete_email': self.delete_email,
                      'update_email': self.update_email,
                      'get_emails': self.get_emails,
                      'get_emails_yield': self.get_emails_yield,
                      'get_email_content': self.get_email_content,
                      'update_email_content': self.update_email_content,
                      'update_email_content_in_editable_section': self.update_email_content_in_editable_section,
                      'get_email_dynamic_content': self.get_email_dynamic_content,
                      'update_email_dynamic_content': self.update_email_dynamic_content,
                      'approve_email': self.approve_email,
                      'unapprove_email': self.unapprove_email,
                      'discard_email_draft': self.discard_email_draft,
                      'clone_email': self.clone_email,
                      'send_sample_email': self.send_sample_email,
                      'get_email_full_content': self.get_email_full_content,
                      'create_landing_page': self.create_landing_page,
                      'get_landing_page_by_id': self.get_landing_page_by_id,
                      'get_landing_page_by_name': self.get_landing_page_by_name,
                      'delete_landing_page': self.delete_landing_page,
                      'update_landing_page': self.update_landing_page,
                      'get_landing_pages': self.get_landing_pages,
                      'get_landing_pages_yield': self.get_landing_pages_yield,
                      'get_landing_page_content': self.get_landing_page_content,
                      'create_landing_page_content_section': self.create_landing_page_content_section,
                      'update_landing_page_content_section': self.update_landing_page_content_section,
                      'delete_landing_page_content_section': self.delete_landing_page_content_section,
                      'get_landing_page_dynamic_content': self.get_landing_page_dynamic_content,
                      'update_landing_page_dynamic_content': self.update_landing_page_dynamic_content,
                      'approve_landing_page': self.approve_landing_page,
                      'unapprove_landing_page': self.unapprove_landing_page,
                      'discard_landing_page_draft': self.discard_landing_page_draft,
                      'clone_landing_page': self.clone_landing_page,
                      'create_form': self.create_form,
                      'get_form_by_id': self.get_form_by_id,
                      'get_form_by_name': self.get_form_by_name,
                      'delete_form': self.delete_form,
                      'update_form': self.update_form,
                      'get_forms': self.get_forms,
                      'get_forms_yield': self.get_forms_yield,
                      'get_form_fields': self.get_form_fields,
                      'create_form_field': self.create_form_field,
                      'update_form_field': self.update_form_field,
                      'delete_form_field': self.delete_form_field,
                      'approve_form': self.approve_form,
                      'unapprove_form': self.unapprove_form,
                      'discard_form_draft': self.discard_form_draft,
                      'clone_form': self.clone_form,
                      'create_file': self.create_file,
                      'get_file_by_id': self.get_file_by_id,
                      'get_file_by_name': self.get_file_by_name,
                      'list_files': self.list_files,
                      'get_files_yield': self.get_files_yield,
                      'update_file_content': self.update_file_content,
                      'create_snippet': self.create_snippet,
                      'get_snippet_by_id': self.get_snippet_by_id,
                      'delete_snippet': self.delete_snippet,
                      'update_snippet': self.update_snippet,
                      'get_snippets': self.get_snippets,
                      'get_snippets_yield': self.get_snippets_yield,
                      'get_snippet_content': self.get_snippet_content,
                      'update_snippet_content': self.update_snippet_content,
                      'approve_snippet': self.approve_snippet,
                      'unapprove_snippet': self.unapprove_snippet,
                      'discard_snippet_draft': self.discard_snippet_draft,
                      'clone_snippet': self.clone_snippet,
                      'update_snippet_dynamic_content': self.update_snippet_dynamic_content,
                      'get_snippet_dynamic_content': self.get_snippet_dynamic_content,
                      'get_segmentations': self.get_segmentations,
                      'get_segments': self.get_segments,
                      'create_landing_page_template': self.create_landing_page_template,
                      'get_landing_page_template_by_id': self.get_landing_page_template_by_id,
                      'get_landing_page_template_by_name': self.get_landing_page_template_by_name,
                      'get_landing_page_templates': self.get_landing_page_templates,
                      'get_landing_page_templates_yield': self.get_landing_page_templates_yield,
                      'get_landing_page_template_content': self.get_landing_page_template_content,
                      'update_landing_page_template_content': self.update_landing_page_template_content,
                      'update_landing_page_template': self.update_landing_page_template,
                      'delete_landing_page_template': self.delete_landing_page_template,
                      'approve_landing_page_template': self.approve_landing_page_template,
                      'unapprove_landing_page_template': self.unapprove_landing_page_template,
                      'discard_landing_page_template_draft': self.discard_landing_page_template_draft,
                      'clone_landing_page_template': self.clone_landing_page_template,
                      'create_program': self.create_program,
                      'get_program_by_id': self.get_program_by_id,
                      'get_program_by_name': self.get_program_by_name,
                      'get_program_by_tag_type': self.get_program_by_tag_type,
                      'update_program': self.update_program,
                      'delete_program': self.delete_program,
                      'browse_programs': self.browse_programs,
                      'get_programs_yield': self.get_programs_yield,
                      'clone_program': self.clone_program,
                      'approve_program': self.approve_program,
                      'unapprove_program': self.unapprove_program,
                      'get_channels': self.get_channels,
                      'get_channel_by_name': self.get_channel_by_name,
                      'get_tags': self.get_tags,
                      'get_tag_by_name': self.get_tag_by_name,
                      'get_list_of_custom_objects': self.get_list_of_custom_objects,
                      'describe_custom_object': self.describe_custom_object,
                      'create_update_custom_objects': self.create_update_custom_objects,
                      'delete_custom_objects': self.delete_custom_objects,
                      'get_custom_objects': self.get_custom_objects,
                      'describe_opportunity': self.describe_opportunity,
                      'create_update_opportunities': self.create_update_opportunities,
                      'delete_opportunities': self.delete_opportunities,
                      'get_opportunities': self.get_opportunities,
                      'describe_opportunity_role': self.describe_opportunity_role,
                      'create_update_opportunities_roles': self.create_update_opportunities_roles,
                      'delete_opportunity_roles': self.delete_opportunity_roles,
                      'get_opportunity_roles': self.get_opportunity_roles,
                      'describe_company': self.describe_company,
                      'create_update_companies': self.create_update_companies,
                      'delete_companies': self.delete_companies,
                      'get_companies': self.get_companies,
                      'describe_sales_person': self.describe_sales_person,
                      'create_update_sales_persons': self.create_update_sales_persons,
                      'delete_sales_persons': self.delete_sales_persons,
                      'get_sales_persons': self.get_sales_persons,
                      'get_custom_activity_types': self.get_custom_activity_types,
                      'describe_custom_activity_type': self.describe_custom_activity_type,
                      'create_custom_activity_type': self.create_custom_activity_type,
                      'update_custom_activity_type': self.update_custom_activity_type,
                      'approve_custom_activity_type': self.approve_custom_activity_type,
                      'create_custom_activity_type_attribute': self.create_custom_activity_type_attribute,
                      'discard_custom_activity_type_draft': self.discard_custom_activity_type_draft,
                      'delete_custom_activity_type': self.delete_custom_activity_type,
                      'update_custom_activity_type_attribute': self.update_custom_activity_type_attribute,
                      'delete_custom_activity_type_attribute': self.delete_custom_activity_type_attribute,
                      'get_leads_export_jobs_list': self.get_leads_export_jobs_list,
                      'get_activities_export_jobs_list': self.get_activities_export_jobs_list,
                      'create_leads_export_job': self.create_leads_export_job,
                      'create_activities_export_job': self.create_activities_export_job,
                      'enqueue_leads_export_job': self.enqueue_leads_export_job,
                      'enqueue_activities_export_job': self.enqueue_activities_export_job,
                      'cancel_leads_export_job': self.cancel_leads_export_job,
                      'cancel_activities_export_job': self.cancel_activities_export_job,
                      'get_leads_export_job_status': self.get_leads_export_job_status,
                      'get_activities_export_job_status': self.get_activities_export_job_status,
                      'get_leads_export_job_file': self.get_leads_export_job_file,
                      'get_activities_export_job_file': self.get_activities_export_job_file
                  }
                  result = method_map[method](*args, **kargs)
              except MarketoException as e:
                  '''
                  601 -> auth token not valid
                  602 -> auth token expired
                  '''
                  if e.code in ['601', '602']:
                      self.authenticate()
                      continue
                  else:
                      raise Exception({'message': e.message, 'code': e.code})
              break
          return result