<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def find_definition_urls(self, set_of_links):
 """Find the available definition URLs for the columns in a table."""

        definition_dict = {}
        re_link_name = re.compile('.*p_table_name=(\w+)&p_topic.*')
        for link in set_of_links:
            if link.startswith('http://'):
                table_dict = {}
                html = urlopen(link).read()
                doc = lh.fromstring(html)
                unordered_list = doc.cssselect('#main ul')[-1]
                for li in unordered_list.iterchildren():
                    a = li.find('a')
                    table_dict.update({a.text: a.attrib['href']})
                link_name = re_link_name.sub(r'\1', link).upper()
                definition_dict.update({link_name: table_dict})
        return definition_dict