def get_footnote_backreferences(text, markdown_obj):
footnotes = OrderedDict()<EOL>for footnote_id, footnote in re_footnote_backreferences.findall(text):<EOL><INDENT>footnote_id = re.sub(r'<STR_LIT>', r'<STR_LIT>', footnote_id).lower().strip()<EOL>footnote = re.sub(r'<STR_LIT>', '<STR_LIT>', footnote, flags=re.M)<EOL>footnotes[footnote_id] = footnote<EOL><DEDENT>text = re_footnote_backreferences.sub('<STR_LIT>', text)<EOL>return text, footnotes<EOL>
Retrieves all footnote backreferences within the text.

    Fotnote backreferences can be defined anywhere in the text, and
    look like this:

        [^id]: text

    The corresponding footnote reference can then be placed anywhere in
    the text

        This is some text.[^id]

    Footnote IDs are case insensitive. Footnote references are also
    removed from the text after they have been retrieved.

    RETURNS:
    text       -- str; text with all link labels removed
    references -- dict; link ids to (URL, title), where title is the
                  empty string if it is omitted.