implement scoring logic correctly