saving before refactor/overhaul