separated snapshot function, added comments so I know what to do next