<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def has_out_of_flow_tables(self):
 """ Returns True if the article has out-of-flow tables, indicates separate tables document. This method is used to indicate whether rendering this article's content will result in the creation of out-of-flow HTML tables. This method has a base class implementation representing a common logic; if an article has a graphic(image) representation of a table then the HTML representation will be placed out-of-flow if it exists, if there is no graphic(image) represenation then the HTML representation will be placed in-flow. Returns ------- bool True if there are out-of-flow HTML tables, False otherwise """

        if self.article.body is None:
            return False
        for table_wrap in self.article.body.findall('.//table-wrap'):
            graphic = table_wrap.xpath('./graphic | ./alternatives/graphic')
            table = table_wrap.xpath('./table | ./alternatives/table')
            if graphic and table:
                return True
        return False