<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def tag_native_vlan(self, **kwargs):
 """Set tagging of native VLAN on trunk. Args: int_type (str):
 Type of interface. (gigabitethernet, tengigabitethernet, etc) name (str):
 Name of interface. (1/0/5, 1/0/10, etc) mode (str):
 Trunk port mode (trunk, trunk-no-default-native). enabled (bool):
 Is tagging of the VLAN enabled on trunks? (True, False) callback (function):
 A function executed upon completion oj the method. The only parameter passed to `callback` will be the ``ElementTree`` `config`. Returns: Return value of `callback`. Raises: KeyError: if `int_type`, `name`, or `state` is not specified. ValueError: if `int_type`, `name`, or `state` is not valid. Examples: Traceback (most recent call last):
 KeyError """

        int_type = kwargs.pop('int_type').lower()
        name = kwargs.pop('name')
        enabled = kwargs.pop('enabled', True)
        callback = kwargs.pop('callback', self._callback)

        int_types = ['gigabitethernet', 'tengigabitethernet',
                     'fortygigabitethernet', 'hundredgigabitethernet',
                     'port_channel']

        if int_type not in int_types:
            raise ValueError("Incorrect int_type value.")

        if not pynos.utilities.valid_interface(int_type, name):
            raise ValueError('`name` must be in the format of x/y/z for '
                             'physical interfaces or x for port channel.')

        if not isinstance(enabled, bool):
            raise ValueError("Invalid state.")

        tag_args = dict(name=name)
        tag_native_vlan = getattr(self._interface, 'interface_%s_switchport_'
                                  'trunk_tag_native_vlan' % int_type)
        config = tag_native_vlan(**tag_args)
        if not enabled:
            untag = config.find('.//*native-vlan')
            untag.set('operation', 'delete')

        try:
            return callback(config)
        # TODO: Catch existing 'no switchport tag native-vlan'
        except AttributeError:
            return None