Module Expr Str Assign NameStore Str TryExcept body Import alias identifier handlers ExceptHandler type NameLoad name NameStore body Assign NameStore NameLoad Import alias Import alias Import alias Import alias Import alias identifier Import alias Import alias Import alias Import alias Import alias TryExcept body ImportFrom alias ImportFrom alias handlers ExceptHandler type NameLoad body Assign NameStore NameLoad Assign NameStore NameLoad TryExcept body Import alias Expr Call AttributeLoad Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr handlers ExceptHandler type NameLoad body Assign NameStore NameLoad TryExcept body Import alias handlers ExceptHandler type NameLoad body Assign NameStore NameLoad TryExcept body Import alias ImportFrom alias alias handlers ExceptHandler type NameLoad body Assign NameStore NameLoad TryExcept body Import alias handlers ExceptHandler type NameLoad body Assign NameStore NameLoad TryExcept body Import alias handlers ExceptHandler type NameLoad body Assign NameStore NameLoad Import alias identifier Import alias identifier ImportFrom alias alias alias ImportFrom alias ImportFrom alias alias ImportFrom alias alias alias alias alias alias alias alias alias alias alias alias alias alias ImportFrom alias ImportFrom alias ImportFrom alias identifier ImportFrom alias alias alias ImportFrom alias alias alias alias alias ImportFrom alias ImportFrom alias ImportFrom alias FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign AttributeStore NameLoad attr AttributeLoad NameLoad attr If CompareEq NameLoad AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Return Call NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Call AttributeLoad NameLoad attr Str Assign NameStore AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore SubscriptLoad NameLoad Index Str Expr Call AttributeLoad NameLoad attr NameLoad Return Call NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Str Expr Call NameLoad NameLoad Expr Call NameLoad NameLoad keyword NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign AttributeStore NameLoad attr NameLoad Expr Call NameLoad NameLoad Expr Call NameLoad NameLoad keyword NameLoad Assign NameStore SubscriptLoad NameLoad Index Str Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Str decorator_list FunctionDef arguments args NameParam defaults body Expr Str Expr Call NameLoad NameLoad Expr Call NameLoad NameLoad Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str FunctionDef arguments args NameParam defaults body If CompareIsNot NameLoad NameLoad body TryExcept body Assign NameStore AttributeLoad NameLoad attr For NameStore NameLoad body Assign NameStore SubscriptLoad NameLoad Index NameLoad If CompareIn NameLoad NameLoad body Delete SubscriptDel NameLoad Index NameLoad Expr Call AttributeLoad Call AttributeLoad NameLoad attr Str attr BinOpMod Str NameLoad handlers ExceptHandler type NameLoad body Expr Call AttributeLoad Call AttributeLoad NameLoad attr Str attr BinOpMod Str NameLoad decorator_list Assign NameStore Call AttributeLoad NameLoad attr Str TryExcept body Assign NameStore SubscriptLoad AttributeLoad NameLoad attr Index Str Assign NameStore CompareEq NameLoad NameLoad handlers ExceptHandler type TupleLoad NameLoad NameLoad body Assign NameStore NameLoad Assign NameStore NameLoad If UnaryOpNot NameLoad body Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr NameLoad keyword Num Assign NameStore AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index Str NameLoad Assign AttributeStore SubscriptLoad NameLoad Index Str attr SubscriptLoad NameLoad Index Str If UnaryOpNot AttributeLoad NameLoad attr body Expr Call NameLoad NameLoad Expr Call NameLoad NameLoad keyword NameLoad Expr Call NameLoad NameLoad Expr Call AttributeLoad Call AttributeLoad NameLoad attr Str attr BinOpMod Str Call NameLoad AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body TryExcept body Expr Call NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr Str Assign NameStore AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore SubscriptLoad NameLoad Index Str Expr Call AttributeLoad NameLoad attr NameLoad Return Call NameLoad NameLoad handlers ExceptHandler type NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Raise decorator_list FunctionDef arguments args NameParam defaults body Expr Str TryExcept body TryExcept body Assign NameStore AttributeLoad NameLoad attr handlers ExceptHandler type NameLoad body Assign NameStore NameLoad If UnaryOpNot NameLoad body Expr Call NameLoad NameLoad Expr Call NameLoad NameLoad Return Call NameLoad NameLoad handlers ExceptHandler type NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Raise decorator_list FunctionDef arguments args NameParam NameParam defaults NameLoad body Expr Str TryExcept body Assign NameStore SubscriptLoad NameLoad Index Str If NameLoad body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str Expr Call AttributeLoad NameLoad attr keyword NameLoad handlers ExceptHandler type NameLoad name NameStore body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore SubscriptLoad NameLoad Index Str If CompareIsNot NameLoad NameLoad body TryExcept body TryExcept body Assign NameStore Call AttributeLoad NameLoad attr Num If CompareGt BinOpSub NameLoad NameLoad Num body Expr Call AttributeLoad NameLoad attr BinOpSub NameLoad NameLoad handlers ExceptHandler type NameLoad body Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr NameLoad handlers ExceptHandler type NameLoad name NameStore body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str TryExcept body Assign NameStore SubscriptLoad NameLoad Index Str If NameLoad body Expr Call AttributeLoad NameLoad attr If AttributeLoad NameLoad attr body Assign NameStore TupleLoad AttributeLoad NameLoad attr NameLoad orelse Assign NameStore Call NameLoad NameLoad If AttributeLoad NameLoad attr body Assign NameStore TupleLoad AttributeLoad NameLoad attr NameLoad Return NameLoad Return Call NameLoad NameLoad handlers ExceptHandler body Assign NameStore Call AttributeLoad NameLoad attr Str Expr Call AttributeLoad NameLoad attr Str Raise decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Call AttributeLoad NameLoad attr Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore AttributeLoad NameLoad attr Assign NameStore Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr keyword NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad If NameLoad body Expr Call AttributeLoad NameLoad attr If CompareEq NameLoad AttributeLoad NameLoad attr body Assign NameStore TupleLoad TupleLoad AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr keyword NameLoad AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr orelse Assign NameStore TupleLoad TupleLoad AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr keyword NameLoad Expr Call AttributeLoad NameLoad attr keyword NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad NameLoad NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Expr Call NameLoad NameLoad keyword NameLoad Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str If NameLoad body Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr decorator_list ClassDef bases NameLoad body Expr Str FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults Str NameLoad Str NameLoad NameLoad NameLoad AttributeLoad NameLoad attr NameLoad TupleLoad Num Str AttributeLoad NameLoad attr NameLoad Num NameLoad NameLoad NameLoad NameLoad Num Num Num NameLoad AttributeLoad NameLoad attr Num NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Str NameLoad NameLoad Str NameLoad NameLoad NameLoad NameLoad kwarg body If BoolOpAnd CompareIsNot NameLoad NameLoad CompareIs NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd NameLoad CompareIs NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd CompareIs NameLoad NameLoad CompareIsNot NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd CompareIsNot NameLoad NameLoad CompareIn Str NameLoad body Raise Call NameLoad Str If BoolOpAnd CompareEq NameLoad AttributeLoad NameLoad attr CompareIs NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd BoolOpOr NameLoad NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd NameLoad CompareIs NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd CompareNotIn NameLoad TupleLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr NameLoad body Raise Call NameLoad Str If BoolOpAnd NameLoad UnaryOpNot NameLoad body Raise Call NameLoad Str If BoolOpAnd NameLoad CompareNotIn NameLoad TupleLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Raise Call NameLoad Str If BoolOpAnd CompareIsNot NameLoad NameLoad UnaryOpNot Call NameLoad NameLoad Str CompareIs NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd NameLoad UnaryOpNot NameLoad UnaryOpNot NameLoad body Raise Call NameLoad Str If UnaryOpNot Call NameLoad NameLoad NameLoad body Assign NameStore TupleLoad NameLoad Num If BoolOpOr CompareLtE NameLoad Num CompareGt NameLoad Num CompareLtE SubscriptLoad NameLoad Index Num Num CompareGt SubscriptLoad NameLoad Index Num Num CompareLtE NameLoad Num CompareGt NameLoad Num body Raise Call NameLoad Str Assign NameStore BoolOpOr CompareLt NameLoad Num CompareLt SubscriptLoad NameLoad Index Num Num CompareLt NameLoad Num If BoolOpAnd NameLoad CompareIs NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd CompareEq NameLoad Num CompareIs NameLoad NameLoad body Raise Call NameLoad Str If BoolOpAnd CompareIsNot NameLoad NameLoad CompareNotIn NameLoad TupleLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Raise Call NameLoad Str If BoolOpAnd NameLoad NameLoad body Raise Call NameLoad Str Assign NameStore Call NameLoad Call AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call NameLoad keyword NameLoad keyword NameLoad keyword NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad If CompareIsNot NameLoad NameLoad body Assign AttributeStore NameLoad attr BinOpDiv BinOpDiv AttributeLoad Call AttributeLoad NameLoad attr attr Num Num Assign AttributeStore NameLoad attr BinOpMult BinOpDiv SubscriptLoad AttributeLoad NameLoad attr Index Num AttributeLoad NameLoad attr Num Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr Num Assign AttributeStore NameLoad attr Num If AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr TupleLoad Assign AttributeStore NameLoad attr Dict Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr TupleLoad Assign AttributeStore NameLoad attr Dict Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad If Call NameLoad NameLoad AttributeLoad NameLoad attr body Assign AttributeStore NameLoad attr Call NameLoad NameLoad keyword NameLoad keyword NameLoad keyword NameLoad keyword NameLoad Assign AttributeStore NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr orelse Assign AttributeStore NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad If CompareIsNot AttributeLoad NameLoad attr NameLoad body Assign TupleStore NameStore AttributeStore NameLoad attr Call NameLoad NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr orelse Assign NameStore NameLoad If UnaryOpNot NameLoad body Assign AttributeStore NameLoad attr Call AttributeLoad Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr BinOpAdd BinOpAdd BinOpAdd AttributeLoad AttributeLoad NameLoad attr attr Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr Call NameLoad AttributeLoad NameLoad attr NameLoad attr Assign NameStore SubscriptLoad AttributeLoad NameLoad attr Slice Num Num Assign NameStore Str Assign AttributeStore NameLoad attr BinOpAdd BinOpAdd BinOpAdd BinOpAdd NameLoad Str Call NameLoad NameLoad Str AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr If CompareIsNot AttributeLoad NameLoad attr NameLoad body If NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str Call NameLoad AttributeLoad NameLoad attr orelse Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str Call NameLoad AttributeLoad NameLoad attr If CompareIs NameLoad NameLoad body Assign NameStore NameLoad If CompareIsNot AttributeLoad AttributeLoad NameLoad attr attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign AttributeStore NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr orelse Assign TupleStore AttributeStore NameLoad attr NameStore Call NameLoad NameLoad AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpSub NameLoad BinOpSub Call NameLoad Call AttributeLoad NameLoad attr NameLoad If BoolOpAnd NameLoad Call NameLoad body Assign AttributeStore NameLoad attr Call NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr NameLoad If AttributeLoad NameLoad attr body If CompareIs NameLoad NameLoad body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Call AttributeLoad NameLoad attr Str Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad AttributeLoad AttributeLoad NameLoad attr attr orelse Assign NameStore NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad If CompareEq NameLoad Num body Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad Assign AttributeStore NameLoad attr NameLoad If CompareEq NameLoad Num body Assign NameStore BinOpMult Num NameLoad Assign AttributeStore NameLoad attr NameLoad If CompareIs NameLoad NameLoad body Assign NameStore AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad If BoolOpAnd CompareEq NameLoad AttributeLoad NameLoad attr UnaryOpNot Call NameLoad NameLoad AttributeLoad NameLoad attr body Assign NameStore Call NameLoad NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad orelse Assign NameStore NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad If BoolOpAnd NameLoad Call NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign AttributeStore NameLoad attr Num Assign AttributeStore NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr For NameStore Call NameLoad NameLoad body TryExcept body Assign NameStore SubscriptLoad NameLoad Index NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr Dict NameLoad NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str TupleLoad NameLoad Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad handlers ExceptHandler type NameLoad body Pass If CompareGt Call NameLoad NameLoad Num body Raise Call NameLoad BinOpMod Str Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str decorator_list NameLoad Call NameLoad Str Str Call NameLoad Str Str Call NameLoad Str Str Call NameLoad Str Str Call NameLoad Str Str Call NameLoad Str Str Call NameLoad Str NameLoad FunctionDef arguments args NameParam defaults body If AttributeLoad NameLoad attr body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr If AttributeLoad NameLoad attr body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr If CompareIsNot AttributeLoad NameLoad attr NameLoad body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr If AttributeLoad NameLoad attr body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr orelse If AttributeLoad NameLoad attr body Pass orelse Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr If BoolOpOr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr If BoolOpOr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr If CompareIs NameLoad NameLoad body Assign NameStore Num Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad NameLoad keyword Str attr If BoolOpAnd AttributeLoad NameLoad attr BoolOpOr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad AttributeLoad NameLoad attr attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad AttributeLoad NameLoad attr attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr TryExcept body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr handlers ExceptHandler type NameLoad body Pass For TupleStore NameStore NameStore Call AttributeLoad AttributeLoad NameLoad attr attr body Assign NameStore BinOpMod Str TupleLoad AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad NameLoad keyword Str attr Assign AttributeStore AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr attr Str decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore BinOpMod Str TupleLoad AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam NameParam defaults NameLoad body Expr Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad NameLoad body Expr Str If CompareIs NameLoad NameLoad body Assign AttributeStore NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr orelse Assign AttributeStore NameLoad attr NameLoad If CompareIsNot NameLoad NameLoad body Assign AttributeStore NameLoad attr NameLoad Return Call AttributeLoad NameLoad attr NameLoad decorator_list Call NameLoad Str Str FunctionDef arguments args NameParam defaults body Expr Str Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam NameParam defaults body Assign AttributeStore NameLoad attr NameLoad decorator_list AttributeLoad NameLoad attr FunctionDef arguments args NameParam defaults body Expr Str Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam NameParam defaults vararg kwarg body Expr Str Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Return Call AttributeLoad NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Return Call AttributeLoad NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults vararg kwarg body Expr Str Assign NameStore Lambda arguments args NameParam defaults TupleLoad TupleLoad NameLoad NameLoad NameLoad TupleLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Return Call AttributeLoad NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults vararg kwarg body Expr Str If BoolOpAnd CompareEq Call NameLoad NameLoad Num CompareEq Call NameLoad NameLoad Num body Raise Call NameLoad Str Assign NameStore Lambda arguments args NameParam defaults TupleLoad TupleLoad NameLoad NameLoad NameLoad TupleLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Return Call AttributeLoad NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Dict Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Str Assign NameStore AttributeLoad AttributeLoad NameLoad attr attr Assign SubscriptStore NameLoad Index Str NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign NameStore AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index Str AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index Str AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index Str AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index Str AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index Str AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index Str AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index Str AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index Str AttributeLoad NameLoad attr Assign NameStore Call NameLoad NameLoad Str Expr Call AttributeLoad NameLoad attr NameLoad NameLoad keyword Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore AttributeLoad NameLoad attr If NameLoad body AugAssignAdd NameStore Str If AttributeLoad AttributeLoad NameLoad attr attr body Assign NameStore BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr orelse Assign NameStore Str AugAssignAdd NameStore BinOpMod Str TupleLoad AttributeLoad AttributeLoad NameLoad attr attr NameLoad Call NameLoad Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr Call NameLoad AttributeLoad NameLoad attr If Call AttributeLoad AttributeLoad NameLoad attr attr Str keyword NameLoad body Assign NameStore Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr keyword NameLoad For NameStore Call AttributeLoad NameLoad attr NameLoad body Assign NameStore SubscriptLoad NameLoad Index NameLoad If Call AttributeLoad NameLoad attr body Assign SubscriptStore NameLoad Index NameLoad Call AttributeLoad NameLoad attr orelse Assign SubscriptStore NameLoad Index NameLoad Call AttributeLoad NameLoad attr orelse Assign NameStore Dict Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad SubscriptLoad AttributeLoad NameLoad attr Index Str attr AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr keyword NameLoad keyword NameLoad keyword NameLoad keyword AttributeLoad NameLoad attr keyword NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore BinOpSub AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore BinOpMod Str Call NameLoad NameLoad Assign NameStore ListLoad If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad Call NameLoad NameLoad keyword Str Expr Call AttributeLoad NameLoad attr NameLoad If AttributeLoad NameLoad attr body Assign NameStore BinOpMod Str Call NameLoad NameLoad If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad Call NameLoad AttributeLoad NameLoad attr keyword Str Expr Call AttributeLoad NameLoad attr NameLoad If BoolOpAnd AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str Call NameLoad AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str If UnaryOpNot AttributeLoad NameLoad attr body Raise Call NameLoad Str If UnaryOpNot AttributeLoad NameLoad attr body Raise Call NameLoad Str Assign AttributeStore NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Str Assign NameStore Call NameLoad NameLoad Str Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore BinOpMod Str AttributeLoad NameLoad attr If Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad keyword NameLoad body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Assign NameStore BinOpMod Str AttributeLoad NameLoad attr If Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad keyword NameLoad body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr If UnaryOpNot Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr AttributeLoad NameLoad attr keyword NameLoad body Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Str Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Str Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Str Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Str Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Str Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Str Assign AttributeStore AttributeLoad NameLoad attr attr SubscriptLoad NameLoad Index Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Assign NameStore ListLoad Assign NameStore ListLoad For NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign TupleStore NameStore NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If CompareNotEq NameLoad Str body Continue Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr NameLoad Assign NameStore Call NameLoad NameLoad Str Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore ListLoad For NameStore NameLoad body Assign NameStore SubscriptLoad NameLoad Index Num Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num Expr Call NameLoad NameLoad Assign NameStore BinOpMod Str AttributeLoad NameLoad attr If UnaryOpNot CompareIn NameLoad AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad NameLoad keyword Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore Call NameLoad AttributeLoad NameLoad attr Assign NameStore NameLoad If CompareIs NameLoad NameLoad body If AttributeLoad NameLoad attr body Raise Call NameLoad Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign AttributeStore NameLoad attr NameLoad Return orelse If BoolOpAnd CompareEq Call NameLoad NameLoad Num Call NameLoad SubscriptLoad NameLoad Index Num NameLoad Call NameLoad SubscriptLoad NameLoad Index Num NameLoad body Assign NameStore SubscriptLoad NameLoad Index Num Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign NameStore NameLoad Assign NameStore SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign NameStore NameLoad orelse If CompareLtE Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num orelse Assign NameStore NameLoad If NameLoad body Raise Call NameLoad Str If BoolOpAnd CompareIsNot AttributeLoad NameLoad attr NameLoad UnaryOpNot AttributeLoad NameLoad attr body Raise Call NameLoad Str If AttributeLoad NameLoad attr body Expr Call NameLoad AttributeLoad NameLoad attr If Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Raise Call NameLoad BinOpMod Str AttributeLoad NameLoad attr If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr keyword NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults kwarg body Expr Str Assign NameStore Dict Str Str Str Str Str Str Str Str Str Str AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad If AttributeLoad NameLoad attr body If BoolOpOr AttributeLoad NameLoad attr AttributeLoad NameLoad attr body If AttributeLoad NameLoad attr body Delete SubscriptDel NameLoad Index Str If AttributeLoad NameLoad attr body Assign SubscriptStore NameLoad Index Str AttributeLoad AttributeLoad NameLoad attr attr If AttributeLoad NameLoad attr body Delete SubscriptDel NameLoad Index Str Delete SubscriptDel NameLoad Index Str orelse Assign SubscriptStore NameLoad Index Str NameLoad If AttributeLoad NameLoad attr body Delete SubscriptDel NameLoad Index Str Delete SubscriptDel NameLoad Index Str orelse Assign SubscriptStore NameLoad Index Str NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore Call NameLoad AttributeLoad NameLoad attr For NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad body Assign AttributeStore NameLoad attr BinOpAdd NameLoad Num If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Break If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Expr Yield NameLoad orelse Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad kwarg body Expr Str If BoolOpOr UnaryOpNot AttributeLoad NameLoad attr UnaryOpNot AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr NameLoad FunctionDef arguments args defaults body If AttributeLoad NameLoad attr body Assign AttributeStore NameLoad attr Call NameLoad GeneratorExp Call NameLoad NameLoad comprehension NameStore AttributeLoad NameLoad attr For NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign SubscriptStore AttributeLoad NameLoad attr Index NameLoad Call NameLoad SubscriptLoad AttributeLoad NameLoad attr Index NameLoad For NameStore Call AttributeLoad NameLoad attr NameLoad body Assign NameStore Call NameLoad GeneratorExp Call NameLoad NameLoad comprehension NameStore AttributeLoad NameLoad attr Assign NameStore Dict For NameStore AttributeLoad NameLoad attr body Assign SubscriptStore NameLoad Index NameLoad Call NameLoad SubscriptLoad AttributeLoad NameLoad attr Index NameLoad Assign SubscriptStore NameLoad Index Str NameLoad Assign SubscriptStore NameLoad Index Str NameLoad If AttributeLoad NameLoad attr body Assign SubscriptStore NameLoad Index Str NameLoad If NameLoad body Assign NameStore Call AttributeLoad NameLoad attr If UnaryOpNot AttributeLoad NameLoad attr body Assign SubscriptStore NameLoad Index Str Call AttributeLoad AttributeLoad NameLoad attr attr keyword Str keyword NameLoad Expr Yield NameLoad orelse Expr Yield NameLoad orelse For NameStore Call AttributeLoad NameLoad attr NameLoad body If AttributeLoad NameLoad attr body Assign SubscriptStore NameLoad Index Str NameLoad If NameLoad body Assign NameStore Call AttributeLoad NameLoad attr If UnaryOpNot AttributeLoad NameLoad attr body Assign SubscriptStore NameLoad Index Str Call AttributeLoad AttributeLoad NameLoad attr attr keyword Str keyword NameLoad Expr Yield NameLoad orelse Expr Yield NameLoad decorator_list Return Call NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore NameLoad Assign NameStore Num Assign NameStore Num Expr Call AttributeLoad AttributeLoad NameLoad attr attr keyword NameLoad Assign NameStore Call NameLoad AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr If CompareIs NameLoad NameLoad body Pass orelse If Call NameLoad NameLoad NameLoad body If NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad orelse If Call NameLoad NameLoad NameLoad body Assign NameStore SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If CompareGt Call NameLoad NameLoad Num body Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Num If NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad orelse Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str Call NameLoad NameLoad Assign NameStore Call NameLoad AttributeLoad NameLoad attr If CompareNotEq NameLoad NameLoad body Assign NameStore NameLoad Assign NameStore NameLoad If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr keyword NameLoad Assign NameStore Call NameLoad AttributeLoad NameLoad attr Assign NameStore BinOpSub NameLoad NameLoad Return TupleLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Call AttributeLoad NameLoad attr If CompareGtE BinOpSub NameLoad AttributeLoad NameLoad attr Num body TryExcept body Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr NameLoad handlers ExceptHandler type TupleLoad AttributeLoad NameLoad attr NameLoad body Pass Return AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore Call NameLoad NameLoad Assign NameStore AttributeLoad Call AttributeLoad NameLoad attr attr Assign NameStore Num For NameStore Call AttributeLoad NameLoad attr NameLoad body TryExcept body AugAssignAdd NameStore Call AttributeLoad Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr attr handlers ExceptHandler type TupleLoad AttributeLoad NameLoad attr NameLoad body Pass Assign NameStore NameLoad Assign NameStore Call NameLoad Num BinOpSub BinOpMult NameLoad AttributeLoad NameLoad attr NameLoad Assign NameStore NameLoad AugAssignAdd NameStore NameLoad AugAssignAdd NameStore AttributeLoad NameLoad attr Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str If CompareIs AttributeLoad NameLoad attr NameLoad body Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr If BoolOpAnd AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Raise Call NameLoad Str If CompareIsNot AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad NameLoad attr If CompareIsNot NameLoad NameLoad body Assign NameStore ListLoad Expr Call AttributeLoad NameLoad attr NameLoad orelse Assign NameStore Call AttributeLoad NameLoad attr If CompareIsNot AttributeLoad NameLoad attr NameLoad body Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad If AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr TryFinally body Expr Call AttributeLoad NameLoad attr NameLoad finalbody Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign AttributeStore NameLoad attr NameLoad If AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call NameLoad BinOpSub NameLoad NameLoad Assign NameStore ListLoad Assign NameStore BinOpMod Str AttributeLoad NameLoad attr If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str AttributeLoad NameLoad attr If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str orelse Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str AttributeLoad NameLoad attr If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str orelse Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad keyword AttributeLoad NameLoad attr If Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr Str body Expr Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Assign NameStore ListLoad For NameStore Call AttributeLoad AttributeLoad NameLoad attr attr body If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad body Expr Call AttributeLoad NameLoad attr NameLoad If CompareGt Call NameLoad NameLoad Num body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str TupleLoad AttributeLoad AttributeLoad NameLoad attr attr Call AttributeLoad Str attr NameLoad orelse Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr If CompareIsNot AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad NameLoad attr Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str For TupleStore NameStore NameStore Call NameLoad Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr body Assign TupleStore NameStore NameStore NameLoad For TupleStore NameStore NameStore Call NameLoad NameLoad body Assign NameStore BinOpMod Str TupleLoad AttributeLoad NameLoad attr NameLoad NameLoad If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad NameLoad keyword Str attr If Call NameLoad NameLoad Str body Assign NameStore BinOpMod Str TupleLoad AttributeLoad NameLoad attr NameLoad If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr If AttributeLoad NameLoad attr body Assign NameStore BinOpMod Str TupleLoad AttributeLoad NameLoad attr NameLoad If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Str attr TryExcept body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BinOpMod Str TupleLoad AttributeLoad NameLoad attr NameLoad If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Expr Call AttributeLoad Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad NameLoad keyword Str attr handlers ExceptHandler type NameLoad body Pass decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore AttributeLoad NameLoad attr Assign NameStore NameLoad Assign AttributeStore NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr NameLoad If AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr While NameLoad body If AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad orelse Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore NameLoad Assign NameStore Call NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr BinOpSub NameLoad Num NameLoad For NameStore NameLoad body Assign NameStore Call NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad Assign NameStore NameLoad If CompareIsNot AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign TupleStore NameStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad If UnaryOpNot NameLoad body Break orelse Assign NameStore NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr keyword NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str AttributeLoad AttributeLoad NameLoad attr attr If BoolOpAnd AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr If NameLoad body Assign NameStore BinOpMod Str AttributeLoad NameLoad attr If UnaryOpNot Call AttributeLoad AttributeLoad NameLoad attr attr BinOpAdd Str NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad NameLoad keyword Str decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam defaults body Expr Str While UnaryOpNot Call AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam defaults body Expr Str If CompareEq SubscriptLoad NameLoad Index Num AttributeLoad NameLoad attr body Assign AttributeStore NameLoad attr NameLoad Assign NameStore SubscriptLoad NameLoad Index Num If CompareIsNot NameLoad NameLoad body If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr SubscriptLoad NameLoad Index Num Expr Call AttributeLoad AttributeLoad NameLoad attr attr SubscriptLoad NameLoad Index Num Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Num If AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Slice Num Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad AugAssignAdd NameStore Num Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore SubscriptLoad SubscriptLoad NameLoad Index Num Index Str Assign NameStore Call AttributeLoad Call NameLoad NameLoad attr Str Str Assign NameStore BinOpMod Str NameLoad Assign NameStore Str Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr BinOpAdd NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Str Expr Call AttributeLoad NameLoad attr NameLoad NameLoad keyword Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Assign NameStore Str Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr BinOpAdd NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Str Assign NameStore NameLoad Assign NameStore Call NameLoad AttributeLoad NameLoad attr Assign NameStore NameLoad If BoolOpOr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str orelse Assign NameStore BoolOpOr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr keyword NameLoad keyword NameLoad keyword NameLoad keyword NameLoad keyword NameLoad keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr keyword AttributeLoad AttributeLoad NameLoad attr attr keyword AttributeLoad AttributeLoad NameLoad attr attr keyword AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr TryFinally body If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str AttributeLoad NameLoad attr If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign NameStore NameLoad Assign NameStore NameLoad orelse Assign NameStore AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword NameLoad keyword AttributeLoad NameLoad attr Assign NameStore NameLoad Assign NameStore NameLoad TryFinally body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr keyword NameLoad keyword TupleLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr BinOpSub NameLoad Num NameLoad For NameStore NameLoad body Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr finalbody If AttributeLoad NameLoad attr body Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad orelse Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Delete NameDel orelse If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str If Call NameLoad NameLoad Str body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign AttributeStore NameLoad attr Dict Assign NameStore AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore BinOpAdd BinOpAdd AttributeLoad NameLoad attr Str Call AttributeLoad Call NameLoad Call AttributeLoad NameLoad attr attr Str Str Expr Call AttributeLoad NameLoad attr Dict NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword NameLoad keyword NameLoad Assign NameStore NameLoad orelse Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword NameLoad Assign NameStore NameLoad TryFinally body If AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad keyword AttributeLoad NameLoad attr orelse Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign NameStore Call NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr BinOpSub NameLoad Num NameLoad For NameStore NameLoad body Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad finalbody If AttributeLoad NameLoad attr body Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad orelse If AttributeLoad NameLoad attr body Assign NameStore Num orelse Assign NameStore NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str AttributeLoad NameLoad attr If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str TupleLoad AttributeLoad NameLoad attr SubscriptLoad AttributeLoad NameLoad attr Index Num AttributeLoad NameLoad attr Assign NameStore NameLoad Assign NameStore Dict Assign NameStore Lambda arguments args defaults Call AttributeLoad NameLoad attr Assign NameStore Lambda arguments args defaults Call AttributeLoad NameLoad attr NameLoad Assign NameStore Lambda arguments args defaults AttributeLoad Call AttributeLoad NameLoad attr attr Assign NameStore NameLoad Assign NameStore Num Expr Call AttributeLoad NameLoad attr BinOpSub NameLoad Num NameLoad While BoolOpOr CompareGt Call NameLoad NameLoad Num NameLoad body For NameStore Call AttributeLoad NameLoad attr NameLoad body Assign NameStore SubscriptLoad NameLoad Index NameLoad If UnaryOpNot Call AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr Delete SubscriptDel NameLoad Index NameLoad Delete NameDel Assign NameStore NameLoad If BoolOpAnd AttributeLoad NameLoad attr CompareGtGt AttributeLoad NameLoad attr Call NameLoad NameLoad Num body For TupleStore NameStore NameStore NameStore TupleLoad TupleLoad Str NameLoad AttributeLoad NameLoad attr TupleLoad Str NameLoad SubscriptLoad AttributeLoad NameLoad attr Index Num TupleLoad Str NameLoad AttributeLoad NameLoad attr body Assign NameStore Call NameLoad If CompareGt NameLoad NameLoad body Assign NameStore NameLoad If NameLoad body If CompareEq NameLoad Str body Assign NameStore Str orelse Assign NameStore Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str TupleLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Assign NameStore NameLoad AugAssignSub NameStore Num If CompareEq NameLoad Num body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Break If BoolOpAnd CompareLt Call NameLoad NameLoad AttributeLoad NameLoad attr NameLoad NameLoad body TryExcept body Assign NameStore Call NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr keyword NameLoad keyword TupleLoad NameLoad Expr Call AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index AttributeLoad NameLoad attr NameLoad Assign NameStore CompareGt NameLoad Num handlers ExceptHandler type NameLoad body Assign NameStore NameLoad If BoolOpAnd CompareIsNot AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr body If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign NameStore AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr TryFinally body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign TupleStore NameStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad finalbody If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad If NameLoad body Assign NameStore NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad Assign NameStore NameLoad Assign NameStore Call NameLoad AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword NameLoad If UnaryOpNot NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str orelse Expr Call AttributeLoad NameLoad attr Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Delete NameDel Expr Call NameLoad NameLoad NameLoad finalbody If CompareIsNot AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr NameLoad Return NameLoad decorator_list decorator_list NameLoad ClassDef bases NameLoad body Expr Str FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad NameLoad Num NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad body Expr Call AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad If BoolOpOr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign AttributeStore NameLoad attr Call NameLoad keyword NameLoad keyword NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr If CompareIsNot NameLoad NameLoad body Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Return AttributeLoad NameLoad attr decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Call AttributeLoad NameLoad attr Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr keyword NameLoad If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr orelse If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr orelse If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr orelse If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr orelse If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr orelse If CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Expr Call AttributeLoad NameLoad attr orelse Raise Call NameLoad BinOpMod Str TupleLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr Call NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str If UnaryOpNot Call NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign NameStore Call NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad orelse Assign NameStore AttributeLoad NameLoad attr If CompareIs AttributeLoad NameLoad attr NameLoad body If Call NameLoad NameLoad Str body Assign AttributeStore NameLoad attr Call NameLoad NameLoad orelse Assign AttributeStore NameLoad attr Call NameLoad NameLoad If CompareIs AttributeLoad NameLoad attr NameLoad body Assign NameStore Call NameLoad NameLoad orelse Assign NameStore Call NameLoad NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr keyword Str keyword NameLoad keyword TupleLoad Call NameLoad keyword NameLoad keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore Call NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign AttributeStore NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str If CompareIs AttributeLoad NameLoad attr NameLoad body If AttributeLoad NameLoad attr body If CompareIs AttributeLoad NameLoad attr NameLoad body Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr orelse Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign AttributeStore NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str If CompareIs AttributeLoad NameLoad attr NameLoad body Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr NameLoad If CompareIs AttributeLoad NameLoad attr NameLoad body Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign NameStore Call NameLoad AttributeLoad NameLoad attr SubscriptLoad AttributeLoad NameLoad attr Index Num keyword AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr keyword Str keyword NameLoad keyword TupleLoad Call NameLoad keyword NameLoad keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr Call NameLoad SubscriptLoad AttributeLoad NameLoad attr Index Num AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str If CompareIs AttributeLoad NameLoad attr NameLoad body If AttributeLoad NameLoad attr body If CompareIs AttributeLoad NameLoad attr NameLoad body Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr keyword AttributeLoad NameLoad attr orelse Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign NameStore Call NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr keyword Str keyword NameLoad keyword TupleLoad Call NameLoad keyword NameLoad keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr Call NameLoad AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str If UnaryOpNot Call NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr body Assign NameStore Call NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad orelse Assign NameStore AttributeLoad NameLoad attr If CompareIs AttributeLoad NameLoad attr NameLoad body If Call NameLoad NameLoad Str body Assign AttributeStore NameLoad attr Call NameLoad NameLoad orelse Assign AttributeStore NameLoad attr Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr keyword Str keyword NameLoad keyword TupleLoad Call NameLoad keyword NameLoad keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr Call NameLoad AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str If BoolOpAnd CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareIsNot AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign AttributeStore AttributeLoad AttributeLoad NameLoad attr attr attr AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr If Call NameLoad AttributeLoad NameLoad attr Str body Expr Call AttributeLoad AttributeLoad NameLoad attr attr If Call NameLoad AttributeLoad NameLoad attr Str body Expr Call AttributeLoad AttributeLoad NameLoad attr attr If Call NameLoad AttributeLoad NameLoad attr Str body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str orelse If BoolOpAnd CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareIsNot AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str Assign AttributeStore AttributeLoad AttributeLoad NameLoad attr attr attr SubscriptLoad AttributeLoad NameLoad attr Index Num Expr Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad SubscriptLoad AttributeLoad NameLoad attr Index Num attr Expr Call AttributeLoad SubscriptLoad AttributeLoad NameLoad attr Index Num attr orelse If BoolOpAnd CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareIsNot AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr orelse If BoolOpAnd CompareEq AttributeLoad NameLoad attr AttributeLoad NameLoad attr CompareIsNot AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr If CompareIsNot AttributeLoad NameLoad attr NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Call AttributeLoad NameLoad attr decorator_list decorator_list NameLoad
N/A N/A  Module containing the environment to run experiments.

An :class:`~pypet.environment.Environment` provides an interface to run experiments based on
parameter exploration.

The environment contains and might even create a :class:`~pypet.trajectory.Trajectory`
container which can be filled with parameters and results (see :mod:`pypet.parameter`).
Instance of this trajectory are distributed to the user's job function to perform a single run
of an experiment.

An `Environment` is the handyman for scheduling, it can be used for multiprocessing and takes
care of organizational issues like logging.

 N/A __author__ Robert Meyer N/A N/A N/A __main__ main N/A N/A N/A ImportError N/A exc N/A N/A main None N/A os N/A sys N/A logging N/A shutil N/A multiprocessing multip N/A traceback N/A hashlib N/A time N/A datetime N/A inspect N/A N/A sumatra.projects load_project sumatra.programs PythonExecutable N/A N/A N/A ImportError N/A N/A load_project None N/A PythonExecutable None N/A N/A N/A dill N/A N/A N/A N/A N/A logging getLogger N/A dill __name__ setLevel N/A logging WARNING N/A N/A N/A ImportError N/A N/A dill None N/A N/A N/A psutil N/A N/A N/A ImportError N/A N/A psutil None N/A N/A N/A scoop scoop futures shared N/A N/A N/A ImportError N/A N/A scoop None N/A N/A N/A git N/A N/A N/A ImportError N/A N/A git None N/A N/A N/A zmq N/A N/A N/A ImportError N/A N/A zmq None N/A pypet.compat compat N/A pypet.pypetconstants pypetconstants pypet.pypetlogging LoggingManager HasLogger simple_logging_config pypet.trajectory Trajectory pypet.storageservice HDF5StorageService LazyStorageService pypet.utils.mpwrappers QueueStorageServiceWriter LockWrapper PipeStorageServiceSender PipeStorageServiceWriter ReferenceWrapper ReferenceStore QueueStorageServiceSender LockerServer LockerClient ForkAwareLockerClient TimeOutLockerServer QueuingClient QueuingServer ForkAwareQueuingClient pypet.utils.siginthandling sigint_handling pypet.utils.gitintegration make_git_commit pypet._version __version__ VERSION pypet.utils.decorators deprecated kwargs_api_change prefix_naming pypet.utils.helpful_functions is_debug result_sort format_time port_to_tcp racedirs pypet.utils.storagefactory storage_factory pypet.utils.configparsing parse_config pypet.parameter Parameter _pool_single_run N/A N/A kwargs N/A N/A N/A Starts a pool single run and passes the storage service N/A wrap_mode N/A kwargs N/A wrap_mode N/A traj N/A kwargs N/A traj N/A N/A traj v_storage_service N/A _pool_single_run storage_service N/A N/A wrap_mode N/A pypetconstants WRAP_MODE_LOCAL N/A N/A N/A N/A N/A traj v_storage_service free_references N/A N/A _sigint_handling_single_run kwargs N/A _frozen_pool_single_run N/A N/A kwargs N/A N/A N/A Single run wrapper for the frozen pool, makes a single run and passes kwargs N/A idx N/A N/A kwargs pop idx N/A frozen_kwargs N/A _frozen_pool_single_run kwargs N/A N/A N/A frozen_kwargs update kwargs N/A traj N/A frozen_kwargs N/A traj N/A N/A N/A traj f_set_crun idx N/A N/A _sigint_handling_single_run frozen_kwargs N/A _configure_pool N/A N/A kwargs N/A N/A N/A Configures the pool and keeps the storage service N/A N/A _pool_single_run storage_service N/A kwargs N/A storage_service N/A N/A _configure_niceness kwargs N/A N/A _configure_logging kwargs extract False N/A _configure_frozen_pool N/A N/A kwargs N/A N/A N/A Configures the frozen pool and keeps all kwargs N/A N/A _frozen_pool_single_run kwargs kwargs N/A N/A _configure_niceness kwargs N/A N/A _configure_logging kwargs extract False N/A traj N/A kwargs N/A traj N/A N/A traj v_full_copy N/A kwargs N/A full_copy N/A _process_single_run N/A N/A kwargs N/A N/A N/A Wrapper function that first configures logging and starts a single run afterwards. N/A N/A _configure_niceness kwargs N/A N/A _configure_logging kwargs N/A result_queue N/A kwargs N/A result_queue N/A result N/A _sigint_handling_single_run kwargs N/A N/A N/A result_queue put result N/A N/A N/A result_queue close N/A _configure_frozen_scoop N/A N/A kwargs N/A N/A N/A Wrapper function that configures a frozen SCOOP set up.

    Deletes of data if necessary.

     _delete_old_scoop_rev_data N/A N/A old_scoop_rev N/A N/A N/A N/A old_scoop_rev None N/A N/A N/A N/A elements N/A shared elements N/A key elements N/A N/A var_dict N/A elements N/A key N/A N/A old_scoop_rev var_dict N/A N/A N/A var_dict N/A old_scoop_rev N/A N/A N/A N/A N/A logging getLogger pypet.scoop debug N/A Deleted old SCOOP data from revolution `%s`. old_scoop_rev N/A N/A N/A AttributeError N/A N/A N/A N/A N/A N/A logging getLogger pypet.scoop error N/A Could not delete old SCOOP data from revolution `%s`. old_scoop_rev N/A N/A scoop_rev N/A N/A kwargs pop scoop_rev N/A N/A N/A old_scoop_rev N/A N/A _frozen_scoop_single_run kwargs N/A scoop_rev N/A configured N/A old_scoop_rev scoop_rev N/A N/A N/A N/A AttributeError KeyError N/A N/A old_scoop_rev None N/A configured False N/A N/A configured N/A N/A N/A _frozen_scoop_single_run kwargs N/A N/A shared getConst scoop_rev timeout 424.2 N/A frozen_kwargs N/A _frozen_scoop_single_run kwargs N/A N/A frozen_kwargs N/A scoop_rev scoop_rev N/A N/A N/A frozen_kwargs N/A traj v_full_copy N/A frozen_kwargs N/A full_copy N/A N/A N/A scoop IS_ORIGIN N/A N/A N/A _configure_niceness frozen_kwargs N/A N/A _configure_logging frozen_kwargs extract False N/A N/A _delete_old_scoop_rev_data old_scoop_rev N/A N/A N/A N/A N/A logging getLogger pypet.scoop info N/A Configured Worker %s N/A str N/A scoop worker N/A _frozen_scoop_single_run N/A N/A kwargs N/A N/A N/A N/A N/A N/A _configure_frozen_scoop kwargs N/A idx N/A N/A kwargs pop idx N/A frozen_kwargs N/A _frozen_scoop_single_run kwargs N/A N/A N/A frozen_kwargs update kwargs N/A traj N/A frozen_kwargs N/A traj N/A N/A N/A traj f_set_crun idx N/A N/A _single_run frozen_kwargs N/A N/A N/A Exception N/A N/A N/A N/A N/A scoop logger exception ERROR occurred during a single run! N/A N/A _scoop_single_run N/A N/A kwargs N/A N/A N/A Wrapper function for scoop, that does not configure logging N/A N/A N/A N/A N/A is_origin N/A scoop IS_ORIGIN N/A N/A N/A AttributeError N/A N/A is_origin True N/A N/A is_origin N/A N/A N/A _configure_niceness kwargs N/A N/A _configure_logging kwargs N/A N/A _single_run kwargs N/A N/A N/A Exception N/A N/A N/A N/A N/A scoop logger exception ERROR occurred during a single run! N/A N/A _configure_logging N/A N/A kwargs extract N/A True N/A N/A Requests the logging manager to configure logging.

    :param extract:

        If naming data should be extracted from the trajectory

     N/A N/A N/A logging_manager N/A kwargs N/A logging_manager N/A extract N/A N/A N/A N/A logging_manager extract_replacements N/A kwargs N/A traj N/A N/A N/A logging_manager make_logging_handlers_and_tools multiproc True N/A N/A N/A Exception N/A exc N/A N/A N/A N/A N/A sys stderr write N/A Could not configure logging system because of: %s N/A repr exc N/A N/A N/A traceback print_exc N/A _configure_niceness N/A N/A kwargs N/A N/A N/A Sets niceness of a process N/A niceness N/A kwargs N/A niceness N/A N/A niceness None N/A N/A N/A N/A N/A N/A current N/A N/A os nice 0 N/A N/A N/A niceness current 0 N/A N/A N/A N/A os nice N/A niceness current N/A N/A N/A AttributeError N/A N/A N/A N/A N/A N/A psutil Process nice niceness N/A N/A N/A Exception N/A exc N/A N/A N/A N/A N/A sys stderr write N/A Could not configure niceness because of: %s N/A repr exc N/A N/A N/A traceback print_exc N/A _sigint_handling_single_run N/A N/A kwargs N/A N/A N/A Wrapper that allow graceful exits of single runs N/A N/A N/A graceful_exit N/A kwargs N/A graceful_exit N/A graceful_exit N/A N/A N/A N/A sigint_handling start N/A N/A sigint_handling hit N/A N/A result N/A N/A sigint_handling SIGINT None N/A N/A result N/A _single_run kwargs N/A N/A sigint_handling hit N/A N/A result N/A N/A sigint_handling SIGINT result N/A result N/A N/A _single_run kwargs N/A N/A N/A N/A pypet_root_logger N/A N/A logging getLogger pypet N/A N/A N/A pypet_root_logger exception ERROR occurred during a single run!  N/A N/A _single_run N/A N/A kwargs N/A N/A N/A  Performs a single run of the experiment.

    :param kwargs: Dict of arguments

        traj: The trajectory containing all parameters set to the corresponding run index.

        runfunc: The user's job function

        runargs: The arguments handed to the user's job function (as *args)

        runkwargs: The keyword arguments handed to the user's job function (as **kwargs)

        clean_up_after_run: Whether to clean up after the run

        automatic_storing: Whether or not the data should be automatically stored

        result_queue: A queue object to store results into in case a pool is used, otherwise None

    :return:

        Results computed by the user's job function which are not stored into the trajectory.
        Returns a nested tuple of run index and result and run information:
        ``((traj.v_idx, result), run_information_dict)``

     N/A pypet_root_logger N/A N/A logging getLogger pypet N/A traj N/A kwargs N/A traj N/A runfunc N/A kwargs N/A runfunc N/A runargs N/A kwargs N/A runargs N/A kwrunparams N/A kwargs N/A runkwargs N/A clean_up_after_run N/A kwargs N/A clean_up_runs N/A automatic_storing N/A kwargs N/A automatic_storing N/A wrap_mode N/A kwargs N/A wrap_mode N/A idx N/A traj v_idx N/A total_runs N/A len traj N/A N/A N/A pypet_root_logger info N/A 
=========================================
 Starting single run #%d of %d 
=========================================
 N/A idx total_runs N/A N/A N/A traj f_start_run turn_into_run True N/A result N/A runfunc traj runargs kwrunparams N/A automatic_storing N/A N/A N/A N/A traj f_store N/A N/A wrap_mode N/A pypetconstants WRAP_MODE_LOCAL N/A N/A result N/A N/A N/A traj v_idx result N/A N/A traj f_get_run_information N/A traj v_idx copy False N/A N/A traj v_storage_service references N/A N/A N/A N/A traj v_storage_service free_references N/A N/A result N/A N/A N/A traj v_idx result N/A N/A traj f_get_run_information N/A traj v_idx copy False N/A N/A N/A traj f_finalize_run store_meta_data False clean_up clean_up_after_run N/A N/A N/A pypet_root_logger info N/A 
=========================================
 Finished single run #%d of %d 
=========================================
 N/A idx total_runs N/A result N/A _wrap_handling N/A N/A kwargs N/A N/A N/A  Starts running a queue handler and creates a log file for the queue. N/A N/A _configure_logging kwargs extract False N/A handler N/A kwargs N/A handler N/A graceful_exit N/A kwargs N/A graceful_exit N/A graceful_exit N/A N/A N/A N/A sigint_handling start N/A N/A N/A handler run N/A Environment N/A HasLogger N/A N/A  The environment to run a parameter exploration.

    The first thing you usually do is to create and environment object that takes care about
    the running of the experiment. You can provide the following arguments:

    :param trajectory:

        String or trajectory instance. If a string is supplied, a novel
        trajectory is created with that name.
        Note that the comment and the dynamically imported classes (see below) are only considered
        if a novel trajectory is created. If you supply a trajectory instance, these fields
        can be ignored.

    :param add_time: If True the current time is added to the trajectory name if created new.

    :param comment: Comment added to the trajectory if a novel trajectory is created.

    :param dynamic_imports:

          Only considered if a new trajectory is created.
          If you've written custom parameters or results that need to be loaded
          dynamically during runtime, the module containing the class
          needs to be specified here as a list of classes or strings
          naming classes and there module paths.

          For example:
          `dynamic_imports =
          ['pypet.parameter.PickleParameter', MyCustomParameter]`

          If you only have a single class to import, you do not need
          the list brackets:
          `dynamic_imports = 'pypet.parameter.PickleParameter'`

    :param wildcard_functions:

        Dictionary of wildcards like `$` and corresponding functions that are called upon
        finding such a wildcard. For example, to replace the `$` aka `crun` wildcard,
        you can pass the following: ``wildcard_functions = {('$', 'crun'): myfunc}``.

        Your wildcard function `myfunc` must return a unique run name as a function of
        a given integer run index. Moreover, your function must also return a unique
        *dummy* name for the run index being `-1`.

        Of course, you can define your
        own wildcards like `wildcard_functions = {('$mycard', 'mycard'): myfunc)}.
        These are not required to return a unique name for each run index, but can be used
        to group runs into buckets by returning the same name for several run indices.
        Yet, all wildcard functions need to return a dummy name for the index `-1`.

    :param automatic_storing:

        If `True` the trajectory will be stored at the end of the simulation and
        single runs will be stored after their completion.
        Be aware of data loss if you set this to `False` and not
        manually store everything.

    :param log_config:

        Can be path to a logging `.ini` file specifying the logging configuration.
        For an example of such a file see :ref:`more-on-logging`.
        Can also be a dictionary that is accepted by the built-in logging module.
        Set to `None` if you don't want *pypet* to configure logging.

        If not specified, the default settings are used. Moreover, you can manually tweak the
        default settings without creating a new `ini` file.
        Instead of the `log_config` parameter, pass a ``log_folder``,
        a list of `logger_names` and corresponding `log_levels` to fine grain
        the loggers to which the default settings apply.

        For example:

        ``log_folder='logs', logger_names='('pypet', 'MyCustomLogger'), log_levels=(logging.ERROR, logging.INFO)``

        You can further disable multiprocess logging via setting ``log_multiproc=False``.

    :param log_stdout:

        Whether the output of ``stdout`` should be recorded into the log files.
        Disable if only logging statement should be recorded. Note if you work with an
        interactive console like *IPython*, it is a good idea to set ``log_stdout=False``
        to avoid messing up the console output.

        Can also be a tuple: ('mylogger', 10), specifying a logger name as well as a log-level.
        The log-level defines with what level `stdout` is logged, it is *not* a filter.

    :param report_progress:

        If progress of runs and an estimate of the remaining time should be shown.
        Can be `True` or `False` or a triple ``(10, 'pypet', logging.Info)`` where the first number
        is the percentage and update step of the resulting progressbar and
        the second one is a corresponding logger name with which the progress should be logged.
        If you use `'print'`, the `print` statement is used instead. The third value
        specifies the logging level (level of logging statement *not* a filter)
        with which the progress should be logged.

        Note that the progress is based on finished runs. If you use the `QUEUE` wrapping
        in case of multiprocessing and if storing takes long, the estimate of the remaining
        time might not be very accurate.

    :param multiproc:

        Whether or not to use multiprocessing. Default is ``False``.
        Besides the wrap_mode (see below) that deals with how
        storage to disk is carried out in case of multiprocessing, there
        are two ways to do multiprocessing. By using a fixed pool of
        processes (choose `use_pool=True`, default option) or by spawning an
        individual process for every run and parameter combination (`use_pool=False`).
        The former will only spawn not more than *ncores* processes and all simulation runs are
        sent over to to the pool one after the other.
        This requires all your data to be pickled.

        If your data cannot be pickled (which could be the case for some
        BRIAN networks, for instance) choose `use_pool=False` (also make sure to set
        `continuable=False`). This will also spawn
        at most *ncores* processes at a time, but as soon as a process terminates
        a new one is spawned with the next parameter combination. Be aware that you will
        have as many logfiles in your logfolder as processes were spawned.
        If your simulation returns results besides storing results directly into the trajectory,
        these returned results still need to be pickled.

    :param ncores:

        If multiproc is ``True``, this specifies the number of processes that will be spawned
        to run your experiment. Note if you use QUEUE mode (see below) the queue process
        is not included in this number and will add another extra process for storing.
        If you have *psutil* installed, you can set `ncores=0` to let *psutil* determine
        the number of CPUs available.

    :param use_scoop:

        If python should be used in a SCOOP_ framework to distribute runs amond a cluster
        or multiple servers. If so you need to start your script via
        ``python -m scoop my_script.py``. Currently, SCOOP_ only works with
        ``'LOCAL'`` ``wrap_mode`` (see below).

        .. _SCOOP: http://scoop.readthedocs.org/

    :param use_pool:

        Whether to use a fixed pool of processes or whether to spawn a new process
        for every run. Use the former if you perform many runs (50k and more)
        which are in terms of memory and runtime inexpensive.
        Be aware that everything you use must be picklable.
        Use the latter for fewer runs (50k and less) and which are longer lasting
        and more expensive runs (in terms of memory consumption).
        In case your operating system allows forking, your data does not need to be
        picklable.
        If you choose ``use_pool=False`` you can also make use of the `cap` values,
        see below.

    :param freeze_input:

        Can be set to ``True`` if the run function as well as all additional arguments
        are immutable. This will prevent the trajectory from getting pickled again and again.
        Thus, the run function, the trajectory, as well as all arguments are passed to the pool
        or SCOOP workers at initialisation. Works also under `run_map`.
        In this case the iterable arguments are, of course, not frozen but passed for every run.

    :param timeout:

        Timeout parameter in seconds passed on to SCOOP_ and ``'NETLOCK'`` wrapping.
        Leave `None` for no timeout. After `timeout` seconds SCOOP_ will assume
        that a single run failed and skip waiting for it.
        Moreover, if using ``'NETLOCK'`` wrapping, after `timeout` seconds
        a lock is automatically released and again
        available for other waiting processes.

    :param cpu_cap:

        If `multiproc=True` and `use_pool=False` you can specify a maximum cpu utilization between
        0.0 (excluded) and 100.0 (included) as fraction of maximum capacity. If the current cpu
        usage is above the specified level (averaged across all cores),
        *pypet* will not spawn a new process and wait until
        activity falls below the threshold again. Note that in order to avoid dead-lock at least
        one process will always be running regardless of the current utilization.
        If the threshold is crossed a warning will be issued. The warning won't be repeated as
        long as the threshold remains crossed.

        For example `cpu_cap=70.0`, `ncores=3`, and currently on average 80 percent of your cpu are
        used. Moreover, let's assume that at the moment only 2 processes are
        computing single runs simultaneously. Due to the usage of 80 percent of your cpu,
        *pypet* will wait until cpu usage drops below (or equal to) 70 percent again
        until it starts a third process to carry out another single run.

        The parameters `memory_cap` and `swap_cap` are analogous. These three thresholds are
        combined to determine whether a new process can be spawned. Accordingly, if only one
        of these thresholds is crossed, no new processes will be spawned.

        To disable the cap limits simply set all three values to 100.0.

        You need the psutil_ package to use this cap feature. If not installed and you
        choose cap values different from 100.0 a ValueError is thrown.

    :param memory_cap:

        Cap value of RAM usage. If more RAM than the threshold is currently in use, no new
        processes are spawned. Can also be a tuple ``(limit, memory_per_process)``,
        first value is the cap value (between 0.0 and 100.0),
        second one is the estimated memory per process in mega bytes (MB).
        If an estimate is given a new process is not started if
        the threshold would be crossed including the estimate.

    :param swap_cap:

        Analogous to `cpu_cap` but the swap memory is considered.

    :param niceness:

        If you are running on a UNIX based system or you have psutil_ (under Windows) installed,
        you can choose a niceness value to prioritize the child processes executing the
        single runs in case you use multiprocessing.
        Under Linux these usually range from 0 (highest priority)
        to 19 (lowest priority). For Windows values check the psutil_ homepage.
        Leave ``None`` if you don't care about niceness.
        Under Linux the `niceness`` value is a minimum value, if the OS decides to
        nice your program (maybe you are running on a server) *pypet* does not try to
        decrease the `niceness` again.

    :param wrap_mode:

         If multiproc is ``True``, specifies how storage to disk is handled via
         the storage service.

         There are a few options:

         :const:`~pypet.pypetconstants.WRAP_MODE_QUEUE`: ('QUEUE')

             Another process for storing the trajectory is spawned. The sub processes
             running the individual single runs will add their results to a
             multiprocessing queue that is handled by an additional process.
             Note that this requires additional memory since the trajectory
             will be pickled and send over the queue for storage!

         :const:`~pypet.pypetconstants.WRAP_MODE_LOCK`: ('LOCK')

             Each individual process takes care about storage by itself. Before
             carrying out the storage, a lock is placed to prevent the other processes
             to store data. Accordingly, sometimes this leads to a lot of processes
             waiting until the lock is released.
             Allows loading of data during runs.

         :const:`~pypet.pypetconstants.WRAP_MODE_PIPE`: ('PIPE)

            Experimental mode based on a single pipe. Is faster than ``'QUEUE'`` wrapping
            but data corruption may occur, does not work under Windows
            (since it relies on forking).

         :const:`~pypet.pypetconstant.WRAP_MODE_LOCAL` ('LOCAL')

            Data is not stored during the single runs but after they completed.
            Storing is only performed in the main process.

            Note that removing data during a single run has no longer an effect on memory
            whatsoever, because there are references kept for all data
            that is supposed to be stored.

        :const:`~pypet.pypetconstant.WRAP_MODE_NETLOCK` ('NETLOCK')

            Similar to 'LOCK' but locks can be shared across a network.
            Sharing is established by running a lock server that
            distributes locks to the individual processes.
            Can be used with SCOOP_ if all hosts have access to
            a shared home directory.
            Allows loading of data during runs.

        :const:`~pypet.pypetconstant.WRAP_MODE_NETQUEUE` ('NETQUEUE')

            Similar to 'QUEUE' but data can be shared across a network.
            Sharing is established by running a queue server that
            distributes locks to the individual processes.

         If you don't want wrapping at all use
         :const:`~pypet.pypetconstants.WRAP_MODE_NONE` ('NONE')

    :param queue_maxsize:

        Maximum size of the Storage Queue, in case of ``'QUEUE'`` wrapping.
        ``0`` means infinite, ``-1`` (default) means the educated guess of ``2 * ncores``.

    :param port:

        Port to be used by lock server in case of ``'NETLOCK'`` wrapping.
        Can be a single integer as well as a tuple ``(7777, 9999)`` to specify
        a range of ports from which to pick a random one.
        Leave `None` for using pyzmq's default range.
        In case automatic determining of the host's IP address fails,
        you can also pass the full address (including the protocol and
        the port) of the host in the network like ``'tcp://127.0.0.1:7777'``.

    :param gc_interval:

        Interval (in runs or storage operations) with which ``gc.collect()``
        should be called in case of the ``'LOCAL'``, ``'QUEUE'``, or ``'PIPE'`` wrapping.
        Leave ``None`` for never.

        In case of ``'LOCAL'`` wrapping ``1`` means after every run ``2``
        after every second run, and so on. In case of ``'QUEUE'`` or ``'PIPE''`` wrapping
        ``1`` means after every store operation,
        ``2`` after every second store operation, and so on.
        Only calls ``gc.collect()`` in the main (if ``'LOCAL'`` wrapping)
        or the queue/pipe process. If you need to garbage collect data within your single runs,
        you need to manually call ``gc.collect()``.

        Usually, there is no need to set this parameter since the Python garbage collection
        works quite nicely and schedules collection automatically.

    :param clean_up_runs:

        In case of single core processing, whether all results under groups named `run_XXXXXXXX`
        should be removed after the completion of
        the run. Note in case of multiprocessing this happens anyway since the single run
        container will be destroyed after finishing of the process.

        Moreover, if set to ``True`` after post-processing it is checked if there is still data
        under `run_XXXXXXXX` and this data is removed if the trajectory is expanded.

    :param immediate_postproc:

        If you use post- and multiprocessing, you can immediately start analysing the data
        as soon as the trajectory runs out of tasks, i.e. is fully explored but the final runs
        are not completed. Thus, while executing the last batch of parameter space points,
        you can already analyse the finished runs. This is especially helpful if you perform some
        sort of adaptive search within the parameter space.

        The difference to normal post-processing is that you do not have to wait until all
        single runs are finished, but your analysis already starts while there are still
        runs being executed. This can be a huge time saver especially if your simulation time
        differs a lot between individual runs. Accordingly, you don't have to wait for a very
        long run to finish to start post-processing.

        In case you use immediate postprocessing, the storage service of your trajectory is still
        multiprocessing safe (except when using the wrap_mode ``'LOCAL'``).
        Accordingly, you could even use multiprocessing in your immediate post-processing phase
        if you dare, like use a multiprocessing pool_, for instance.

        Note that after the execution of the final run, your post-processing routine will
        be called again as usual.

        **IMPORTANT**: If you use immediate post-processing, the results that are passed to
        your post-processing function are not sorted by their run indices but by finishing time!

        .. _pool: https://docs.python.org/2/library/multiprocessing.html

    :param resumable:

        Whether the environment should take special care to allow to resume or continue
        crashed trajectories. Default is ``False``.

        You need to install dill_ to use this feature. *dill* will make snapshots
        of your simulation function as well as the passed arguments.
        BE AWARE that dill is still rather experimental!

        Assume you run experiments that take a lot of time.
        If during your experiments there is a power failure,
        you can resume your trajectory after the last single run that was still
        successfully stored via your storage service.

        The environment will create several `.ecnt` and `.rcnt` files in a folder that you specify
        (see below).
        Using this data you can resume crashed trajectories.

        In order to resume trajectories use :func:`~pypet.environment.Environment.resume`.

        Be aware that your individual single runs must be completely independent of one
        another to allow continuing to work. Thus, they should **NOT** be based on shared data
        that is manipulated during runtime (like a multiprocessing manager list)
        in the positional and keyword arguments passed to the run function.

        If you use post-processing, the expansion of trajectories and continuing of trajectories
        is NOT supported properly. There is no guarantee that both work together.


        .. _dill: https://pypi.python.org/pypi/dill

    :param resume_folder:

        The folder where the resume files will be placed. Note that *pypet* will create
        a sub-folder with the name of the environment.

    :param delete_resume:

        If true, *pypet* will delete the resume files after a successful simulation.

    :param storage_service:

        Pass a given storage service or a class constructor (default ``HDF5StorageService``)
        if you want the environment to create
        the service for you. The environment will pass the
        additional keyword arguments you pass directly to the constructor.
        If the trajectory already has a service attached,
        the one from the trajectory will be used.

    :param git_repository:

        If your code base is under git version control you can specify here the path
        (relative or absolute) to the folder containing the `.git` directory as a string.
        Note in order to use this tool you need GitPython_.

        If you set this path the environment will trigger a commit of your code base
        adding all files that are currently under version control.
        Similar to calling `git add -u` and `git commit -m 'My Message'` on the command line.
        The user can specify the commit message, see below. Note that the message
        will be augmented by the name and the comment of the trajectory.
        A commit will only be triggered if there are changes detected within your
        working copy.

        This will also add information about the revision to the trajectory, see below.

        .. _GitPython: http://pythonhosted.org/GitPython/0.3.1/index.html

    :param git_message:

        Message passed onto git command. Only relevant if a new commit is triggered.
        If no changes are detected, the information about the previous commit and the previous
        commit message are added to the trajectory and this user passed message is discarded.

    :param git_fail:

        If `True` the program fails instead of triggering a commit if there are not committed
        changes found in the code base. In such a case a `GitDiffError` is raised.

    :param sumatra_project:

        If your simulation is managed by sumatra_, you can specify here the path to the
        *sumatra* root folder. Note that you have to initialise the *sumatra* project at least
        once before via ``smt init MyFancyProjectName``.

        *pypet* will automatically ad ALL parameters to the *sumatra* record.
        If a parameter is explored, the WHOLE range is added instead of the default value.

        *pypet* will add the label and reason (only if provided, see below)
        to your trajectory as config parameters.

        .. _sumatra : http://neuralensemble.org/sumatra/

    :param sumatra_reason:

        You can add an additional reason string that is added to the *sumatra* record.
        Regardless if `sumatra_reason` is empty, the name of the trajectory, the comment
        as well as a list of all explored parameters is added to the *sumatra* record.

        Note that the augmented label is not stored into the trajectory as config
        parameter, but the original one (without the name of the trajectory, the comment,
        and the list of explored parameters) in case it is not the empty string.

    :param sumatra_label:

        The label or name of your sumatra record. Set to `None` if you want sumatra
        to choose a label in form of a timestamp for you.

    :param do_single_runs:

        Whether you intend to actually to compute single runs with the trajectory.
        If you do not intend to do single runs, than set to ``False`` and the
        environment won't add config information like number of processors to the
        trajectory.

    :param graceful_exit:

        If ``True`` hitting CTRL+C (i.e.sending SIGINT) will not terminate the program
        immediately. Instead, active single runs will be finished and stored before
        shutdown. Hitting CTRL+C twice will raise a KeyboardInterrupt as usual.

    :param lazy_debug:

        If ``lazy_debug=True`` and in case you debug your code (aka you use pydevd and
        the expression ``'pydevd' in sys.modules`` is ``True``), the environment will use the
        :class:`~pypet.storageservice.LazyStorageService` instead of the HDF5 one.
        Accordingly, no files are created and your trajectory and results are not saved.
        This allows faster debugging and prevents *pypet* from blowing up your hard drive with
        trajectories that you probably not want to use anyway since you just debug your code.


    The Environment will automatically add some config settings to your trajectory.
    Thus, you can always look up how your trajectory was run. This encompasses most of the above
    named parameters as well as some information about the environment.
    This additional information includes
    a timestamp as well as a SHA-1 hash code that uniquely identifies your environment.
    If you use git integration, the SHA-1 hash code will be the one from your git commit.
    Otherwise the code will be calculated from the trajectory name, the current time, and your
    current *pypet* version.

    The environment will be named `environment_XXXXXXX_XXXX_XX_XX_XXhXXmXXs`. The first seven
    `X` are the first seven characters of the SHA-1 hash code followed by a human readable
    timestamp.

    All information about the environment can be found in your trajectory under
    `config.environment.environment_XXXXXXX_XXXX_XX_XX_XXhXXmXXs`. Your trajectory could
    potentially be run by several environments due to merging or extending an existing trajectory.
    Thus, you will be able to track how your trajectory was built over time.

    Git information is added to your trajectory as follows:

    * git.commit_XXXXXXX_XXXX_XX_XX_XXh_XXm_XXs.hexsha

        The SHA-1 hash of the commit.
        `commit_XXXXXXX_XXXX_XX_XX_XXhXXmXXs` is mapped to the first seven items of the SHA-1 hash
        and the formatted data of the commit, e.g. `commit_7ef7hd4_2015_10_21_16h29m00s`.

    * git.commit_XXXXXXX_XXXX_XX_XX_XXh_XXm_XXs.name_rev

        String describing the commits hexsha based on the closest reference

    * git.commit_XXXXXXX_XXXX_XX_XX_XXh_XXm_XXs.committed_date

        Commit date as Unix Epoch data

    * git.commit_XXXXXXX_XXXX_XX_XX_XXh_XXm_XXs.message

        The commit message

    Moreover, if you use the standard ``HDF5StorageService`` you can pass the following keyword
    arguments in ``**kwargs``:

    :param filename:

        The name of the hdf5 file. If none is specified the default
        `./hdf5/the_name_of_your_trajectory.hdf5` is chosen. If `filename` contains only a path
        like `filename='./myfolder/', it is changed to
        `filename='./myfolder/the_name_of_your_trajectory.hdf5'`.

    :param file_title: Title of the hdf5 file (only important if file is created new)

    :param overwrite_file:

        If the file already exists it will be overwritten. Otherwise,
        the trajectory will simply be added to the file and already
        existing trajectories are **not** deleted.

    :param encoding:

        Format to encode and decode unicode strings stored to disk.
        The default ``'utf8'`` is highly recommended.

    :param complevel:

        You can specify your compression level. 0 means no compression
        and 9 is the highest compression level. See `PyTables Compression`_ for a detailed
        description.

        .. _`PyTables Compression`: http://pytables.github.io/usersguide/optimization.html#compression-issues

    :param complib:

        The library used for compression. Choose between *zlib*, *blosc*, and *lzo*.
        Note that 'blosc' and 'lzo' are usually faster than 'zlib' but it may be the case that
        you can no longer open your hdf5 files with third-party applications that do not rely
        on PyTables.

    :param shuffle:

        Whether or not to use the shuffle filters in the HDF5 library.
        This normally improves the compression ratio.

    :param fletcher32:

        Whether or not to use the *Fletcher32* filter in the HDF5 library.
        This is used to add a checksum on hdf5 data.

    :param pandas_format:

        How to store pandas data frames. Either in 'fixed' ('f') or 'table' ('t') format.
        Fixed format allows fast reading and writing but disables querying the hdf5 data and
        appending to the store (with other 3rd party software other than *pypet*).

    :param purge_duplicate_comments:

        If you add a result via :func:`~pypet.naturalnaming.ResultGroup.f_add_result` or a derived
        parameter :func:`~pypet.naturalnaming.DerivedParameterGroup.f_add_derived_parameter` and
        you set a comment, normally that comment would be attached to each and every instance.
        This can produce a lot of unnecessary overhead if the comment is the same for every
        instance over all runs. If `purge_duplicate_comments=1` than only the comment of the
        first result or derived parameter instance created in a run is stored or comments
        that differ from this first comment.

        For instance, during a single run you call
        `traj.f_add_result('my_result`,42, comment='Mostly harmless!')`
        and the result will be renamed to `results.run_00000000.my_result`. After storage
        in the node associated with this result in your hdf5 file, you will find the comment
        `'Mostly harmless!'` there. If you call
        `traj.f_add_result('my_result',-43, comment='Mostly harmless!')`
        in another run again, let's say run 00000001, the name will be mapped to
        `results.run_00000001.my_result`. But this time the comment will not be saved to disk
        since `'Mostly harmless!'` is already part of the very first result with the name
        'results.run_00000000.my_result'.
        Note that the comments will be compared and storage will only be discarded if the strings
        are exactly the same.

        If you use multiprocessing, the storage service will take care that the comment for
        the result or derived parameter with the lowest run index will be considered regardless
        of the order of the finishing of your runs. Note that this only works properly if all
        comments are the same. Otherwise the comment in the overview table might not be the one
        with the lowest run index.

        You need summary tables (see below) to be able to purge duplicate comments.

        This feature only works for comments in *leaf* nodes (aka Results and Parameters).
        So try to avoid to add comments in *group* nodes within single runs.

    :param summary_tables:

        Whether the summary tables should be created, i.e. the 'derived_parameters_runs_summary',
        and the `results_runs_summary`.

        The 'XXXXXX_summary' tables give a summary about all results or derived parameters.
        It is assumed that results and derived parameters with equal names in individual runs
        are similar and only the first result or derived parameter that was created
        is shown as an example.

        The summary table can be used in combination with `purge_duplicate_comments` to only store
        a single comment for every result with the same name in each run, see above.

    :param small_overview_tables:

        Whether the small overview tables should be created.
        Small tables are giving overview about 'config','parameters',
        'derived_parameters_trajectory', ,
        'results_trajectory', 'results_runs_summary'.

        Note that these tables create some overhead. If you want very small hdf5 files set
        `small_overview_tables` to False.

    :param large_overview_tables:

        Whether to add large overview tables. This encompasses information about every derived
        parameter, result, and the explored parameter in every single run.
        If you want small hdf5 files set to ``False`` (default).

    :param results_per_run:

        Expected results you store per run. If you give a good/correct estimate
        storage to hdf5 file is much faster in case you store LARGE overview tables.

        Default is 0, i.e. the number of results is not estimated!

    :param derived_parameters_per_run:

        Analogous to the above.

    Finally, you can also pass properties of the trajectory, like ``v_with_links=True``
    (you can leave the prefix ``v_``, i.e. ``with_links`` works, too).
    Thus, you can change the settings of the trajectory immediately.

    .. _psutil: http://psutil.readthedocs.org/

     __init__ N/A N/A self trajectory add_time comment dynamic_imports wildcard_functions automatic_storing log_config log_stdout report_progress multiproc ncores use_scoop use_pool freeze_input timeout cpu_cap memory_cap swap_cap niceness wrap_mode queue_maxsize port gc_interval clean_up_runs immediate_postproc resumable resume_folder delete_resume storage_service git_repository git_message git_fail sumatra_project sumatra_reason sumatra_label do_single_runs graceful_exit lazy_debug N/A trajectory False None None True N/A pypetconstants DEFAULT_LOGGING False N/A 5 pypet N/A logging INFO False 1 False False False None 100.0 100.0 100.0 None N/A pypetconstants WRAP_MODE_LOCK -1 None None True False False None True HDF5StorageService None False None None True False False kwargs N/A N/A N/A N/A git_repository None N/A git None N/A N/A N/A ValueError You cannot specify a git repository without having GitPython. Please install the GitPython package to use pypet`s git integration. N/A N/A resumable N/A dill None N/A N/A N/A ValueError Please install `dill` if you want to use the feature to resume halted trajectories N/A N/A N/A load_project None N/A sumatra_project None N/A N/A N/A ValueError `sumatra` package has not been found, either install `sumatra` or set `sumatra_project=None`. N/A N/A N/A sumatra_label None N/A . sumatra_label N/A N/A N/A ValueError Your sumatra label is not allowed to contain dots. N/A N/A N/A wrap_mode N/A pypetconstants WRAP_MODE_NETLOCK N/A zmq None N/A N/A N/A ValueError You need to install `zmq` for `NETLOCK` wrapping. N/A N/A N/A use_pool use_scoop immediate_postproc N/A N/A N/A ValueError You CANNOT perform immediate post-processing if you DO use a pool or scoop. N/A N/A use_pool use_scoop N/A N/A N/A ValueError You can either `use_pool` or `use_scoop` or none of both, but not both together N/A N/A use_scoop N/A scoop None N/A N/A N/A ValueError Cannot use `scoop` because it is not installed. N/A N/A N/A wrap_mode N/A N/A pypetconstants WRAP_MODE_NONE N/A pypetconstants WRAP_MODE_LOCAL N/A pypetconstants WRAP_MODE_LOCK N/A pypetconstants WRAP_MODE_NETLOCK resumable N/A N/A N/A ValueError Continuing trajectories does only work with `LOCK`, `NETLOCK` or `LOCAL`wrap mode. N/A N/A resumable N/A automatic_storing N/A N/A N/A ValueError Continuing only works with `automatic_storing=True` N/A N/A use_scoop N/A wrap_mode N/A N/A pypetconstants WRAP_MODE_LOCAL N/A pypetconstants WRAP_MODE_NONE N/A pypetconstants WRAP_MODE_NETLOCK N/A pypetconstants WRAP_MODE_NETQUEUE N/A N/A N/A ValueError SCOOP mode only works with `LOCAL`, `NETLOCK` or `NETQUEUE` wrap mode! N/A N/A N/A niceness None N/A N/A hasattr os nice N/A psutil None N/A N/A N/A ValueError You cannot set `niceness` if your operating system does not support the `nice` operation. Alternatively you can install `psutil`. N/A N/A freeze_input N/A use_pool N/A use_scoop N/A N/A N/A ValueError You can only use `freeze_input=True` if you either use a pool or SCOOP. N/A N/A N/A isinstance memory_cap tuple N/A N/A memory_cap N/A memory_cap 0.0 N/A N/A N/A cpu_cap 0.0 N/A cpu_cap 100.0 N/A N/A memory_cap N/A 0 0.0 N/A N/A memory_cap N/A 0 100.0 N/A swap_cap 0.0 N/A swap_cap 100.0 N/A N/A N/A ValueError Please choose cap values larger than 0.0 and smaller or equal to 100.0. N/A check_usage N/A N/A cpu_cap 100.0 N/A N/A memory_cap N/A 0 100.0 N/A swap_cap 100.0 N/A N/A check_usage N/A psutil None N/A N/A N/A ValueError You cannot enable monitoring without having installed psutil. Please install psutil or set cpu_cap, memory_cap, and swap_cap to 100.0 N/A N/A N/A ncores 0 N/A psutil None N/A N/A N/A ValueError You cannot set `ncores=0` for auto detection of CPUs if you did not installed psutil. Please install psutil or set `ncores` manually. N/A N/A N/A port None N/A wrap_mode N/A N/A pypetconstants WRAP_MODE_NETLOCK N/A pypetconstants WRAP_MODE_NETQUEUE N/A N/A N/A ValueError You can only specify a port for the `NETLOCK` wrapping. N/A N/A use_scoop graceful_exit N/A N/A N/A ValueError You cannot exit gracefully using SCOOP. N/A unused_kwargs N/A set N/A N/A kwargs keys N/A N/A self _logging_manager N/A LoggingManager log_config log_config log_stdout log_stdout report_progress report_progress N/A N/A N/A N/A self _logging_manager check_log_config N/A N/A N/A N/A self _logging_manager add_null_handler N/A N/A N/A self _set_logger N/A N/A self _map_arguments False N/A N/A self _stop_iteration False N/A N/A self _graceful_exit graceful_exit N/A N/A self _start_timestamp None N/A N/A self _finish_timestamp None N/A N/A self _runtime None N/A N/A self _cpu_cap cpu_cap N/A N/A self _memory_cap memory_cap N/A N/A psutil None N/A N/A N/A self _total_memory N/A N/A N/A N/A N/A psutil virtual_memory total 1024.0 1024.0 N/A N/A self _est_per_process N/A N/A N/A N/A self _memory_cap N/A 1 N/A self _total_memory 100.0 N/A N/A self _swap_cap swap_cap N/A N/A self _check_usage check_usage N/A N/A self _last_cpu_check 0.0 N/A N/A self _last_cpu_usage 0.0 N/A N/A self _check_usage N/A N/A N/A N/A self _estimate_cpu_utilization N/A N/A self _niceness niceness N/A N/A self _sumatra_project sumatra_project N/A N/A self _sumatra_reason sumatra_reason N/A N/A self _sumatra_label sumatra_label N/A N/A self _loaded_sumatatra_project None N/A N/A self _sumatra_record None N/A N/A self _runfunc None N/A N/A self _args N/A N/A N/A self _kwargs N/A N/A N/A self _postproc None N/A N/A self _postproc_args N/A N/A N/A self _postproc_kwargs N/A N/A N/A self _immediate_postproc immediate_postproc N/A N/A self _user_pipeline False N/A N/A self _git_repository git_repository N/A N/A self _git_message git_message N/A N/A self _git_fail git_fail N/A N/A isinstance trajectory N/A compat base_type N/A N/A N/A self _traj N/A Trajectory trajectory add_time add_time dynamic_imports dynamic_imports wildcard_functions wildcard_functions comment comment N/A N/A self _timestamp N/A N/A self trajectory v_timestamp N/A N/A self _time N/A N/A self trajectory v_time N/A N/A N/A self _traj trajectory N/A init_time N/A N/A time time N/A formatted_time N/A format_time init_time N/A N/A self _timestamp init_time N/A N/A self _time formatted_time N/A N/A N/A self _git_repository None N/A N/A N/A new_commit N/A self _hexsha N/A make_git_commit self N/A self _git_repository N/A self _git_message N/A self _git_fail N/A N/A new_commit False N/A N/A new_commit N/A N/A N/A self _hexsha N/A N/A N/A N/A hashlib sha1 N/A N/A compat tobytes N/A N/A N/A N/A N/A self trajectory v_name N/A str N/A N/A self trajectory v_timestamp N/A str N/A self timestamp VERSION hexdigest N/A short_hexsha N/A N/A self _hexsha N/A 0 7 N/A name environment N/A N/A self _name N/A N/A N/A N/A name _ N/A str short_hexsha _ N/A self _time N/A N/A N/A self _traj _environment_hexsha N/A self _hexsha N/A N/A N/A self _traj _environment_name N/A self _name N/A N/A N/A N/A self _logging_manager extract_replacements N/A self _traj N/A N/A N/A N/A self _logging_manager remove_null_handler N/A N/A N/A N/A self _logging_manager make_logging_handlers_and_tools N/A N/A N/A self _git_repository None N/A N/A new_commit N/A N/A N/A N/A N/A self _logger info N/A Triggered NEW GIT commit `%s`. N/A str N/A self _hexsha N/A N/A N/A N/A N/A self _logger info N/A No changes detected, added PREVIOUS GIT commit `%s`. N/A str N/A self _hexsha N/A N/A storage_service True N/A N/A storage_service HDF5StorageService N/A N/A N/A N/A self _traj v_storage_service None N/A N/A N/A N/A N/A self _logger info Found storage service attached to Trajectory. Will use this storage service. N/A N/A self _storage_service N/A N/A self trajectory v_storage_service N/A N/A N/A N/A self _storage_service unused_factory_kwargs N/A storage_factory storage_service N/A self _traj kwargs N/A unused_kwargs N/A unused_kwargs N/A N/A set N/A N/A kwargs keys unused_factory_kwargs N/A N/A lazy_debug N/A is_debug N/A N/A N/A self _storage_service N/A LazyStorageService N/A N/A N/A self _traj v_storage_service N/A self _storage_service N/A N/A self _resumable resumable N/A N/A self _resumable N/A N/A N/A resume_folder None N/A N/A resume_folder N/A N/A N/A os path join N/A N/A os getcwd resume N/A resume_path N/A N/A N/A os path join resume_folder N/A N/A self _traj v_name N/A N/A resume_path None N/A N/A self _resume_folder resume_folder N/A N/A self _resume_path resume_path N/A N/A self _delete_resume delete_resume N/A N/A self _multiproc multiproc N/A N/A ncores 0 N/A N/A ncores N/A N/A psutil cpu_count N/A N/A N/A N/A self _logger info N/A Determined CPUs automatically, found `%d` cores. ncores N/A N/A self _ncores ncores N/A N/A queue_maxsize -1 N/A N/A queue_maxsize N/A 2 ncores N/A N/A self _queue_maxsize queue_maxsize N/A N/A wrap_mode None N/A N/A wrap_mode N/A pypetconstants WRAP_MODE_NONE N/A N/A self _wrap_mode wrap_mode N/A N/A self _use_pool use_pool N/A N/A self _use_scoop use_scoop N/A N/A self _freeze_input freeze_input N/A N/A self _gc_interval gc_interval N/A N/A self _multiproc_wrapper None N/A N/A self _do_single_runs do_single_runs N/A N/A self _automatic_storing automatic_storing N/A N/A self _clean_up_runs clean_up_runs N/A N/A N/A wrap_mode N/A pypetconstants WRAP_MODE_NETLOCK N/A N/A isinstance port N/A compat base_type N/A N/A url N/A port_to_tcp port N/A N/A N/A N/A self _logger info N/A Determined lock-server URL automatically, it is `%s`. url N/A N/A url port N/A N/A self _url url N/A N/A self _timeout timeout N/A N/A lazy_debug N/A is_debug N/A N/A N/A N/A N/A self _logger warning Using the LazyStorageService, nothing will be saved to disk. N/A N/A self _current_idx 0 N/A N/A self _trajectory_name N/A N/A self _traj v_name N/A kwarg N/A list unused_kwargs N/A N/A N/A N/A val N/A kwargs N/A kwarg N/A N/A N/A N/A self _traj f_set_properties N/A kwarg val N/A N/A N/A N/A self _logger info N/A Set trajectory property `%s` to `%s`. N/A kwarg N/A str val N/A N/A N/A unused_kwargs remove kwarg N/A N/A N/A AttributeError N/A N/A N/A N/A N/A len unused_kwargs 0 N/A N/A N/A ValueError N/A You passed keyword arguments to the environment that you did not use. The following keyword arguments were ignored: `%s` N/A str unused_kwargs N/A N/A N/A self _add_config N/A N/A N/A N/A self _logger info Environment initialized. N/A parse_config N/A kwargs_api_change delete_continue delete_resume N/A kwargs_api_change continue_folder resume_folder N/A kwargs_api_change continuable resumable N/A kwargs_api_change freeze_pool_input freeze_input N/A kwargs_api_change use_hdf5 storage_service N/A kwargs_api_change dynamically_imported_classes dynamic_imports N/A kwargs_api_change pandas_append simple_logging_config _add_config N/A N/A self N/A N/A N/A N/A self _do_single_runs N/A N/A config_name N/A environment.%s.multiproc N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _multiproc comment Whether or not to use multiprocessing. f_lock N/A N/A self _multiproc N/A N/A config_name N/A environment.%s.use_pool N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _use_pool comment Whether to use a pool of processes or spawning individual processes for each run. f_lock N/A config_name N/A environment.%s.use_scoop N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _use_scoop comment Whether to use scoop to launch single runs f_lock N/A N/A N/A self _niceness None N/A N/A config_name N/A environment.%s.niceness N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _niceness comment Niceness value of child processes. f_lock N/A N/A self _use_pool N/A N/A config_name N/A environment.%s.freeze_input N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _freeze_input comment If inputs to each run are static and are not mutated during each run, can speed up pool running. f_lock N/A N/A N/A self _use_scoop N/A N/A N/A N/A config_name N/A environment.%s.cpu_cap N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _cpu_cap comment Maximum cpu usage beyond which no new processes are spawned. f_lock N/A config_name N/A environment.%s.memory_cap N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _memory_cap comment Tuple, first entry: Maximum RAM usage beyond which no new processes are spawned; second entry: Estimated usage per process in MB. 0 if not estimated. f_lock N/A config_name N/A environment.%s.swap_cap N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _swap_cap comment Maximum Swap memory usage beyond which no new processes are spawned f_lock N/A config_name N/A environment.%s.immediate_postprocessing N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _immediate_postproc comment Whether to use immediate postprocessing. f_lock N/A config_name N/A environment.%s.ncores N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _ncores comment Number of processors in case of multiprocessing f_lock N/A config_name N/A environment.%s.wrap_mode N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _wrap_mode comment Multiprocessing mode (if multiproc), i.e. whether to use QUEUE or LOCK or NONE for thread/process safe storing f_lock N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_QUEUE N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_PIPE N/A N/A config_name N/A environment.%s.queue_maxsize N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _queue_maxsize comment Maximum size of Storage Queue/Pipe in case of multiprocessing and QUEUE/PIPE wrapping f_lock N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_NETLOCK N/A N/A config_name N/A environment.%s.url N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _url comment URL of lock distribution server, including protocol and port. f_lock N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_NETLOCK N/A self _use_scoop N/A N/A config_name N/A environment.%s.timeout N/A self name N/A timeout N/A self _timeout N/A N/A timeout None N/A N/A timeout -1.0 N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name timeout comment Timout for scoop and NETLOCK, -1.0 means no timeout. f_lock N/A N/A N/A self _gc_interval N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_LOCAL N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_QUEUE N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_PIPE N/A N/A config_name N/A environment.%s.gc_interval N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _gc_interval comment Intervals with which ``gc.collect()`` is called. f_lock N/A config_name N/A environment.%s.clean_up_runs N/A self _name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _clean_up_runs comment Whether or not results should be removed after the completion of a single run. You are not advised to set this to `False`. Only do it if you know what you are doing. f_lock N/A config_name N/A environment.%s.resumable N/A self _name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _resumable comment Whether or not resume files should be created. If yes, everything is handled by `dill`. f_lock N/A config_name N/A environment.%s.graceful_exit N/A self _name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _graceful_exit comment Whether or not to allow graceful handling of `SIGINT` (`CTRL+C`). f_lock N/A config_name N/A environment.%s.trajectory.name N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A N/A self trajectory v_name comment Name of trajectory f_lock N/A config_name N/A environment.%s.trajectory.timestamp N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A N/A self trajectory v_timestamp comment Timestamp of trajectory f_lock N/A config_name N/A environment.%s.timestamp N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self timestamp comment Timestamp of environment creation f_lock N/A config_name N/A environment.%s.hexsha N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self hexsha comment SHA-1 identifier of the environment f_lock N/A config_name N/A environment.%s.automatic_storing N/A self name N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _automatic_storing comment If trajectory should be stored automatically in the end. f_lock N/A N/A N/A config_name N/A environment.%s.script N/A self name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A main __file__ comment Name of the executed main script f_lock N/A N/A N/A AttributeError N/A N/A N/A N/A package_name version N/A N/A N/A pypetconstants VERSIONS_TO_STORE items N/A N/A config_name N/A environment.%s.versions.%s N/A N/A self name package_name N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name version comment Particular version of a package or distribution used during experiment. N/A if package could not be imported. f_lock N/A N/A N/A N/A N/A self _traj config environment v_comment Settings for the different environments used to run the experiments N/A __repr__ N/A N/A self N/A N/A N/A String representation of environment N/A repr_string N/A <%s %s for Trajectory %s> N/A N/A N/A self __class__ __name__ N/A self name N/A N/A self trajectory v_name N/A repr_string N/A __enter__ N/A N/A self N/A N/A N/A self N/A __exit__ N/A N/A self exc_type exc_val exc_tb N/A N/A N/A N/A N/A self disable_logging N/A disable_logging N/A N/A self remove_all_handlers N/A True N/A N/A Removes all logging handlers and stops logging to files and logging stdout.

        :param remove_all_handlers:

            If `True` all logging handlers are removed.
            If you want to keep the handlers set to `False`.

         N/A N/A N/A N/A self _logging_manager finalize remove_all_handlers N/A resume N/A N/A self trajectory_name resume_folder N/A None None N/A N/A Resumes crashed trajectories.

        :param trajectory_name:

            Name of trajectory to resume, if not specified the name passed to the environment
            is used. Be aware that if `add_time=True` the name you passed to the environment is
            altered and the current date is added.

        :param resume_folder:

            The folder where resume files can be found. Do not pass the name of the sub-folder
            with the trajectory name, but to the name of the parental folder.
            If not specified the resume folder passed to the environment is used.

        :return:

            List of the individual results returned by your run function.

            Returns a LIST OF TUPLES, where first entry is the run idx and second entry
            is the actual result. In case of multiprocessing these are not necessarily
            ordered according to their run index, but ordered according to their finishing time.

            Does not contain results stored in the trajectory!
            In order to access these simply interact with the trajectory object,
            potentially after calling`~pypet.trajectory.Trajectory.f_update_skeleton`
            and loading all results at once with :func:`~pypet.trajectory.f_load`
            or loading manually with :func:`~pypet.trajectory.f_load_items`.

            Even if you use multiprocessing without a pool the results returned by
            `runfunc` still need to be pickled.

         N/A N/A trajectory_name None N/A N/A N/A self _trajectory_name N/A N/A self trajectory v_name N/A N/A N/A self _trajectory_name trajectory_name N/A N/A resume_folder None N/A N/A N/A self _resume_folder resume_folder N/A N/A N/A self _execute_runs None N/A N/A kwargs_api_change continue_folder resume_folder trajectory N/A N/A self N/A N/A N/A  The trajectory of the Environment N/A N/A self _traj N/A property traj N/A N/A self N/A N/A N/A  Equivalent to env.trajectory N/A N/A self trajectory N/A property current_idx N/A N/A self N/A N/A N/A The current run index that is the next one to be executed.

        Can be set manually to make the environment consider old non-completed ones.

         N/A N/A self _current_idx N/A property current_idx N/A N/A self idx N/A N/A N/A N/A self _current_idx idx N/A N/A current_idx setter hexsha N/A N/A self N/A N/A N/A The SHA1 identifier of the environment.

        It is identical to the SHA1 of the git commit.
        If version control is not used, the environment hash is computed from the
        trajectory name, the current timestamp and your current *pypet* version. N/A N/A self _hexsha N/A property time N/A N/A self N/A N/A N/A  Time of the creation of the environment, human readable. N/A N/A self _time N/A property timestamp N/A N/A self N/A N/A N/A Time of creation as python datetime float N/A N/A self _timestamp N/A property name N/A N/A self N/A N/A N/A  Name of the Environment N/A N/A self _name N/A property add_postprocessing N/A N/A self postproc N/A args kwargs N/A N/A  Adds a post processing function.

        The environment will call this function via
        ``postproc(traj, result_list, *args, **kwargs)`` after the completion of the
        single runs.

        This function can load parts of the trajectory id needed and add additional results.

        Moreover, the function can be used to trigger an expansion of the trajectory.
        This can be useful if the user has an `optimization` task.

        Either the function calls `f_expand` directly on the trajectory or returns
        an dictionary. If latter `f_expand` is called by the environment.

        Note that after expansion of the trajectory, the post-processing function is called
        again (and again for further expansions). Thus, this allows an iterative approach
        to parameter exploration.

        Note that in case post-processing is called after all runs have been executed,
        the storage service of the trajectory is no longer multiprocessing safe.
        If you want to use multiprocessing in your post-processing you can still
        manually wrap the storage service with the :class:`~pypet.environment.MultiprocessWrapper`.

        In case you use **immediate** postprocessing, the storage service of your trajectory
        is still multiprocessing safe (except when using the wrap_mode ``'LOCAL'``).
        Accordingly, you could even use multiprocessing in your immediate post-processing phase
        if you dare, like use a multiprocessing pool_, for instance.

        You can easily check in your post-processing function if the storage service is
        multiprocessing safe via the ``multiproc_safe`` attribute, i.e.
        ``traj.v_storage_service.multiproc_safe``.

        :param postproc:

            The post processing function

        :param args:

            Additional arguments passed to the post-processing function

        :param kwargs:

            Additional keyword arguments passed to the postprocessing function

        :return:

         N/A N/A self _postproc postproc N/A N/A self _postproc_args args N/A N/A self _postproc_kwargs kwargs N/A pipeline N/A N/A self pipeline N/A N/A N/A  You can make *pypet* supervise your whole experiment by defining a pipeline.

        `pipeline` is a function that defines the entire experiment. From pre-processing
        including setting up the trajectory over defining the actual simulation runs to
        post processing.

        The `pipeline` function needs to return TWO tuples with a maximum of three entries each.

        For example:

        ::

            return (runfunc, args, kwargs), (postproc, postproc_args, postproc_kwargs)

        Where `runfunc` is the actual simulation function thet gets passed the trajectory
        container and potentially additional arguments `args` and keyword arguments `kwargs`.
        This will be run by your environment with all parameter combinations.

        `postproc` is a post processing function that handles your computed results.
        The function must accept as arguments the trajectory container, a list of
        results (list of tuples (run idx, result) ) and potentially
        additional arguments `postproc_args` and keyword arguments `postproc_kwargs`.

        As for :func:`~pypet.environment.Environment.f_add_postproc`, this function can
        potentially extend the trajectory.

        If you don't want to apply post-processing, your pipeline function can also simply
        return the run function and the arguments:

        ::

            return runfunc, args, kwargs

        Or

        ::

            return runfunc, args

        Or

        ::

            return runfunc

        ``return runfunc, kwargs`` does NOT work, if you don't want to pass `args` do
        ``return runfunc, (), kwargs``.

        Analogously combinations like

        ::

            return (runfunc, args), (postproc,)

        work as well.

        :param pipeline:

            The pipleine function, taking only a single argument `traj`.
            And returning all functions necessary for your experiment.

        :return:

            List of the individual results returned by `runfunc`.

            Returns a LIST OF TUPLES, where first entry is the run idx and second entry
            is the actual result. In case of multiprocessing these are not necessarily
            ordered according to their run index, but ordered according to their finishing time.

            Does not contain results stored in the trajectory!
            In order to access these simply interact with the trajectory object,
            potentially after calling :func:`~pypet.trajectory.Trajectory.f_update_skeleton`
            and loading all results at once with :func:`~pypet.trajectory.f_load`
            or loading manually with :func:`~pypet.trajectory.f_load_items`.

            Even if you use multiprocessing without a pool the results returned by
            `runfunc` still need to be pickled.

            Results computed from `postproc` are not returned. `postproc` should not
            return any results except dictionaries if the trajectory should be expanded.

         N/A N/A self _user_pipeline True N/A N/A self _map_arguments False N/A N/A N/A self _execute_runs pipeline N/A pipeline_map N/A N/A self pipeline N/A N/A N/A Creates a pipeline with iterable arguments N/A N/A self _user_pipeline True N/A N/A self _map_arguments True N/A N/A N/A self _execute_runs pipeline N/A run N/A N/A self runfunc N/A args kwargs N/A N/A  Runs the experiments and explores the parameter space.

        :param runfunc: The task or job to do

        :param args: Additional arguments (not the ones in the trajectory) passed to `runfunc`

        :param kwargs:

            Additional keyword arguments (not the ones in the trajectory) passed to `runfunc`

        :return:

            List of the individual results returned by `runfunc`.

            Returns a LIST OF TUPLES, where first entry is the run idx and second entry
            is the actual result. They are always ordered according to the run index.

            Does not contain results stored in the trajectory!
            In order to access these simply interact with the trajectory object,
            potentially after calling`~pypet.trajectory.Trajectory.f_update_skeleton`
            and loading all results at once with :func:`~pypet.trajectory.f_load`
            or loading manually with :func:`~pypet.trajectory.f_load_items`.

            If you use multiprocessing without a pool the results returned by
            `runfunc` still need to be pickled.

         N/A pipeline N/A N/A N/A traj N/A N/A N/A runfunc args kwargs N/A N/A self _postproc N/A self _postproc_args N/A self _postproc_kwargs N/A N/A self _user_pipeline False N/A N/A self _map_arguments False N/A N/A N/A self _execute_runs pipeline N/A run_map N/A N/A self runfunc N/A iter_args iter_kwargs N/A N/A Calls runfunc with different args and kwargs each time.

        Similar to `:func:`~pypet.environment.Environment.run`
        but all ``iter_args`` and ``iter_kwargs`` need to be iterables,
        iterators, or generators that return new arguments for each run.

         N/A N/A N/A N/A len iter_args 0 N/A N/A len iter_kwargs 0 N/A N/A N/A ValueError Use `run` if you don`t have any other arguments. N/A pipeline N/A N/A N/A traj N/A N/A N/A runfunc iter_args iter_kwargs N/A N/A self _postproc N/A self _postproc_args N/A self _postproc_kwargs N/A N/A self _user_pipeline False N/A N/A self _map_arguments True N/A N/A N/A self _execute_runs pipeline N/A _trigger_resume_snapshot N/A N/A self N/A N/A N/A  Makes the trajectory continuable in case the user wants that N/A dump_dict N/A N/A dump_filename N/A N/A N/A os path join N/A self _resume_path environment.ecnt N/A prev_full_copy N/A N/A self _traj v_full_copy N/A N/A dump_dict N/A full_copy prev_full_copy N/A N/A N/A self _traj v_full_copy True N/A prev_storage_service N/A N/A self _traj v_storage_service N/A N/A N/A self _traj v_storage_service N/A self _storage_service N/A N/A dump_dict N/A trajectory N/A self _traj N/A N/A dump_dict N/A args N/A self _args N/A N/A dump_dict N/A kwargs N/A self _kwargs N/A N/A dump_dict N/A runfunc N/A self _runfunc N/A N/A dump_dict N/A postproc N/A self _postproc N/A N/A dump_dict N/A postproc_args N/A self _postproc_args N/A N/A dump_dict N/A postproc_kwargs N/A self _postproc_kwargs N/A N/A dump_dict N/A start_timestamp N/A self _start_timestamp N/A dump_file N/A open dump_filename wb N/A N/A N/A dill dump dump_dict dump_file protocol 2 N/A N/A N/A dump_file flush N/A N/A N/A dump_file close N/A N/A N/A self _traj v_full_copy prev_full_copy N/A N/A N/A self _traj v_storage_service prev_storage_service N/A _prepare_sumatra N/A N/A self N/A N/A N/A  Prepares a sumatra record  N/A reason N/A self _sumatra_reason N/A reason N/A N/A reason  --  N/A N/A N/A self _traj v_comment N/A N/A commentstr N/A  (`%s`) N/A N/A self _traj v_comment N/A N/A commentstr N/A reason N/A Trajectory %s%s -- Explored Parameters: %s N/A N/A N/A self _traj v_name commentstr N/A str N/A N/A compat listkeys N/A N/A self _traj _explored_parameters N/A N/A N/A N/A self _logger info N/A Preparing sumatra record with reason: %s reason N/A N/A self _sumatra_reason reason N/A N/A self _loaded_sumatatra_project N/A load_project N/A self _sumatra_project N/A N/A N/A N/A self _traj f_contains parameters shortcuts False N/A N/A param_dict N/A N/A N/A N/A self _traj parameters f_to_dict fast_access False N/A param_name N/A N/A compat listkeys param_dict N/A N/A param N/A param_dict N/A param_name N/A N/A N/A param f_has_range N/A N/A N/A param_dict N/A param_name N/A N/A param f_get_range N/A N/A N/A param_dict N/A param_name N/A N/A param f_get N/A N/A param_dict N/A N/A relpath N/A N/A N/A os path relpath N/A N/A N/A sys modules N/A __main__ __file__ N/A self _sumatra_project N/A executable N/A PythonExecutable path N/A sys executable N/A N/A self _sumatra_record N/A N/A N/A self _loaded_sumatatra_project new_record parameters param_dict main_file relpath executable executable label N/A self _sumatra_label reason reason N/A _finish_sumatra N/A N/A self N/A N/A N/A  Saves a sumatra record  N/A finish_time N/A N/A self _start_timestamp N/A self _finish_timestamp N/A N/A N/A self _sumatra_record duration finish_time N/A N/A N/A self _sumatra_record output_data N/A N/A N/A N/A self _sumatra_record datastore find_new_data N/A N/A self _sumatra_record timestamp N/A N/A N/A N/A self _loaded_sumatatra_project add_record N/A self _sumatra_record N/A N/A N/A N/A self _loaded_sumatatra_project save N/A sumatra_label N/A N/A self _sumatra_record label N/A config_name N/A sumatra.record_%s.label N/A str sumatra_label N/A conf_list N/A N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A conf1 N/A N/A N/A self _traj f_add_config Parameter config_name N/A str sumatra_label comment The label of the sumatra record N/A N/A N/A conf_list append conf1 N/A N/A self _sumatra_reason N/A N/A config_name N/A sumatra.record_%s.reason N/A str sumatra_label N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A conf2 N/A N/A N/A self _traj f_add_config Parameter config_name N/A str N/A self _sumatra_reason comment Reason of sumatra run. N/A N/A N/A conf_list append conf2 N/A N/A N/A self _automatic_storing conf_list N/A N/A N/A N/A N/A self _traj f_store_items conf_list N/A N/A N/A N/A self _logger info N/A Saved sumatra project record with reason: %s N/A str N/A self _sumatra_reason N/A _prepare_resume N/A N/A self N/A N/A N/A  Prepares the continuation of a crashed trajectory  N/A N/A N/A self _resumable N/A N/A N/A RuntimeError If you create an environment to resume a run, you need to set `continuable=True`. N/A N/A N/A self _do_single_runs N/A N/A N/A RuntimeError You cannot resume a run if you did create an environment with `do_single_runs=False`. N/A N/A self _resume_path N/A N/A N/A os path join N/A self _resume_folder N/A self _trajectory_name N/A cnt_filename N/A N/A N/A os path join N/A self _resume_path environment.ecnt N/A cnt_file N/A open cnt_filename rb N/A resume_dict N/A N/A dill load cnt_file N/A N/A N/A cnt_file close N/A traj N/A resume_dict N/A trajectory N/A config_name N/A config.environment.%s.trajectory.name N/A self name N/A N/A N/A N/A self _traj f_contains config_name shortcuts False N/A N/A param N/A N/A N/A self _traj f_get config_name shortcuts False N/A N/A N/A param f_unlock N/A N/A N/A param f_set N/A traj v_name N/A N/A N/A param f_lock N/A config_name N/A config.environment.%s.trajectory.timestamp N/A self name N/A N/A N/A N/A self _traj f_contains config_name shortcuts False N/A N/A param N/A N/A N/A self _traj f_get config_name shortcuts False N/A N/A N/A param f_unlock N/A N/A N/A param f_set N/A traj v_timestamp N/A N/A N/A param f_lock N/A N/A N/A N/A N/A N/A traj config environment f_contains N/A self name shortcuts False N/A N/A N/A N/A traj _merge_config N/A self _traj N/A N/A self _traj traj N/A N/A self _runfunc N/A resume_dict N/A runfunc N/A N/A self _args N/A resume_dict N/A args N/A N/A self _kwargs N/A resume_dict N/A kwargs N/A N/A self _postproc N/A resume_dict N/A postproc N/A N/A self _postproc_args N/A resume_dict N/A postproc_args N/A N/A self _postproc_kwargs N/A resume_dict N/A postproc_kwargs N/A N/A N/A self _traj v_full_copy N/A resume_dict N/A full_copy N/A N/A N/A N/A self _traj f_load load_parameters N/A pypetconstants LOAD_NOTHING load_derived_parameters N/A pypetconstants LOAD_NOTHING load_results N/A pypetconstants LOAD_NOTHING load_other_data N/A pypetconstants LOAD_NOTHING N/A result_list N/A N/A full_filename_list N/A N/A filename N/A N/A os listdir N/A self _resume_path N/A N/A N/A _ ext N/A N/A N/A os path splitext filename N/A N/A ext .rcnt N/A N/A N/A full_filename N/A N/A N/A os path join N/A self _resume_path filename N/A cnt_file N/A open full_filename rb N/A N/A N/A result_list append N/A N/A dill load cnt_file N/A N/A N/A cnt_file close N/A N/A N/A full_filename_list append full_filename N/A new_result_list N/A N/A result_tuple result_list N/A N/A run_information N/A result_tuple N/A 1 N/A N/A N/A N/A self _traj _update_run_information run_information N/A N/A N/A new_result_list append N/A result_tuple N/A 0 N/A N/A result_sort new_result_list N/A config_name N/A environment.%s.resumed N/A self name N/A N/A N/A config_name N/A self _traj N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name True comment Added if a crashed trajectory was continued. N/A N/A N/A N/A self _logger info N/A I will resume trajectory `%s`. N/A N/A self _traj v_name N/A new_result_list N/A _prepare_runs N/A N/A self pipeline N/A N/A N/A Prepares the running of an experiment

        :param pipeline:

            A pipeline function that defines the task

         N/A pip_result N/A pipeline N/A self _traj N/A raise_error False N/A N/A pip_result None N/A N/A N/A self _do_single_runs N/A N/A N/A RuntimeError Your pipeline function did return `None`.Accordingly, I assume you just do data analysis. Please create and environment with `do_single_runs=False`. N/A N/A N/A N/A self _logger info Your pipeline returned no runfunction, I assume you do some sort of data analysis and will skip any single run execution. N/A N/A self _runfunc None N/A N/A N/A N/A N/A N/A len pip_result 2 N/A isinstance N/A pip_result N/A 0 tuple N/A isinstance N/A pip_result N/A 1 tuple N/A N/A run_tuple N/A pip_result N/A 0 N/A N/A self _runfunc N/A run_tuple N/A 0 N/A N/A N/A len run_tuple 1 N/A N/A N/A self _args N/A run_tuple N/A 1 N/A N/A N/A len run_tuple 2 N/A N/A N/A self _kwargs N/A run_tuple N/A 2 N/A N/A N/A len run_tuple 3 N/A N/A raise_error True N/A postproc_tuple N/A pip_result N/A 1 N/A N/A N/A len postproc_tuple 0 N/A N/A N/A self _postproc N/A postproc_tuple N/A 0 N/A N/A N/A len postproc_tuple 1 N/A N/A N/A self _postproc_args N/A postproc_tuple N/A 1 N/A N/A N/A len postproc_tuple 2 N/A N/A N/A self _postproc_kwargs N/A postproc_tuple N/A 2 N/A N/A N/A len run_tuple 3 N/A N/A raise_error True N/A N/A N/A N/A len pip_result 3 N/A N/A N/A self _runfunc N/A pip_result N/A 0 N/A N/A N/A len pip_result 1 N/A N/A N/A self _args N/A pip_result N/A 1 N/A N/A N/A len pip_result 2 N/A N/A N/A self _kwargs N/A pip_result N/A 2 N/A N/A raise_error True N/A raise_error N/A N/A N/A RuntimeError Your pipeline result is not understood please returna tuple of maximum length 3: ``(runfunc, args, kwargs)`` Or return two tuple of maximum length 3: ``(runfunc, args, kwargs), (postproc, postproc_args, postproc_kwargs) N/A N/A N/A N/A self _runfunc None N/A N/A self _do_single_runs N/A N/A N/A RuntimeError You cannot make a run if you did create an environment with `do_single_runs=False`. N/A N/A self _resumable N/A N/A N/A racedirs N/A self _resume_path N/A N/A N/A os listdir N/A self _resume_path N/A N/A N/A RuntimeError N/A Your resume folder `%s` needs to be empty to allow continuing! N/A self _resume_path N/A N/A self _user_pipeline N/A N/A N/A N/A N/A self _logger info N/A 
************************************************************
STARTING PPREPROCESSING for trajectory
`%s`
************************************************************
 N/A N/A self _traj v_name N/A N/A N/A N/A self _logger info I am preparing the Trajectory for the experiment and initialise the store. N/A N/A N/A N/A self _traj _prepare_experiment N/A N/A N/A N/A self _logger info Initialising the storage for the trajectory. N/A N/A N/A N/A self _traj f_store only_init True N/A _show_progress N/A N/A self n total_runs N/A N/A N/A Displays a progressbar N/A N/A N/A N/A self _logging_manager show_progress n total_runs N/A _make_kwargs N/A N/A self N/A kwargs N/A N/A Creates the keyword arguments for the single run handling N/A result_dict N/A traj logging_manager runfunc runargs runkwargs clean_up_runs automatic_storing wrap_mode niceness graceful_exit N/A self _traj N/A self _logging_manager N/A self _runfunc N/A self _args N/A self _kwargs N/A self _clean_up_runs N/A self _automatic_storing N/A self _wrap_mode N/A self _niceness N/A self _graceful_exit N/A N/A N/A result_dict update kwargs N/A N/A self _multiproc N/A N/A N/A N/A self _use_pool N/A self _use_scoop N/A N/A N/A self _use_scoop N/A N/A N/A result_dict N/A graceful_exit N/A N/A self _freeze_input N/A N/A N/A result_dict N/A full_copy N/A N/A self traj v_full_copy N/A N/A self _map_arguments N/A N/A N/A result_dict N/A runargs N/A N/A result_dict N/A runkwargs N/A N/A N/A result_dict N/A clean_up_runs False N/A N/A self _use_pool N/A N/A N/A result_dict N/A logging_manager N/A N/A result_dict N/A niceness N/A N/A N/A result_dict N/A clean_up_runs False N/A result_dict N/A _make_index_iterator N/A N/A self start_run_idx N/A N/A N/A Returns an iterator over the run indices that are not completed N/A total_runs N/A len N/A self _traj N/A n N/A N/A compat xrange start_run_idx total_runs N/A N/A N/A self _current_idx N/A n 1 N/A N/A self _stop_iteration N/A N/A N/A N/A N/A self _logger debug I am stopping new run iterations now! N/A N/A N/A N/A N/A N/A self _traj _is_completed n N/A N/A N/A N/A N/A self _traj f_set_crun n N/A N/A n N/A N/A N/A N/A N/A self _logger debug N/A Run `%d` has already been completed, I am skipping it. n N/A _make_iterator N/A N/A self start_run_idx copy_data N/A False kwargs N/A N/A  Returns an iterator over all runs and yields the keyword arguments  N/A N/A N/A N/A self _freeze_input N/A N/A self _multiproc N/A N/A kwargs N/A N/A self _make_kwargs kwargs _do_iter N/A N/A N/A N/A N/A N/A self _map_arguments N/A N/A N/A self _args N/A tuple N/A N/A iter arg N/A arg N/A self _args N/A key N/A N/A compat listkeys N/A self _kwargs N/A N/A N/A N/A self _kwargs N/A key N/A iter N/A N/A self _kwargs N/A key N/A idx N/A N/A self _make_index_iterator start_run_idx N/A N/A iter_args N/A tuple N/A N/A next x N/A x N/A self _args N/A iter_kwargs N/A N/A key N/A self _kwargs N/A N/A N/A iter_kwargs N/A key N/A next N/A N/A self _kwargs N/A key N/A N/A kwargs N/A runargs iter_args N/A N/A kwargs N/A runkwargs iter_kwargs N/A N/A self _freeze_input N/A N/A N/A kwargs N/A idx idx N/A copy_data N/A N/A copied_kwargs N/A N/A kwargs copy N/A N/A N/A self _freeze_input N/A N/A N/A copied_kwargs N/A traj N/A N/A N/A self _traj f_copy copy_leaves explored with_links True N/A N/A copied_kwargs N/A N/A N/A kwargs N/A N/A idx N/A N/A self _make_index_iterator start_run_idx N/A N/A N/A self _freeze_input N/A N/A N/A kwargs N/A idx idx N/A copy_data N/A N/A copied_kwargs N/A N/A kwargs copy N/A N/A N/A self _freeze_input N/A N/A N/A copied_kwargs N/A traj N/A N/A N/A self _traj f_copy copy_leaves explored with_links True N/A N/A copied_kwargs N/A N/A N/A kwargs N/A N/A N/A _do_iter N/A _execute_postproc N/A N/A self results N/A N/A N/A  Executes a postprocessing function

        :param results:

            List of tuples containing the run indices and the results

        :return:

            1. Whether to new single runs, since the trajectory was enlarged
            2. Index of next new run
            3. Number of new runs

         N/A repeat False N/A start_run_idx 0 N/A new_runs 0 N/A N/A N/A N/A self _traj _finalize store_meta_data True N/A old_traj_length N/A len N/A self _traj N/A postproc_res N/A N/A self _postproc N/A self _traj results N/A self _postproc_args N/A self _postproc_kwargs N/A N/A postproc_res None N/A N/A N/A N/A N/A isinstance postproc_res dict N/A N/A postproc_res N/A N/A N/A N/A N/A self _traj f_expand postproc_res N/A N/A N/A isinstance postproc_res tuple N/A N/A expand_dict N/A postproc_res N/A 0 N/A N/A N/A len postproc_res 1 N/A N/A N/A self _args N/A postproc_res N/A 1 N/A N/A N/A len postproc_res 2 N/A N/A N/A self _kwargs N/A postproc_res N/A 2 N/A N/A N/A len postproc_res 3 N/A N/A N/A self _postproc_args N/A postproc_res N/A 3 N/A N/A N/A len postproc_res 4 N/A N/A N/A self _postproc_kwargs N/A postproc_res N/A 4 N/A expand_dict N/A N/A N/A N/A N/A self _traj f_expand expand_dict N/A N/A N/A N/A N/A self _logger error N/A Your postproc result `%s` was not understood. N/A str postproc_res N/A new_traj_length N/A len N/A self _traj N/A N/A new_traj_length old_traj_length N/A N/A start_run_idx old_traj_length N/A repeat True N/A N/A self _resumable N/A N/A N/A N/A N/A self _logger warning Continuing a trajectory AND expanding it during runtime is NOT supported properly, there is no guarantee that this works! N/A N/A N/A N/A self _traj f_store only_init True N/A new_traj_length N/A len N/A self _traj N/A new_runs N/A new_traj_length old_traj_length N/A N/A repeat start_run_idx new_runs N/A _estimate_cpu_utilization N/A N/A self N/A N/A N/A Estimates the cpu utilization within the last 500ms N/A now N/A N/A time time N/A N/A N/A now N/A self _last_cpu_check 0.5 N/A N/A N/A N/A N/A self _last_cpu_usage N/A N/A psutil cpu_percent N/A N/A self _last_cpu_check now N/A N/A N/A N/A N/A psutil NoSuchProcess ZeroDivisionError N/A N/A N/A N/A self _last_cpu_usage N/A _estimate_memory_utilization N/A N/A self process_dict N/A N/A N/A Estimates memory utilization to come if process was started N/A n_processes N/A len process_dict N/A total_utilization N/A N/A N/A psutil virtual_memory percent N/A sum 0.0 N/A proc N/A N/A compat itervalues process_dict N/A N/A N/A N/A sum N/A N/A N/A N/A psutil Process N/A proc pid memory_percent N/A N/A N/A N/A N/A psutil NoSuchProcess ZeroDivisionError N/A N/A N/A curr_all_processes sum N/A missing_utilization N/A max 0.0 N/A N/A n_processes N/A self _est_per_process curr_all_processes N/A estimated_utilization total_utilization N/A estimated_utilization missing_utilization N/A estimated_utilization N/A self _est_per_process N/A estimated_utilization N/A _execute_runs N/A N/A self pipeline N/A N/A N/A  Starts the individual single runs.

        Starts runs sequentially or initiates multiprocessing.

        :param pipeline:

            A pipeline function producing the run function the corresponding arguments
            and postprocessing function and arguments

        :return:

            List of tuples, where each tuple contains the run idx and the result.

         N/A N/A N/A self _start_timestamp None N/A N/A N/A self _start_timestamp N/A N/A time time N/A N/A N/A self _map_arguments N/A self _resumable N/A N/A N/A ValueError You cannot use `run_map` or `pipeline_map` in combination with continuing option. N/A N/A N/A self _sumatra_project None N/A N/A N/A N/A self _prepare_sumatra N/A N/A pipeline None N/A N/A results N/A N/A N/A N/A self _prepare_runs pipeline N/A N/A results N/A N/A self _prepare_resume N/A N/A N/A self _runfunc None N/A N/A N/A N/A self _traj _run_by_environment True N/A N/A self _graceful_exit N/A N/A N/A N/A sigint_handling start N/A N/A N/A N/A N/A self _inner_run_loop results N/A N/A N/A N/A self _traj _run_by_environment False N/A N/A self _stop_iteration False N/A N/A self _graceful_exit N/A N/A N/A N/A sigint_handling finalize N/A N/A N/A self _add_wildcard_config N/A N/A self _automatic_storing N/A N/A N/A N/A N/A self _logger info N/A 
************************************************************
STARTING FINAL STORING of trajectory
`%s`
************************************************************
 N/A N/A self _traj v_name N/A N/A N/A N/A self _traj f_store N/A N/A N/A N/A self _logger info N/A 
************************************************************
FINISHED FINAL STORING of trajectory
`%s`.
************************************************************
 N/A N/A self _traj v_name N/A N/A self _finish_timestamp N/A N/A time time N/A findatetime N/A N/A N/A datetime datetime fromtimestamp N/A self _finish_timestamp N/A startdatetime N/A N/A N/A datetime datetime fromtimestamp N/A self _start_timestamp N/A N/A self _runtime N/A str N/A findatetime startdatetime N/A conf_list N/A N/A config_name N/A environment.%s.start_timestamp N/A self name N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A conf1 N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _start_timestamp comment Timestamp of starting of experiment (when the actual simulation was started (either by calling `run`, `resume`, or `pipeline`). N/A N/A N/A conf_list append conf1 N/A config_name N/A environment.%s.finish_timestamp N/A self name N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A conf2 N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _finish_timestamp comment Timestamp of finishing of an experiment. N/A N/A conf2 N/A N/A N/A self _traj f_get N/A config. config_name N/A N/A N/A conf2 f_unlock N/A N/A N/A conf2 f_set N/A self _finish_timestamp N/A N/A N/A conf_list append conf2 N/A config_name N/A environment.%s.runtime N/A self name N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A conf3 N/A N/A N/A self _traj f_add_config Parameter config_name N/A self _runtime comment Runtime of whole experiment. N/A N/A conf3 N/A N/A N/A self _traj f_get N/A config. config_name N/A N/A N/A conf3 f_unlock N/A N/A N/A conf3 f_set N/A self _runtime N/A N/A N/A conf_list append conf3 N/A N/A self _automatic_storing N/A N/A N/A N/A N/A self _traj f_store_items conf_list store_data N/A pypetconstants OVERWRITE_DATA N/A N/A hasattr N/A N/A self _traj v_storage_service finalize N/A N/A N/A N/A N/A N/A self _traj v_storage_service finalize N/A incomplete N/A N/A run_name N/A N/A N/A self _traj f_get_run_names N/A N/A N/A N/A N/A N/A self _traj _is_completed run_name N/A N/A N/A N/A incomplete append run_name N/A N/A N/A len incomplete 0 N/A N/A N/A N/A N/A self _logger error N/A Following runs of trajectory `%s` did NOT complete: `%s` N/A N/A N/A self _traj v_name N/A N/A ,  join incomplete N/A N/A N/A N/A N/A self _logger info N/A All runs of trajectory `%s` were completed successfully. N/A N/A self _traj v_name N/A N/A N/A self _sumatra_project None N/A N/A N/A N/A self _finish_sumatra N/A results N/A _add_wildcard_config N/A N/A self N/A N/A N/A Adds config data about the wildcard functions N/A N/A idx pair N/A enumerate N/A N/A N/A N/A self _traj _wildcard_functions items N/A N/A N/A wildcards wc_function pair N/A N/A jdx wildcard N/A enumerate wildcards N/A N/A config_name N/A environment.%s.wildcards.function_%d.wildcard_%d N/A N/A self name idx jdx N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name wildcard comment Wildcard symbol for the wildcard function f_lock N/A N/A hasattr wc_function __name__ N/A N/A config_name N/A environment.%s.wildcards.function_%d.name N/A N/A self name idx N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A wc_function __name__ comment Nme of wildcard function f_lock N/A N/A wc_function __doc__ N/A N/A config_name N/A environment.%s.wildcards.function_%d.doc N/A N/A self name idx N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name N/A wc_function __doc__ comment Docstring of wildcard function f_lock N/A N/A N/A source N/A N/A inspect getsource wc_function N/A config_name N/A environment.%s.wildcards.function_%d.source N/A N/A self name idx N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name source comment Source code of wildcard function f_lock N/A N/A N/A Exception N/A N/A N/A _inner_run_loop N/A N/A self results N/A N/A N/A Performs the inner loop of the run execution N/A start_run_idx N/A self _current_idx N/A expanded_by_postproc False N/A N/A self _storage_service N/A N/A self _traj v_storage_service N/A N/A self _multiproc_wrapper None N/A N/A self _resumable N/A N/A N/A N/A self _trigger_resume_snapshot N/A N/A N/A N/A self _logger info N/A 
************************************************************
STARTING runs of trajectory
`%s`.
************************************************************
 N/A N/A self _traj v_name N/A True N/A N/A N/A self _multiproc N/A N/A expanded_by_postproc N/A N/A self _execute_multiprocessing start_run_idx results N/A N/A iterator N/A N/A self _make_iterator start_run_idx N/A n start_run_idx N/A total_runs N/A len N/A self _traj N/A N/A N/A self _show_progress N/A n 1 total_runs N/A task iterator N/A N/A result N/A _sigint_handling_single_run task N/A n N/A N/A self _check_result_and_store_references result results n total_runs N/A repeat False N/A N/A N/A self _postproc None N/A N/A N/A N/A N/A self _logger info Performing POSTPROCESSING N/A N/A repeat start_run_idx new_runs N/A N/A self _execute_postproc results N/A N/A repeat N/A N/A N/A N/A expanded_by_postproc True N/A N/A N/A N/A self _logger info N/A POSTPROCESSING expanded the trajectory and added %d new runs new_runs N/A N/A N/A N/A self _traj _finalize store_meta_data True N/A N/A N/A N/A self _logger info N/A 
************************************************************
FINISHED all runs of trajectory
`%s`.
************************************************************
 N/A N/A self _traj v_name N/A N/A N/A self _resumable N/A self _delete_resume N/A N/A N/A N/A shutil rmtree N/A self _resume_path N/A expanded_by_postproc N/A N/A config_name N/A environment.%s.postproc_expand N/A self name N/A N/A N/A N/A N/A self _traj f_contains N/A config. config_name N/A N/A N/A N/A N/A self _traj f_add_config Parameter config_name True comment Added if trajectory was expanded by postprocessing. N/A _get_results_from_queue N/A N/A self result_queue results n total_runs N/A N/A N/A Extract all available results from the queue and returns the increased n N/A N/A N/A N/A result_queue empty N/A N/A result N/A N/A result_queue get N/A n N/A N/A self _check_result_and_store_references result results n total_runs N/A n N/A _check_result_and_store_references N/A N/A self result results n total_runs N/A N/A N/A Checks for SIGINT and if reference wrapping and stores references. N/A N/A N/A result N/A 0 N/A sigint_handling SIGINT N/A N/A N/A self _stop_iteration True N/A result N/A result N/A 1 N/A N/A result None N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_LOCAL N/A N/A N/A N/A N/A self _multiproc_wrapper store_references N/A result N/A 2 N/A N/A N/A N/A self _traj _update_run_information N/A result N/A 1 N/A N/A N/A results append N/A result N/A 0 N/A N/A self _resumable N/A N/A N/A N/A self _trigger_result_snapshot N/A result N/A 0 2 N/A N/A N/A self _show_progress n total_runs N/A n 1 N/A n N/A _trigger_result_snapshot N/A N/A self result N/A N/A N/A  Triggers a snapshot of the results for continuing

        :param result: Currently computed result

         N/A timestamp N/A N/A result N/A 1 N/A finish_timestamp N/A timestamp_str N/A N/A N/A repr timestamp replace . _ N/A filename N/A result_%s timestamp_str N/A extension .ncnt N/A dump_filename N/A N/A N/A os path join N/A self _resume_path N/A filename extension N/A dump_file N/A open dump_filename wb N/A N/A N/A dill dump result dump_file protocol 2 N/A N/A N/A dump_file flush N/A N/A N/A dump_file close N/A extension .rcnt N/A rename_filename N/A N/A N/A os path join N/A self _resume_path N/A filename extension N/A N/A N/A shutil move dump_filename rename_filename N/A _execute_multiprocessing N/A N/A self start_run_idx results N/A N/A N/A Performs multiprocessing and signals expansion by postproc N/A n start_run_idx N/A total_runs N/A len N/A self _traj N/A expanded_by_postproc False N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_NONE N/A N/A self _storage_service multiproc_safe N/A N/A N/A N/A N/A self _logger info I assume that your storage service is multiprocessing safe. N/A N/A use_manager N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_QUEUE N/A self _immediate_postproc N/A N/A self _multiproc_wrapper N/A MultiprocContext N/A self _traj N/A self _wrap_mode full_copy None manager None use_manager use_manager lock None queue None queue_maxsize N/A self _queue_maxsize port N/A self _url timeout N/A self _timeout gc_interval N/A self _gc_interval log_config N/A N/A self _logging_manager log_config log_stdout N/A N/A self _logging_manager log_stdout graceful_exit N/A self _graceful_exit N/A N/A N/A N/A self _multiproc_wrapper start N/A N/A N/A N/A self _use_pool N/A N/A N/A N/A N/A self _logger info N/A Starting Pool with %d processes N/A self _ncores N/A N/A self _freeze_input N/A N/A N/A N/A N/A self _logger info Freezing pool input N/A init_kwargs N/A N/A self _make_kwargs N/A pool_full_copy N/A N/A self _traj v_full_copy N/A N/A N/A self _traj v_full_copy True N/A initializer _configure_frozen_pool N/A target _frozen_pool_single_run N/A N/A pool_service N/A N/A self _traj v_storage_service N/A N/A N/A self _traj v_storage_service None N/A init_kwargs N/A dict logging_manager N/A self _logging_manager storage_service pool_service niceness N/A self _niceness N/A initializer _configure_pool N/A target _pool_single_run N/A N/A N/A iterator N/A N/A self _make_iterator start_run_idx N/A mpool N/A N/A multip Pool N/A self _ncores initializer initializer initargs N/A init_kwargs N/A pool_results N/A N/A mpool imap target iterator N/A N/A N/A self _show_progress N/A n 1 total_runs N/A result pool_results N/A N/A n N/A N/A self _check_result_and_store_references result results n total_runs N/A N/A N/A mpool close N/A N/A N/A mpool join N/A N/A N/A self _freeze_input N/A N/A N/A N/A self _traj v_full_copy pool_full_copy N/A N/A N/A N/A self _traj v_storage_service pool_service N/A N/A N/A N/A self _logger info Pool has joined, will delete it. N/A mpool N/A N/A N/A self _use_scoop N/A N/A N/A N/A N/A self _logger info Starting SCOOP jobs N/A N/A self _freeze_input N/A N/A N/A N/A N/A self _logger info Freezing SCOOP input N/A N/A hasattr _frozen_scoop_single_run kwargs N/A N/A N/A N/A N/A self _logger warning You already did run an experiment with SCOOP and a frozen input. Frozen input is realized as a shared constant, soover time your memory might get bloated. If you experience trouble, restart your python interpreter and SCOOP. N/A N/A _frozen_scoop_single_run kwargs N/A N/A scoop_full_copy N/A N/A self _traj v_full_copy N/A N/A N/A self _traj v_full_copy True N/A init_kwargs N/A N/A self _make_kwargs N/A scoop_rev N/A N/A N/A self name _ N/A N/A N/A str N/A N/A time time replace . _ N/A N/A N/A shared setConst N/A scoop_rev init_kwargs N/A iterator N/A N/A self _make_iterator start_run_idx copy_data True scoop_rev scoop_rev N/A target _frozen_scoop_single_run N/A N/A iterator N/A N/A self _make_iterator start_run_idx copy_data True N/A target _scoop_single_run N/A N/A N/A N/A scoop IS_RUNNING N/A N/A scoop_results N/A N/A futures map target iterator timeout N/A self _timeout N/A N/A N/A N/A N/A self _logger error SCOOP is NOT running, I will use Python`s map function. To activate scoop, start your script via `python -m scoop your_script.py`. N/A scoop_results N/A map target iterator N/A N/A N/A self _show_progress N/A n 1 total_runs N/A result scoop_results N/A N/A n N/A N/A self _check_result_and_store_references result results n total_runs N/A N/A N/A self _freeze_input N/A N/A N/A N/A self _traj v_full_copy scoop_full_copy N/A N/A N/A self _immediate_postproc N/A N/A maxsize 0 N/A N/A maxsize total_runs N/A start_result_length N/A len results N/A result_queue N/A N/A multip Queue maxsize maxsize N/A iterator N/A N/A self _make_iterator start_run_idx result_queue result_queue N/A N/A N/A N/A self _logger info N/A Starting multiprocessing with at most %d processes running at the same time. N/A self _ncores N/A N/A self _check_usage N/A N/A N/A N/A N/A self _logger info N/A Monitoring usage statistics. I will not spawn new processes if one of the following cap thresholds is crossed, CPU: %.1f %%, RAM: %.1f %%, Swap: %.1f %%. N/A N/A self _cpu_cap N/A N/A self _memory_cap N/A 0 N/A self _swap_cap N/A keep_running True N/A process_dict N/A N/A cpu_usage_func N/A N/A N/A N/A N/A N/A self _estimate_cpu_utilization N/A memory_usage_func N/A N/A N/A N/A N/A N/A self _estimate_memory_utilization process_dict N/A swap_usage_func N/A N/A N/A N/A N/A N/A N/A psutil swap_memory percent N/A signal_cap True N/A max_signals 10 N/A N/A N/A self _show_progress N/A n 1 total_runs N/A N/A N/A N/A len process_dict 0 keep_running N/A N/A pid N/A N/A compat listkeys process_dict N/A N/A proc N/A process_dict N/A pid N/A N/A N/A N/A proc is_alive N/A N/A N/A N/A proc join N/A N/A process_dict N/A pid N/A proc N/A no_cap True N/A N/A N/A self _check_usage N/A N/A self _ncores N/A len process_dict 0 N/A N/A N/A cap_name cap_function threshold N/A N/A CPU Cap cpu_usage_func N/A self _cpu_cap N/A Memory Cap memory_usage_func N/A N/A self _memory_cap N/A 0 N/A Swap Cap swap_usage_func N/A self _swap_cap N/A N/A cap_value N/A cap_function N/A N/A cap_value threshold N/A N/A no_cap False N/A signal_cap N/A N/A N/A cap_name Memory Cap N/A N/A add_on_str  [including estimate] N/A N/A add_on_str N/A N/A N/A N/A self _logger warning N/A Could not start next process immediately [currently running %d process(es)]. %s reached, %.1f%% >= %.1f%%%s. N/A N/A len process_dict cap_name cap_value threshold add_on_str N/A signal_cap False N/A max_signals 1 N/A N/A max_signals 0 N/A N/A N/A N/A N/A self _logger warning Maximum number of cap warnings reached. I will no longer notify about cap violations, but cap values are still applied silently in background. N/A N/A N/A N/A N/A len process_dict N/A self _ncores keep_running no_cap N/A N/A N/A N/A task N/A next iterator N/A proc N/A N/A multip Process target _process_single_run args N/A task N/A N/A N/A proc start N/A N/A process_dict N/A N/A proc pid proc N/A signal_cap N/A max_signals 0 N/A N/A N/A StopIteration N/A N/A keep_running False N/A N/A N/A N/A self _postproc None N/A self _immediate_postproc N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_LOCAL N/A N/A reference_service N/A N/A self _traj _storage_service N/A N/A N/A self _traj v_storage_service N/A self _storage_service N/A N/A N/A N/A N/A N/A self _logger info Performing IMMEDIATE POSTPROCESSING. N/A N/A keep_running start_run_idx new_runs N/A N/A self _execute_postproc results N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_LOCAL N/A N/A N/A N/A self _traj _storage_service reference_service N/A keep_running N/A N/A expanded_by_postproc True N/A N/A N/A N/A self _logger info N/A IMMEDIATE POSTPROCESSING expanded the trajectory and added %d new runs new_runs N/A n start_run_idx N/A total_runs N/A len N/A self _traj N/A iterator N/A N/A self _make_iterator start_run_idx result_queue result_queue N/A N/A keep_running N/A N/A N/A N/A N/A self _logger debug All simulation runs have been started. No new runs will be started. The simulation will finish after the still active runs completed. N/A N/A N/A N/A time sleep 0.001 N/A n N/A N/A self _get_results_from_queue result_queue results n total_runs N/A N/A N/A self _get_results_from_queue result_queue results n total_runs N/A N/A N/A result_queue close N/A N/A N/A result_queue join_thread N/A result_queue N/A N/A result_sort results start_result_length N/A N/A N/A N/A self _multiproc_wrapper None N/A N/A N/A N/A N/A self _multiproc_wrapper finalize N/A N/A self _multiproc_wrapper None N/A expanded_by_postproc N/A N/A prefix_naming MultiprocContext N/A HasLogger N/A N/A  A lightweight environment that allows the usage of multiprocessing.

    Can be used if you don't want a full-blown :class:`~pypet.environment.Environment` to
    enable multiprocessing or if you want to implement your own custom multiprocessing.

    This Wrapper tool will take a trajectory container and take care that the storage
    service is multiprocessing safe. Supports the ``'LOCK'`` as well as the ``'QUEUE'`` mode.
    In case of the latter an extra queue process is created if desired.
    This process will handle all storage requests and write data to the hdf5 file.

    Not that in case of ``'QUEUE'`` wrapping data can only be stored not loaded, because
    the queue will only be read in one direction.

    :param trajectory:

        The trajectory which storage service should be wrapped

    :param wrap_mode:

        There are four options:

         :const:`~pypet.pypetconstants.WRAP_MODE_QUEUE`: ('QUEUE')

             If desired another process for storing the trajectory is spawned.
             The sub processes running the individual trajectories will add their results to a
             multiprocessing queue that is handled by an additional process.
             Note that this requires additional memory since data
             will be pickled and send over the queue for storage!

         :const:`~pypet.pypetconstants.WRAP_MODE_LOCK`: ('LOCK')

             Each individual process takes care about storage by itself. Before
             carrying out the storage, a lock is placed to prevent the other processes
             to store data. Accordingly, sometimes this leads to a lot of processes
             waiting until the lock is released.
             Yet, data does not need to be pickled before storage!

         :const:`~pypet.pypetconstants.WRAP_MODE_PIPE`: ('PIPE)

            Experimental mode based on a single pipe. Is faster than ``'QUEUE'`` wrapping
            but data corruption may occur, does not work under Windows
            (since it relies on forking).

         :const:`~pypet.pypetconstant.WRAP_MODE_LOCAL` ('LOCAL')

            Data is not stored in spawned child processes, but data needs to be
            retunred manually in terms of *references* dictionaries (the ``reference`` property
            of the ``ReferenceWrapper`` class)..
            Storing is only performed in the main process.

            Note that removing data during a single run has no longer an effect on memory
            whatsoever, because there are references kept for all data
            that is supposed to be stored.

    :param full_copy:

        In case the trajectory gets pickled (sending over a queue or a pool of processors)
        if the full trajectory should be copied each time (i.e. all parameter points) or
        only a particular point. A particular point can be chosen beforehand with
        :func:`~pypet.trajectory.Trajectory.f_set_crun`.

        Leave ``full_copy=None`` if the setting from the passed trajectory should be used.
        Otherwise ``v_full_copy`` of the trajectory is changed to your chosen value.

    :param manager:

        You can pass an optional multiprocessing manager here,
        if you already have instantiated one.
        Leave ``None`` if you want the wrapper to create one.

    :param use_manager:

        If your lock and queue should be created with a manager or if wrapping should be
        created from the multiprocessing module directly.

        For example: ``multiprocessing.Lock()`` or via a manager
        ``multiprocessing.Manager().Lock()``
        (if you specified a manager, this manager will be used).

        The former is usually faster whereas the latter is more flexible and can
        be used in an environment where fork is not available, for instance.

    :param lock:

        You can pass a multiprocessing lock here, if you already have instantiated one.
        Leave ``None`` if you want the wrapper to create one in case of ``'LOCK'`` wrapping.

    :param queue:

        You can pass a multiprocessing queue here, if you already instantiated one.
        Leave ``None`` if you want the wrapper to create one in case of ''`QUEUE'`` wrapping.

    :param queue_maxsize:

        Maximum size of queue if created new. 0 means infinite.

    :param port:

        Port to be used by lock server in case of ``'NETLOCK'`` wrapping.
        Can be a single integer as well as a tuple ``(7777, 9999)`` to specify
        a range of ports from which to pick a random one.
        Leave `None` for using pyzmq's default range.
        In case automatic determining of the host's ip address fails,
        you can also pass the full address (including the protocol and
        the port) of the host in the network like ``'tcp://127.0.0.1:7777'``.

    :param timeout:

        Timeout for a NETLOCK wrapping in seconds. After ``timeout``
        seconds a lock is automatically released and free for other
        processes.

    :param gc_interval:

        Interval (in runs or storage operations) with which ``gc.collect()``
        should be called in case of the ``'LOCAL'``, ``'QUEUE'``, or ``'PIPE'`` wrapping.
        Leave ``None`` for never.

        ``1`` means after every storing, ``2`` after every second storing, and so on.
        Only calls ``gc.collect()`` in the main (if ``'LOCAL'`` wrapping)
        or the queue/pipe process. If you need to garbage collect data within your single runs,
        you need to manually call ``gc.collect()``.

        Usually, there is no need to set this parameter since the Python garbage collection
        works quite nicely and schedules collection automatically.

    :param log_config:

        Path to logging config file or dictionary to configure logging for the
        spawned queue process. Thus, only considered if the queue wrap mode is chosen.

    :param log_stdout:

        If stdout of the queue process should also be logged.

    :param graceful_exit:

        Hitting Ctrl+C won't kill a server process unless hit twice.

    For an usage example see :ref:`example-16`.

     __init__ N/A N/A self trajectory wrap_mode full_copy manager use_manager lock queue queue_maxsize port timeout gc_interval log_config log_stdout graceful_exit N/A N/A pypetconstants WRAP_MODE_LOCK None None True None None 0 None None None None False False N/A N/A N/A N/A self _set_logger N/A N/A self _manager manager N/A N/A self _traj trajectory N/A N/A self _storage_service N/A N/A self _traj v_storage_service N/A N/A self _queue_process None N/A N/A self _pipe_process None N/A N/A self _lock_wrapper None N/A N/A self _queue_wrapper None N/A N/A self _reference_wrapper None N/A N/A self _wrap_mode wrap_mode N/A N/A self _queue queue N/A N/A self _queue_maxsize queue_maxsize N/A N/A self _pipe queue N/A N/A self _max_buffer_size queue_maxsize N/A N/A self _lock lock N/A N/A self _lock_process None N/A N/A self _port port N/A N/A self _timeout timeout N/A N/A self _use_manager use_manager N/A N/A self _logging_manager None N/A N/A self _gc_interval gc_interval N/A N/A self _graceful_exit graceful_exit N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_QUEUE N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_PIPE N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_NETLOCK N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_NETQUEUE N/A N/A N/A self _logging_manager N/A LoggingManager log_config log_config log_stdout log_stdout N/A N/A N/A N/A self _logging_manager extract_replacements N/A self _traj N/A N/A N/A N/A self _logging_manager check_log_config N/A N/A full_copy None N/A N/A N/A N/A self _traj v_full_copy full_copy N/A lock N/A N/A self N/A N/A N/A N/A self _lock N/A property queue N/A N/A self N/A N/A N/A N/A self _queue N/A property pipe N/A N/A self N/A N/A N/A N/A self _pipe N/A property queue_wrapper N/A N/A self N/A N/A N/A N/A self _queue_wrapper N/A property reference_wrapper N/A N/A self N/A N/A N/A N/A self _reference_wrapper N/A property lock_wrapper N/A N/A self N/A N/A N/A N/A self _lock_wrapper N/A property pipe_wrapper N/A N/A self N/A N/A N/A N/A self _pipe_wrapper N/A property __enter__ N/A N/A self N/A N/A N/A N/A N/A self start N/A self N/A __exit__ N/A N/A self exc_type exc_val exc_tb N/A N/A N/A N/A N/A self finalize N/A store_references N/A N/A self references N/A N/A N/A In case of reference wrapping, stores data.

        :param references: References dictionary from a ReferenceWrapper.

        :param gc_collect: If ``gc.collect`` should be called.

        :param n:

            Alternatively if ``gc_interval`` is set, a current index can be passed.
            Data is stored in case ``n % gc_interval == 0``.

         N/A N/A N/A N/A self _reference_store store_references references N/A start N/A N/A self N/A N/A N/A Starts the multiprocess wrapping.

        Automatically called when used as context manager.
         N/A N/A N/A self _do_wrap N/A _do_wrap N/A N/A self N/A N/A N/A  Wraps a Storage Service  N/A N/A N/A N/A self _traj f_store only_init True N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_QUEUE N/A N/A N/A N/A self _prepare_queue N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_LOCK N/A N/A N/A N/A self _prepare_lock N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_PIPE N/A N/A N/A N/A self _prepare_pipe N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_LOCAL N/A N/A N/A N/A self _prepare_local N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_NETLOCK N/A N/A N/A N/A self _prepare_netlock N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_NETQUEUE N/A N/A N/A N/A self _prepare_netqueue N/A N/A N/A RuntimeError N/A The mutliprocessing mode %s, your choice is not supported, use %s`, `%s`, %s, `%s`, or `%s`. N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_QUEUE N/A pypetconstants WRAP_MODE_LOCK N/A pypetconstants WRAP_MODE_PIPE N/A pypetconstants WRAP_MODE_LOCAL N/A pypetconstants WRAP_MODE_NETLOCK N/A _prepare_local N/A N/A self N/A N/A N/A reference_wrapper N/A ReferenceWrapper N/A N/A N/A self _traj v_storage_service reference_wrapper N/A N/A self _reference_wrapper reference_wrapper N/A N/A self _reference_store N/A ReferenceStore N/A self _storage_service N/A self _gc_interval N/A _prepare_netlock N/A N/A self N/A N/A N/A  Replaces the trajectory's service with a LockWrapper  N/A N/A N/A isinstance N/A self _port N/A compat base_type N/A N/A url N/A port_to_tcp N/A self _port N/A N/A N/A N/A self _logger info N/A Determined Server URL: `%s` url N/A N/A url N/A self _port N/A N/A N/A self _lock None N/A N/A N/A hasattr os fork N/A N/A N/A self _lock N/A ForkAwareLockerClient url N/A N/A N/A self _lock N/A LockerClient url N/A N/A N/A self _timeout None N/A N/A lock_server N/A LockerServer url N/A N/A lock_server N/A TimeOutLockerServer url N/A self _timeout N/A N/A N/A N/A self _logger info Using timeout aware lock server. N/A N/A self _lock_process N/A N/A multip Process name LockServer target _wrap_handling args N/A N/A dict handler lock_server logging_manager N/A self _logging_manager graceful_exit N/A self _graceful_exit N/A N/A N/A N/A self _lock_process start N/A N/A N/A N/A self _lock start N/A lock_wrapper N/A LockWrapper N/A self _storage_service N/A self _lock N/A N/A N/A self _traj v_storage_service lock_wrapper N/A N/A self _lock_wrapper lock_wrapper N/A _prepare_lock N/A N/A self N/A N/A N/A  Replaces the trajectory's service with a LockWrapper  N/A N/A N/A self _lock None N/A N/A N/A self _use_manager N/A N/A N/A N/A self _manager None N/A N/A N/A self _manager N/A N/A multip Manager N/A N/A self _lock N/A N/A N/A self _manager Lock N/A N/A N/A self _lock N/A N/A multip Lock N/A lock_wrapper N/A LockWrapper N/A self _storage_service N/A self _lock N/A N/A N/A self _traj v_storage_service lock_wrapper N/A N/A self _lock_wrapper lock_wrapper N/A _prepare_pipe N/A N/A self N/A N/A N/A  Replaces the trajectory's service with a queue sender and starts the queue process.

         N/A N/A N/A self _pipe None N/A N/A N/A self _pipe N/A N/A multip Pipe True N/A N/A N/A self _lock None N/A N/A N/A self _lock N/A N/A multip Lock N/A N/A N/A N/A self _logger info Starting the Storage Pipe! N/A pipe_handler N/A PipeStorageServiceWriter N/A self _storage_service N/A N/A self _pipe N/A 0 max_buffer_size N/A self _max_buffer_size N/A N/A self _pipe_process N/A N/A multip Process name PipeProcess target _wrap_handling args N/A N/A dict handler pipe_handler logging_manager N/A self _logging_manager graceful_exit N/A self _graceful_exit N/A N/A N/A N/A self _pipe_process start N/A N/A self _pipe_wrapper N/A PipeStorageServiceSender N/A N/A self _pipe N/A 1 N/A self _lock N/A N/A N/A self _traj v_storage_service N/A self _pipe_wrapper N/A _prepare_queue N/A N/A self N/A N/A N/A  Replaces the trajectory's service with a queue sender and starts the queue process.

         N/A N/A N/A self _queue None N/A N/A N/A self _use_manager N/A N/A N/A N/A self _manager None N/A N/A N/A self _manager N/A N/A multip Manager N/A N/A self _queue N/A N/A N/A self _manager Queue maxsize N/A self _queue_maxsize N/A N/A N/A self _queue N/A N/A multip Queue maxsize N/A self _queue_maxsize N/A N/A N/A N/A self _logger info Starting the Storage Queue! N/A queue_handler N/A QueueStorageServiceWriter N/A self _storage_service N/A self _queue N/A self _gc_interval N/A N/A self _queue_process N/A N/A multip Process name QueueProcess target _wrap_handling args N/A N/A dict handler queue_handler logging_manager N/A self _logging_manager graceful_exit N/A self _graceful_exit N/A N/A N/A N/A self _queue_process start N/A N/A self _queue_wrapper N/A QueueStorageServiceSender N/A self _queue N/A N/A N/A self _traj v_storage_service N/A self _queue_wrapper N/A _prepare_netqueue N/A N/A self N/A N/A N/A  Replaces the trajectory's service with a queue sender and starts the queue process.

         N/A N/A N/A N/A self _logger info Starting Network Queue! N/A N/A N/A isinstance N/A self _port N/A compat base_type N/A N/A url N/A port_to_tcp N/A self _port N/A N/A N/A N/A self _logger info N/A Determined Server URL: `%s` url N/A N/A url N/A self _port N/A N/A N/A self _queue None N/A N/A N/A hasattr os fork N/A N/A N/A self _queue N/A ForkAwareQueuingClient url N/A N/A N/A self _queue N/A QueuingClient url N/A queuing_server_handler N/A QueuingServer url N/A self _storage_service N/A self _queue_maxsize N/A self _gc_interval N/A N/A self _queue_process N/A N/A multip Process name QueuingServerProcess target _wrap_handling args N/A N/A dict handler queuing_server_handler logging_manager N/A self _logging_manager graceful_exit N/A self _graceful_exit N/A N/A N/A N/A self _queue_process start N/A N/A N/A N/A self _queue start N/A N/A self _queue_wrapper N/A QueueStorageServiceSender N/A self _queue N/A N/A N/A self _traj v_storage_service N/A self _queue_wrapper N/A finalize N/A N/A self N/A N/A N/A  Restores the original storage service.

        If a queue process and a manager were used both are shut down.

        Automatically called when used as context manager.

         N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_QUEUE N/A N/A self _queue_process None N/A N/A N/A N/A N/A self _logger info The Storage Queue will no longer accept new data. Hang in there for a little while. There still might be some data in the queue that needs to be stored. N/A N/A N/A N/A self _traj v_storage_service queue N/A self _queue N/A N/A N/A N/A N/A self _traj v_storage_service send_done N/A N/A N/A N/A self _queue_process join N/A N/A hasattr N/A self _queue join N/A N/A N/A N/A N/A self _queue join N/A N/A hasattr N/A self _queue close N/A N/A N/A N/A N/A self _queue close N/A N/A hasattr N/A self _queue join_thread N/A N/A N/A N/A N/A self _queue join_thread N/A N/A N/A N/A self _logger info The Storage Queue has joined. N/A N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_PIPE N/A N/A self _pipe_process None N/A N/A N/A N/A N/A self _logger info The Storage Pipe will no longer accept new data. Hang in there for a little while. There still might be some data in the pipe that needs to be stored. N/A N/A N/A N/A self _traj v_storage_service conn N/A N/A self _pipe N/A 1 N/A N/A N/A N/A N/A self _traj v_storage_service send_done N/A N/A N/A N/A self _pipe_process join N/A N/A N/A N/A N/A self _pipe N/A 1 close N/A N/A N/A N/A N/A self _pipe N/A 0 close N/A N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_NETLOCK N/A N/A self _lock_process None N/A N/A N/A N/A N/A self _lock send_done N/A N/A N/A N/A self _lock finalize N/A N/A N/A N/A self _lock_process join N/A N/A N/A N/A N/A self _wrap_mode N/A pypetconstants WRAP_MODE_NETQUEUE N/A N/A self _queue_process None N/A N/A N/A N/A N/A self _queue send_done N/A N/A N/A N/A self _queue finalize N/A N/A N/A N/A self _queue_process join N/A N/A N/A self _manager None N/A N/A N/A N/A N/A self _manager shutdown N/A N/A self _manager None N/A N/A self _queue_process None N/A N/A self _queue None N/A N/A self _queue_wrapper None N/A N/A self _lock None N/A N/A self _lock_wrapper None N/A N/A self _lock_process None N/A N/A self _reference_wrapper None N/A N/A self _pipe None N/A N/A self _pipe_process None N/A N/A self _pipe_wrapper None N/A N/A self _logging_manager None N/A N/A N/A self _traj _storage_service N/A self _storage_service N/A __del__ N/A N/A self N/A N/A N/A N/A N/A self finalize N/A N/A prefix_naming