add report function