Reading UVM library code of run_test()

I am reading uvm library code and I have a question about uvm_root::run_test();
In the task, report_summarize() is called. This is declared in uvm_report_object. I could not understand why this task can be called without specifying uvm?report_object.

319 task uvm_root::run_test(string test_name="");
321   uvm_factory factory= uvm_factory::get();
322   bit testname_plusarg;
323   int test_name_count;
324   string test_names[$];
325   string msg;
326   uvm_component uvm_test_top;


422 wait (m_phase_all_done == 1);
424 // clean up after ourselves
425 phase_runner_proc.kill();
427 report_summarize(); // <===
429 if (finish_on_completion)
430 $finish;
431
432 endtask
433

Thank you

In reply to tsb_matumoto:

uvm_root extends uvm_component extents uvm_report_object.

In reply to dave_59:

Oh! I got. Thanks!