made backup more function based