added report function