added better reporter implementation;