'worker'

def work(self):

    self.check_params()
    self.config = self.get_current_config()
    self.get_existing()
    self.get_proposed()
    if (self.evn_bgp or self.evn_server or self.evn_peer_ip or self.evn_source_ip):
        self.config_evn_bgp()
    if (self.vbdif_name and self.arp_collect_host):
        self.config_vbdif()
    if self.host_collect_protocol:
        self.config_host_collect_protocal()
    if (self.bridge_domain_id and self.arp_suppress):
        self.config_bridge_domain()
    if self.commands:
        self.cli_load_config(self.commands)
        self.changed = True
    self.get_end_state()
    self.results['changed'] = self.changed
    self.results['proposed'] = self.proposed
    self.results['existing'] = self.existing
    self.results['end_state'] = self.end_state
    if self.changed:
        self.results['updates'] = self.updates_cmd
    else:
        self.results['updates'] = list()
    self.module.exit_json(**self.results)
