add peek/spy functions