Module Import alias Import alias ImportFrom alias alias Import alias Import alias Import alias Import alias Import alias Import alias Assign NameStore Call AttributeLoad NameLoad attr Str BinOpBitOr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr ClassDef bases body Expr Str FunctionDef arguments args NameParam defaults body Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Return Call AttributeLoad NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Return Call AttributeLoad NameLoad attr Str Str decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign NameStore BinOpMod Str NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Return SubscriptLoad Call AttributeLoad AttributeLoad NameLoad attr attr Index Num decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str NameLoad If CompareEq NameLoad Str body Assign NameStore BinOpMod Str TupleLoad NameLoad SubscriptLoad NameLoad Index Num If CompareEq Call NameLoad NameLoad Num body Assign NameStore BinOpMod Str TupleLoad NameLoad SubscriptLoad NameLoad Index Num orelse Assign NameStore BinOpMod Str TupleLoad NameLoad SubscriptLoad NameLoad Index Num Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Return SubscriptLoad Call AttributeLoad AttributeLoad NameLoad attr attr Index Num decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Return SubscriptLoad Call AttributeLoad AttributeLoad NameLoad attr attr Index Num decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign TupleStore NameStore NameStore NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr NameLoad Return TupleLoad NameLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign NameStore BinOpMod Str NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Return Call AttributeLoad AttributeLoad NameLoad attr attr decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign NameStore BinOpMod Str Call AttributeLoad NameLoad attr Str Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Return SubscriptLoad Call AttributeLoad AttributeLoad NameLoad attr attr Index Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Return BinOpMod Str TupleLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign NameStore Call NameLoad BinOpMod Str TupleLoad AttributeLoad NameLoad attr NameLoad Str Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Assign NameStore ListLoad Assign NameStore Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad Num attr If BoolOpOr CompareEq SubscriptLoad NameLoad Index Num Str CompareEq SubscriptLoad NameLoad Index Num Str body Assign NameStore BinOpMod Str NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr For NameStore NameLoad body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults body Assign NameStore Str Assign NameStore BinOpMod Str NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore Call NameLoad BinOpMod Str AttributeLoad NameLoad attr Str Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Assign NameStore SubscriptLoad Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad Num attr Index Num Assign NameStore SubscriptLoad Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad Num attr Index Num Assign NameStore SubscriptLoad Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad Num attr Index Num Assign NameStore Call AttributeLoad NameLoad attr Str Assign NameStore Call AttributeLoad NameLoad attr NameLoad For NameStore NameLoad body Assign NameStore BinOpMod NameLoad Call NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str NameLoad NameLoad NameLoad Assign NameStore SubscriptLoad Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad Num attr Index Num Assign NameStore Str Assign NameStore BinOpMod Str NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Assign TupleStore NameStore NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore Call AttributeLoad NameLoad attr NameLoad If CompareGt Call NameLoad NameLoad Num body Assign NameStore BinOpMod Str NameLoad orelse Assign NameStore Str Assign NameStore Call AttributeLoad Call AttributeLoad NameLoad attr Call NameLoad Call AttributeLoad NameLoad attr attr ImportFrom alias Assign NameStore AttributeLoad NameLoad attr Assign NameStore BinOpMod NameLoad Call NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults Str body Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults Str body Assign NameStore BinOpMod Str Call AttributeLoad NameLoad attr Str Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore ListLoad For TupleStore NameStore NameStore NameLoad body Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Continue Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr For NameStore NameLoad body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad NameLoad NameLoad If CompareEq Call NameLoad NameLoad Num body Return Str orelse Return Call AttributeLoad Str attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad Return TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num decorator_list FunctionDef arguments args NameParam NameParam defaults Str body Assign NameStore Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr If CompareEq Call NameLoad NameLoad Num body Return Str orelse Assign NameStore ListLoad For TupleStore NameStore NameStore NameLoad body Assign TupleStore NameStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad If CompareEq AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad NameLoad NameLoad NameLoad orelse Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad NameLoad NameLoad NameLoad Return Call AttributeLoad Str attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Return Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Return NameLoad Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr If CompareEq Call NameLoad SubscriptLoad NameLoad Index Num Num body Assign NameStore SubscriptLoad NameLoad Index Num orelse Assign NameStore BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num Assign NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num Assign NameStore ListLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad AttributeLoad NameLoad attr NameLoad SubscriptLoad NameLoad Index Num If CompareNotEq SubscriptLoad NameLoad Index Num Num body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num NameLoad Return TupleLoad Call AttributeLoad Str attr NameLoad Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Return NameLoad Return SubscriptLoad Call AttributeLoad AttributeLoad NameLoad attr attr Index Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Return NameLoad Return SubscriptLoad Call AttributeLoad AttributeLoad NameLoad attr attr Index Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Return NameLoad Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr If CompareEq Call NameLoad SubscriptLoad NameLoad Index Num Num body Assign NameStore SubscriptLoad NameLoad Index Num orelse Assign NameStore BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num Assign NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num Assign NameStore ListLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad AttributeLoad NameLoad attr NameLoad SubscriptLoad NameLoad Index Num If CompareNotEq SubscriptLoad NameLoad Index Num Num body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num NameLoad Return Call AttributeLoad Str attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Return NameLoad orelse Return Call AttributeLoad NameLoad attr SubscriptLoad Call AttributeLoad AttributeLoad NameLoad attr attr Index Num decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults Str body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad NameLoad If CompareNotEq NameLoad Str body Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore ListLoad For NameStore NameLoad body If CompareEq SubscriptLoad NameLoad Index Num Str body Assign NameStore SubscriptLoad NameLoad Index Num orelse Assign NameStore BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num Assign NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num Assign NameStore BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num NameLoad Assign NameStore Call NameLoad Call AttributeLoad SubscriptLoad NameLoad Index Num attr Str Assign NameStore BinOpMod Str TupleLoad AttributeLoad NameLoad attr NameLoad SubscriptLoad NameLoad Index Num If CompareNotEq SubscriptLoad NameLoad Index Num Num body Assign NameStore BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num NameLoad orelse Assign NameStore Str Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num NameLoad NameLoad NameLoad NameLoad Call NameLoad Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num NameLoad NameLoad Return Call AttributeLoad Str attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam defaults Str body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad NameLoad Call AttributeLoad NameLoad attr NameLoad NameLoad If CompareNotEq NameLoad Str body Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Return NameLoad Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore ListLoad For NameStore NameLoad body If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num NameLoad orelse If BoolOpAnd CompareEq Call AttributeLoad NameLoad attr Str CompareNotEq SubscriptLoad NameLoad Index Num Num body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num NameLoad orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num Call NameLoad SubscriptLoad NameLoad Index Num orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num Call NameLoad Call AttributeLoad SubscriptLoad NameLoad Index Num attr Str orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num AttributeLoad NameLoad attr NameLoad SubscriptLoad NameLoad Index Num If CompareEq Call NameLoad NameLoad Num body Return Str orelse Return Call AttributeLoad Str attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr Return Call AttributeLoad Str attr ListComp BinOpMod Str NameLoad comprehension NameStore NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults NameLoad body Assign NameStore Str If CompareNotEq NameLoad NameLoad body Assign NameStore BinOpAdd NameLoad BinOpMod Str Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpAdd NameLoad Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr Return Call AttributeLoad Str attr ListComp BinOpMod Str TupleLoad NameLoad NameLoad comprehension TupleStore NameStore NameStore NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad If CompareEq NameLoad Str body Assign NameStore BinOpMod Str TupleLoad NameLoad SubscriptLoad NameLoad Index Num If CompareEq Call NameLoad NameLoad Num body Assign NameStore BinOpMod Str TupleLoad NameLoad SubscriptLoad NameLoad Index Num orelse Assign NameStore BinOpMod Str TupleLoad NameLoad SubscriptLoad NameLoad Index Num If CompareEq Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Num body Return NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore ListLoad For NameStore NameLoad body If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num NameLoad orelse If BoolOpAnd CompareEq Call AttributeLoad NameLoad attr Str CompareNotEq SubscriptLoad NameLoad Index Num Num body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num NameLoad orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num Call NameLoad SubscriptLoad NameLoad Index Num orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num Call NameLoad Call AttributeLoad SubscriptLoad NameLoad Index Num attr Str orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Num AttributeLoad NameLoad attr NameLoad SubscriptLoad NameLoad Index Num If CompareEq Call NameLoad NameLoad Num body Return Str orelse Return Call AttributeLoad Str attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam defaults Str body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad Num attr Assign NameStore Call AttributeLoad SubscriptLoad Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad Num attr Index Num attr Assign NameStore Call NameLoad Call AttributeLoad NameLoad attr NameLoad Str NameLoad If CompareNotEq Call AttributeLoad NameLoad attr Str Num body Assign NameStore Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad Num attr Assign TupleStore NameStore NameStore Call AttributeLoad Call AttributeLoad SubscriptLoad NameLoad Index Num attr attr Str Assign NameStore BinOpMod Str NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Assign NameStore Num orelse Assign NameStore SubscriptLoad Call AttributeLoad AttributeLoad NameLoad attr attr Index Num Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareEq NameLoad Num body Return NameLoad Assign TupleStore NameStore NameStore NameStore Call AttributeLoad AttributeLoad NameLoad attr attr orelse Assign NameStore BinOpMod Str NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore Num Assign NameStore NameLoad Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad NameLoad NameLoad Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad body Return NameLoad orelse Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Call AttributeLoad NameLoad attr NameLoad NameLoad If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad body Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Return NameLoad orelse Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Return Num decorator_list decorator_list
N/A N/A MySQLdb N/A time mimify mime_encode_header mime_decode_header N/A re N/A settings N/A mime N/A strutil N/A smtplib N/A md5 N/A q_quote_multiline N/A N/A re compile =\?(.*?)\?[qQ]\?(.*?)\?=.*?=\?\1\?[qQ]\?(.*?)\?= N/A N/A re M N/A re S N/A doubleline_regexp N/A N/A re compile ^\.\. N/A re M N/A singleline_regexp N/A N/A re compile ^\. N/A re M N/A from_regexp N/A N/A re compile ^From:(.*)<(.*)> N/A re M N/A subject_regexp N/A N/A re compile ^Subject:(.*) N/A re M N/A references_regexp N/A N/A re compile ^References:(.*)<(.*)> N/A re M N/A lines_regexp N/A N/A re compile ^Lines:(.*) N/A re M N/A moderator_regexp N/A N/A re compile (.*)PHORUM\['ForumModeration'\](.*)='(.*)'; N/A re M N/A url_regexp N/A N/A re compile (.*)PHORUM\['forum_url'\](.*)='(.*)'; N/A re M N/A admin_regexp N/A N/A re compile (.*)PHORUM\['admin_url'\](.*)='(.*)'; N/A re M N/A server_regexp N/A N/A re compile (.*)PHORUM\['forum_url'\](.*)='(.*)http://(.*)/(.*)'; N/A re M N/A mail_code_regexp N/A N/A re compile (.*)PHORUM\['PhorumMailCode'\](.*)=(.*)'(.*)'; N/A re M Papercut_Storage N/A N/A N/A 
    Storage Backend interface for the Phorum web message board software (http://phorum.org)
    
    This is the interface for Phorum running on a MySQL database. For more information
    on the structure of the 'storage' package, please refer to the __init__.py
    available on the 'storage' sub-directory.
     __init__ N/A N/A self N/A N/A N/A N/A self conn N/A N/A MySQLdb connect host N/A settings dbhost db N/A settings dbname user N/A settings dbuser passwd N/A settings dbpass N/A N/A self cursor N/A N/A N/A self conn cursor N/A get_message_body N/A N/A self headers N/A N/A N/A Parses and returns the most appropriate message body possible.
        
        The function tries to extract the plaintext version of a MIME based
        message, and if it is not available then it returns the html version.        
         N/A N/A N/A mime get_text_message headers N/A quote_string N/A N/A self text N/A N/A N/A Quotes strings the MySQL way. N/A N/A N/A text replace ' \' N/A group_exists N/A N/A self group_name N/A N/A N/A stmt N/A 
                SELECT
                    COUNT(*) AS total
                FROM
                    forums
                WHERE
                    LOWER(nntp_group_name)=LOWER('%s') group_name N/A N/A N/A N/A self cursor execute stmt N/A N/A N/A N/A N/A self cursor fetchone N/A 0 N/A article_exists N/A N/A self group_name style range N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    COUNT(*) AS total
                FROM
                    %s
                WHERE
                    approved='Y' table_name N/A N/A style range N/A N/A stmt N/A %s AND id > %s N/A stmt N/A range N/A 0 N/A N/A N/A len range 2 N/A N/A stmt N/A %s AND id < %s N/A stmt N/A range N/A 1 N/A N/A stmt N/A %s AND id = %s N/A stmt N/A range N/A 0 N/A N/A N/A N/A self cursor execute stmt N/A N/A N/A N/A N/A self cursor fetchone N/A 0 N/A get_first_article N/A N/A self group_name N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    IF(MIN(id) IS NULL, 0, MIN(id)) AS first_article
                FROM
                    %s
                WHERE
                    approved='Y' table_name N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A N/A N/A N/A self cursor fetchone N/A 0 N/A get_group_stats N/A N/A self group_name N/A N/A N/A N/A total max min N/A N/A self get_table_stats N/A N/A self get_table_name group_name N/A N/A total min max group_name N/A get_table_stats N/A N/A self table_name N/A N/A N/A stmt N/A 
                SELECT
                   COUNT(id) AS total,
                   IF(MAX(id) IS NULL, 0, MAX(id)) AS maximum,
                   IF(MIN(id) IS NULL, 0, MIN(id)) AS minimum
                FROM
                    %s
                WHERE
                    approved='Y' table_name N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A N/A N/A self cursor fetchone N/A get_table_name N/A N/A self group_name N/A N/A N/A stmt N/A 
                SELECT
                    table_name
                FROM
                    forums
                WHERE
                    nntp_group_name='%s' N/A N/A group_name replace * % N/A N/A N/A N/A self cursor execute stmt N/A N/A N/A N/A N/A self cursor fetchone N/A 0 N/A get_message_id N/A N/A self msg_num group N/A N/A N/A N/A <%s@%s> N/A msg_num group N/A get_notification_emails N/A N/A self forum_id N/A N/A N/A fp N/A open N/A %s%s.php N/A N/A settings phorum_settings_path forum_id r N/A content N/A N/A fp read N/A N/A N/A fp close N/A recipients N/A N/A mod_code N/A N/A N/A N/A moderator_regexp search content 0 groups N/A N/A N/A N/A mod_code N/A 2 r N/A N/A mod_code N/A 2 a N/A N/A stmt N/A 
                    SELECT
                        email
                    FROM
                        forums_auth,
                        forums_moderators
                    WHERE
                        user_id=id AND
                        forum_id=%s forum_id N/A N/A N/A N/A self cursor execute stmt N/A result N/A list N/A N/A N/A self cursor fetchall N/A row result N/A N/A N/A N/A recipients append N/A row N/A 0 N/A recipients N/A send_notifications N/A N/A self group_name msg_id thread_id parent_id msg_author msg_email msg_subject msg_body N/A N/A N/A msg_tpl From: Phorum <%(recipient)s>
To: %(recipient)s
Subject: Moderate for %(forum_name)s at %(phorum_server_hostname)s Message: %(msg_id)s.

Subject: %(msg_subject)s
Author: %(msg_author)s
Message: %(phorum_url)s/read.php?f=%(forum_id)s&i=%(msg_id)s&t=%(thread_id)s&admview=1

%(msg_body)s

To delete this message use this URL:
%(phorum_admin_url)s?page=easyadmin&action=del&type=quick&id=%(msg_id)s&num=1&thread=%(thread_id)s

To edit this message use this URL:
%(phorum_admin_url)s?page=edit&srcpage=easyadmin&id=%(msg_id)s&num=1&mythread=%(thread_id)s

 N/A stmt N/A 
                SELECT
                    id,
                    name
                FROM
                    forums
                WHERE
                    nntp_group_name='%s' group_name N/A N/A N/A N/A self cursor execute stmt N/A N/A forum_id forum_name N/A N/A N/A self cursor fetchone N/A fp N/A open N/A %sforums.php N/A settings phorum_settings_path r N/A content N/A N/A fp read N/A N/A N/A fp close N/A phorum_url N/A N/A N/A N/A N/A url_regexp search content 0 groups N/A 2 N/A phorum_admin_url N/A N/A N/A N/A N/A admin_regexp search content 0 groups N/A 2 N/A phorum_server_hostname N/A N/A N/A N/A N/A server_regexp search content 0 groups N/A 3 N/A smtp N/A N/A smtplib SMTP localhost N/A emails N/A N/A self get_notification_emails forum_id N/A recipient emails N/A N/A current_msg N/A msg_tpl N/A vars N/A N/A N/A smtp sendmail N/A Phorum <%s> recipient recipient current_msg N/A phorum_mail_code N/A N/A N/A N/A N/A mail_code_regexp search content 0 groups N/A 3 N/A notification_mail_tpl Message-ID: <%(random_msgid)s@%(phorum_server_hostname)s>
From: %(msg_author)s %(msg_email)s
Subject: %(msg_subject)s
To: %(forum_name)s <%(email_list)s>
Return-Path: <%(email_return)s>
Reply-To: %(email_return)s
X-Phorum-%(phorum_mail_code)s-Version: Phorum %(phorum_version)s
X-Phorum-%(phorum_mail_code)s-Forum: %(forum_name)s
X-Phorum-%(phorum_mail_code)s-Thread: %(thread_id)s
X-Phorum-%(phorum_mail_code)s-Parent: %(parent_id)s

This message was sent from: %(forum_name)s.
<%(phorum_url)s/read.php?f=%(forum_id)s&i=%(msg_id)s&t=%(thread_id)s>
----------------------------------------------------------------

%(msg_body)s

----------------------------------------------------------------
Sent using Papercut version %(__VERSION__)s
 N/A stmt N/A 
                SELECT
                    email_list,
                    email_return
                FROM
                    forums
                WHERE
                    LENGTH(email_list) > 0 AND
                    id=%s forum_id N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 1 N/A N/A N/A email_list email_return N/A N/A N/A self cursor fetchone N/A msg_body N/A N/A strutil wrap msg_body N/A N/A N/A len msg_email 0 N/A N/A msg_email N/A <%s> msg_email N/A N/A msg_email N/A random_msgid N/A N/A N/A N/A md5 new N/A str N/A N/A time clock hexdigest papercut __VERSION__ N/A phorum_version N/A settings phorum_version N/A current_msg N/A notification_mail_tpl N/A vars N/A N/A N/A smtp sendmail N/A %s %s N/A msg_author msg_email email_list current_msg N/A N/A N/A smtp quit N/A get_NEWGROUPS N/A N/A self ts group N/A % N/A N/A None N/A get_NEWNEWS N/A N/A self ts group N/A * N/A N/A stmt N/A 
                SELECT
                    nntp_group_name,
                    table_name
                FROM
                    forums
                WHERE
                    nntp_group_name='%s'
                ORDER BY
                    nntp_group_name ASC N/A N/A group_name replace * % N/A N/A N/A N/A self cursor execute stmt N/A result N/A list N/A N/A N/A self cursor fetchall N/A articles N/A N/A N/A group table result N/A N/A stmt N/A 
                    SELECT
                        id
                    FROM
                        %s
                    WHERE
                        approved='Y' AND
                        UNIX_TIMESTAMP(datestamp) >= %s N/A table ts N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 0 N/A N/A N/A ids N/A list N/A N/A N/A self cursor fetchall N/A id ids N/A N/A N/A N/A articles append N/A <%s@%s> N/A id group N/A N/A N/A len articles 0 N/A N/A N/A N/A N/A N/A join articles N/A get_GROUP N/A N/A self group_name N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A result N/A N/A self get_table_stats table_name N/A N/A N/A result N/A 0 N/A result N/A 2 N/A result N/A 1 N/A get_LIST N/A N/A self username N/A N/A N/A stmt 
                SELECT
                    nntp_group_name,
                    table_name
                FROM
                    forums
                WHERE
                    LENGTH(nntp_group_name) > 0
                ORDER BY
                    nntp_group_name ASC N/A N/A N/A N/A self cursor execute stmt N/A result N/A list N/A N/A N/A self cursor fetchall N/A N/A N/A len result 0 N/A N/A N/A N/A lists N/A N/A N/A group_name table result N/A N/A N/A total maximum minimum N/A N/A self get_table_stats table N/A N/A N/A settings server_type read-only N/A N/A N/A N/A lists append N/A %s %s %s n N/A group_name maximum minimum N/A N/A N/A N/A lists append N/A %s %s %s y N/A group_name maximum minimum N/A N/A N/A join lists N/A get_STAT N/A N/A self group_name id N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    id
                FROM
                    %s
                WHERE
                    approved='Y' AND
                    id=%s N/A table_name id N/A N/A N/A N/A self cursor execute stmt N/A get_ARTICLE N/A N/A self group_name id N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    A.id,
                    author,
                    email,
                    subject,
                    UNIX_TIMESTAMP(datestamp) AS datestamp,
                    body,
                    parent
                FROM
                    %s A,
                    %s_bodies B
                WHERE
                    A.approved='Y' AND
                    A.id=B.id AND
                    A.id=%s N/A table_name table_name id N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 0 N/A N/A None N/A result N/A list N/A N/A N/A self cursor fetchone N/A N/A N/A len N/A result N/A 2 0 N/A N/A author N/A result N/A 1 N/A N/A author N/A %s <%s> N/A N/A result N/A 1 N/A result N/A 2 N/A formatted_time N/A N/A strutil get_formatted_time N/A N/A time localtime N/A result N/A 4 N/A headers N/A N/A N/A N/A headers append N/A Path: %s N/A settings nntp_hostname N/A N/A N/A headers append N/A From: %s author N/A N/A N/A headers append N/A Newsgroups: %s group_name N/A N/A N/A headers append N/A Date: %s formatted_time N/A N/A N/A headers append N/A Subject: %s N/A result N/A 3 N/A N/A N/A headers append N/A Message-ID: <%s@%s> N/A N/A result N/A 0 group_name N/A N/A N/A headers append N/A Xref: %s %s:%s N/A N/A settings nntp_hostname group_name N/A result N/A 0 N/A N/A N/A result N/A 6 0 N/A N/A N/A N/A headers append N/A References: <%s@%s> N/A N/A result N/A 6 group_name N/A N/A N/A N/A join headers N/A N/A strutil format_body N/A result N/A 5 N/A get_LAST N/A N/A self group_name current_id N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    id
                FROM
                    %s
                WHERE
                    approved='Y' AND
                    id < %s
                ORDER BY
                    id DESC
                LIMIT 0, 1 N/A table_name current_id N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 0 N/A N/A None N/A N/A N/A N/A N/A self cursor fetchone N/A 0 N/A get_NEXT N/A N/A self group_name current_id N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    id
                FROM
                    %s
                WHERE
                    approved='Y' AND
                    id > %s
                ORDER BY
                    id ASC
                LIMIT 0, 1 N/A table_name current_id N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 0 N/A N/A None N/A N/A N/A N/A N/A self cursor fetchone N/A 0 N/A get_HEAD N/A N/A self group_name id N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    id,
                    author,
                    email,
                    subject,
                    UNIX_TIMESTAMP(datestamp) AS datestamp,
                    parent
                FROM
                    %s
                WHERE
                    approved='Y' AND
                    id=%s N/A table_name id N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 0 N/A N/A None N/A result N/A list N/A N/A N/A self cursor fetchone N/A N/A N/A len N/A result N/A 2 0 N/A N/A author N/A result N/A 1 N/A N/A author N/A %s <%s> N/A N/A result N/A 1 N/A result N/A 2 N/A formatted_time N/A N/A strutil get_formatted_time N/A N/A time localtime N/A result N/A 4 N/A headers N/A N/A N/A N/A headers append N/A Path: %s N/A settings nntp_hostname N/A N/A N/A headers append N/A From: %s author N/A N/A N/A headers append N/A Newsgroups: %s group_name N/A N/A N/A headers append N/A Date: %s formatted_time N/A N/A N/A headers append N/A Subject: %s N/A result N/A 3 N/A N/A N/A headers append N/A Message-ID: <%s@%s> N/A N/A result N/A 0 group_name N/A N/A N/A headers append N/A Xref: %s %s:%s N/A N/A settings nntp_hostname group_name N/A result N/A 0 N/A N/A N/A result N/A 5 0 N/A N/A N/A N/A headers append N/A References: <%s@%s> N/A N/A result N/A 5 group_name N/A N/A N/A join headers N/A get_BODY N/A N/A self group_name id N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    B.body
                FROM
                    %s A,
                    %s_bodies B
                WHERE
                    A.id=B.id AND
                    A.approved='Y' AND
                    B.id=%s N/A table_name table_name id N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 0 N/A N/A None N/A N/A N/A N/A strutil format_body N/A N/A N/A N/A self cursor fetchone N/A 0 N/A get_XOVER N/A N/A self group_name start_id end_id N/A ggg N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    A.id,
                    parent,
                    author,
                    email,
                    subject,
                    UNIX_TIMESTAMP(datestamp) AS datestamp,
                    B.body
                FROM
                    %s A, 
                    %s_bodies B
                WHERE
                    A.approved='Y' AND
                    A.id=B.id AND
                    A.id >= %s N/A table_name table_name start_id N/A N/A end_id ggg N/A N/A stmt N/A %s AND A.id <= %s N/A stmt end_id N/A N/A N/A N/A self cursor execute stmt N/A result N/A list N/A N/A N/A self cursor fetchall N/A overviews N/A N/A row result N/A N/A N/A N/A row N/A 3 N/A N/A author N/A row N/A 2 N/A N/A author N/A %s <%s> N/A N/A row N/A 2 N/A row N/A 3 N/A formatted_time N/A N/A strutil get_formatted_time N/A N/A time localtime N/A row N/A 5 N/A message_id N/A <%s@%s> N/A N/A row N/A 0 group_name N/A line_count N/A len N/A N/A N/A row N/A 6 split N/A xref N/A Xref: %s %s:%s N/A N/A settings nntp_hostname group_name N/A row N/A 0 N/A N/A N/A row N/A 1 0 N/A N/A reference N/A <%s@%s> N/A N/A row N/A 1 group_name N/A N/A reference N/A N/A N/A overviews append N/A %s	%s	%s	%s	%s	%s	%s	%s	%s N/A N/A row N/A 0 N/A row N/A 4 author formatted_time message_id reference N/A len N/A N/A strutil format_body N/A row N/A 6 line_count xref N/A N/A N/A join overviews N/A get_XPAT N/A N/A self group_name header pattern start_id end_id N/A ggg N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    A.id,
                    parent,
                    author,
                    email,
                    subject,
                    UNIX_TIMESTAMP(datestamp) AS datestamp,
                    B.body
                FROM
                    %s A, 
                    %s_bodies B
                WHERE
                    A.approved='Y' AND
                    %s REGEXP '%s' AND
                    A.id = B.id AND
                    A.id >= %s N/A table_name table_name header N/A N/A strutil format_wildcards pattern start_id N/A N/A end_id ggg N/A N/A stmt N/A %s AND A.id <= %s N/A stmt end_id N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 0 N/A N/A None N/A result N/A list N/A N/A N/A self cursor fetchall N/A hdrs N/A N/A row result N/A N/A N/A N/A N/A header upper SUBJECT N/A N/A N/A N/A hdrs append N/A %s %s N/A N/A row N/A 0 N/A row N/A 4 N/A N/A N/A N/A N/A header upper FROM N/A N/A N/A N/A hdrs append N/A %s %s <%s> N/A N/A row N/A 0 N/A row N/A 2 N/A row N/A 3 N/A N/A N/A N/A N/A header upper DATE N/A N/A N/A N/A hdrs append N/A %s %s N/A N/A row N/A 0 N/A N/A strutil get_formatted_time N/A N/A time localtime N/A result N/A 5 N/A N/A N/A N/A N/A header upper MESSAGE-ID N/A N/A N/A N/A hdrs append N/A %s <%s@%s> N/A N/A row N/A 0 N/A row N/A 0 group_name N/A N/A N/A N/A N/A N/A header upper REFERENCES N/A N/A row N/A 1 0 N/A N/A N/A N/A hdrs append N/A %s <%s@%s> N/A N/A row N/A 0 N/A row N/A 1 group_name N/A N/A N/A N/A N/A header upper BYTES N/A N/A N/A N/A hdrs append N/A %s %s N/A N/A row N/A 0 N/A len N/A row N/A 6 N/A N/A N/A N/A N/A header upper LINES N/A N/A N/A N/A hdrs append N/A %s %s N/A N/A row N/A 0 N/A len N/A N/A N/A row N/A 6 split N/A N/A N/A N/A N/A header upper XREF N/A N/A N/A N/A hdrs append N/A %s %s %s:%s N/A N/A row N/A 0 N/A settings nntp_hostname group_name N/A row N/A 0 N/A N/A N/A len hdrs 0 N/A N/A N/A N/A N/A N/A join hdrs N/A get_LISTGROUP N/A N/A self group_name N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    id
                FROM
                    %s
                WHERE
                    approved='Y'
                ORDER BY
                    id ASC table_name N/A N/A N/A N/A self cursor execute stmt N/A result N/A list N/A N/A N/A self cursor fetchall N/A N/A N/A join N/A N/A %s k N/A k result N/A get_XGTITLE N/A N/A self pattern N/A None N/A N/A stmt 
                SELECT
                    nntp_group_name,
                    description
                FROM
                    forums
                WHERE
                    LENGTH(nntp_group_name) > 0 N/A N/A pattern None N/A N/A stmt N/A stmt N/A  AND
                    nntp_group_name REGEXP '%s' N/A N/A strutil format_wildcards pattern N/A stmt N/A stmt 
                ORDER BY
                    nntp_group_name ASC N/A N/A N/A N/A self cursor execute stmt N/A result N/A list N/A N/A N/A self cursor fetchall N/A N/A N/A join N/A N/A %s %s N/A k v N/A N/A k v result N/A get_XHDR N/A N/A self group_name header style range N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A stmt N/A 
                SELECT
                    A.id,
                    parent,
                    author,
                    email,
                    subject,
                    UNIX_TIMESTAMP(datestamp) AS datestamp,
                    B.body
                FROM
                    %s A,
                    %s_bodies B
                WHERE
                    A.approved='Y' AND
                    A.id = B.id AND  N/A table_name table_name N/A N/A style range N/A N/A stmt N/A %s A.id >= %s N/A stmt N/A range N/A 0 N/A N/A N/A len range 2 N/A N/A stmt N/A %s AND A.id <= %s N/A stmt N/A range N/A 1 N/A N/A stmt N/A %s A.id = %s N/A stmt N/A range N/A 0 N/A N/A N/A N/A N/A self cursor execute stmt 0 N/A N/A None N/A result N/A N/A N/A self cursor fetchall N/A hdrs N/A N/A row result N/A N/A N/A N/A N/A header upper SUBJECT N/A N/A N/A N/A hdrs append N/A %s %s N/A N/A row N/A 0 N/A row N/A 4 N/A N/A N/A N/A N/A header upper FROM N/A N/A N/A N/A hdrs append N/A %s %s <%s> N/A N/A row N/A 0 N/A row N/A 2 N/A row N/A 3 N/A N/A N/A N/A N/A header upper DATE N/A N/A N/A N/A hdrs append N/A %s %s N/A N/A row N/A 0 N/A N/A strutil get_formatted_time N/A N/A time localtime N/A result N/A 5 N/A N/A N/A N/A N/A header upper MESSAGE-ID N/A N/A N/A N/A hdrs append N/A %s <%s@%s> N/A N/A row N/A 0 N/A row N/A 0 group_name N/A N/A N/A N/A N/A N/A header upper REFERENCES N/A N/A row N/A 1 0 N/A N/A N/A N/A hdrs append N/A %s <%s@%s> N/A N/A row N/A 0 N/A row N/A 1 group_name N/A N/A N/A N/A N/A header upper BYTES N/A N/A N/A N/A hdrs append N/A %s %s N/A N/A row N/A 0 N/A len N/A row N/A 6 N/A N/A N/A N/A N/A header upper LINES N/A N/A N/A N/A hdrs append N/A %s %s N/A N/A row N/A 0 N/A len N/A N/A N/A row N/A 6 split N/A N/A N/A N/A N/A header upper XREF N/A N/A N/A N/A hdrs append N/A %s %s %s:%s N/A N/A row N/A 0 N/A settings nntp_hostname group_name N/A row N/A 0 N/A N/A N/A len hdrs 0 N/A N/A N/A N/A N/A N/A join hdrs N/A do_POST N/A N/A self group_name lines ip_address username N/A N/A N/A table_name N/A N/A self get_table_name group_name N/A body N/A N/A self get_message_body lines N/A N/A author email N/A N/A N/A N/A from_regexp search lines 0 groups N/A subject N/A N/A N/A N/A N/A N/A N/A subject_regexp search lines 0 groups N/A 0 strip N/A lines N/A mime_decode_header N/A N/A re sub q_quote_multiline =?\1?Q?\2\3?= lines N/A N/A N/A N/A lines find References -1 N/A N/A references N/A N/A N/A N/A references_regexp search lines 0 groups N/A N/A parent_id void N/A N/A N/A N/A N/A references N/A -1 strip split @ N/A stmt N/A 
                    SELECT
                        IF(MAX(id) IS NULL, 1, MAX(id)+1) AS next_id
                    FROM
                        %s table_name N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 0 N/A N/A new_id 1 N/A N/A new_id N/A N/A N/A N/A self cursor fetchone N/A 0 N/A stmt N/A 
                    SELECT
                        id,
                        thread,
                        modifystamp
                    FROM
                        %s
                    WHERE
                        approved='Y' AND
                        id=%s
                    GROUP BY
                        id N/A table_name parent_id N/A num_rows N/A N/A N/A self cursor execute stmt N/A N/A num_rows 0 N/A N/A None N/A N/A parent_id thread_id modifystamp N/A N/A N/A self cursor fetchone N/A N/A stmt N/A 
                    SELECT
                        IF(MAX(id) IS NULL, 1, MAX(id)+1) AS next_id,
                        UNIX_TIMESTAMP()
                    FROM
                        %s table_name N/A N/A N/A N/A self cursor execute stmt N/A N/A new_id modifystamp N/A N/A N/A self cursor fetchone N/A parent_id 0 N/A thread_id new_id N/A stmt N/A 
                INSERT INTO
                    %s
                (
                    id,
                    datestamp,
                    thread,
                    parent,
                    author,
                    subject,
                    email,
                    host,
                    email_reply,
                    approved,
                    msgid,
                    modifystamp,
                    userid
                ) VALUES (
                    %s,
                    NOW(),
                    %s,
                    %s,
                    '%s',
                    '%s',
                    '%s',
                    '%s',
                    'N',
                    'Y',
                    '',
                    %s,
                    0
                )
                 N/A table_name new_id thread_id parent_id N/A N/A self quote_string N/A N/A author strip N/A N/A self quote_string subject N/A N/A self quote_string email ip_address modifystamp N/A N/A N/A N/A N/A self cursor execute stmt N/A N/A None N/A N/A stmt N/A 
                    INSERT INTO
                        %s_bodies
                    (
                        id,
                        body,
                        thread
                    ) VALUES (
                        %s,
                        '%s',
                        %s
                    ) N/A table_name new_id N/A N/A self quote_string body thread_id N/A N/A N/A N/A N/A self cursor execute stmt N/A N/A stmt N/A 
                        DELETE FROM
                            %s
                        WHERE
                            id=%s N/A table_name new_id N/A N/A N/A N/A self cursor execute stmt N/A None N/A N/A N/A N/A self send_notifications group_name new_id thread_id parent_id N/A N/A author strip email subject body N/A 1 N/A N/A