further snapshot work