Module ImportFrom alias alias ImportFrom alias ImportFrom alias ImportFrom alias Import alias Import alias ImportFrom alias alias ImportFrom alias ImportFrom alias alias alias ImportFrom alias ImportFrom alias ImportFrom alias alias alias alias ImportFrom alias alias ImportFrom alias ImportFrom alias identifier FunctionDef arguments args NameParam defaults body Expr Str FunctionDef arguments args NameParam defaults body Return IfExp CompareIsNot NameLoad NameLoad Call NameLoad NameLoad NameLoad decorator_list Assign NameStore ListLoad For NameStore NameLoad body Expr Call AttributeLoad NameLoad attr DictComp Call NameLoad NameLoad Call NameLoad NameLoad comprehension TupleStore NameStore NameStore Call AttributeLoad NameLoad attr Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore ListLoad Assign NameStore Call NameLoad NameLoad Assign NameStore DictComp SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num comprehension NameStore NameLoad Assign NameStore Call NameLoad TryExcept body Assign NameStore Call NameLoad NameLoad handlers ExceptHandler type TupleLoad NameLoad NameLoad name NameStore body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr Call AttributeLoad Call NameLoad Str attr NameLoad Return NameLoad For NameStore AttributeLoad NameLoad attr body Assign NameStore Call NameLoad NameLoad If CompareIn AttributeLoad AttributeLoad NameLoad attr attr NameLoad body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpAdd Str BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr Continue Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareIs NameLoad NameLoad body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr Continue If CompareEq AttributeLoad AttributeLoad NameLoad attr attr Str body If CompareNotIn SubscriptLoad NameLoad Index Num AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpMod Str TupleLoad AttributeLoad AttributeLoad NameLoad attr attr SubscriptLoad NameLoad Index Num Continue orelse If CompareEq SubscriptLoad NameLoad Index Num Str body If BoolOpOr CompareNotIn SubscriptLoad NameLoad Index Num AttributeLoad NameLoad attr CompareNotIn SubscriptLoad NameLoad Index Num AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr Continue orelse If CompareNotIn SubscriptLoad NameLoad Index Num AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr Continue Expr Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore BinOpSub Call NameLoad NameLoad Call NameLoad AttributeLoad NameLoad attr If CompareGt Call NameLoad NameLoad Num body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpMod Str TupleLoad AttributeLoad AttributeLoad NameLoad attr attr Call AttributeLoad Str attr NameLoad Assign NameStore BinOpSub Call NameLoad AttributeLoad NameLoad attr Call NameLoad NameLoad If CompareGt Call NameLoad NameLoad Num body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpMod Str TupleLoad AttributeLoad AttributeLoad NameLoad attr attr Call AttributeLoad Str attr NameLoad If CompareEq AttributeLoad AttributeLoad NameLoad attr attr Str body Assign NameStore Call NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad orelse If CompareEq SubscriptLoad AttributeLoad NameLoad attr Index Num Str body Assign NameStore Call NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad orelse Assign NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr Call NameLoad Str Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults body Expr Str Assert CompareIsNot NameLoad NameLoad Assert CompareIsNot NameLoad NameLoad Assert Call NameLoad NameLoad NameLoad Assert Call NameLoad NameLoad NameLoad Assert Call NameLoad NameLoad NameLoad Assert Call NameLoad NameLoad NameLoad Assert Call NameLoad NameLoad NameLoad Return ListComp IfExp CompareIsNot NameLoad NameLoad NameLoad Str comprehension NameStore BinOpAdd BinOpAdd BinOpAdd BinOpAdd BinOpAdd ListLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad ListLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore ListComp BinOpAdd Str NameLoad comprehension NameStore AttributeLoad NameLoad attr Assign NameStore ListComp BinOpAdd Str NameLoad comprehension NameStore AttributeLoad NameLoad attr Assign NameStore ListComp BinOpAdd Str NameLoad comprehension NameStore AttributeLoad NameLoad attr Assign NameStore ListComp BinOpAdd Str NameLoad comprehension NameStore AttributeLoad NameLoad attr Assign NameStore ListLoad Expr Call AttributeLoad NameLoad attr ListLoad Str Call NameLoad keyword Str keyword Str keyword NameLoad keyword ListComp BinOpMod Str NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword ListComp BinOpMod Str NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword ListComp BinOpMod Str NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword Str For TupleStore NameStore NameStore Call NameLoad Call AttributeLoad NameLoad attr body Assign NameStore BinOpAdd Str Call NameLoad BinOpAdd NameLoad Num Expr Call AttributeLoad NameLoad attr ListLoad NameLoad BinOpAdd ListLoad Str Str NameLoad For TupleStore NameStore NameStore Call NameLoad Call AttributeLoad NameLoad attr body Assign NameStore BinOpAdd BinOpAdd NameLoad Str Call NameLoad BinOpAdd NameLoad Num Expr Call AttributeLoad NameLoad attr ListLoad NameLoad BinOpAdd BinOpAdd BinOpAdd BinOpAdd ListLoad Str NameLoad NameLoad NameLoad NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Dict Str ListLoad For TupleStore NameStore NameStore Call NameLoad Call AttributeLoad NameLoad attr body Assign NameStore BinOpAdd Str Call NameLoad BinOpAdd NameLoad Num Assign NameStore Call NameLoad keyword Str keyword NameLoad keyword ListComp Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword ListComp Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword ListComp Call AttributeLoad NameLoad attr NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword ListComp Call AttributeLoad NameLoad attr NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Expr Call AttributeLoad SubscriptLoad NameLoad Index Str attr NameLoad Assign SubscriptStore NameLoad Index NameLoad ListLoad If UnaryOpNot Call NameLoad NameLoad NameLoad body If AttributeLoad AttributeLoad NameLoad attr attr body Expr Call AttributeLoad SubscriptLoad NameLoad Index NameLoad attr BinOpAdd TupleLoad Str Str Call NameLoad GeneratorExp Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr NameLoad Str comprehension NameStore AttributeLoad NameLoad attr For TupleStore NameStore NameStore ListLoad TupleLoad Str Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr TupleLoad Str Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr body For NameStore NameLoad body Assign NameStore AttributeLoad NameLoad attr If CompareEq AttributeLoad NameLoad attr Str body AugAssignAdd NameStore Str orelse If CompareEq AttributeLoad NameLoad attr Str body AugAssignAdd NameStore Str Expr Call AttributeLoad SubscriptLoad NameLoad Index NameLoad attr BinOpAdd TupleLoad NameLoad NameLoad Call NameLoad GeneratorExp Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Str comprehension NameStore AttributeLoad NameLoad attr If CompareEq AttributeLoad NameLoad attr Str body For NameStore AttributeLoad NameLoad attr body Expr Call AttributeLoad SubscriptLoad NameLoad Index NameLoad attr BinOpAdd TupleLoad BinOpAdd AttributeLoad NameLoad attr Str NameLoad Call NameLoad GeneratorExp Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Str comprehension NameStore AttributeLoad NameLoad attr If CompareEq AttributeLoad NameLoad attr Str body For TupleStore NameStore NameStore Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr body Expr Call AttributeLoad SubscriptLoad NameLoad Index NameLoad attr BinOpAdd TupleLoad BinOpAdd NameLoad Str NameLoad Call NameLoad GeneratorExp Call AttributeLoad NameLoad attr NameLoad Str comprehension NameStore AttributeLoad NameLoad attr For TupleStore NameStore NameStore Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr body For TupleStore NameStore NameStore Call AttributeLoad AttributeLoad NameLoad attr attr body Expr Call AttributeLoad SubscriptLoad NameLoad Index NameLoad attr BinOpAdd TupleLoad Call AttributeLoad Str attr NameLoad NameLoad NameLoad Call NameLoad GeneratorExp Call AttributeLoad NameLoad attr NameLoad Str comprehension NameStore AttributeLoad NameLoad attr For TupleStore NameStore NameStore Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr body Expr Call AttributeLoad SubscriptLoad NameLoad Index NameLoad attr BinOpAdd TupleLoad Call AttributeLoad Str attr BinOpAdd NameLoad Num NameLoad Call NameLoad GeneratorExp Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Str comprehension NameStore AttributeLoad NameLoad attr For TupleStore NameStore NameStore Call NameLoad Call AttributeLoad NameLoad attr body Assign NameStore BinOpAdd BinOpAdd NameLoad Str Call NameLoad BinOpAdd NameLoad Num Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword Str keyword NameLoad keyword ListComp Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword BinOpMult ListLoad NameLoad Call NameLoad AttributeLoad NameLoad attr keyword ListComp Call AttributeLoad NameLoad attr NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword ListComp Call AttributeLoad NameLoad attr NameLoad comprehension NameStore AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Expr Call AttributeLoad SubscriptLoad NameLoad Index Str attr NameLoad Assign SubscriptStore NameLoad Index NameLoad ListLoad Assign NameStore Call NameLoad TryExcept body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Str handlers ExceptHandler type NameLoad body Assign NameStore ListLoad For NameStore NameLoad body Assign NameStore SubscriptLoad AttributeLoad NameLoad attr Index Str For NameStore Call AttributeLoad NameLoad attr Str body Assign NameStore SubscriptLoad AttributeLoad NameLoad attr Index Str Assign SubscriptStore NameLoad Index NameLoad Call AttributeLoad NameLoad attr NameLoad Dict For NameStore Call AttributeLoad NameLoad attr Str body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Str Str Assign NameStore Str For NameStore AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr body If Call NameLoad NameLoad NameLoad body AugAssignAdd NameStore BinOpAdd BinOpAdd Str AttributeLoad NameLoad attr Str orelse AugAssignAdd NameStore Call NameLoad Call AttributeLoad Call AttributeLoad Call NameLoad NameLoad attr Str Str attr Str Str Assign SubscriptStore SubscriptLoad NameLoad Index NameLoad Index TupleLoad NameLoad NameLoad NameLoad For TupleStore NameStore NameStore Call AttributeLoad NameLoad attr body Assign NameStore ListLoad NameLoad For NameStore ListLoad Str Str Str Str body Assign NameStore Str For NameStore AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad If NameLoad body Break For NameStore AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad If Call NameLoad SubscriptLoad NameLoad Slice Num body Expr Call AttributeLoad SubscriptLoad NameLoad Index NameLoad attr NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore ListLoad For NameStore NameLoad body Assign NameStore Call AttributeLoad Call AttributeLoad NameLoad attr Str Str attr Str If CompareNotIn Call NameLoad NameLoad TupleLoad Num Num body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpMod Str Call AttributeLoad NameLoad attr Str Str Continue Assign NameStore BinOpSub Call NameLoad Call AttributeLoad SubscriptLoad NameLoad Index Num attr Str Str Num TryExcept body Assign NameStore Call AttributeLoad NameLoad attr NameLoad handlers ExceptHandler type NameLoad body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpMod Str Call AttributeLoad NameLoad attr Str Continue If CompareEq Call NameLoad NameLoad Num body Assign NameStore BinOpSub Call NameLoad Call AttributeLoad SubscriptLoad NameLoad Index Num attr Str Str Num TryExcept body Assign NameStore Call AttributeLoad NameLoad attr NameLoad handlers ExceptHandler type NameLoad body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpMod Str Call AttributeLoad NameLoad attr Str Continue For NameStore AttributeLoad NameLoad attr body Assign NameStore SubscriptLoad NameLoad Index BinOpMod Str NameLoad If NameLoad body Assign SubscriptStore AttributeLoad NameLoad attr Index NameLoad NameLoad orelse If CompareIn NameLoad AttributeLoad NameLoad attr body Delete SubscriptDel AttributeLoad NameLoad attr Index NameLoad If BoolOpAnd Call NameLoad NameLoad Str AttributeLoad NameLoad attr Call NameLoad NameLoad Str body For NameStore AttributeLoad NameLoad attr body Assign NameStore SubscriptLoad NameLoad Index BinOpMod Str NameLoad If NameLoad body Assign SubscriptStore AttributeLoad NameLoad attr Index NameLoad NameLoad orelse If CompareIn NameLoad AttributeLoad NameLoad attr body Delete SubscriptDel AttributeLoad NameLoad attr Index NameLoad For NameStore AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Str Expr Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Str Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Str Assign NameStore ListLoad Assign TupleStore NameStore NameStore Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Str Assign NameStore BinOpSub Call NameLoad Call AttributeLoad NameLoad attr Str Str Num Assign NameStore BinOpSub Call NameLoad Call AttributeLoad NameLoad attr Str Str Num Assign NameStore Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr NameLoad If AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr orelse Return NameLoad TryExcept body Assign NameStore AttributeLoad NameLoad attr handlers ExceptHandler type NameLoad body Return NameLoad Assign NameStore NameLoad For NameStore AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr BinOpMod Str NameLoad If Call AttributeLoad NameLoad attr body Assign NameStore NameLoad Assert CompareIsNot NameLoad NameLoad For NameStore AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr BinOpMod Str NameLoad If UnaryOpNot Call AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Str NameLoad If CompareNotEq NameLoad SubscriptLoad AttributeLoad NameLoad attr Index Num body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str NameLoad orelse Expr Call AttributeLoad NameLoad attr Str Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad FunctionDef arguments args NameParam NameParam NameParam NameParam defaults NameLoad NameLoad body If BoolOpAnd NameLoad UnaryOpNot NameLoad body If Call AttributeLoad NameLoad attr body Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr attr AttributeLoad NameLoad attr Return If UnaryOpNot Call AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr Call AttributeLoad Str attr NameLoad NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call NameLoad NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr Str For NameStore Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr attr AttributeLoad NameLoad attr Assign NameStore Call NameLoad NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr For NameStore Call AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Return Call AttributeLoad NameLoad attr Str NameLoad decorator_list FunctionDef arguments args NameParam defaults body Return Call AttributeLoad NameLoad attr Str decorator_list FunctionDef arguments args NameParam defaults body TryExcept body Return Call NameLoad GeneratorExp NameLoad comprehension NameStore Call AttributeLoad NameLoad attr Str BoolOpOr CompareNotIn Str AttributeLoad NameLoad attr CompareEq Call AttributeLoad NameLoad attr Str Str handlers ExceptHandler type NameLoad body Return Call NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Call NameLoad NameLoad Return Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Call NameLoad NameLoad If UnaryOpNot Call AttributeLoad NameLoad attr body Return NameLoad Assign NameStore Call AttributeLoad Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr keyword Str keyword Str attr Return BoolOpAnd Call NameLoad NameLoad UnaryOpNot Call NameLoad NameLoad decorator_list Assign NameStore Call NameLoad Lambda arguments args defaults NameLoad Assign NameStore Call NameLoad Lambda arguments args defaults NameLoad For NameStore AttributeLoad NameLoad attr body For NameStore NameLoad body Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad NameLoad NameLoad Assign SubscriptStore NameLoad Index NameLoad BoolOpOr SubscriptLoad NameLoad Index NameLoad Call NameLoad NameLoad Assign SubscriptStore NameLoad Index NameLoad BoolOpOr SubscriptLoad NameLoad Index NameLoad Call NameLoad NameLoad For NameStore AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Assert Call AttributeLoad NameLoad attr For NameStore NameLoad body Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore Call AttributeLoad NameLoad attr BinOpMod Str NameLoad If UnaryOpNot Call AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr Call AttributeLoad Str attr NameLoad AttributeLoad AttributeLoad NameLoad attr attr Continue Assign NameStore Call NameLoad For NameStore ListLoad Str Str Str Str body TryExcept body Assign NameStore Call NameLoad NameLoad NameLoad Assign SubscriptStore NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad handlers ExceptHandler type NameLoad body Continue Assign NameStore Call NameLoad GeneratorExp NameLoad comprehension TupleStore NameStore NameStore Call AttributeLoad NameLoad attr For TupleStore NameStore NameStore Call AttributeLoad NameLoad attr body If BoolOpAnd UnaryOpNot NameLoad CompareNotIn NameLoad NameLoad body For NameStore AttributeLoad NameLoad attr body Assign NameStore Call NameLoad NameLoad NameLoad If CompareIn NameLoad NameLoad body Continue Assign NameStore SubscriptLoad NameLoad Index NameLoad If NameLoad body Assign NameStore NameLoad Break If CompareEq NameLoad Str body If BoolOpOr BoolOpAnd Call NameLoad NameLoad UnaryOpNot SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad body Expr Call NameLoad NameLoad Call NameLoad NameLoad Dict Str Str keyword UnaryOpNot NameLoad Expr Call NameLoad NameLoad Call NameLoad NameLoad Dict Str Str keyword UnaryOpNot NameLoad orelse Expr Call NameLoad NameLoad Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Dict Str NameLoad Expr Call NameLoad NameLoad NameLoad Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr keyword Str Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body TryExcept body Return Call AttributeLoad NameLoad attr Call AttributeLoad Str attr Call AttributeLoad NameLoad attr Str Str Call AttributeLoad NameLoad attr Str Str NameLoad handlers ExceptHandler type NameLoad body Assign NameStore Call NameLoad Str Assign AttributeStore NameLoad attr NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Str Assign NameStore ListLoad Assign NameStore BinOpSub Call NameLoad Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Str Str Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad If Call NameLoad NameLoad NameLoad body Return NameLoad Assign NameStore ListLoad Assign NameStore NameLoad Assign NameStore Num Assign NameStore Num For TupleStore NameStore NameStore Call NameLoad NameLoad body If Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str body Assign SubscriptStore NameLoad Index Str SubscriptLoad Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str Index Num Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpSub Call NameLoad NameLoad Num orelse If Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str body Assign SubscriptStore NameLoad Index Str SubscriptLoad Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str Index Num Assign NameStore SubscriptLoad NameLoad Index NameLoad Assign SubscriptStore NameLoad Index Str BinOpAdd Call AttributeLoad NameLoad attr Str ListLoad ListLoad NameLoad orelse If Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str body Assign SubscriptStore NameLoad Index Str SubscriptLoad Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str Index Num Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpSub Call NameLoad NameLoad Num orelse If Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str body Assign SubscriptStore NameLoad Index Str SubscriptLoad Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str Index Num Assign NameStore SubscriptLoad NameLoad Index NameLoad Assign SubscriptStore NameLoad Index Str BinOpAdd Call AttributeLoad NameLoad attr Str ListLoad ListLoad NameLoad orelse If Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str body Assign SubscriptStore NameLoad Index Str SubscriptLoad Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str Index Num Assign SubscriptStore NameLoad Index Str SubscriptLoad Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str Index Num Assign NameStore SubscriptLoad NameLoad Index NameLoad Assign SubscriptStore NameLoad Index Str BinOpAdd Call AttributeLoad NameLoad attr Str ListLoad ListLoad NameLoad orelse If Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str body Assign SubscriptStore NameLoad Index Str Call NameLoad SubscriptLoad Call AttributeLoad SubscriptLoad NameLoad Index Str attr Str Index Num Assign NameStore SubscriptLoad NameLoad Index NameLoad Assign SubscriptStore NameLoad Index Str BinOpAdd Call AttributeLoad NameLoad attr Str ListLoad ListLoad NameLoad orelse If CompareEq SubscriptLoad NameLoad Index Str Str body Assign NameStore NameLoad orelse Assign SubscriptStore NameLoad Index Str SubscriptLoad NameLoad Index Str Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore ListComp NameLoad comprehension NameStore NameLoad CompareEq SubscriptLoad NameLoad Index Str Str Assign NameStore ListComp NameLoad comprehension NameStore NameLoad CompareEq SubscriptLoad NameLoad Index Str Str Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Assign NameStore Call NameLoad Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr For TupleStore NameStore NameStore NameStore ListLoad TupleLoad NameLoad NameLoad Str TupleLoad NameLoad NameLoad Str body If CompareNotEq Call NameLoad NameLoad Call NameLoad NameLoad body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr Call AttributeLoad Str attr Call NameLoad NameLoad Call NameLoad NameLoad AttributeLoad AttributeLoad NameLoad attr attr NameLoad If NameLoad body Return NameLoad FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Assign NameStore BoolOpOr UnaryOpNot NameLoad Call NameLoad NameLoad Str AttributeLoad NameLoad attr If NameLoad body For NameStore AttributeLoad NameLoad attr body Assign NameStore SubscriptLoad NameLoad Index BinOpMod Str NameLoad If NameLoad body Assign SubscriptStore NameLoad Index NameLoad NameLoad orelse Expr Call AttributeLoad NameLoad attr NameLoad NameLoad orelse Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr BinOpAdd Str BinOpMod Str SubscriptLoad NameLoad Index Str decorator_list For TupleStore NameStore NameStore BinOpAdd Call NameLoad NameLoad NameLoad Call NameLoad NameLoad NameLoad body If CompareNotEq Call AttributeLoad NameLoad attr Str NameLoad AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr TupleLoad AttributeLoad NameLoad attr Call AttributeLoad Str attr keyword AttributeLoad AttributeLoad NameLoad attr attr keyword Call AttributeLoad NameLoad attr Str Str Continue Expr Call NameLoad NameLoad AttributeLoad NameLoad attr For TupleStore NameStore NameStore Call NameLoad Call AttributeLoad NameLoad attr Str ListLoad body Expr Call NameLoad NameLoad AttributeLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index NameLoad attr For TupleStore NameStore NameStore Call NameLoad Call AttributeLoad NameLoad attr Str ListLoad body Expr Call NameLoad NameLoad AttributeLoad SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Index NameLoad attr NameLoad For NameStore Call AttributeLoad NameLoad attr Str ListLoad body Assign NameStore SubscriptLoad NameLoad Index Str Expr Call NameLoad NameLoad SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Index NameLoad NameLoad For NameStore Call AttributeLoad NameLoad attr Str ListLoad body Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore Call NameLoad SubscriptLoad NameLoad Index Str Expr Call NameLoad NameLoad SubscriptLoad SubscriptLoad SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Index NameLoad Index Str Index NameLoad NameLoad If NameLoad body Expr Call NameLoad NameLoad AttributeLoad AttributeLoad NameLoad attr attr Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Str Return Call NameLoad Call NameLoad NameLoad ListComp SubscriptLoad NameLoad Index BinOpAdd BinOpAdd NameLoad Str NameLoad comprehension NameStore NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Return BinOpMod Str TupleLoad NameLoad NameLoad decorator_list
N/A collections defaultdict OrderedDict django.utils.encoding force_text django.utils.safestring mark_safe lxml etree N/A copy N/A re lxml.etree XMLSyntaxError Element openpyxl.utils.exceptions InvalidFileException corehq.apps.app_manager.exceptions FormNotFoundException ModuleNotFoundException XFormException corehq.apps.app_manager.models ReportModule corehq.apps.app_manager.util save_xform corehq.apps.app_manager.xform namespaces WrappedNode ItextValue ItextOutput corehq.util.spreadsheets.excel HeaderValueError WorkbookJSONReader django.contrib messages django.utils.translation ugettext _ get_unicode_dicts N/A N/A iterable N/A N/A N/A 
    Iterates iterable and returns a list of dictionaries with keys and values converted to Unicode

    >>> gen = ({'0': None, 2: 'two', u'3': 0xc0ffee} for i in range(3))
    >>> get_unicode_dicts(gen)
    [{u'2': u'two', u'0': None, u'3': u'12648430'},
     {u'2': u'two', u'0': None, u'3': u'12648430'},
     {u'2': u'two', u'0': None, u'3': u'12648430'}]

     none_or_unicode N/A N/A val N/A N/A N/A N/A N/A val None N/A unicode val val N/A N/A rows N/A N/A row iterable N/A N/A N/A N/A rows append N/A N/A unicode k N/A none_or_unicode v N/A N/A k v N/A N/A row iteritems N/A rows N/A process_bulk_app_translation_upload N/A N/A app f N/A N/A N/A 
    Process the bulk upload file for the given app.
    We return these message tuples instead of calling them now to allow this
    function to be used independently of request objects.

    :param app:
    :param f:
    :return: Returns a list of message tuples. The first item in each tuple is
    a function like django.contrib.messages.error, and the second is a string.
     N/A msgs N/A N/A headers N/A expected_bulk_app_sheet_headers app N/A expected_sheets N/A N/A h N/A 0 N/A h N/A 1 N/A h headers N/A processed_sheets N/A set N/A N/A N/A workbook N/A WorkbookJSONReader f N/A N/A N/A N/A HeaderValueError InvalidFileException N/A e N/A N/A N/A N/A msgs append N/A N/A messages error N/A N/A N/A _ App Translation Failed! Please make sure you are using a valid Excel 2007 or later (.xlsx) file. Error details: {}. format e N/A msgs N/A sheet N/A workbook worksheets N/A N/A rows N/A get_unicode_dicts sheet N/A N/A N/A N/A sheet worksheet title processed_sheets N/A N/A N/A N/A msgs append N/A N/A messages error N/A Sheet "%s" was repeated. Only the first  N/A occurrence has been processed N/A N/A sheet worksheet title N/A N/A expected_columns N/A N/A expected_sheets get N/A N/A sheet worksheet title None N/A N/A expected_columns None N/A N/A N/A N/A msgs append N/A N/A messages error N/A Skipping sheet "%s", did not recognize title N/A N/A sheet worksheet title N/A N/A N/A N/A N/A sheet worksheet title Modules and Forms N/A N/A N/A N/A expected_columns N/A 1 N/A sheet headers N/A N/A N/A N/A msgs append N/A N/A messages error N/A Skipping sheet "%s", could not find "%s" column N/A N/A N/A sheet worksheet title N/A expected_columns N/A 1 N/A N/A N/A N/A N/A expected_columns N/A 0 case_property N/A N/A N/A N/A N/A expected_columns N/A 0 N/A sheet headers N/A N/A expected_columns N/A 1 N/A sheet headers N/A N/A N/A N/A msgs append N/A N/A messages error N/A Skipping sheet "%s", could not find case_property or list_or_detail column. N/A N/A sheet worksheet title N/A N/A N/A N/A N/A expected_columns N/A 0 N/A sheet headers N/A N/A N/A N/A msgs append N/A N/A messages error N/A Skipping sheet "%s", could not find label column N/A N/A sheet worksheet title N/A N/A N/A N/A processed_sheets add N/A N/A sheet worksheet title N/A missing_cols N/A N/A set expected_columns N/A set N/A sheet headers N/A N/A N/A len missing_cols 0 N/A N/A N/A N/A msgs append N/A N/A messages warning N/A Sheet "%s" has less columns than expected. Sheet will be processed but the following translations will be unchanged: %s N/A N/A N/A sheet worksheet title N/A N/A  , join missing_cols N/A extra_cols N/A N/A set N/A sheet headers N/A set expected_columns N/A N/A N/A len extra_cols 0 N/A N/A N/A N/A msgs append N/A N/A messages warning N/A Sheet "%s" has unrecognized columns. Sheet will be processed but ignoring the following columns: %s N/A N/A N/A sheet worksheet title N/A N/A  , join extra_cols N/A N/A N/A N/A sheet worksheet title Modules_and_forms N/A N/A ms N/A process_modules_and_forms_sheet rows app N/A N/A N/A msgs extend ms N/A N/A N/A N/A N/A sheet headers N/A 0 case_property N/A N/A ms N/A update_case_list_translations sheet rows app N/A N/A N/A msgs extend ms N/A N/A ms N/A update_form_translations sheet rows missing_cols app N/A N/A N/A msgs extend ms N/A N/A N/A msgs append N/A N/A messages success N/A _ App Translations Updated! N/A msgs N/A make_modules_and_forms_row N/A N/A row_type sheet_name languages case_labels media_image media_audio unique_id N/A N/A N/A 
    assemble the various pieces of data that make up a row in the
    "Modules_and_forms" sheet into a single row (a flat tuple).

    This function is meant as the single point of truth for the
    column ordering of Modules_and_forms

     N/A N/A row_type None N/A N/A sheet_name None N/A N/A isinstance languages list N/A N/A isinstance case_labels list N/A N/A isinstance media_image list N/A N/A isinstance media_audio list N/A N/A isinstance unique_id basestring N/A N/A N/A N/A item None item N/A item N/A N/A N/A N/A N/A N/A row_type sheet_name languages case_labels media_image media_audio N/A unique_id N/A expected_bulk_app_sheet_headers N/A N/A app N/A N/A N/A 
    Returns lists representing the expected structure of bulk app translation
    excel file uploads and downloads.

    The list will be in the form:
    [
        ["sheetname", ["column name1", "column name 2"]],
        ["sheet2 name", [...]],
        ...
    ]
    :param app:
    :return:
     N/A languages_list N/A N/A default_ l N/A l N/A app langs N/A audio_lang_list N/A N/A audio_ l N/A l N/A app langs N/A image_lang_list N/A N/A image_ l N/A l N/A app langs N/A video_lang_list N/A N/A video_ l N/A l N/A app langs N/A headers N/A N/A N/A N/A headers append N/A Modules_and_forms N/A make_modules_and_forms_row row_type Type sheet_name sheet_name languages languages_list case_labels N/A N/A label_for_cases_%s l N/A l N/A app langs media_image N/A N/A icon_filepath_%s l N/A l N/A app langs media_audio N/A N/A audio_filepath_%s l N/A l N/A app langs unique_id unique_id N/A N/A mod_index module N/A enumerate N/A N/A app get_modules N/A N/A module_string N/A module N/A str N/A mod_index 1 N/A N/A N/A headers append N/A module_string N/A N/A case_property list_or_detail languages_list N/A N/A form_index form N/A enumerate N/A N/A module get_forms N/A N/A form_string N/A N/A module_string _form N/A str N/A form_index 1 N/A N/A N/A headers append N/A form_string N/A N/A N/A N/A N/A label languages_list audio_lang_list image_lang_list video_lang_list N/A headers N/A expected_bulk_app_sheet_rows N/A N/A app N/A N/A N/A 
    Data rows for bulk app translation download
     N/A rows N/A Modules_and_forms N/A N/A N/A mod_index module N/A enumerate N/A N/A app get_modules N/A N/A module_string N/A module N/A str N/A mod_index 1 N/A row_data N/A make_modules_and_forms_row row_type Module sheet_name module_string languages N/A N/A N/A N/A module name get lang N/A lang N/A app langs case_labels N/A N/A N/A N/A module case_label get lang N/A lang N/A app langs media_image N/A N/A N/A module icon_by_language lang N/A lang N/A app langs media_audio N/A N/A N/A module audio_by_language lang N/A lang N/A app langs unique_id N/A module unique_id N/A N/A N/A N/A rows N/A Modules_and_forms append row_data N/A N/A rows N/A module_string N/A N/A N/A N/A isinstance module ReportModule N/A N/A N/A N/A module case_list_form form_id N/A N/A N/A N/A N/A rows N/A module_string append N/A N/A case_list_form_label list N/A tuple N/A N/A N/A N/A N/A module case_list_form label get lang N/A lang N/A app langs N/A N/A list_or_detail case_properties N/A N/A list N/A N/A N/A N/A module case_details short get_columns N/A detail N/A N/A N/A N/A module case_details long get_columns N/A N/A detail case_properties N/A N/A field_name N/A detail field N/A N/A N/A detail format enum N/A N/A field_name  (ID Mapping Text) N/A N/A N/A N/A detail format graph N/A N/A field_name  (graph) N/A N/A N/A N/A rows N/A module_string append N/A N/A field_name list_or_detail N/A tuple N/A N/A N/A N/A detail header get lang N/A lang N/A app langs N/A N/A N/A detail format enum N/A N/A mapping N/A detail enum N/A N/A N/A N/A N/A rows N/A module_string append N/A N/A N/A N/A mapping key  (ID Mapping Value) list_or_detail N/A tuple N/A N/A N/A N/A mapping value get lang N/A lang N/A app langs N/A N/A N/A detail format graph N/A N/A N/A key val N/A N/A N/A N/A detail graph_configuration locale_specific_config iteritems N/A N/A N/A N/A N/A rows N/A module_string append N/A N/A N/A key  (graph config) list_or_detail N/A tuple N/A N/A N/A val get lang N/A lang N/A app langs N/A N/A i series N/A enumerate N/A N/A detail graph_configuration series N/A N/A N/A key val N/A N/A N/A series locale_specific_config iteritems N/A N/A N/A N/A N/A rows N/A module_string append N/A N/A N/A N/A {} {} (graph series config) format key i list_or_detail N/A tuple N/A N/A N/A val get lang N/A lang N/A app langs N/A N/A i annotation N/A enumerate N/A N/A detail graph_configuration annotations N/A N/A N/A N/A N/A rows N/A module_string append N/A N/A N/A N/A graph annotation {} format N/A i 1 list_or_detail N/A tuple N/A N/A N/A N/A annotation display_text get lang N/A lang N/A app langs N/A N/A form_index form N/A enumerate N/A N/A module get_forms N/A N/A form_string N/A N/A module_string _form N/A str N/A form_index 1 N/A xform N/A N/A form wrapped_xform N/A first_sheet_row N/A make_modules_and_forms_row row_type Form sheet_name form_string languages N/A N/A N/A N/A form name get lang N/A lang N/A app langs case_labels N/A N/A None N/A len N/A app langs media_image N/A N/A N/A form icon_by_language lang N/A lang N/A app langs media_audio N/A N/A N/A form audio_by_language lang N/A lang N/A app langs unique_id N/A form unique_id N/A N/A N/A N/A rows N/A Modules_and_forms append first_sheet_row N/A N/A rows N/A form_string N/A N/A itext_items N/A OrderedDict N/A N/A N/A nodes N/A N/A N/A xform itext_node findall ./{f}translation N/A N/A N/A XFormException N/A N/A nodes N/A N/A translation_node nodes N/A N/A lang N/A N/A translation_node attrib N/A lang N/A text_node N/A N/A translation_node findall ./{f}text N/A N/A text_id N/A N/A text_node attrib N/A id N/A N/A itext_items N/A text_id N/A N/A itext_items get text_id N/A N/A value_node N/A N/A text_node findall ./{f}value N/A N/A value_form N/A N/A N/A value_node attrib get form default N/A value N/A part N/A N/A N/A ItextValue from_node value_node parts N/A N/A N/A isinstance part ItextOutput N/A N/A value N/A N/A <output value=" N/A part ref "/> N/A N/A value N/A mark_safe N/A N/A N/A N/A N/A force_text part replace < &lt; replace > &gt; N/A N/A N/A itext_items N/A text_id N/A N/A lang value_form value N/A N/A text_id values N/A N/A itext_items iteritems N/A N/A row N/A text_id N/A value_form N/A default audio image video N/A N/A fallback N/A lang N/A app langs N/A N/A fallback N/A N/A values get N/A lang value_form fallback N/A fallback N/A N/A N/A lang N/A app langs N/A N/A N/A N/A row append N/A N/A values get N/A lang value_form fallback N/A N/A any N/A row N/A 1 N/A N/A N/A N/A N/A rows N/A form_string append row N/A rows N/A process_modules_and_forms_sheet N/A N/A rows app N/A N/A N/A 
    Modify the translations and media references for the modules and forms in
    the given app as per the data provided in rows.
    This does not save the changes to the database.
    :param rows:
    :param app:
    :return:  Returns a list of message tuples. The first item in each tuple is
    a function like django.contrib.messages.error, and the second is a string.
     N/A msgs N/A N/A row rows N/A N/A identifying_text N/A N/A N/A N/A row get sheet_name split _ N/A N/A N/A len identifying_text N/A 1 2 N/A N/A N/A N/A msgs append N/A N/A messages error N/A Invalid sheet_name "%s", skipping row. N/A N/A row get sheet_name N/A N/A module_index N/A N/A int N/A N/A N/A identifying_text N/A 0 replace module 1 N/A N/A N/A document N/A N/A app get_module module_index N/A N/A N/A ModuleNotFoundException N/A N/A N/A N/A msgs append N/A N/A messages error N/A Invalid module in row "%s", skipping row. N/A N/A row get sheet_name N/A N/A N/A N/A len identifying_text 2 N/A N/A form_index N/A N/A int N/A N/A N/A identifying_text N/A 1 replace form 1 N/A N/A N/A document N/A N/A document get_form form_index N/A N/A N/A FormNotFoundException N/A N/A N/A N/A msgs append N/A N/A messages error N/A Invalid form in row "%s", skipping row. N/A N/A row get sheet_name N/A N/A lang N/A app langs N/A N/A translation N/A row N/A N/A default_%s lang N/A translation N/A N/A N/A N/A document name N/A lang translation N/A N/A N/A lang N/A document name N/A N/A N/A N/A document name N/A lang N/A N/A N/A has_at_least_one_translation row label_for_cases N/A app langs N/A hasattr document case_label N/A N/A lang N/A app langs N/A N/A translation N/A row N/A N/A label_for_cases_%s lang N/A translation N/A N/A N/A N/A document case_label N/A lang translation N/A N/A N/A lang N/A document case_label N/A N/A N/A N/A document case_label N/A lang N/A lang N/A app langs N/A N/A N/A N/A document set_icon lang N/A N/A row get N/A icon_filepath_%s lang N/A N/A N/A document set_audio lang N/A N/A row get N/A audio_filepath_%s lang N/A msgs N/A update_form_translations N/A N/A sheet rows missing_cols app N/A N/A N/A 
    Modify the translations of a form given a sheet of translation data.
    This does not save the changes to the DB.

    :param sheet: a WorksheetJSONReader
    :param rows: The rows of the sheet (we can't get this from the sheet
    because sheet.__iter__ can only be called once)
    :param missing_cols:
    :param app:
    :return:  Returns a list of message tuples. The first item in each tuple is
    a function like django.contrib.messages.error, and the second is a string.
     N/A msgs N/A N/A N/A mod_text form_text N/A N/A N/A N/A sheet worksheet title split _ N/A module_index N/A N/A int N/A N/A mod_text replace module 1 N/A form_index N/A N/A int N/A N/A form_text replace form 1 N/A form N/A N/A N/A N/A app get_module module_index get_form form_index N/A N/A form source N/A N/A xform N/A N/A form wrapped_xform N/A N/A msgs N/A N/A N/A itext N/A xform itext_node N/A N/A N/A XFormException N/A N/A msgs N/A template_translation_el None N/A lang N/A app langs N/A N/A trans_el N/A N/A itext find N/A ./{f}translation[@lang='%s'] lang N/A N/A N/A trans_el exists N/A N/A template_translation_el trans_el N/A N/A template_translation_el None N/A lang N/A app langs N/A N/A trans_el N/A N/A itext find N/A ./{f}translation[@lang='%s'] lang N/A N/A N/A N/A trans_el exists N/A N/A new_trans_el N/A N/A copy deepcopy N/A template_translation_el xml N/A N/A N/A new_trans_el set lang lang N/A N/A lang N/A N/A app langs N/A 0 N/A N/A N/A N/A N/A new_trans_el attrib pop default None N/A N/A N/A N/A new_trans_el set default N/A N/A N/A N/A itext xml append new_trans_el _update_translation_node N/A N/A new_translation value_node attributes delete_node N/A None True N/A N/A N/A delete_node N/A new_translation N/A N/A N/A N/A value_node exists N/A N/A N/A N/A N/A N/A N/A value_node xml getparent remove N/A value_node xml N/A N/A N/A N/A N/A value_node exists N/A N/A e N/A N/A etree Element N/A N/A {f}value format namespaces attributes N/A N/A N/A N/A text_node xml append e N/A value_node N/A WrappedNode e N/A N/A N/A value_node xml tail N/A node N/A N/A value_node findall ./* N/A N/A N/A N/A N/A N/A N/A node xml getparent remove N/A node xml N/A escaped_trans N/A escape_output_value new_translation N/A N/A N/A value_node xml text N/A escaped_trans text N/A n N/A N/A escaped_trans getchildren N/A N/A N/A N/A N/A value_node xml append n N/A _looks_like_markdown N/A N/A str N/A N/A N/A N/A N/A re search ^\d+[\.\)] |^\*|~~.+~~|# |\*{1,3}\S+\*{1,3}|\[.+\]\(\S+\) str N/A get_markdown_node N/A N/A text_node_ N/A N/A N/A N/A N/A text_node_ find ./{f}value[@form='markdown'] N/A get_value_node N/A N/A text_node_ N/A N/A N/A N/A N/A N/A next N/A n N/A n N/A N/A text_node_ findall ./{f}value N/A N/A form N/A n attrib N/A N/A N/A n get form default N/A N/A N/A StopIteration N/A N/A N/A WrappedNode None N/A had_markdown N/A N/A text_node_ N/A N/A N/A 
        Returns True if a Markdown node currently exists for a translation.
         N/A markdown_node_ N/A get_markdown_node text_node_ N/A N/A N/A markdown_node_ exists N/A is_markdown_vetoed N/A N/A text_node_ N/A N/A N/A 
        Return True if the value looks like Markdown but there is no
        Markdown node. It means the user has explicitly told form
        builder that the value isn't Markdown.
         N/A value_node_ N/A get_value_node text_node_ N/A N/A N/A N/A value_node_ exists N/A N/A False N/A old_trans N/A N/A N/A N/A etree tostring N/A value_node_ xml method text encoding unicode strip N/A N/A N/A _looks_like_markdown old_trans N/A N/A had_markdown text_node_ N/A N/A vetoes N/A defaultdict N/A N/A N/A N/A False N/A markdowns N/A defaultdict N/A N/A N/A N/A False N/A lang N/A app langs N/A N/A row rows N/A N/A label_id N/A row N/A label N/A text_node N/A N/A itext find N/A ./{f}translation[@lang='%s']/{f}text[@id='%s'] N/A lang label_id N/A N/A vetoes N/A label_id N/A N/A vetoes N/A label_id N/A is_markdown_vetoed text_node N/A N/A markdowns N/A label_id N/A N/A markdowns N/A label_id N/A had_markdown text_node N/A lang N/A app langs N/A N/A translation_node N/A N/A itext find N/A ./{f}translation[@lang='%s'] lang N/A N/A N/A translation_node exists N/A row rows N/A N/A label_id N/A row N/A label N/A text_node N/A N/A translation_node find N/A ./{f}text[@id='%s'] label_id N/A N/A N/A N/A text_node exists N/A N/A N/A N/A msgs append N/A N/A messages warning N/A N/A Unrecognized translation label {0} in sheet {1}. That row has been skipped format label_id N/A N/A sheet worksheet title N/A N/A translations N/A dict N/A trans_type N/A default audio image video N/A N/A N/A N/A col_key N/A get_col_key trans_type lang N/A N/A translations N/A trans_type N/A row N/A col_key N/A N/A N/A KeyError N/A N/A N/A keep_value_node N/A any N/A v N/A N/A k v N/A N/A translations items N/A N/A trans_type new_translation N/A N/A translations items N/A N/A N/A N/A new_translation N/A col_key missing_cols N/A N/A l N/A app langs N/A N/A key N/A get_col_key trans_type l N/A N/A key missing_cols N/A N/A N/A fallback N/A row N/A key N/A fallback N/A N/A new_translation fallback N/A N/A N/A trans_type default N/A N/A N/A N/A N/A _looks_like_markdown new_translation N/A N/A vetoes N/A label_id N/A markdowns N/A label_id N/A N/A N/A _update_translation_node new_translation N/A get_markdown_node text_node N/A form markdown delete_node N/A keep_value_node N/A N/A _update_translation_node new_translation N/A get_value_node text_node N/A form default delete_node N/A keep_value_node N/A N/A N/A _update_translation_node new_translation N/A N/A text_node find N/A ./{f}value[@form='%s'] trans_type N/A form trans_type N/A N/A save_xform app form N/A N/A etree tostring N/A xform xml encoding unicode N/A msgs N/A escape_output_value N/A N/A value N/A N/A N/A N/A N/A N/A N/A etree fromstring N/A N/A <value>{}</value> format N/A N/A re sub (?<!/)> &gt; N/A N/A re sub <(\s*)(?!output) &lt;\1 value N/A N/A N/A XMLSyntaxError N/A N/A element N/A Element value N/A N/A element text value N/A element N/A update_case_list_translations N/A N/A sheet rows app N/A N/A N/A 
    Modify the translations of a module case list and detail display properties
    given a sheet of translation data. The properties in the sheet must be in
    the exact same order that they appear in the bulk app translation download.
    This function does not save the modified app to the database.

    :param sheet:
    :param rows: The rows of the sheet (we can't get this from the sheet
    because sheet.__iter__ can only be called once)
    :param app:
    :return:  Returns a list of message tuples. The first item in each tuple is
    a function like django.contrib.messages.error, and the second is a string.
     N/A msgs N/A N/A module_index N/A N/A int N/A N/A N/A N/A sheet worksheet title replace module 1 N/A module N/A N/A app get_module module_index N/A N/A isinstance module ReportModule N/A N/A msgs N/A condensed_rows N/A N/A case_list_form_label None N/A index_of_last_enum_in_condensed -1 N/A index_of_last_graph_in_condensed -1 N/A N/A i row N/A enumerate rows N/A N/A N/A N/A N/A row N/A case_property endswith  (ID Mapping Text) N/A N/A N/A row N/A id N/A N/A N/A N/A row N/A case_property split N/A 0 N/A N/A N/A condensed_rows append row N/A index_of_last_enum_in_condensed N/A N/A len condensed_rows 1 N/A N/A N/A N/A N/A row N/A case_property endswith  (ID Mapping Value) N/A N/A N/A row N/A id N/A N/A N/A N/A row N/A case_property split N/A 0 N/A parent N/A condensed_rows N/A index_of_last_enum_in_condensed N/A N/A parent N/A mappings N/A N/A N/A parent get mappings N/A N/A row N/A N/A N/A N/A N/A row N/A case_property endswith  (graph) N/A N/A N/A row N/A id N/A N/A N/A N/A row N/A case_property split N/A 0 N/A N/A N/A condensed_rows append row N/A index_of_last_graph_in_condensed N/A N/A len condensed_rows 1 N/A N/A N/A N/A N/A row N/A case_property endswith  (graph config) N/A N/A N/A row N/A id N/A N/A N/A N/A row N/A case_property split N/A 0 N/A parent N/A condensed_rows N/A index_of_last_graph_in_condensed N/A N/A parent N/A configs N/A N/A N/A parent get configs N/A N/A row N/A N/A N/A N/A N/A row N/A case_property endswith  (graph series config) N/A N/A N/A row N/A id N/A N/A N/A N/A row N/A case_property split N/A 0 N/A N/A row N/A series_index N/A N/A N/A N/A row N/A case_property split N/A 1 N/A parent N/A condensed_rows N/A index_of_last_graph_in_condensed N/A N/A parent N/A series_configs N/A N/A N/A parent get series_configs N/A N/A row N/A N/A N/A N/A N/A row N/A case_property startswith graph annotation  N/A N/A N/A row N/A id N/A int N/A N/A N/A N/A row N/A case_property split N/A -1 N/A parent N/A condensed_rows N/A index_of_last_graph_in_condensed N/A N/A parent N/A annotations N/A N/A N/A parent get annotations N/A N/A row N/A N/A N/A N/A row N/A case_property case_list_form_label N/A N/A case_list_form_label row N/A N/A N/A row N/A id N/A row N/A case_property N/A N/A N/A condensed_rows append row N/A list_rows N/A row N/A row condensed_rows N/A N/A row N/A list_or_detail list N/A detail_rows N/A row N/A row condensed_rows N/A N/A row N/A list_or_detail detail N/A short_details N/A list N/A N/A N/A N/A module case_details short get_columns N/A long_details N/A list N/A N/A N/A N/A module case_details long get_columns N/A N/A expected_list received_list word N/A N/A short_details list_rows list N/A long_details detail_rows detail N/A N/A N/A N/A len expected_list N/A len received_list N/A N/A N/A N/A msgs append N/A N/A messages error N/A N/A Expected {0} case {3} properties in sheet {2}, found {1}. No case list or detail properties for sheet {2} were updated format N/A len expected_list N/A len received_list N/A N/A sheet worksheet title word N/A msgs N/A N/A msgs _update_translation N/A N/A row language_dict require_translation N/A True N/A N/A ok_to_delete_translations N/A N/A require_translation N/A has_at_least_one_translation row default N/A app langs N/A ok_to_delete_translations N/A N/A lang N/A app langs N/A N/A translation N/A row N/A N/A default_%s lang N/A translation N/A N/A N/A language_dict N/A lang translation N/A N/A N/A N/A language_dict pop lang None N/A N/A N/A N/A msgs append N/A N/A messages error N/A You must provide at least one translation N/A  of the case property '%s' N/A row N/A case_property N/A N/A N/A row detail N/A N/A zip list_rows short_details N/A zip detail_rows long_details N/A N/A N/A N/A N/A row get id None N/A detail field N/A N/A N/A N/A msgs append N/A N/A messages error N/A N/A A row in sheet {sheet} has an unexpected value of "{field}" in the case_property column. Case properties must appear in the same order as they do in the bulk app translation download. No translations updated for this row. format sheet N/A N/A sheet worksheet title field N/A N/A row get case_property N/A N/A N/A _update_translation row N/A detail header N/A N/A i enum_value_row N/A enumerate N/A N/A row get mappings N/A N/A N/A N/A _update_translation enum_value_row N/A N/A N/A detail N/A enum N/A i value N/A N/A i graph_annotation_row N/A enumerate N/A N/A row get annotations N/A N/A N/A N/A _update_translation graph_annotation_row N/A N/A N/A N/A detail N/A graph_configuration N/A annotations N/A i display_text False N/A graph_config_row N/A N/A row get configs N/A N/A N/A config_key N/A graph_config_row N/A id N/A N/A _update_translation graph_config_row N/A N/A N/A detail N/A graph_configuration N/A locale_specific_config N/A config_key False N/A graph_config_row N/A N/A row get series_configs N/A N/A N/A config_key N/A graph_config_row N/A id N/A series_index N/A int N/A graph_config_row N/A series_index N/A N/A _update_translation graph_config_row N/A N/A N/A N/A N/A detail N/A graph_configuration N/A series N/A series_index N/A locale_specific_config N/A config_key False N/A case_list_form_label N/A N/A N/A _update_translation case_list_form_label N/A N/A module case_list_form label N/A msgs N/A has_at_least_one_translation N/A N/A row prefix langs N/A N/A N/A 
    Returns true if the given row has at least one translation.

    >> has_at_least_one_translation(
        {'default_en': 'Name', 'case_property': 'name'}, 'default', ['en', 'fra']
    )
    true
    >> has_at_least_one_translation(
        {'case_property': 'name'}, 'default', ['en', 'fra']
    )
    false

    :param row:
    :param prefix:
    :param langs:
    :return:
     N/A N/A bool N/A filter None N/A N/A row N/A N/A N/A prefix _ l N/A l langs N/A get_col_key N/A N/A translation_type language N/A N/A N/A 
    Returns the name of the column in the bulk app translation spreadsheet
    given the translation type and language
    :param translation_type: What is being translated, i.e. 'default'
    or 'image'
    :param language:
    :return:
     N/A N/A %s_%s N/A translation_type language N/A