@classmethod<EOL><INDENT>def top_stories(self, limit=<NUM_LIT:5>, first=None, last=None, json=False):<DEDENT>
story_ids = requests.get(TOP_STORIES_URL).json()<EOL>story_urls = []<EOL>for story_id in story_ids:<EOL><INDENT>url = API_BASE + "<STR_LIT>" + str(story_id) + '<STR_LIT>'<EOL>story_urls.append(url)<EOL><DEDENT>if first and last:<EOL><INDENT>story_urls = story_urls[first:last]<EOL>if limit != <NUM_LIT:5>:<EOL><INDENT>story_urls[:limit]  <EOL><DEDENT><DEDENT>else:<EOL><INDENT>story_urls = story_urls[:limit]<EOL><DEDENT>response_list = fetch_event(story_urls)<EOL>if json:<EOL><INDENT>yield response_list<EOL><DEDENT>else:<EOL><INDENT>for response in response_list:<EOL><INDENT>yield story_parser(response)<EOL><DEDENT><DEDENT>
Get the top story objects list

params :
    limit = (default | 5) number of story objects needed 
    json = (default | False) 

The method uses asynchronous grequest form gevent