diff --git a/src/conf_mode/service_router-advert.py b/src/conf_mode/service_router-advert.py
index 1f6d90fb4..9afcdd63e 100755
--- a/src/conf_mode/service_router-advert.py
+++ b/src/conf_mode/service_router-advert.py
@@ -1,128 +1,128 @@
 #!/usr/bin/env python3
 #
-# Copyright (C) 2018-2019 VyOS maintainers and contributors
+# Copyright (C) 2018-2021 VyOS maintainers and contributors
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License version 2 or later as
 # published by the Free Software Foundation.
 #
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 import os
 
 from sys import exit
 
 from vyos.config import Config
 from vyos.configdict import dict_merge
 from vyos.template import render
 from vyos.util import call
 from vyos.xml import defaults
 from vyos import ConfigError
 from vyos import airbag
 airbag.enable()
 
 config_file = r'/run/radvd/radvd.conf'
 
 def get_config(config=None):
     if config:
         conf = config
     else:
         conf = Config()
     base = ['service', 'router-advert']
     rtradv = conf.get_config_dict(base, key_mangling=('-', '_'), get_first_key=True)
 
     # We have gathered the dict representation of the CLI, but there are default
     # options which we need to update into the dictionary retrived.
     default_interface_values = defaults(base + ['interface'])
     # we deal with prefix, route defaults later on
     if 'prefix' in default_interface_values:
         del default_interface_values['prefix']
     if 'route' in default_interface_values:
         del default_interface_values['route']
-        
+
     default_prefix_values = defaults(base + ['interface', 'prefix'])
     default_route_values = defaults(base + ['interface', 'route'])
 
     if 'interface' in rtradv:
         for interface in rtradv['interface']:
             rtradv['interface'][interface] = dict_merge(
                 default_interface_values, rtradv['interface'][interface])
 
             if 'prefix' in rtradv['interface'][interface]:
                 for prefix in rtradv['interface'][interface]['prefix']:
                     rtradv['interface'][interface]['prefix'][prefix] = dict_merge(
                         default_prefix_values, rtradv['interface'][interface]['prefix'][prefix])
-                        
+
             if 'route' in rtradv['interface'][interface]:
                 for route in rtradv['interface'][interface]['route']:
                     rtradv['interface'][interface]['route'][route] = dict_merge(
                         default_route_values, rtradv['interface'][interface]['route'][route])
 
             if 'name_server' in rtradv['interface'][interface]:
                 # always use a list when dealing with nameservers - eases the template generation
                 if isinstance(rtradv['interface'][interface]['name_server'], str):
                     rtradv['interface'][interface]['name_server'] = [
                         rtradv['interface'][interface]['name_server']]
 
     return rtradv
 
 def verify(rtradv):
     if not rtradv:
         return None
 
     if 'interface' not in rtradv:
         return None
 
     for interface in rtradv['interface']:
         interface = rtradv['interface'][interface]
         if 'prefix' in interface:
             for prefix in interface['prefix']:
                 prefix = interface['prefix'][prefix]
                 valid_lifetime = prefix['valid_lifetime']
                 if valid_lifetime == 'infinity':
                     valid_lifetime = 4294967295
 
                 preferred_lifetime = prefix['preferred_lifetime']
                 if preferred_lifetime == 'infinity':
                     preferred_lifetime = 4294967295
 
                 if not (int(valid_lifetime) > int(preferred_lifetime)):
                     raise ConfigError('Prefix valid-lifetime must be greater then preferred-lifetime')
 
     return None
 
 def generate(rtradv):
     if not rtradv:
         return None
 
     render(config_file, 'router-advert/radvd.conf.tmpl', rtradv, permission=0o644)
     return None
 
 def apply(rtradv):
     if not rtradv:
         # bail out early - looks like removal from running config
         call('systemctl stop radvd.service')
         if os.path.exists(config_file):
             os.unlink(config_file)
 
         return None
 
     call('systemctl restart radvd.service')
 
     return None
 
 if __name__ == '__main__':
     try:
         c = get_config()
         verify(c)
         generate(c)
         apply(c)
     except ConfigError as e:
         print(e)
         exit(1)
diff --git a/src/migration-scripts/interfaces/5-to-6 b/src/migration-scripts/interfaces/5-to-6
index 8ae34c208..ae79c1d1b 100755
--- a/src/migration-scripts/interfaces/5-to-6
+++ b/src/migration-scripts/interfaces/5-to-6
@@ -1,133 +1,133 @@
 #!/usr/bin/env python3
 #
-# Copyright (C) 2020 VyOS maintainers and contributors
+# Copyright (C) 2020-2021 VyOS maintainers and contributors
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License version 2 or later as
 # published by the Free Software Foundation.
 #
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Migrate IPv6 router advertisments from a nested interface configuration to
 # a denested "service router-advert"
 
 import sys
 from vyos.configtree import ConfigTree
 
 def copy_rtradv(c, old_base, interface):
     base = ['service', 'router-advert', 'interface']
 
     if c.exists(old_base):
         if not c.exists(base):
             c.set(base)
             c.set_tag(base)
 
         # take the old node as a whole and copy it to new new path,
         # additional migrations will be done afterwards
         new_base = base + [interface]
         c.copy(old_base, new_base)
         c.delete(old_base)
 
         # cur-hop-limit has been renamed to hop-limit
         if c.exists(new_base + ['cur-hop-limit']):
             c.rename(new_base + ['cur-hop-limit'], 'hop-limit')
 
         bool_cleanup = ['managed-flag', 'other-config-flag']
         for bool in bool_cleanup:
             if c.exists(new_base + [bool]):
                 tmp = c.return_value(new_base + [bool])
                 c.delete(new_base + [bool])
                 if tmp == 'true':
                     c.set(new_base + [bool])
 
         # max/min interval moved to subnode
         intervals = ['max-interval', 'min-interval']
         for interval in intervals:
             if c.exists(new_base + [interval]):
                 tmp = c.return_value(new_base + [interval])
                 c.delete(new_base + [interval])
                 min_max = interval.split('-')[0]
                 c.set(new_base + ['interval', min_max], value=tmp)
 
-		# cleanup boolean nodes in individual route
-		route_base = new_base + ['route']
-		if c.exists(route_base):
-		    for route in config.list_nodes(route_base):
-			    if c.exists(route_base + [route, 'remove-route']):
-				    tmp = c.return_value(route_base + [route, 'remove-route'])
-					c.delete(route_base + [route, 'remove-route'])
-					if tmp == 'false':
-					   c.set(route_base + [route, 'no-remove-route'])
-					   
+        # cleanup boolean nodes in individual route
+        route_base = new_base + ['route']
+        if c.exists(route_base):
+            for route in config.list_nodes(route_base):
+                if c.exists(route_base + [route, 'remove-route']):
+                    tmp = c.return_value(route_base + [route, 'remove-route'])
+                    c.delete(route_base + [route, 'remove-route'])
+                    if tmp == 'false':
+                       c.set(route_base + [route, 'no-remove-route'])
+
         # cleanup boolean nodes in individual prefix
         prefix_base = new_base + ['prefix']
         if c.exists(prefix_base):
             for prefix in config.list_nodes(prefix_base):
                 if c.exists(prefix_base + [prefix, 'autonomous-flag']):
                     tmp = c.return_value(prefix_base + [prefix, 'autonomous-flag'])
                     c.delete(prefix_base + [prefix, 'autonomous-flag'])
                     if tmp == 'false':
                         c.set(prefix_base + [prefix, 'no-autonomous-flag'])
 
                 if c.exists(prefix_base + [prefix, 'on-link-flag']):
                     tmp = c.return_value(prefix_base + [prefix, 'on-link-flag'])
                     c.delete(prefix_base + [prefix, 'on-link-flag'])
                     if tmp == 'true':
                         c.set(prefix_base + [prefix, 'on-link-flag'])
 
         # router advertisement can be individually disabled per interface
         # the node has been renamed from send-advert {true | false} to no-send-advert
         if c.exists(new_base + ['send-advert']):
             tmp = c.return_value(new_base + ['send-advert'])
             c.delete(new_base + ['send-advert'])
             if tmp == 'false':
                 c.set(new_base + ['no-send-advert'])
 
         # link-mtu advertisement was formerly disabled by setting its value to 0
         # ... this makes less sense - if it should not be send, just do not
         # configure it
         if c.exists(new_base + ['link-mtu']):
             tmp = c.return_value(new_base + ['link-mtu'])
             if tmp == '0':
                 c.delete(new_base + ['link-mtu'])
 
 if __name__ == '__main__':
     if (len(sys.argv) < 1):
         print("Must specify file name!")
         exit(1)
 
     file_name = sys.argv[1]
     with open(file_name, 'r') as f:
         config_file = f.read()
 
     config = ConfigTree(config_file)
 
     # list all individual interface types like dummy, ethernet and so on
     for if_type in config.list_nodes(['interfaces']):
         base_if_type = ['interfaces', if_type]
 
         # for every individual interface we need to check if there is an
         # ipv6 ra configured ... and also for every VIF (VLAN) interface
         for intf in config.list_nodes(base_if_type):
             old_base = base_if_type + [intf, 'ipv6', 'router-advert']
             copy_rtradv(config, old_base, intf)
 
             vif_base = base_if_type + [intf, 'vif']
             if config.exists(vif_base):
                 for vif in config.list_nodes(vif_base):
                     old_base = vif_base + [vif, 'ipv6', 'router-advert']
                     vlan_name = f'{intf}.{vif}'
                     copy_rtradv(config, old_base, vlan_name)
 
     try:
         with open(file_name, 'w') as f:
             f.write(config.to_string())
     except OSError as e:
         print("Failed to save the modified config: {}".format(e))
         sys.exit(1)