add a preview function