Module Expr Str Import alias Import alias Import alias Import alias Import alias Import alias ImportFrom alias ImportFrom alias ImportFrom alias alias Assign NameStore BinOpMult Num Num Assign NameStore BinOpMult BinOpMult BinOpMult Num Num Num Num ClassDef bases AttributeLoad NameLoad attr body Expr Str FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad Str Assign NameStore BinOpMult Str NameLoad Assign NameStore Dict Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Dict Str Str Str Str Str Str Str NameLoad Str Str Str Str Str Call NameLoad NameLoad Assign NameStore Dict Str Str Call NameLoad NameLoad Str For TupleStore NameStore NameStore Call AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index NameLoad NameLoad BinOpMod Str TupleLoad NameLoad NameLoad SubscriptLoad NameLoad Index NameLoad For TupleStore NameStore NameStore Call AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index NameLoad NameLoad BinOpMod Str TupleLoad NameLoad NameLoad SubscriptLoad NameLoad Index NameLoad Expr Call AttributeLoad NameLoad attr NameLoad BinOpMult Str NameLoad Expr Call AttributeLoad NameLoad attr Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr Call AttributeLoad Call AttributeLoad NameLoad attr BinOpMult Str NameLoad attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Dict Str ListLoad Dict Str Str Str Str Str Str NameLoad NameLoad NameLoad Str Str Num Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Dict Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad For TupleStore NameStore NameStore Call AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr NameLoad SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index NameLoad BinOpMod Str TupleLoad NameLoad NameLoad SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index NameLoad Assign NameStore Dict Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Index Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Dict Str Str Str Str Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad For TupleStore NameStore NameStore Call AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr NameLoad SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index NameLoad BinOpMod Str TupleLoad NameLoad NameLoad SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index NameLoad Assign NameStore Dict Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore SubscriptLoad SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Index Num Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Str Assign NameStore Dict Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore SubscriptLoad SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Index Num Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad Str Assign NameStore Dict Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Assign NameStore SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str NameLoad Assign NameStore BinOpMult Str NameLoad Assign NameStore Dict Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore Dict Str ListLoad Dict Str Str Str Str Str ListLoad Dict Str Str Str BinOpMod Str AttributeLoad NameLoad attr Dict Str Str Str Str Str ListLoad Dict Str Str Str BinOpMod Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore Dict Str ListLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Dict Str Str Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr CompareIn Str Call AttributeLoad Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Dict Str Str Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Dict Str Str Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr CompareIn Str Call AttributeLoad Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Dict Str Str Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Dict Str Str Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr CompareIn Str Call AttributeLoad Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr CompareIn Str Call AttributeLoad Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr attr Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore Dict Str Str Str Str Str Str Str Call NameLoad NameLoad Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr Str Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr With Call AttributeLoad NameLoad attr NameStore body Expr Call AttributeLoad NameLoad attr Str Expr Call AttributeLoad NameLoad attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Str Expr Call AttributeLoad NameLoad attr CompareIn NameLoad NameLoad BinOpMod Str TupleLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad Str Assign NameStore ListLoad Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr CompareLtE SubscriptLoad NameLoad Index Str Num Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr CompareGtE SubscriptLoad NameLoad Index Str Num Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Str Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Str Index Str Str Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Str Assign NameStore BinOpSub Call AttributeLoad AttributeLoad NameLoad attr attr Call AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Assign NameStore BinOpAdd Call AttributeLoad AttributeLoad NameLoad attr attr Call AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str NameLoad Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad Str Assign NameStore ListLoad Assign NameStore Dict Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Index Str Assign NameStore Dict Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Index Str Assign NameStore Dict Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Index Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Expr Call AttributeLoad NameLoad attr Call NameLoad NameLoad Num Print NameLoad Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Expr Call AttributeLoad NameLoad attr Call NameLoad NameLoad Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Num Index Str SubscriptLoad SubscriptLoad NameLoad Index Num Index Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Num Index Str SubscriptLoad SubscriptLoad NameLoad Index Num Index Str Assign NameStore BinOpMod Str SubscriptLoad SubscriptLoad NameLoad Index Num Index Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Expr Call AttributeLoad NameLoad attr Call NameLoad NameLoad Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Num Index Str SubscriptLoad SubscriptLoad NameLoad Index Num Index Str Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Num Index Str SubscriptLoad SubscriptLoad NameLoad Index Num Index Str Assign NameStore BinOpMod Str SubscriptLoad SubscriptLoad NameLoad Index Num Index Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Expr Call AttributeLoad NameLoad attr Call NameLoad NameLoad Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Num Index Str SubscriptLoad SubscriptLoad NameLoad Index Num Index Str Assign NameStore BinOpMod Str SubscriptLoad SubscriptLoad NameLoad Index Num Index Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Expr Call AttributeLoad NameLoad attr Call NameLoad NameLoad Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad NameLoad Index Num Index Str SubscriptLoad SubscriptLoad NameLoad Index Num Index Str For NameStore NameLoad body Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad Str Assign NameStore ListLoad Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Index Str Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Index Str Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Index Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Assign NameStore Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Assign NameStore BinOpMod Str SubscriptLoad NameLoad Index Num Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Index Str SubscriptLoad NameLoad Index Num Assign NameStore BinOpMod Str SubscriptLoad NameLoad Index Num Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad SubscriptLoad NameLoad Index Str Num For NameStore NameLoad body Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad Str Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Assign NameStore SubscriptLoad Call AttributeLoad NameLoad attr NameLoad Index Str Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str Str Str Str Str SubscriptLoad NameLoad Index Str Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr NameLoad Str Assign NameStore BinOpMod Str TupleLoad Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr Str Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr keyword NameLoad Call AttributeLoad AttributeLoad NameLoad attr attr decorator_list NameLoad decorator_list
N/A N/A Functional test case that utilizes httplib2 against the API server N/A datetime N/A hashlib N/A httplib2 N/A json N/A os N/A tempfile glance.common utils glance.tests functional glance.tests.utils execute skip_if_disabled N/A FIVE_KB N/A 5 1024 N/A FIVE_GB N/A N/A N/A 5 1024 1024 1024 TestApi N/A N/A functional FunctionalTest N/A N/A Functional tests using httplib2 against the API server test_get_head_simple_post N/A N/A self N/A N/A N/A 
        We test the following sequential series of actions:

        0. GET /images
        - Verify no public images
        1. GET /images/detail
        - Verify no public images
        2. POST /images with public image named Image1
        and no custom properties
        - Verify 201 returned
        3. HEAD image
        - Verify HTTP headers have correct information we just added
        4. GET image
        - Verify all information on image we just added is correct
        5. GET /images
        - Verify the image we just added is returned
        6. GET /images/detail
        - Verify the image we just added is returned
        7. PUT image with custom properties of "distro" and "arch"
        - Verify 200 returned
        8. GET image
        - Verify updated information about image was stored
        9. PUT image
        - Remove a previously existing property.
        10. PUT image
        - Add a previously deleted property.
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content {"images": []} N/A path N/A http://%s:%d/v1/images/detail N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content {"images": []} N/A image_data N/A * FIVE_KB N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Is-Public application/octet-stream Image1 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers body image_data N/A N/A N/A self assertEqual N/A response status 201 N/A data N/A N/A json loads content N/A image_id N/A N/A data N/A image N/A id N/A N/A N/A self assertEqual N/A N/A data N/A image N/A checksum N/A N/A N/A N/A hashlib md5 image_data hexdigest N/A N/A N/A self assertEqual N/A N/A data N/A image N/A size FIVE_KB N/A N/A N/A self assertEqual N/A N/A data N/A image N/A name Image1 N/A N/A N/A self assertEqual N/A N/A data N/A image N/A is_public True N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path HEAD N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual N/A response N/A x-image-meta-name Image1 N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A expected_image_headers N/A x-image-meta-id x-image-meta-name x-image-meta-is_public x-image-meta-status x-image-meta-disk_format x-image-meta-container_format x-image-meta-size image_id Image1 True active N/A str FIVE_KB N/A expected_std_headers N/A content-length content-type N/A str FIVE_KB application/octet-stream N/A N/A expected_key expected_value N/A N/A expected_image_headers items N/A N/A N/A N/A self assertEqual N/A response N/A expected_key expected_value N/A For key '%s' expected header value '%s'. Got '%s' N/A expected_key expected_value N/A response N/A expected_key N/A N/A expected_key expected_value N/A N/A expected_std_headers items N/A N/A N/A N/A self assertEqual N/A response N/A expected_key expected_value N/A For key '%s' expected header value '%s'. Got '%s' N/A expected_key expected_value N/A response N/A expected_key N/A N/A N/A self assertEqual content N/A * FIVE_KB N/A N/A N/A self assertEqual N/A N/A N/A N/A hashlib md5 content hexdigest N/A N/A N/A N/A hashlib md5 N/A * FIVE_KB hexdigest N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A expected_result N/A images N/A N/A container_format disk_format id name checksum size None None image_id Image1 c2e5db72bd7fd153f53ede5da5a06de3 5120 N/A N/A N/A self assertEqual N/A N/A json loads content expected_result N/A path N/A http://%s:%d/v1/images/detail N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A expected_image N/A status name deleted container_format disk_format id is_public deleted_at properties size active Image1 False None None image_id True None N/A 5120 N/A image N/A N/A json loads content N/A N/A expected_key expected_value N/A N/A expected_image items N/A N/A N/A N/A self assertEqual expected_value N/A N/A N/A image N/A images N/A 0 N/A expected_key N/A For key '%s' expected header value '%s'. Got '%s' N/A expected_key expected_value N/A N/A N/A image N/A images N/A 0 N/A expected_key N/A headers N/A X-Image-Meta-Property-Distro X-Image-Meta-Property-Arch Ubuntu x86_64 N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path PUT headers headers N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A N/A N/A data N/A image N/A properties N/A arch x86_64 N/A N/A N/A self assertEqual N/A N/A N/A data N/A image N/A properties N/A distro Ubuntu N/A path N/A http://%s:%d/v1/images/detail N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A expected_image N/A status name deleted container_format disk_format id is_public deleted_at properties size active Image1 False None None image_id True None N/A distro arch Ubuntu x86_64 5120 N/A image N/A N/A json loads content N/A N/A expected_key expected_value N/A N/A expected_image items N/A N/A N/A N/A self assertEqual expected_value N/A N/A N/A image N/A images N/A 0 N/A expected_key N/A For key '%s' expected header value '%s'. Got '%s' N/A expected_key expected_value N/A N/A N/A image N/A images N/A 0 N/A expected_key N/A headers N/A X-Image-Meta-Property-Arch x86_64 N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path PUT headers headers N/A N/A N/A self assertEqual N/A response status 200 N/A path N/A http://%s:%d/v1/images/detail N/A 0.0.0.0 N/A self api_port N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A N/A N/A json loads content N/A images N/A 0 N/A N/A N/A self assertEqual N/A len N/A data N/A properties 1 N/A N/A N/A self assertEqual N/A N/A data N/A properties N/A arch x86_64 N/A headers N/A X-Image-Meta-Property-Distro X-Image-Meta-Property-Arch Ubuntu x86_64 N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path PUT headers headers N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A path N/A http://%s:%d/v1/images/detail N/A 0.0.0.0 N/A self api_port N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A N/A N/A json loads content N/A images N/A 0 N/A N/A N/A self assertEqual N/A len N/A data N/A properties 2 N/A N/A N/A self assertEqual N/A N/A data N/A properties N/A arch x86_64 N/A N/A N/A self assertEqual N/A N/A data N/A properties N/A distro Ubuntu N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path DELETE N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self stop_servers N/A skip_if_disabled test_queued_process_flow N/A N/A self N/A N/A N/A 
        We test the process flow where a user registers an image
        with Glance but does not immediately upload an image file.
        Later, the user uploads an image file using a PUT operation.
        We track the changing of image status throughout this process.

        0. GET /images
        - Verify no public images
        1. POST /images with public image named Image1 with no location
           attribute and no image data.
        - Verify 201 returned
        2. GET /images
        - Verify one public image
        3. HEAD image
        - Verify image now in queued status
        4. PUT image with image data
        - Verify 200 returned
        5. HEAD images
        - Verify image now in active status
        6. GET /images
        - Verify one public image
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content {"images": []} N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Is-Public application/octet-stream Image1 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A N/A data N/A image N/A checksum None N/A N/A N/A self assertEqual N/A N/A data N/A image N/A size 0 N/A N/A N/A self assertEqual N/A N/A data N/A image N/A container_format None N/A N/A N/A self assertEqual N/A N/A data N/A image N/A disk_format None N/A N/A N/A self assertEqual N/A N/A data N/A image N/A name Image1 N/A N/A N/A self assertEqual N/A N/A data N/A image N/A is_public True N/A image_id N/A N/A data N/A image N/A id N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A id image_id N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A checksum None N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A size 0 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A container_format None N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A disk_format None N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A name Image1 N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path HEAD N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual N/A response N/A x-image-meta-name Image1 N/A N/A N/A self assertEqual N/A response N/A x-image-meta-status queued N/A N/A N/A self assertEqual N/A response N/A x-image-meta-size 0 N/A N/A N/A self assertEqual N/A response N/A x-image-meta-id image_id N/A image_data N/A * FIVE_KB N/A headers N/A Content-Type application/octet-stream N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path PUT headers headers body image_data N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A N/A data N/A image N/A checksum N/A N/A N/A N/A hashlib md5 image_data hexdigest N/A N/A N/A self assertEqual N/A N/A data N/A image N/A size FIVE_KB N/A N/A N/A self assertEqual N/A N/A data N/A image N/A name Image1 N/A N/A N/A self assertEqual N/A N/A data N/A image N/A is_public True N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path HEAD N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual N/A response N/A x-image-meta-name Image1 N/A N/A N/A self assertEqual N/A response N/A x-image-meta-status active N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A checksum N/A N/A N/A N/A hashlib md5 image_data hexdigest N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A id image_id N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A size FIVE_KB N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A container_format None N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A disk_format None N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A name Image1 N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path DELETE N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self stop_servers N/A skip_if_disabled test_version_variations N/A N/A self N/A N/A N/A 
        We test that various calls to the images and root endpoints are
        handled properly, and that usage of the Accept: header does
        content negotiation properly.
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A versions N/A versions N/A N/A id status links v1.1 CURRENT N/A N/A rel href self N/A http://0.0.0.0:%d/v1/ N/A self api_port N/A id status links v1.0 SUPPORTED N/A N/A rel href self N/A http://0.0.0.0:%d/v1/ N/A self api_port N/A versions_json N/A N/A json dumps versions N/A images N/A images N/A N/A images_json N/A N/A json dumps images N/A path N/A http://%s:%d/ N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A path N/A http://%s:%d/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content images_json N/A path N/A http://%s:%d/ N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A headers N/A Accept unknown N/A N/A response content N/A N/A http request path GET headers headers N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A N/A N/A self assertTrue N/A Unknown accept header N/A N/A N/A open N/A N/A self api_server log_file read N/A path N/A http://%s:%d/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A headers N/A Accept application/vnd.openstack.images-v1 N/A N/A response content N/A N/A http request path GET headers headers N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content images_json N/A path N/A http://%s:%d/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A headers N/A Accept application/vnd.openstack.compute-v1 N/A N/A response content N/A N/A http request path GET headers headers N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A N/A N/A self assertTrue N/A Unknown accept header N/A N/A N/A open N/A N/A self api_server log_file read N/A path N/A http://%s:%d/v1.0/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content images_json N/A path N/A http://%s:%d/v1.a/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content images_json N/A path N/A http://%s:%d/va.1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A path N/A http://%s:%d/versions N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A path N/A http://%s:%d/versions N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A headers N/A Accept application/vnd.openstack.images-v1 N/A N/A response content N/A N/A http request path GET headers headers N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A path N/A http://%s:%d/v1/versions N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 404 N/A path N/A http://%s:%d/v2/versions N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A path N/A http://%s:%d/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A headers N/A Accept application/vnd.openstack.images-v2 N/A N/A response content N/A N/A http request path GET headers headers N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A N/A N/A self assertTrue N/A Unknown accept header N/A N/A N/A open N/A N/A self api_server log_file read N/A path N/A http://%s:%d/v1.2/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 300 N/A N/A N/A self assertEqual content versions_json N/A N/A N/A self assertTrue N/A Unknown version in versioned URI N/A N/A N/A open N/A N/A self api_server log_file read N/A N/A N/A self stop_servers N/A skip_if_disabled test_size_greater_2G_mysql N/A N/A self N/A N/A N/A 
        A test against the actual datastore backend for the registry
        to ensure that the image size property is not truncated.

        :see https://bugs.launchpad.net/glance/+bug/739433
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A headers N/A Content-Type X-Image-Meta-Location X-Image-Meta-Size X-Image-Meta-Name X-Image-Meta-Is-Public application/octet-stream http://example.com/fakeimage N/A str FIVE_GB Image1 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A path N/A N/A response get location N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path HEAD N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual N/A response N/A x-image-meta-size N/A str FIVE_GB N/A N/A N/A self assertEqual N/A response N/A x-image-meta-name Image1 N/A N/A N/A self assertEqual N/A response N/A x-image-meta-is_public True N/A N/A N/A self stop_servers N/A skip_if_disabled test_traceback_not_consumed N/A N/A self N/A N/A N/A 
        A test that errors coming from the POST API do not
        get consumed and print the actual error message, and
        not something like &lt;traceback object at 0x1918d40&gt;

        :see https://bugs.launchpad.net/glance/+bug/755912
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A N/A N/A tempfile NamedTemporaryFile test_data_file N/A N/A N/A N/A test_data_file write XXX N/A N/A N/A test_data_file flush N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST body N/A test_data_file name N/A N/A N/A self assertEqual N/A response status 400 N/A expected Content-Type must be application/octet-stream N/A N/A N/A self assertTrue N/A expected content N/A Could not find '%s' in '%s' N/A expected content N/A N/A N/A self stop_servers N/A skip_if_disabled test_filtered_images N/A N/A self N/A N/A N/A 
        Set up four test images and ensure each query param filter works
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content {"images": []} N/A image_ids N/A N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Status X-Image-Meta-Container-Format X-Image-Meta-Disk-Format X-Image-Meta-Size X-Image-Meta-Is-Public X-Image-Meta-Protected X-Image-Meta-Property-pants application/octet-stream Image1 active ovf vdi 19 True True are on N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A N/A N/A data N/A image N/A properties N/A pants are on N/A N/A N/A self assertEqual N/A N/A data N/A image N/A is_public True N/A N/A N/A image_ids append N/A N/A data N/A image N/A id N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Status X-Image-Meta-Container-Format X-Image-Meta-Disk-Format X-Image-Meta-Size X-Image-Meta-Is-Public X-Image-Meta-Protected X-Image-Meta-Property-pants application/octet-stream My Image! active ovf vhd 20 True False are on N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A N/A N/A data N/A image N/A properties N/A pants are on N/A N/A N/A self assertEqual N/A N/A data N/A image N/A is_public True N/A N/A N/A image_ids append N/A N/A data N/A image N/A id N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Status X-Image-Meta-Container-Format X-Image-Meta-Disk-Format X-Image-Meta-Size X-Image-Meta-Is-Public X-Image-Meta-Protected X-Image-Meta-Property-pants application/octet-stream My Image! saving ami ami 21 True False are off N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A N/A N/A data N/A image N/A properties N/A pants are off N/A N/A N/A self assertEqual N/A N/A data N/A image N/A is_public True N/A N/A N/A image_ids append N/A N/A data N/A image N/A id N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Status X-Image-Meta-Container-Format X-Image-Meta-Disk-Format X-Image-Meta-Size X-Image-Meta-Is-Public X-Image-Meta-Protected application/octet-stream My Private Image active ami ami 22 False False N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A N/A data N/A image N/A is_public False N/A N/A N/A image_ids append N/A N/A data N/A image N/A id N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 3 N/A params name=My%20Image! N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 2 N/A image N/A data N/A images N/A N/A N/A N/A self assertEqual N/A image N/A name My Image! N/A params status=queued N/A path N/A http://%s:%d/v1/images/detail?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 3 N/A image N/A data N/A images N/A N/A N/A N/A self assertEqual N/A image N/A status queued N/A params status=active N/A path N/A http://%s:%d/v1/images/detail?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 0 N/A params container_format=ovf N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 2 N/A image N/A data N/A images N/A N/A N/A N/A self assertEqual N/A image N/A container_format ovf N/A params disk_format=vdi N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 1 N/A image N/A data N/A images N/A N/A N/A N/A self assertEqual N/A image N/A disk_format vdi N/A params size_max=20 N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 2 N/A image N/A data N/A images N/A N/A N/A N/A self assertTrue N/A N/A image N/A size 20 N/A params size_min=20 N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 2 N/A image N/A data N/A images N/A N/A N/A N/A self assertTrue N/A N/A image N/A size 20 N/A params is_public=None N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 4 N/A params is_public=False N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 1 N/A image N/A data N/A images N/A N/A N/A N/A self assertEqual N/A image N/A name My Private Image N/A params is_public=True N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 3 N/A image N/A data N/A images N/A N/A N/A N/A self assertNotEqual N/A image N/A name My Private Image N/A params protected=False N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 2 N/A image N/A data N/A images N/A N/A N/A N/A self assertNotEqual N/A image N/A name Image1 N/A params protected=True N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 1 N/A image N/A data N/A images N/A N/A N/A N/A self assertEqual N/A image N/A name Image1 N/A params property-pants=are%20on N/A path N/A http://%s:%d/v1/images/detail?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 2 N/A image N/A data N/A images N/A N/A N/A N/A self assertEqual N/A N/A image N/A properties N/A pants are on N/A params name=My%20Image!&property-pants=are%20on N/A path N/A http://%s:%d/v1/images/detail?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 1 N/A image N/A data N/A images N/A N/A N/A N/A self assertEqual N/A N/A image N/A properties N/A pants are on N/A N/A N/A self assertEqual N/A image N/A name My Image! N/A dt1 N/A N/A N/A N/A datetime datetime utcnow N/A N/A datetime timedelta 1 N/A iso1 N/A N/A utils isotime dt1 N/A params N/A changes-since=%s iso1 N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 3 N/A dt2 N/A N/A N/A N/A datetime datetime utcnow N/A N/A datetime timedelta 1 N/A iso2 N/A N/A utils isotime dt2 N/A params N/A changes-since=%s iso2 N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 0 N/A N/A N/A self stop_servers N/A skip_if_disabled test_limited_images N/A N/A self N/A N/A N/A 
        Ensure marker and limit query params work
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content {"images": []} N/A image_ids N/A N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Is-Public application/octet-stream Image1 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A N/A N/A image_ids append N/A N/A N/A N/A json loads content N/A image N/A id N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Is-Public application/octet-stream Image2 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A N/A N/A image_ids append N/A N/A N/A N/A json loads content N/A image N/A id N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Is-Public application/octet-stream Image3 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A N/A N/A image_ids append N/A N/A N/A N/A json loads content N/A image N/A id N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A images N/A N/A N/A json loads content N/A images N/A N/A N/A self assertEqual N/A len images 3 N/A images N/A params limit=2 N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A N/A json loads content N/A images N/A N/A N/A self assertEqual N/A len data 2 N/A N/A N/A self assertEqual N/A N/A data N/A 0 N/A id N/A N/A images N/A 0 N/A id N/A N/A N/A self assertEqual N/A N/A data N/A 1 N/A id N/A N/A images N/A 1 N/A id N/A params N/A marker=%s N/A N/A images N/A 0 N/A id N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A N/A json loads content N/A images N/A N/A N/A self assertEqual N/A len data 2 N/A N/A N/A self assertEqual N/A N/A data N/A 0 N/A id N/A N/A images N/A 1 N/A id N/A N/A N/A self assertEqual N/A N/A data N/A 1 N/A id N/A N/A images N/A 2 N/A id N/A params N/A limit=1&marker=%s N/A N/A images N/A 1 N/A id N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A N/A json loads content N/A images N/A N/A N/A self assertEqual N/A len data 1 N/A N/A N/A self assertEqual N/A N/A data N/A 0 N/A id N/A N/A images N/A 2 N/A id N/A params N/A limit=1&marker=%s N/A N/A images N/A 1 N/A id N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A N/A json loads content N/A images N/A N/A N/A self assertEqual N/A len data 1 N/A N/A N/A self assertEqual N/A N/A data N/A 0 N/A id N/A N/A images N/A 2 N/A id N/A image_id image_ids N/A N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path DELETE N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self stop_servers N/A skip_if_disabled test_ordered_images N/A N/A self N/A N/A N/A 
        Set up three test images and ensure each query param filter works
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content {"images": []} N/A image_ids N/A N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Status X-Image-Meta-Container-Format X-Image-Meta-Disk-Format X-Image-Meta-Size X-Image-Meta-Is-Public application/octet-stream Image1 active ovf vdi 19 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A N/A N/A image_ids append N/A N/A N/A N/A json loads content N/A image N/A id N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Status X-Image-Meta-Container-Format X-Image-Meta-Disk-Format X-Image-Meta-Size X-Image-Meta-Is-Public application/octet-stream ASDF active bare iso 2 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A N/A N/A image_ids append N/A N/A N/A N/A json loads content N/A image N/A id N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Status X-Image-Meta-Container-Format X-Image-Meta-Disk-Format X-Image-Meta-Size X-Image-Meta-Is-Public application/octet-stream XYZ saving ami ami 5 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A N/A N/A image_ids append N/A N/A N/A N/A json loads content N/A image N/A id N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 3 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A id N/A image_ids N/A 2 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 1 N/A id N/A image_ids N/A 1 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 2 N/A id N/A image_ids N/A 0 N/A params sort_key=name&sort_dir=asc N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 3 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A id N/A image_ids N/A 1 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 1 N/A id N/A image_ids N/A 0 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 2 N/A id N/A image_ids N/A 2 N/A params sort_key=size&sort_dir=desc N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 3 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A id N/A image_ids N/A 0 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 1 N/A id N/A image_ids N/A 2 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 2 N/A id N/A image_ids N/A 1 N/A params N/A sort_key=size&sort_dir=desc&marker=%s N/A image_ids N/A 0 N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 2 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 0 N/A id N/A image_ids N/A 2 N/A N/A N/A self assertEqual N/A N/A N/A data N/A images N/A 1 N/A id N/A image_ids N/A 1 N/A params N/A sort_key=name&sort_dir=asc&marker=%s N/A image_ids N/A 2 N/A path N/A http://%s:%d/v1/images?%s N/A 0.0.0.0 N/A self api_port params N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A data N/A N/A json loads content N/A N/A N/A self assertEqual N/A len N/A data N/A images 0 N/A image_id image_ids N/A N/A path N/A http://%s:%d/v1/images/%s N/A 0.0.0.0 N/A self api_port image_id N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path DELETE N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self stop_servers N/A skip_if_disabled test_duplicate_image_upload N/A N/A self N/A N/A N/A 
        Upload initial image, then attempt to upload duplicate image
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content {"images": []} N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Status X-Image-Meta-Container-Format X-Image-Meta-Disk-Format X-Image-Meta-Size X-Image-Meta-Is-Public application/octet-stream Image1 active ovf vdi 19 True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 201 N/A image N/A N/A N/A json loads content N/A image N/A headers N/A Content-Type X-Image-Meta-Name X-Image-Meta-Status X-Image-Meta-Container-Format X-Image-Meta-Disk-Format X-Image-Meta-Size X-Image-Meta-Id X-Image-Meta-Is-Public application/octet-stream Image1 Update active ovf vdi 19 N/A image N/A id True N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path POST headers headers N/A N/A N/A self assertEqual N/A response status 409 N/A N/A N/A self stop_servers N/A skip_if_disabled test_delete_not_existing N/A N/A self N/A N/A N/A 
        We test the following:

        0. GET /images/1
        - Verify 404
        1. DELETE /images/1
        - Verify 404
         N/A N/A N/A self cleanup N/A N/A N/A self start_servers N/A N/A N/A self __dict__ copy N/A api_port N/A self api_port N/A registry_port N/A self registry_port N/A path N/A http://%s:%d/v1/images N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path GET N/A N/A N/A self assertEqual N/A response status 200 N/A N/A N/A self assertEqual content {"images": []} N/A path N/A http://%s:%d/v1/images/1 N/A 0.0.0.0 N/A self api_port N/A http N/A N/A httplib2 Http N/A N/A response content N/A N/A http request path DELETE N/A N/A N/A self assertEqual N/A response status 404 N/A N/A N/A self stop_servers N/A skip_if_disabled test_unsupported_default_store N/A N/A self N/A N/A N/A 
        We test that a mis-configured default_store causes the API server
        to fail to start.
         N/A N/A N/A self cleanup N/A N/A N/A self api_server default_store shouldnotexist N/A N/A N/A self start_server N/A self api_server expect_launch False N/A N/A N/A self __dict__ copy N/A skip_if_disabled N/A