merge backup-restore branch into master