def downloadList(self, keyword):
        # building query
        request = {}
        request['query'] = keyword
        query = urlencode(request)

        # request parameters
        url = 'http://api.platformio.org/lib/search?'
        user_agent = 'Deviot/' + str(version) + \
            ' (Sublime-Text/' + str(sublime.version()) + ')'
        headers = {'User-Agent': user_agent}
        req = Request(url + query, headers=headers)

        # receive first page
        response = urlopen(req)
        list = json.loads(response.read().decode())

        # check number of pages
        nloop = list['total'] / list['perpage']
        if(nloop > 1):
            # next pages
            nloop = int(nloop) + 1 if nloop > int(nloop) else nloop
            for page in range(2, nloop + 1):
                # building query of next pages
                request['page'] = page
                query = urlencode(request)
                req = Request(url + query, headers=headers)
                # receive first page
                response = urlopen(req)
                page_next = json.loads(response.read().decode())
                for item_next in page_next['items']:
                    list['items'].append(item_next)

        # save data in file
        self.saveLibraryData(list, 'default_list.json')
        # show result in the quick panel
        sublime.set_timeout(self.show_results, 0)
Return dynamic programming (score) and traceback matrices.
dataset/ETHPy150Open gepd/Deviot/libs/Libraries.py/Libraries.downloadList--crossover with--dataset/ETHPy150Open biocore/scikit-bio/skbio/alignment/_pairwise.py/_compute_score_and_traceback_matrices