<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def tables(self):
 """The complete list of tables."""

        # If we are on unix use mdbtools instead #
        if os.name == "posix":
            mdb_tables  = sh.Command("mdb-tables")
            tables_list = mdb_tables('-1', self.path).split('\n')
            condition   = lambda t: t and not t.startswith('MSys')
            return [t.lower() for t in tables_list if condition(t)]
        # Default case #
        return [table[2].lower() for table in self.own_cursor.tables() if not table[2].startswith('MSys')]