refactoring top_n_source method due to it's length