reverted back from using snapshotAndPage object because it broke too much stuff