<!--- Verify first that your issue is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
<!--- Explain the problem briefly below -->
Nxos_l2_interfaces module fails with a traceback if allowed vlans are not preconfigured on interfaces, raised from PR fix #66517

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
nxos_l2_interfaces

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
2.9
```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below

```

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
macos

##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->
Try running the module for configuring allowed vlans for the 1st time.
<!--- Paste example playbooks or commands between quotes below -->
```yaml
    - nxos_l2_interfaces:
        config:
          - name: Ethernet2/2
            mode: trunk
            trunk:
              allowed_vlans: "10-12"
        state: merged
```

<!--- HINT: You can paste gist.github.com links for larger files -->

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
If allowed vlans are not preconfigured, the module should go ahead and configure the user-provided allowed vlans

##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->
If allowed vlans are not preconfigured, it fails with below traceback
<!--- Paste verbatim command output between quotes -->
```paste below
The full traceback is:
Traceback (most recent call last):
  File "/Users/sjaiswal/.ansible/tmp/ansible-local-34163u8gljr/ansible-tmp-1581928344.74-175330388156897/AnsiballZ_nxos_l2_interfaces.py", line 102, in <module>
    _ansiballz_main()
  File "/Users/sjaiswal/.ansible/tmp/ansible-local-34163u8gljr/ansible-tmp-1581928344.74-175330388156897/AnsiballZ_nxos_l2_interfaces.py", line 94, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File "/Users/sjaiswal/.ansible/tmp/ansible-local-34163u8gljr/ansible-tmp-1581928344.74-175330388156897/AnsiballZ_nxos_l2_interfaces.py", line 40, in invoke_module
    runpy.run_module(mod_name='ansible.modules.network.nxos.nxos_l2_interfaces', init_globals=None, run_name='__main__', alter_sys=True)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 188, in run_module
    fname, loader, pkg_name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 82, in _run_module_code
    mod_name, mod_fname, mod_loader, pkg_name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/var/folders/n7/73s22vps0ls44ng__t8mwtl40000gn/T/ansible_nxos_l2_interfaces_payload_QGTQ63/ansible_nxos_l2_interfaces_payload.zip/ansible/modules/network/nxos/nxos_l2_interfaces.py", line 283, in <module>
  File "/var/folders/n7/73s22vps0ls44ng__t8mwtl40000gn/T/ansible_nxos_l2_interfaces_payload_QGTQ63/ansible_nxos_l2_interfaces_payload.zip/ansible/modules/network/nxos/nxos_l2_interfaces.py", line 278, in main
  File "/var/folders/n7/73s22vps0ls44ng__t8mwtl40000gn/T/ansible_nxos_l2_interfaces_payload_QGTQ63/ansible_nxos_l2_interfaces_payload.zip/ansible/module_utils/network/nxos/config/l2_interfaces/l2_interfaces.py", line 69, in execute_module
  File "/var/folders/n7/73s22vps0ls44ng__t8mwtl40000gn/T/ansible_nxos_l2_interfaces_payload_QGTQ63/ansible_nxos_l2_interfaces_payload.zip/ansible/module_utils/network/nxos/config/l2_interfaces/l2_interfaces.py", line 103, in set_config
  File "/var/folders/n7/73s22vps0ls44ng__t8mwtl40000gn/T/ansible_nxos_l2_interfaces_payload_QGTQ63/ansible_nxos_l2_interfaces_payload.zip/ansible/module_utils/network/nxos/config/l2_interfaces/l2_interfaces.py", line 136, in set_state
  File "/var/folders/n7/73s22vps0ls44ng__t8mwtl40000gn/T/ansible_nxos_l2_interfaces_payload_QGTQ63/ansible_nxos_l2_interfaces_payload.zip/ansible/module_utils/network/nxos/config/l2_interfaces/l2_interfaces.py", line 205, in _state_merged
  File "/var/folders/n7/73s22vps0ls44ng__t8mwtl40000gn/T/ansible_nxos_l2_interfaces_payload_QGTQ63/ansible_nxos_l2_interfaces_payload.zip/ansible/module_utils/network/nxos/config/l2_interfaces/l2_interfaces.py", line 287, in set_commands
KeyError: 'allowed_vlans'
```

#
"""
The nxos_l2_interfaces class
It is in this file where the current configuration (as dict)
is compared to the provided configuration (as dict) and the command set
necessary to bring the current configuration to it's desired end-state is
created
"""
from __future__ import absolute_import, division, print_function
__metaclass__ = type
from ansible.module_utils.network.common.cfg.base import ConfigBase
from ansible.module_utils.network.common.utils import dict_diff, to_list, remove_empties
from ansible.module_utils.network.nxos.facts.facts import Facts
from ansible.module_utils.network.nxos.utils.utils import flatten_dict, normalize_interface, search_obj_in_list, vlan_range_to_list
class L2_interfaces(ConfigBase):