cleaned up names, added backup function