cleaned up copy by reference browserstate -> snapshot