Module Expr Str Import alias ImportFrom alias ImportFrom alias ImportFrom alias alias alias alias alias alias ImportFrom alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias alias ImportFrom alias If CompareEq NameLoad Str body Assign NameStore Num orelse Assign NameStore Num Assign NameStore Num If CompareEq NameLoad Str body Assign NameStore Num orelse Assign NameStore Num Assign NameStore Num Assign NameStore Dict Assign NameStore Num Assign NameStore Dict Assign NameStore Num Assign NameStore Num Assign NameStore Dict Assign NameStore Num Assign NameStore Num Assign NameStore Num Assign NameStore Dict Assign NameStore ListLoad Num Num For NameStore Call NameLoad Num BinOpAdd Call NameLoad NameLoad Num body AugAssignAdd NameStore BinOpMult ListLoad BinOpAdd Call NameLoad BinOpPow Num NameLoad NameLoad Num BinOpPow Num BinOpSub NameLoad Num FunctionDef arguments args NameParam defaults body Expr Str Assign AttributeStore NameLoad attr Num Assign AttributeStore NameLoad attr NameLoad FunctionDef arguments args NameParam defaults kwarg body Assign NameStore AttributeLoad NameLoad attr If CompareLtE NameLoad NameLoad body Return BinOpRShift AttributeLoad NameLoad attr BinOpSub NameLoad NameLoad Assign NameStore Call NameLoad BinOpAdd BinOpMult NameLoad Num Num Assign AttributeStore NameLoad attr Call NameLoad NameLoad NameLoad Assign AttributeStore NameLoad attr NameLoad Return BinOpRShift AttributeLoad NameLoad attr BinOpSub NameLoad NameLoad decorator_list Assign AttributeStore NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr AttributeLoad NameLoad attr Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str FunctionDef arguments args NameParam NameParam defaults NameLoad body Assign NameStore BinOpAdd NameLoad Num Assign NameStore Call NameLoad NameLoad If CompareIn NameLoad TupleLoad NameLoad NameLoad body AugAssignAdd NameStore Num Return Call NameLoad Num NameLoad UnaryOpUSub NameLoad Call NameLoad NameLoad NameLoad NameLoad decorator_list Assign AttributeStore NameLoad attr AttributeLoad NameLoad attr Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body If CompareEq BinOpSub NameLoad NameLoad Num body Assign NameStore Call NameLoad BinOpAdd BinOpMult Num NameLoad Num If BoolOpOr NameLoad BinOpBitAnd NameLoad Num body Return TupleLoad NameLoad BinOpMult NameLoad BinOpPow NameLoad Num NameLoad orelse Return TupleLoad UnaryOpUSub NameLoad BinOpMult NameLoad BinOpPow NameLoad Num NameLoad Assign NameStore BinOpFloorDiv BinOpAdd NameLoad NameLoad Num Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad Return TupleLoad BinOpAdd BinOpMult NameLoad NameLoad BinOpMult NameLoad NameLoad BinOpMult NameLoad NameLoad BinOpMult NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Str Assign NameStore Call NameLoad BinOpAdd BinOpDiv BinOpMult Num NameLoad Call AttributeLoad NameLoad attr NameLoad Num Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad Num NameLoad NameLoad Return BinOpFloorDiv BinOpLShift BinOpAdd NameLoad NameLoad NameLoad BinOpMult NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Expr Str Assign NameStore Num Assign NameStore NameLoad For TupleStore NameStore NameStore NameLoad body AugAssignAdd NameStore BinOpMult Call NameLoad NameLoad Call NameLoad Call NameLoad NameLoad BinOpAdd NameLoad NameLoad NameLoad Return BinOpRShift NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Return Call NameLoad ListLoad TupleLoad Num Num TupleLoad Num Num TupleLoad Num Num NameLoad NameLoad decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str Return Call NameLoad ListLoad TupleLoad Num Num TupleLoad Num Num TupleLoad Num Num NameLoad NameLoad decorator_list NameLoad Expr Str Assign NameStore Call NameLoad Num Assign NameStore Call NameLoad Num Assign NameStore Call NameLoad Num Assign NameStore Call NameLoad Num FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Str If CompareEq BinOpSub NameLoad NameLoad Num body Assign NameStore Call NameLoad BinOpMult BinOpMult BinOpSub BinOpMult Num NameLoad Num BinOpSub BinOpMult Num NameLoad Num BinOpSub BinOpMult Num NameLoad Num Assign NameStore BinOpFloorDiv BinOpMult BinOpPow NameLoad Num BinOpPow NameLoad Num Num Assign NameStore BinOpMult BinOpMult BinOpPow Num NameLoad NameLoad BinOpAdd NameLoad BinOpMult NameLoad NameLoad orelse If BoolOpAnd NameLoad CompareLt NameLoad Num body Print TupleLoad Str NameLoad NameLoad Assign NameStore BinOpFloorDiv BinOpAdd NameLoad NameLoad Num Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad BinOpAdd NameLoad Num NameLoad Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad BinOpAdd NameLoad Num NameLoad Assign NameStore BinOpMult NameLoad NameLoad Assign NameStore BinOpMult NameLoad NameLoad Assign NameStore BinOpAdd BinOpMult NameLoad NameLoad BinOpMult NameLoad NameLoad Return TupleLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad BinOpAdd BinOpDiv BinOpDiv NameLoad Num Num Num If NameLoad body Print TupleLoad Str NameLoad Assign TupleStore NameStore NameStore NameStore Call NameLoad Num NameLoad Num NameLoad Assign NameStore Call NameLoad BinOpLShift NameLoad BinOpMult Num NameLoad Assign NameStore BinOpFloorDiv BinOpMult BinOpMult NameLoad NameLoad NameLoad BinOpMult BinOpAdd NameLoad BinOpMult NameLoad NameLoad NameLoad Return NameLoad decorator_list NameLoad FunctionDef arguments args NameParam defaults body Return BinOpFloorDiv Call NameLoad NameLoad Num decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str If CompareEq BinOpSub NameLoad NameLoad Num body Return TupleLoad NameLoad Call NameLoad NameLoad Assign NameStore BinOpFloorDiv BinOpAdd NameLoad NameLoad Num Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Return TupleLoad BinOpAdd BinOpMult NameLoad NameLoad NameLoad BinOpMult NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Call NameLoad BinOpAdd BinOpDiv BinOpMult Num NameLoad Call AttributeLoad NameLoad attr NameLoad Num Assign TupleStore NameStore NameStore Call NameLoad Num NameLoad Return BinOpFloorDiv BinOpLShift BinOpAdd NameLoad NameLoad NameLoad NameLoad decorator_list NameLoad FunctionDef arguments args NameParam defaults body Expr Str AugAssignAdd NameStore Num Assign NameStore BinOpAdd Call NameLoad BinOpLShift NameLoad BinOpMult Num NameLoad BinOpLShift NameLoad NameLoad Return BinOpRShift NameLoad Num decorator_list NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad FunctionDef arguments args NameParam defaults body Assign NameStore BinOpAdd NameLoad Num Return Call NameLoad Call NameLoad Call NameLoad Call NameLoad NameLoad Num NameLoad BinOpSub NameLoad Num decorator_list NameLoad FunctionDef arguments args NameParam defaults body Return Call NameLoad Call NameLoad NameLoad NameLoad decorator_list NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad FunctionDef arguments args NameParam NameParam NameParam NameParam defaults NameLoad body Expr Str Assign TupleStore NameStore NameStore NameStore NameStore NameLoad Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If BoolOpAnd NameLoad CompareLt NameLoad Num body Raise Call NameLoad Str If CompareGtE NameLoad Num body Return Call NameLoad NameLoad BinOpMult BinOpPow Num NameLoad BinOpLShift NameLoad NameLoad NameLoad NameLoad If CompareEq NameLoad Num body If CompareEq NameLoad Num body If NameLoad body Return Call NameLoad NameLoad Call NameLoad NameLoad BinOpAdd NameLoad Num SubscriptLoad NameLoad Index NameLoad NameLoad NameLoad Return Call NameLoad NameLoad NameLoad NameLoad orelse If NameLoad body Return Call NameLoad Call NameLoad NameLoad BinOpAdd NameLoad Num SubscriptLoad NameLoad Index NameLoad UnaryOpUSub NameLoad NameLoad NameLoad Return Call NameLoad Call NameLoad NameLoad BinOpAdd NameLoad Num NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad BinOpAdd NameLoad Num NameLoad Return Call NameLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Str If CompareEq NameLoad Num body Return TupleLoad BinOpMult NameLoad NameLoad Num Assign NameStore Call NameLoad NameLoad Assign NameStore Num Assign NameStore BinOpMult Num BinOpAdd BinOpAdd NameLoad BinOpMult Num Call NameLoad NameLoad Num Assign TupleStore NameStore NameStore NameStore NameStore NameLoad While Num body If BinOpBitAnd NameLoad Num body Assign NameStore BinOpMult NameLoad NameLoad Assign NameStore BinOpAdd NameLoad NameLoad AugAssignAdd NameStore BinOpSub NameLoad Num Assign NameStore BinOpAdd NameLoad SubscriptLoad NameLoad Index Call NameLoad BinOpRShift NameLoad NameLoad If CompareGt NameLoad NameLoad body Assign NameStore BinOpRShift NameLoad BinOpSub NameLoad NameLoad AugAssignAdd NameStore BinOpSub NameLoad NameLoad Assign NameStore NameLoad AugAssignSub NameStore Num If UnaryOpNot NameLoad body Break Assign NameStore BinOpMult NameLoad NameLoad Assign NameStore BinOpAdd NameLoad NameLoad Assign NameStore BinOpSub BinOpAdd NameLoad NameLoad Num Assign NameStore BinOpAdd NameLoad SubscriptLoad NameLoad Index Call NameLoad BinOpRShift NameLoad NameLoad If CompareGt NameLoad NameLoad body Assign NameStore BinOpRShift NameLoad BinOpSub NameLoad NameLoad AugAssignAdd NameStore BinOpSub NameLoad NameLoad Assign NameStore NameLoad Assign NameStore BinOpFloorDiv NameLoad Num Return TupleLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Assign NameStore Num TryExcept body Assign NameStore Call NameLoad NameLoad BinOpSub NameLoad BinOpMult NameLoad NameLoad Assign NameStore Call NameLoad Call NameLoad BinOpPow NameLoad BinOpDiv Num NameLoad handlers ExceptHandler type NameLoad body Assign NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad Num NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Num Assign NameStore NameLoad Assign NameStore NameLoad For NameStore Call NameLoad NameLoad BinOpAdd NameLoad NameLoad body Assign TupleStore NameStore NameStore Call NameLoad NameLoad BinOpSub NameLoad Num NameLoad Assign NameStore Call NameLoad NameLoad BinOpSub BinOpSub BinOpSub BinOpMult BinOpSub NameLoad Num NameLoad NameLoad NameLoad NameLoad Assign NameStore BinOpFloorDiv Call NameLoad NameLoad BinOpAdd BinOpSub BinOpMult Num NameLoad NameLoad NameLoad NameLoad Assign NameStore BinOpFloorDiv BinOpAdd NameLoad BinOpMult BinOpSub NameLoad Num Call NameLoad NameLoad BinOpSub NameLoad NameLoad NameLoad Assign NameStore NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults NameLoad body Expr Str Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If NameLoad body Raise Call NameLoad Str If UnaryOpNot NameLoad body If CompareEq NameLoad NameLoad body Return NameLoad If CompareEq NameLoad NameLoad body If CompareGt NameLoad Num body Return NameLoad If CompareEq NameLoad Num body Return NameLoad Return NameLoad If UnaryOpNot NameLoad body Return NameLoad If CompareLt NameLoad Num body Return NameLoad Return NameLoad Assign NameStore NameLoad If CompareLt NameLoad Num body If CompareEq NameLoad Num body Return NameLoad If CompareEq NameLoad Num body Return Call NameLoad NameLoad NameLoad NameLoad If CompareEq NameLoad Num body Return Call NameLoad NameLoad NameLoad NameLoad NameLoad Assign NameStore SubscriptLoad NameLoad Index NameLoad Assign NameStore NameLoad Assign NameStore Num AugAssignAdd NameStore NameLoad Assign NameStore UnaryOpUSub NameLoad If BoolOpAnd CompareGt NameLoad Num BoolOpOr CompareGtE NameLoad Num CompareLt NameLoad Call NameLoad BinOpAdd Num BinOpMult Num BinOpPow NameLoad Num body Assign NameStore BinOpAdd NameLoad Num Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad Num NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num NameLoad NameLoad If NameLoad body Return Call NameLoad NameLoad NameLoad BinOpSub NameLoad NameLoad NameLoad orelse Return NameLoad Assign NameStore BinOpSub BinOpAdd NameLoad BinOpMult Num NameLoad BinOpMod NameLoad NameLoad If CompareGt NameLoad Num body AugAssignAdd NameStore BinOpFloorDiv NameLoad Num Assign NameStore BinOpSub NameLoad BinOpMod NameLoad NameLoad Assign NameStore BinOpSub NameLoad NameLoad Assign NameStore Num Assign NameStore BinOpAdd NameLoad NameLoad If CompareLt NameLoad Num body Assign NameStore Num Assign NameStore UnaryOpUSub NameLoad If NameLoad body AugAssignAdd NameStore BinOpMod NameLoad NameLoad orelse AugAssignSub NameStore BinOpMod NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad Assign NameStore Num Assign NameStore BinOpSub BinOpFloorDiv BinOpSub BinOpAdd NameLoad NameLoad BinOpMult BinOpSub NameLoad Num NameLoad NameLoad NameLoad Assign NameStore Num If NameLoad body If BoolOpOr CompareEq NameLoad Str CompareEq NameLoad Str body Assign NameStore Num orelse If BoolOpOr CompareEq NameLoad Str CompareEq NameLoad Str body Assign NameStore Num Assign NameStore Call NameLoad BinOpAdd NameLoad NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad If NameLoad body Return Call NameLoad NameLoad NameLoad BinOpSub NameLoad NameLoad NameLoad orelse Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Expr Str Return Call NameLoad NameLoad Num NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Expr Str If CompareIn NameLoad NameLoad body Assign TupleStore NameStore NameStore SubscriptLoad NameLoad Index NameLoad If CompareGtE NameLoad NameLoad body Return BinOpRShift NameLoad BinOpSub NameLoad NameLoad Assign NameStore BinOpAdd NameLoad Num If CompareLtE NameLoad NameLoad body If CompareIs NameLoad NameLoad body Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore BinOpLShift NameLoad BinOpSub NameLoad NameLoad Assign NameStore BinOpAdd Call NameLoad NameLoad NameLoad BinOpMult NameLoad NameLoad orelse Assign NameStore Call NameLoad Call NameLoad Call NameLoad NameLoad BinOpAdd NameLoad Num NameLoad If CompareLt NameLoad NameLoad body Assign SubscriptStore NameLoad Index NameLoad TupleLoad NameLoad NameLoad Return BinOpRShift NameLoad BinOpSub NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Str Assign NameStore Num While Num body Assign NameStore BinOpRShift BinOpAdd NameLoad NameLoad Num If BoolOpAnd CompareGt NameLoad Num CompareLt Call NameLoad BinOpSub NameLoad NameLoad Num body Return NameLoad Assign NameStore Call NameLoad BinOpMult NameLoad NameLoad Assign NameStore NameLoad AugAssignAdd NameStore Num Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore NameStore NameStore NameLoad While NameLoad body Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad AugAssignAdd NameStore NameLoad AugAssignAdd NameStore BinOpLShift NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad BinOpSub NameLoad Num Assign NameStore BinOpRShift BinOpMult NameLoad Call NameLoad BinOpLShift NameLoad NameLoad NameLoad Assign NameStore NameStore NameStore NameLoad While NameLoad body Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad AugAssignAdd NameStore NameLoad Assign NameStore BinOpAdd BinOpLShift NameLoad NameLoad BinOpLShift NameLoad Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad Return BinOpFloorDiv BinOpLShift Call NameLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults Num body Expr Str For NameStore Call NameLoad NameLoad body Assign NameStore Call NameLoad BinOpLShift NameLoad NameLoad Assign NameStore BinOpLShift NameLoad NameLoad Assign NameStore BinOpFloorDiv BinOpLShift BinOpSub NameLoad NameLoad NameLoad BinOpAdd NameLoad NameLoad Assign NameStore CompareLt NameLoad Num If NameLoad body Assign NameStore UnaryOpUSub NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore NameLoad Assign NameStore BinOpFloorDiv NameLoad Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore Num While NameLoad body AugAssignAdd NameStore BinOpFloorDiv NameLoad NameLoad AugAssignAdd NameStore Num AugAssignAdd NameStore BinOpFloorDiv NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad AugAssignAdd NameStore Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpLShift BinOpAdd NameLoad NameLoad BinOpAdd Num NameLoad If NameLoad body Return UnaryOpUSub NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore BinOpRShift NameLoad BinOpSub NameLoad NameLoad Assign NameStore SubscriptLoad NameLoad Index NameLoad Assign NameStore BinOpSub NameLoad NameLoad If CompareIn TupleLoad NameLoad NameLoad NameLoad body Assign TupleStore NameStore NameStore SubscriptLoad NameLoad Index TupleLoad NameLoad NameLoad orelse Assign NameStore BinOpLShift NameLoad BinOpSub NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad Num Assign SubscriptStore NameLoad Index TupleLoad NameLoad NameLoad TupleLoad NameLoad NameLoad AugAssignRShift NameStore NameLoad AugAssignRShift NameStore NameLoad Assign NameStore BinOpFloorDiv BinOpLShift BinOpSub NameLoad NameLoad NameLoad NameLoad Assign NameStore BinOpFloorDiv BinOpLShift NameLoad NameLoad BinOpAdd BinOpLShift NameLoad NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore NameLoad Assign NameStore BinOpFloorDiv NameLoad Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore Num While NameLoad body AugAssignAdd NameStore BinOpFloorDiv NameLoad NameLoad AugAssignAdd NameStore Num AugAssignAdd NameStore BinOpFloorDiv NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad AugAssignAdd NameStore Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpLShift BinOpAdd NameLoad NameLoad Num Return BinOpAdd NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Expr Str Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If UnaryOpNot NameLoad body If CompareEq NameLoad NameLoad body Return NameLoad If CompareEq NameLoad NameLoad body Return NameLoad If CompareEq NameLoad NameLoad body Return NameLoad If NameLoad body Raise Call NameLoad Str Assign NameStore BinOpAdd NameLoad Num If CompareEq NameLoad Num body If UnaryOpNot NameLoad body Return NameLoad Return Call NameLoad BinOpMult NameLoad Call NameLoad NameLoad UnaryOpUSub NameLoad NameLoad NameLoad Assign NameStore BinOpAdd NameLoad NameLoad Assign NameStore Call NameLoad NameLoad If CompareLtE NameLoad Num body Assign NameStore BinOpSub Num NameLoad If NameLoad body Assign NameStore BinOpSub BinOpLShift NameLoad NameLoad NameLoad orelse Assign NameStore BinOpSub NameLoad BinOpLShift NameLoad BinOpSub NameLoad Num Assign NameStore Call NameLoad NameLoad Assign NameStore BinOpSub NameLoad NameLoad If CompareGt NameLoad NameLoad body Assign NameStore Call NameLoad NameLoad NameLoad BinOpSub NameLoad NameLoad NameLoad NameLoad Str Return Call NameLoad NameLoad NameLoad NameLoad NameLoad orelse AugAssignAdd NameStore NameLoad If CompareGt NameLoad Num body If CompareGt Call NameLoad NameLoad NameLoad body Return Call NameLoad BinOpMult NameLoad Call NameLoad NameLoad UnaryOpUSub NameLoad NameLoad NameLoad If CompareLtE NameLoad NameLoad body Assign NameStore Call NameLoad Call NameLoad NameLoad BinOpSub NameLoad NameLoad NameLoad If NameLoad body AugAssignAdd NameStore BinOpMult NameLoad Call NameLoad NameLoad orelse Assign NameStore BinOpFloorDiv UnaryOpUSub NameLoad NameLoad Assign NameStore BinOpSub NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad AugAssignAdd NameStore UnaryOpUSub NameLoad Assign NameStore UnaryOpUSub Call NameLoad Call NameLoad NameLoad NameLoad NameLoad AugAssignSub NameStore BinOpMult NameLoad Call NameLoad NameLoad Return Call NameLoad NameLoad UnaryOpUSub NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Str If UnaryOpNot SubscriptLoad NameLoad Index Num body Assign TupleStore NameStore NameStore TupleLoad NameLoad NameLoad If UnaryOpNot SubscriptLoad NameLoad Index Num body If UnaryOpNot SubscriptLoad NameLoad Index Num body If CompareEqEq NameLoad NameLoad NameLoad body Return NameLoad If CompareIn NameLoad TupleLoad NameLoad NameLoad body Return NameLoad Return NameLoad If CompareEq NameLoad NameLoad body Return Call NameLoad Call NameLoad NameLoad NameLoad NameLoad If CompareEq NameLoad NameLoad body Return NameLoad Return NameLoad Assign NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad Assign NameStore Num Assign NameStore Call NameLoad NameLoad NameLoad BinOpAdd NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad Num Assign NameStore BinOpAdd SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num If BoolOpOr CompareEq NameLoad NameLoad CompareLt NameLoad BinOpFloorDiv UnaryOpUSub NameLoad Num body Assign NameStore Call NameLoad NameLoad NameLoad BinOpSub BinOpAdd NameLoad NameLoad Call NameLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num Return Call NameLoad Call NameLoad NameLoad NameLoad NameLoad Num decorator_list FunctionDef arguments args NameParam NameParam defaults body If CompareGtE NameLoad Num body Assign NameStore Call AttributeLoad NameLoad attr BinOpDiv Call NameLoad BinOpRShift NameLoad BinOpSub NameLoad Num BinOpPow Num Num orelse Assign NameStore Call AttributeLoad NameLoad attr BinOpDiv Call NameLoad NameLoad BinOpPow Num NameLoad Assign NameStore Num Assign NameStore Call NameLoad BinOpRShift Call NameLoad BinOpMult NameLoad BinOpPow Num Num BinOpSub Num NameLoad Assign NameStore Num For NameStore Call NameLoad NameLoad NameLoad body AugAssignAdd NameStore NameLoad Assign NameStore BinOpLShift NameLoad BinOpSub NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore BinOpFloorDiv BinOpLShift NameLoad NameLoad NameLoad Assign NameStore BinOpFloorDiv BinOpLShift BinOpSub NameLoad Call NameLoad NameLoad BinOpSub NameLoad NameLoad NameLoad BinOpAdd BinOpLShift NameLoad NameLoad BinOpRShift BinOpPow NameLoad Num NameLoad Assign NameStore BinOpSub NameLoad NameLoad Assign NameStore NameLoad Return Call NameLoad NameLoad BinOpSub NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign NameStore BinOpAdd BinOpLShift Num Call NameLoad BinOpSub NameLoad Num Num Assign NameStore BinOpSub NameLoad NameLoad If CompareIn TupleLoad NameLoad NameLoad NameLoad body Assign TupleStore NameStore NameStore SubscriptLoad NameLoad Index TupleLoad NameLoad NameLoad orelse Assign NameStore BinOpLShift NameLoad BinOpSub NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad Assign SubscriptStore NameLoad Index TupleLoad NameLoad NameLoad TupleLoad NameLoad NameLoad Return TupleLoad BinOpRShift NameLoad NameLoad BinOpRShift NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign NameStore BinOpRShift NameLoad BinOpSub NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore BinOpSub NameLoad NameLoad Assign NameStore NameStore BinOpFloorDiv BinOpLShift NameLoad NameLoad BinOpAdd BinOpAdd BinOpRShift BinOpPow NameLoad Num NameLoad BinOpRShift BinOpMult NameLoad NameLoad NameLoad BinOpLShift NameLoad NameLoad Assign NameStore BinOpRShift BinOpPow NameLoad Num NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpFloorDiv NameLoad Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore Num While NameLoad body AugAssignAdd NameStore BinOpFloorDiv NameLoad NameLoad AugAssignAdd NameStore Num AugAssignAdd NameStore BinOpFloorDiv NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad AugAssignAdd NameStore Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpSub NameLoad NameLoad Return BinOpAdd NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body If UnaryOpNot NameLoad body Return Call NameLoad Call NameLoad NameLoad NameLoad Num Return Call NameLoad Call NameLoad Call NameLoad NameLoad SubscriptLoad NameLoad Index NameLoad Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If UnaryOpNot NameLoad body If CompareEq NameLoad NameLoad body Return NameLoad If CompareEq NameLoad NameLoad body Return Call NameLoad Num NameLoad NameLoad If CompareEq NameLoad NameLoad body Return Call NameLoad Num NameLoad NameLoad Return NameLoad Assign NameStore BinOpAdd NameLoad NameLoad If CompareGt NameLoad BinOpAdd NameLoad Num body Return Call NameLoad NameLoad NameLoad NameLoad If CompareGt UnaryOpUSub NameLoad BinOpAdd NameLoad Num body Return Call NameLoad NameLoad BinOpSub Num NameLoad NameLoad NameLoad Assign NameStore BinOpAdd BinOpAdd NameLoad Num Call NameLoad NameLoad If CompareGtE NameLoad Num body Assign NameStore Call NameLoad Num NameLoad NameLoad Assign NameStore NameLoad orelse Assign NameStore NameLoad Assign NameStore Call NameLoad NameLoad NameLoad If NameLoad body Assign NameStore UnaryOpUSub NameLoad If CompareLt NameLoad NameLoad body Assign NameStore Call NameLoad NameLoad NameLoad orelse Assign NameStore Call NameLoad NameLoad NameLoad If NameLoad body Assign NameStore BinOpSub BinOpAdd BinOpRShift Call NameLoad NameLoad Num Num NameLoad If NameLoad body Assign NameStore UnaryOpUSub NameLoad Return Call NameLoad NameLoad UnaryOpUSub NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults NameLoad body Assign TupleStore NameStore NameStore NameStore NameStore NameLoad Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If UnaryOpNot NameLoad body If BoolOpAnd CompareEq NameLoad NameLoad CompareNotEq NameLoad NameLoad body If CompareGtE Call NameLoad NameLoad Num body Return NameLoad Return Call NameLoad NameLoad NameLoad If CompareIn NameLoad TupleLoad NameLoad NameLoad body If CompareIn NameLoad TupleLoad NameLoad NameLoad body Return NameLoad If CompareEq NameLoad NameLoad body Return Call NameLoad Call NameLoad NameLoad NameLoad Num Return Call NameLoad Call NameLoad Call NameLoad NameLoad SubscriptLoad NameLoad Index NameLoad Num Return NameLoad If NameLoad body Return Call NameLoad Call NameLoad Call NameLoad NameLoad NameLoad NameLoad SubscriptLoad NameLoad Index NameLoad If UnaryOpNot NameLoad body If CompareEq NameLoad NameLoad body Return NameLoad If CompareEq NameLoad NameLoad body Return NameLoad If CompareEq NameLoad NameLoad body Return Call NameLoad NameLoad NameLoad If CompareEq NameLoad NameLoad body Return NameLoad Return Call NameLoad Call NameLoad NameLoad NameLoad Num Assign NameStore Call NameLoad Call NameLoad NameLoad NameLoad BinOpAdd NameLoad Num BinOpAdd NameLoad Num If NameLoad body Return Call NameLoad Call NameLoad BinOpAdd NameLoad Num NameLoad NameLoad NameLoad orelse Return Call NameLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If BoolOpAnd CompareGt BinOpAdd NameLoad NameLoad Num CompareNotIn NameLoad TupleLoad NameLoad NameLoad body Raise Call NameLoad Str Assign NameStore BinOpAdd NameLoad Num Assign NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Call NameLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad Return Call NameLoad Call NameLoad NameLoad NameLoad NameLoad Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If CompareGt BinOpAdd NameLoad NameLoad Num body If CompareNotIn NameLoad TupleLoad NameLoad NameLoad body Raise Call NameLoad Str If CompareEq NameLoad NameLoad body Return Call NameLoad NameLoad NameLoad Assign NameStore BinOpAdd NameLoad Num Assign NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad Return Call NameLoad Call NameLoad NameLoad NameLoad NameLoad Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Assign NameStore BinOpAdd NameLoad Num Assign TupleStore NameStore NameStore NameStore NameStore NameLoad Assign NameStore BinOpAdd NameLoad NameLoad If CompareLt NameLoad Num body If CompareLt NameLoad UnaryOpUSub NameLoad body Return Call NameLoad NameLoad BinOpSub Num NameLoad NameLoad NameLoad AugAssignAdd NameStore UnaryOpUSub NameLoad Assign NameStore Call NameLoad Call NameLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad Call NameLoad NameLoad NameLoad NameLoad If NameLoad body Return Call NameLoad Call NameLoad NameLoad NameLoad SubscriptLoad NameLoad Index NameLoad orelse Return Call NameLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Assign NameStore BinOpAdd NameLoad Num If CompareEq Call NameLoad NameLoad NameLoad Num body Raise Call NameLoad Str Assign NameStore Call NameLoad Call NameLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Return Call NameLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If BoolOpAnd UnaryOpNot NameLoad NameLoad body If CompareIn NameLoad TupleLoad NameLoad NameLoad body Return NameLoad Raise Call NameLoad Str Assign NameStore BinOpAdd NameLoad NameLoad If CompareGt NameLoad Num body If BoolOpAnd CompareEq NameLoad Num CompareEq NameLoad Num body Return SubscriptLoad ListLoad NameLoad NameLoad Index NameLoad Raise Call NameLoad Str Assign NameStore BinOpAdd NameLoad Num If CompareLt NameLoad Num body If CompareLt NameLoad UnaryOpUSub NameLoad body Return Call NameLoad NameLoad NameLoad NameLoad NameLoad AugAssignAdd NameStore UnaryOpUSub NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad Return Call NameLoad Call NameLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If UnaryOpNot NameLoad body If CompareEq NameLoad NameLoad body Return NameLoad Return NameLoad Assign NameStore Call NameLoad BinOpAdd NameLoad NameLoad If CompareGtE NameLoad Num body If BoolOpOr CompareLt NameLoad Num CompareLtE NameLoad Call NameLoad NameLoad body Return Call NameLoad Call NameLoad Call NameLoad NameLoad NameLoad NameLoad Assign NameStore BinOpAdd BinOpAdd NameLoad NameLoad Num Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad Call NameLoad NameLoad Num NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults Num body Expr Str If CompareLt NameLoad Num body Assign NameStore UnaryOpUSub NameLoad Assign NameStore Num orelse Assign NameStore Num Assign NameStore Call NameLoad BinOpMult Num BinOpPow NameLoad Num Assign NameStore BinOpSub Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad Num BinOpAdd NameLoad NameLoad Assign NameStore BinOpAdd Num BinOpMult Num Call NameLoad NameLoad UnaryOpUSub NameLoad Assign NameStore BinOpAdd NameLoad NameLoad AugAssignLShift NameStore BinOpSub NameLoad NameLoad Assign NameStore BinOpLShift NameLoad NameLoad Assign NameStore CompareEq NameLoad Num If CompareLt NameLoad NameLoad body Assign NameStore NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore NameStore NameLoad Assign NameStore Num While NameLoad body AugAssignFloorDiv NameStore BinOpMult BinOpSub NameLoad Num NameLoad AugAssignAdd NameStore NameLoad AugAssignAdd NameStore Num AugAssignFloorDiv NameStore BinOpMult BinOpSub NameLoad Num NameLoad AugAssignAdd NameStore NameLoad AugAssignAdd NameStore Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad If NameLoad body Assign NameStore BinOpAdd BinOpSub NameLoad NameLoad NameLoad orelse Assign NameStore BinOpAdd BinOpAdd NameLoad NameLoad NameLoad orelse Assign NameStore Call NameLoad BinOpMult Num BinOpPow NameLoad Num Assign NameStore NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore ListLoad NameLoad NameLoad For NameStore Call NameLoad Num NameLoad body Expr Call AttributeLoad NameLoad attr BinOpRShift BinOpMult SubscriptLoad NameLoad Index Num NameLoad NameLoad Assign NameStore BinOpMult ListLoad NameLoad NameLoad Assign NameStore Num While NameLoad body For NameStore Call NameLoad NameLoad body AugAssignFloorDiv NameStore BinOpMult BinOpSub NameLoad Num NameLoad If BoolOpAnd NameLoad BinOpBitAnd NameLoad Num body AugAssignSub SubscriptStore NameLoad Index NameLoad NameLoad orelse AugAssignAdd SubscriptStore NameLoad Index NameLoad NameLoad AugAssignAdd NameStore Num Assign NameStore BinOpRShift BinOpMult NameLoad SubscriptLoad NameLoad Index Num NameLoad For NameStore Call NameLoad Num NameLoad body Assign SubscriptStore NameLoad Index NameLoad BinOpRShift BinOpMult SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad NameLoad Assign NameStore BinOpAdd Call NameLoad NameLoad NameLoad If CompareEq NameLoad Num body Assign NameStore Call NameLoad BinOpSub BinOpMult NameLoad NameLoad BinOpLShift NameLoad NameLoad If NameLoad body Assign NameStore BinOpSub NameLoad NameLoad orelse Assign NameStore BinOpAdd NameLoad NameLoad For NameStore Call NameLoad NameLoad body Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Return BinOpRShift NameLoad NameLoad orelse Assign NameStore BinOpSub NameLoad Num For NameStore Call NameLoad NameLoad body Assign NameStore BinOpSub BinOpRShift BinOpMult NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad Call NameLoad BinOpSub BinOpLShift NameLoad NameLoad BinOpMult NameLoad NameLoad If NameLoad body Assign NameStore UnaryOpUSub NameLoad Return TupleLoad BinOpRShift NameLoad NameLoad BinOpRShift NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str If CompareGt NameLoad NameLoad body Return Call NameLoad NameLoad NameLoad Num Assign NameStore Call NameLoad BinOpPow NameLoad Num AugAssignAdd NameStore NameLoad Assign NameStore NameStore BinOpLShift NameLoad NameLoad Assign NameStore Num Assign NameStore NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad While NameLoad body AugAssignFloorDiv NameStore NameLoad AugAssignAdd NameStore NameLoad AugAssignAdd NameStore Num AugAssignFloorDiv NameStore NameLoad AugAssignAdd NameStore NameLoad AugAssignAdd NameStore Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad Assign NameStore BinOpAdd NameLoad NameLoad Assign NameStore NameLoad While NameLoad body Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad AugAssignSub NameStore Num Return BinOpRShift NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str If CompareGt NameLoad NameLoad body Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Num Return TupleLoad BinOpAdd NameLoad NameLoad BinOpSub NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad Assign NameStore BinOpFloorDiv BinOpLShift NameLoad BinOpAdd NameLoad NameLoad NameLoad Return TupleLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str If CompareGt NameLoad NameLoad body Return Call NameLoad NameLoad NameLoad Num Assign NameStore BinOpSub NameLoad NameLoad Assign NameStore BinOpRShift NameLoad NameLoad Assign NameStore Call NameLoad NameLoad If CompareNotIn NameLoad NameLoad body Assign NameStore BinOpLShift NameLoad BinOpSub BinOpAdd Num NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad BinOpAdd Num NameLoad Num Assign SubscriptStore NameLoad Index NameLoad TupleLoad BinOpRShift NameLoad Num BinOpRShift NameLoad Num Assign TupleStore NameStore NameStore SubscriptLoad NameLoad Index NameLoad Assign NameStore BinOpSub NameLoad NameLoad AugAssignRShift NameStore NameLoad AugAssignRShift NameStore NameLoad AugAssignSub NameStore BinOpLShift NameLoad NameLoad Assign NameStore BinOpLShift NameLoad NameLoad Assign NameStore NameLoad Assign NameStore Num Assign NameStore UnaryOpUSub BinOpRShift BinOpMult NameLoad NameLoad NameLoad While NameLoad body AugAssignFloorDiv NameStore NameLoad AugAssignAdd NameStore NameLoad AugAssignAdd NameStore Num Assign NameStore BinOpRShift BinOpMult NameLoad NameLoad NameLoad AugAssignFloorDiv NameStore NameLoad AugAssignAdd NameStore NameLoad AugAssignAdd NameStore Num Assign NameStore UnaryOpUSub BinOpRShift BinOpMult NameLoad NameLoad NameLoad Return TupleLoad BinOpRShift BinOpSub BinOpMult NameLoad NameLoad BinOpMult NameLoad NameLoad NameLoad BinOpRShift BinOpAdd BinOpMult NameLoad NameLoad BinOpMult NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If NameLoad body Assign NameStore BinOpAdd NameLoad NameLoad Assign NameStore BinOpAdd NameLoad Num If NameLoad body Assign NameStore UnaryOpUSub NameLoad If BoolOpAnd CompareGt NameLoad Num CompareGtE NameLoad Num body Assign NameStore Call NameLoad BinOpAdd NameLoad Call NameLoad BinOpMult Num NameLoad Return Call NameLoad NameLoad BinOpLShift NameLoad NameLoad NameLoad NameLoad If CompareLt NameLoad UnaryOpUSub NameLoad body Return Call NameLoad NameLoad NameLoad NameLoad NameLoad If CompareGt NameLoad Num body Assign NameStore BinOpAdd NameLoad NameLoad Assign NameStore BinOpAdd NameLoad NameLoad If CompareGtE NameLoad Num body Assign NameStore BinOpLShift NameLoad NameLoad orelse Assign NameStore BinOpRShift NameLoad UnaryOpUSub NameLoad Assign NameStore Call NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad AugAssignRShift NameStore NameLoad orelse Assign NameStore BinOpAdd NameLoad NameLoad If CompareGtE NameLoad Num body Assign NameStore BinOpLShift NameLoad NameLoad orelse Assign NameStore BinOpRShift NameLoad UnaryOpUSub NameLoad Assign NameStore Num Assign NameStore Call NameLoad NameLoad NameLoad Return Call NameLoad NameLoad BinOpSub NameLoad NameLoad NameLoad NameLoad If UnaryOpNot NameLoad body Return NameLoad If CompareEq NameLoad NameLoad body Return NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults NameLoad Num body Expr Str Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If BoolOpAnd UnaryOpNot NameLoad NameLoad body If NameLoad body If CompareEq NameLoad NameLoad body Return NameLoad If CompareEq NameLoad NameLoad body Return NameLoad Return NameLoad If CompareEq NameLoad NameLoad body Return TupleLoad NameLoad NameLoad If CompareEq NameLoad NameLoad body Return TupleLoad NameLoad NameLoad Return TupleLoad NameLoad NameLoad Assign NameStore BinOpAdd NameLoad NameLoad Assign NameStore BinOpAdd NameLoad Num If CompareLt NameLoad Num body If CompareLt NameLoad UnaryOpUSub NameLoad body If NameLoad body Return Call NameLoad NameLoad BinOpSub Num NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Num NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad Return TupleLoad NameLoad NameLoad AugAssignAdd NameStore UnaryOpUSub NameLoad If CompareGt NameLoad Num body If CompareGt BinOpMult Num BinOpLShift Num BinOpSub NameLoad Num NameLoad body If NameLoad body Return Call NameLoad SubscriptLoad ListLoad NameLoad NameLoad Index NameLoad BinOpSub Num NameLoad NameLoad NameLoad Assign NameStore NameStore Call NameLoad Call NameLoad Call NameLoad NameLoad NameLoad NameLoad Num If NameLoad body Assign NameStore Call NameLoad NameLoad Return TupleLoad NameLoad NameLoad If CompareGt NameLoad Num body Assign NameStore BinOpAdd NameLoad NameLoad Assign NameStore BinOpAdd NameLoad NameLoad If CompareGtE NameLoad Num body Assign NameStore BinOpLShift NameLoad NameLoad orelse Assign NameStore BinOpRShift NameLoad UnaryOpUSub NameLoad Assign NameStore Call NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad AugAssignRShift NameStore NameLoad orelse Assign NameStore BinOpAdd NameLoad NameLoad If CompareGtE NameLoad Num body Assign NameStore BinOpLShift NameLoad NameLoad orelse Assign NameStore BinOpRShift NameLoad UnaryOpUSub NameLoad Assign NameStore Num Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore BinOpAdd NameLoad BinOpRShift NameLoad BinOpMult Num NameLoad Assign NameStore BinOpSub NameLoad BinOpRShift NameLoad BinOpMult Num NameLoad If NameLoad body Assign NameStore UnaryOpUSub NameLoad If NameLoad body Assign NameStore BinOpFloorDiv BinOpLShift NameLoad NameLoad NameLoad Return Call NameLoad NameLoad UnaryOpUSub NameLoad NameLoad NameLoad orelse Assign NameStore Call NameLoad NameLoad BinOpSub BinOpSub NameLoad NameLoad Num NameLoad NameLoad Assign NameStore Call NameLoad NameLoad BinOpSub BinOpSub NameLoad NameLoad Num NameLoad NameLoad Return TupleLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body If CompareGt NameLoad Num body Assign NameStore Num While Num body Assign NameStore BinOpLShift Num NameLoad Assign NameStore BinOpAdd BinOpAdd NameLoad NameLoad NameLoad Assign NameStore Call NameLoad BinOpSub NameLoad Num Assign NameStore BinOpRShift NameLoad Num Assign NameStore BinOpAdd NameLoad NameLoad If CompareGtE NameLoad Num body Assign NameStore BinOpLShift NameLoad NameLoad orelse Assign NameStore BinOpRShift NameLoad UnaryOpUSub NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad If CompareGt NameLoad NameLoad body Assign NameStore BinOpSub NameLoad NameLoad orelse Assign NameStore NameLoad If BinOpRShift NameLoad BinOpSub BinOpAdd NameLoad NameLoad Num body Assign NameStore Call NameLoad NameLoad Assign NameStore BinOpRShift NameLoad NameLoad Assign NameStore BinOpSub NameLoad NameLoad Break AugAssignAdd NameStore Num orelse AugAssignAdd NameStore UnaryOpUSub NameLoad Assign NameStore BinOpAdd NameLoad NameLoad If CompareGtE NameLoad Num body Assign NameStore BinOpLShift NameLoad NameLoad orelse Assign NameStore BinOpRShift NameLoad UnaryOpUSub NameLoad Assign NameStore Num Return TupleLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam defaults NameLoad Num NameLoad body Expr Str Assign TupleStore NameStore NameStore NameStore NameStore NameLoad If UnaryOpNot NameLoad body If NameLoad body Assign TupleStore NameStore NameStore TupleLoad NameLoad NameLoad orelse Assign TupleStore NameStore NameStore TupleLoad NameLoad NameLoad If CompareEq NameLoad Num body Return TupleLoad NameLoad NameLoad If CompareEq NameLoad Num body Return NameLoad If CompareEq NameLoad Num body Return NameLoad If CompareEq NameLoad Num body Return NameLoad Assign NameStore BinOpAdd NameLoad NameLoad Assign NameStore BinOpAdd NameLoad Num If CompareLt NameLoad Num body If CompareLt NameLoad UnaryOpUSub NameLoad body If NameLoad body Assign NameStore Call NameLoad NameLoad Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Num NameLoad NameLoad Assign NameStore Call NameLoad NameLoad BinOpSub Num NameLoad NameLoad NameLoad If CompareEq NameLoad Num body Return TupleLoad NameLoad NameLoad If CompareEq NameLoad Num body Return NameLoad If CompareEq NameLoad Num body Return NameLoad If CompareEq NameLoad Num body Return Call NameLoad NameLoad NameLoad NameLoad NameLoad If NameLoad body If CompareGtE NameLoad Num body If CompareEq NameLoad Num body Assign NameStore NameLoad Assign NameStore SubscriptLoad TupleLoad NameLoad NameLoad Index BinOpBitXor Call NameLoad BinOpBitAnd NameLoad Num NameLoad orelse If CompareEq NameLoad Num body Assign TupleStore NameStore NameStore TupleLoad NameLoad NameLoad orelse Assign TupleStore NameStore NameStore TupleLoad NameLoad NameLoad If CompareEq NameLoad Num body Return TupleLoad NameLoad NameLoad If CompareEq NameLoad Num body Return NameLoad If CompareEq NameLoad Num body Return NameLoad If CompareEq NameLoad Num body Return Call NameLoad NameLoad NameLoad NameLoad NameLoad Assign NameStore BinOpRShift BinOpAdd BinOpRShift NameLoad BinOpSub UnaryOpUSub NameLoad Num Num Num Assign NameStore BinOpSub NameLoad BinOpLShift NameLoad BinOpSub UnaryOpUSub NameLoad Num Assign NameStore BinOpAdd Call NameLoad NameLoad NameLoad Assign NameStore BinOpSub BinOpAdd NameLoad Num NameLoad Assign NameStore BinOpAdd NameLoad NameLoad If CompareGtE NameLoad Num body Assign NameStore BinOpLShift NameLoad NameLoad orelse Assign NameStore BinOpRShift NameLoad UnaryOpUSub NameLoad Assign NameStore BinOpRShift BinOpMult NameLoad Call NameLoad NameLoad NameLoad orelse Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore BinOpBitAnd NameLoad Num If CompareEq NameLoad Num body Assign TupleStore NameStore NameStore TupleLoad UnaryOpUSub NameLoad NameLoad orelse If CompareEq NameLoad Num body Assign TupleStore NameStore NameStore TupleLoad UnaryOpUSub NameLoad UnaryOpUSub NameLoad orelse If CompareEq NameLoad Num body Assign TupleStore NameStore NameStore TupleLoad NameLoad UnaryOpUSub NameLoad If NameLoad body Assign NameStore UnaryOpUSub NameLoad If CompareEq NameLoad Num body Assign NameStore Call NameLoad NameLoad UnaryOpUSub NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad UnaryOpUSub NameLoad NameLoad NameLoad Return TupleLoad NameLoad NameLoad If CompareEq NameLoad Num body Return Call NameLoad NameLoad UnaryOpUSub NameLoad NameLoad NameLoad If CompareEq NameLoad Num body Return Call NameLoad NameLoad UnaryOpUSub NameLoad NameLoad NameLoad If CompareEq NameLoad Num body Return Call NameLoad NameLoad NameLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Return Call NameLoad NameLoad NameLoad NameLoad Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Return Call NameLoad NameLoad NameLoad NameLoad Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Return Call NameLoad NameLoad NameLoad NameLoad Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Return Call NameLoad NameLoad NameLoad NameLoad Num Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Return Call NameLoad NameLoad NameLoad NameLoad Num Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Return Call NameLoad NameLoad NameLoad NameLoad Num Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Return SubscriptLoad Call NameLoad NameLoad NameLoad NameLoad Index Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Return SubscriptLoad Call NameLoad NameLoad NameLoad NameLoad Index Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Return Call NameLoad NameLoad NameLoad NameLoad keyword Num decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body If CompareIs NameLoad NameLoad body Assign NameStore Call NameLoad BinOpSub NameLoad Num Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore BinOpBitAnd NameLoad Num If CompareEq NameLoad Num body Return TupleLoad NameLoad NameLoad If CompareEq NameLoad Num body Return TupleLoad UnaryOpUSub NameLoad NameLoad If CompareEq NameLoad Num body Return TupleLoad UnaryOpUSub NameLoad UnaryOpUSub NameLoad If CompareEq NameLoad Num body Return TupleLoad NameLoad UnaryOpUSub NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body If CompareIs NameLoad NameLoad body Assign NameStore Call NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad NameLoad If CompareGtE NameLoad Num body Return BinOpLShift NameLoad NameLoad orelse Return BinOpRShift NameLoad UnaryOpUSub NameLoad decorator_list If CompareEq NameLoad Str body TryExcept body Import alias identifier Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr handlers ExceptHandler type TupleLoad NameLoad NameLoad body Print Str
N/A N/A 
This module implements computation of elementary transcendental
functions (powers, logarithms, trigonometric and hyperbolic
functions, inverse trigonometric and hyperbolic) for real
floating-point numbers.

For complex and interval implementations of the same functions,
see libmpc and libmpi.

 N/A math bisect bisect backend xrange backend MPZ MPZ_ZERO MPZ_ONE MPZ_TWO MPZ_FIVE BACKEND libmpf round_floor round_ceiling round_down round_up round_nearest round_fast ComplexResult bitcount bctable lshift rshift giant_steps sqrt_fixed from_int to_int from_man_exp to_fixed to_float from_float from_rational normalize fzero fone fnone fhalf finf fninf fnan mpf_cmp mpf_sign mpf_abs mpf_pos mpf_neg mpf_add mpf_sub mpf_mul mpf_div mpf_shift mpf_rdiv_int mpf_pow_int mpf_sqrt reciprocal_rnd negative_rnd mpf_perturb isqrt_fast libintmath ifib N/A N/A BACKEND python N/A N/A EXP_COSH_CUTOFF 600 N/A N/A EXP_COSH_CUTOFF 400 N/A EXP_SERIES_U_CUTOFF 1500 N/A N/A BACKEND python N/A N/A COS_SIN_CACHE_PREC 400 N/A N/A COS_SIN_CACHE_PREC 200 N/A COS_SIN_CACHE_STEP 8 N/A cos_sin_cache N/A N/A MAX_LOG_INT_CACHE 2000 N/A log_int_cache N/A N/A LOG_TAYLOR_PREC 2500 N/A LOG_TAYLOR_SHIFT 9 N/A log_taylor_cache N/A N/A LOG_AGM_MAG_PREC_RATIO 20 N/A ATAN_TAYLOR_PREC 3000 N/A ATAN_TAYLOR_SHIFT 7 N/A atan_taylor_cache N/A N/A cache_prec_steps N/A 22 22 N/A k N/A xrange 1 N/A N/A bitcount LOG_TAYLOR_PREC 1 N/A N/A cache_prec_steps N/A N/A N/A N/A min N/A 2 k LOG_TAYLOR_PREC 20 N/A 2 N/A k 1 constant_memo N/A N/A f N/A N/A N/A 
    Decorator for caching computed values of mathematical
    constants. This decorator should be applied to a
    function taking a single argument prec as input and
    returning a fixed-point value with the given precision.
     N/A N/A f memo_prec -1 N/A N/A f memo_val None g N/A N/A prec N/A kwargs N/A N/A memo_prec N/A f memo_prec N/A N/A prec memo_prec N/A N/A N/A N/A f memo_val N/A memo_prec prec N/A newprec N/A int N/A N/A prec 1.05 10 N/A N/A f memo_val N/A f newprec kwargs N/A N/A f memo_prec newprec N/A N/A N/A f memo_val N/A newprec prec N/A N/A N/A g __name__ N/A f __name__ N/A N/A g __doc__ N/A f __doc__ N/A g N/A def_mpf_constant N/A N/A fixed N/A N/A N/A 
    Create a function that computes the mpf value for a mathematical
    constant, given a function that computes the fixed-point value.

    Assumptions: the constant is positive and has magnitude ~= 1;
    the fixed-point function rounds to floor.
     f N/A N/A prec rnd N/A round_fast N/A N/A wp N/A prec 20 N/A v N/A fixed wp N/A N/A rnd N/A round_up round_ceiling N/A N/A v 1 N/A N/A normalize 0 v N/A wp N/A bitcount v prec rnd N/A N/A N/A f __doc__ N/A fixed __doc__ N/A f N/A bsp_acot N/A N/A q a b hyperbolic N/A N/A N/A N/A N/A b a 1 N/A N/A a1 N/A MPZ N/A N/A 2 a 3 N/A N/A hyperbolic N/A a 1 N/A N/A N/A MPZ_ONE N/A a1 N/A q 2 a1 N/A N/A N/A N/A MPZ_ONE N/A a1 N/A q 2 a1 N/A m N/A N/A a b 2 N/A N/A p1 q1 r1 N/A bsp_acot q a m hyperbolic N/A N/A p2 q2 r2 N/A bsp_acot q m b hyperbolic N/A N/A N/A N/A q2 p1 N/A r1 p2 N/A q1 q2 N/A r1 r2 N/A acot_fixed N/A N/A a prec hyperbolic N/A N/A N/A 
    Compute acot(a) or acoth(a) for an integer a with binary splitting; see
    http://numbers.computation.free.fr/Constants/Algorithms/splitting.html
     N/A N N/A int N/A N/A N/A 0.35 prec N/A N/A math log a 20 N/A N/A p q r N/A bsp_acot a 0 N hyperbolic N/A N/A N/A N/A p q prec N/A q a N/A machin N/A N/A coefs prec hyperbolic N/A False N/A N/A 
    Evaluate a Machin-like formula, i.e., a linear combination of
    acot(n) or acoth(n) for specific integer values of n, using fixed-
    point arithmetic. The input should be a list [(c, n), ...], giving
    c*acot[h](n) + ...
     N/A extraprec 10 N/A s MPZ_ZERO N/A N/A a b coefs N/A N/A s N/A N/A MPZ a N/A acot_fixed N/A MPZ b N/A prec extraprec hyperbolic N/A N/A s extraprec N/A ln2_fixed N/A N/A prec N/A N/A N/A 
    Computes ln(2). This is done with a hyperbolic Machin-type formula,
    with binary splitting at high precision.
     N/A N/A machin N/A N/A 18 26 N/A -2 4801 N/A 8 8749 prec True N/A constant_memo ln10_fixed N/A N/A prec N/A N/A N/A 
    Computes ln(10). This is done with a hyperbolic Machin-type formula.
     N/A N/A machin N/A N/A 46 31 N/A 34 49 N/A 20 161 prec True N/A constant_memo N/A 
For computation of pi, we use the Chudnovsky series:

             oo
             ___        k
      1     \       (-1)  (6 k)! (A + B k)
    ----- =  )     -----------------------
    12 pi   /___               3  3k+3/2
                    (3 k)! (k!)  C
            k = 0

where A, B, and C are certain integer constants. This series adds roughly
14 digits per term. Note that C^(3/2) can be extracted so that the
series contains only rational terms. This makes binary splitting very
efficient.

The recurrence formulas for the binary splitting were taken from
ftp://ftp.gmplib.org/pub/src/gmp-chudnovsky.c

Previously, Machin's formula was used at low precision and the AGM iteration
was used at high precision. However, the Chudnovsky series is essentially as
fast as the Machin formula at low precision and in practice about 3x faster
than the AGM at high precision (despite theoretically having a worse
asymptotic complexity), so there is no reason not to use it in all cases.

 N/A CHUD_A N/A MPZ 13591409 N/A CHUD_B N/A MPZ 545140134 N/A CHUD_C N/A MPZ 640320 N/A CHUD_D N/A MPZ 12 bs_chudnovsky N/A N/A a b level verbose N/A N/A N/A 
    Computes the sum from a to b of the series in the Chudnovsky
    formula. Returns g, p, q where p/q is the sum as an exact
    fraction and g is a temporary value used to save work
    for recursive calls.
     N/A N/A N/A b a 1 N/A N/A g N/A MPZ N/A N/A N/A N/A 6 b 5 N/A N/A 2 b 1 N/A N/A 6 b 1 N/A p N/A N/A N/A b 3 N/A CHUD_C 3 24 N/A q N/A N/A N/A -1 b g N/A CHUD_A N/A CHUD_B b N/A N/A N/A verbose N/A level 4 N/A N/A N/A   binary splitting a b N/A mid N/A N/A a b 2 N/A N/A g1 p1 q1 N/A bs_chudnovsky a mid N/A level 1 verbose N/A N/A g2 p2 q2 N/A bs_chudnovsky mid b N/A level 1 verbose N/A p N/A p1 p2 N/A g N/A g1 g2 N/A q N/A N/A q1 p2 N/A q2 g1 N/A N/A g p q N/A pi_fixed N/A N/A prec verbose verbose_base N/A False None N/A N/A 
    Compute floor(pi * 2**prec) as a big integer.

    This is done using Chudnovsky's series (see comments in
    libelefun.py for details).
     N/A N N/A int N/A N/A N/A prec 3.3219280948 14.181647462 2 N/A verbose N/A N/A N/A binary splitting with N = N N/A N/A g p q N/A bs_chudnovsky 0 N 0 verbose N/A sqrtC N/A isqrt_fast N/A CHUD_C N/A 2 prec N/A v N/A N/A N/A p CHUD_C sqrtC N/A N/A q N/A CHUD_A p CHUD_D N/A v N/A constant_memo degree_fixed N/A N/A prec N/A N/A N/A N/A N/A pi_fixed prec 180 N/A bspe N/A N/A a b N/A N/A N/A 
    Sum series for exp(1)-1 between a, b, returning the result
    as an exact fraction (p, q).
     N/A N/A N/A b a 1 N/A N/A N/A MPZ_ONE N/A MPZ b N/A m N/A N/A a b 2 N/A N/A p1 q1 N/A bspe a m N/A N/A p2 q2 N/A bspe m b N/A N/A N/A N/A p1 q2 p2 N/A q1 q2 N/A e_fixed N/A N/A prec N/A N/A N/A 
    Computes exp(1). This is done using the ordinary Taylor series for
    exp, with binary splitting. For a description of the algorithm,
    see:

        http://numbers.computation.free.fr/Constants/
            Algorithms/splitting.html
     N/A N N/A int N/A N/A N/A 1.1 prec N/A N/A math log prec 20 N/A N/A p q N/A bspe 0 N N/A N/A N/A N/A p q prec q N/A constant_memo phi_fixed N/A N/A prec N/A N/A N/A 
    Computes the golden ratio, (1+sqrt(5))/2
     N/A prec 10 N/A a N/A N/A isqrt_fast N/A MPZ_FIVE N/A 2 prec N/A MPZ_ONE prec N/A N/A a 11 N/A constant_memo N/A mpf_phi N/A def_mpf_constant phi_fixed N/A mpf_pi N/A def_mpf_constant pi_fixed N/A mpf_e N/A def_mpf_constant e_fixed N/A mpf_degree N/A def_mpf_constant degree_fixed N/A mpf_ln2 N/A def_mpf_constant ln2_fixed N/A mpf_ln10 N/A def_mpf_constant ln10_fixed ln_sqrt2pi_fixed N/A N/A prec N/A N/A N/A wp N/A prec 10 N/A N/A to_fixed N/A mpf_log N/A mpf_shift N/A mpf_pi wp 1 wp N/A prec 1 N/A constant_memo sqrtpi_fixed N/A N/A prec N/A N/A N/A N/A sqrt_fixed N/A pi_fixed prec prec N/A constant_memo N/A mpf_sqrtpi N/A def_mpf_constant sqrtpi_fixed N/A mpf_ln_sqrt2pi N/A def_mpf_constant ln_sqrt2pi_fixed mpf_pow N/A N/A s t prec rnd N/A round_fast N/A N/A 
    Compute s**t. Raises ComplexResult if s is negative and t is
    fractional.
     N/A N/A ssign sman sexp sbc s N/A N/A tsign tman texp tbc t N/A N/A ssign N/A texp 0 N/A N/A N/A ComplexResult negative number raised to a fractional power N/A N/A texp 0 N/A N/A N/A mpf_pow_int s N/A N/A -1 tsign N/A tman texp prec rnd N/A N/A texp -1 N/A N/A N/A tman 1 N/A N/A tsign N/A N/A N/A mpf_div fone N/A mpf_sqrt s N/A prec 10 N/A reciprocal_rnd N/A rnd prec rnd N/A N/A mpf_sqrt s prec rnd N/A N/A tsign N/A N/A N/A mpf_pow_int N/A mpf_sqrt s N/A prec 10 N/A reciprocal_rnd N/A rnd N/A tman prec rnd N/A N/A mpf_pow_int N/A mpf_sqrt s N/A prec 10 rnd tman prec rnd N/A c N/A mpf_log s N/A prec 10 rnd N/A N/A mpf_exp N/A mpf_mul t c prec rnd N/A int_pow_fixed N/A N/A y n prec N/A N/A N/A n-th power of a fixed point number with precision prec

       Returns the power in the form man, exp,
       man * 2**exp ~= y**n
     N/A N/A n 2 N/A N/A N/A N/A y y 0 N/A bc N/A bitcount y N/A exp 0 N/A workprec N/A 2 N/A N/A prec N/A 4 N/A bitcount n 4 N/A N/A _ pm pe pbc fone N/A 1 N/A N/A N/A n 1 N/A N/A pm N/A pm y N/A pe N/A pe exp N/A pbc N/A bc 2 N/A pbc N/A pbc N/A bctable N/A N/A int N/A pm pbc N/A N/A pbc workprec N/A N/A pm N/A pm N/A pbc workprec N/A pe N/A pbc workprec N/A pbc workprec N/A n 1 N/A N/A n N/A N/A N/A y N/A y y N/A exp N/A exp exp N/A bc N/A N/A bc bc 2 N/A bc N/A bc N/A bctable N/A N/A int N/A y bc N/A N/A bc workprec N/A N/A y N/A y N/A bc workprec N/A exp N/A bc workprec N/A bc workprec N/A n N/A n 2 N/A N/A pm pe N/A nthroot_fixed N/A N/A y n prec exp1 N/A N/A N/A start 50 N/A N/A N/A y1 N/A rshift y N/A prec N/A n start N/A r N/A MPZ N/A int N/A y1 N/A 1.0 n N/A N/A N/A OverflowError N/A N/A y1 N/A from_int y1 start N/A fn N/A from_int n N/A fn N/A mpf_rdiv_int 1 fn start N/A r N/A mpf_pow y1 fn start N/A r N/A to_int r N/A extra 10 N/A extra1 n N/A prevp start N/A p N/A giant_steps start N/A prec extra N/A N/A N/A pm pe N/A int_pow_fixed r N/A n 1 prevp N/A r2 N/A rshift pm N/A N/A N/A N/A N/A n 1 prevp p pe extra1 N/A B N/A N/A lshift y N/A N/A N/A 2 p prec extra1 r2 N/A r N/A N/A B N/A N/A n 1 N/A lshift r N/A p prevp n N/A prevp p N/A r N/A mpf_nthroot N/A N/A s n prec rnd N/A round_fast N/A N/A nth-root of a positive number

    Use the Newton method when faster, otherwise use x**(1/n)
     N/A N/A sign man exp bc s N/A sign N/A N/A N/A ComplexResult nth root of a negative number N/A N/A man N/A N/A N/A s fnan N/A N/A fnan N/A N/A s fzero N/A N/A N/A n 0 N/A N/A fzero N/A N/A n 0 N/A N/A fone N/A finf N/A N/A n N/A N/A fnan N/A N/A n 0 N/A N/A fzero N/A finf N/A flag_inverse False N/A N/A n 2 N/A N/A N/A n 0 N/A N/A fone N/A N/A n 1 N/A N/A N/A mpf_pos s prec rnd N/A N/A n -1 N/A N/A N/A mpf_div fone s prec rnd N/A rnd N/A reciprocal_rnd N/A rnd N/A flag_inverse True N/A extra_inverse 5 N/A prec extra_inverse N/A n N/A n N/A N/A N/A n 20 N/A N/A n 20000 N/A prec N/A int N/A 233 N/A 28.3 N/A n 0.62 N/A N/A prec2 N/A prec 10 N/A fn N/A from_int n N/A nth N/A mpf_rdiv_int 1 fn prec2 N/A r N/A mpf_pow s nth prec2 rnd N/A s N/A normalize N/A r N/A 0 N/A r N/A 1 N/A r N/A 2 N/A r N/A 3 prec rnd N/A flag_inverse N/A N/A N/A mpf_div fone s N/A prec extra_inverse rnd N/A N/A s N/A prec2 N/A N/A prec N/A 2 n N/A prec n N/A N/A n 10 N/A N/A prec2 N/A prec2 10 N/A prec2 N/A prec2 N/A prec2 n N/A shift N/A bc prec2 N/A sign1 0 N/A es N/A exp shift N/A N/A es 0 N/A N/A sign1 1 N/A es N/A es N/A sign1 N/A N/A shift N/A es n N/A N/A shift N/A es n N/A man N/A rshift man shift N/A extra 10 N/A exp1 N/A N/A N/A N/A exp shift N/A N/A n 1 prec2 n extra N/A rnd_shift 0 N/A flag_inverse N/A N/A N/A N/A rnd u N/A rnd c N/A N/A rnd_shift 1 N/A N/A N/A N/A rnd d N/A rnd f N/A N/A rnd_shift 1 N/A man N/A nthroot_fixed N/A man rnd_shift n prec2 exp1 N/A s N/A from_man_exp man exp1 prec rnd N/A flag_inverse N/A N/A N/A mpf_div fone s N/A prec extra_inverse rnd N/A N/A s N/A mpf_cbrt N/A N/A s prec rnd N/A round_fast N/A N/A cubic root of a positive number N/A N/A mpf_nthroot s 3 prec rnd N/A log_int_fixed N/A N/A n prec ln2 N/A None N/A N/A 
    Fast computation of log(n), caching the value for small n,
    intended for zeta sums.
     N/A N/A n log_int_cache N/A N/A N/A value vprec N/A log_int_cache N/A n N/A N/A vprec prec N/A N/A N/A value N/A vprec prec N/A wp N/A prec 10 N/A N/A wp LOG_TAYLOR_SHIFT N/A N/A N/A ln2 None N/A N/A ln2 N/A ln2_fixed wp N/A r N/A bitcount n N/A x N/A n N/A wp r N/A v N/A N/A log_taylor_cached x wp N/A r ln2 N/A N/A v N/A to_fixed N/A mpf_log N/A from_int n N/A wp 5 wp N/A N/A n MAX_LOG_INT_CACHE N/A N/A N/A log_int_cache N/A n N/A v wp N/A N/A v N/A wp prec N/A agm_fixed N/A N/A a b prec N/A N/A N/A 
    Fixed-point computation of agm(a,b), assuming
    a, b both close to unit magnitude.
     N/A i 0 N/A 1 N/A N/A anew N/A N/A a b 1 N/A N/A N/A i 4 N/A N/A abs N/A a anew 8 N/A N/A a N/A b N/A isqrt_fast N/A a b N/A a anew N/A i 1 N/A a N/A log_agm N/A N/A x prec N/A N/A N/A 
    Fixed-point computation of -log(x) = log(1/x), suitable
    for large precision. It is required that 0 < x < 1. The
    algorithm used is the Sasaki-Kanada formula

        -log(x) = pi/agm(theta2(x)^2,theta3(x)^2). [1]

    For faster convergence in the theta functions, x should
    be chosen closer to 0.

    Guard bits must be added by the caller.

    HYPOTHESIS: if x = 2^(-n), n bits need to be added to
    account for the truncation to a fixed-point number,
    and this is the only significant cancellation error.

    The number of bits lost to roundoff is small and can be
    considered constant.

    [1] Richard P. Brent, "Fast Algorithms for High-Precision
        Computation of Elementary Functions (extended abstract)",
        http://wwwmaths.anu.edu.au/~brent/pd/RNC7-Brent.pdf

     N/A x2 N/A N/A x x prec N/A s a b x2 N/A a N/A N/A b N/A N/A b x2 prec N/A a N/A N/A a b prec N/A s a N/A s N/A MPZ_ONE prec N/A s N/A N/A s s N/A prec 2 N/A s N/A N/A s N/A isqrt_fast N/A x prec prec N/A t a b x N/A a N/A N/A b N/A N/A b x2 prec N/A a N/A N/A a b prec N/A t a N/A t N/A N/A MPZ_ONE prec N/A t 1 N/A t N/A N/A t t prec N/A p N/A agm_fixed s t prec N/A N/A N/A N/A pi_fixed prec prec p N/A log_taylor N/A N/A x prec r N/A 0 N/A N/A 
    Fixed-point calculation of log(x). It is assumed that x is close
    enough to 1 for the Taylor series to converge quickly. Convergence
    can be improved by specifying r > 0 to compute
    log(x^(1/2^r))*2^r, at the cost of performing r square roots.

    The caller must provide sufficient guard bits.
     N/A i N/A xrange r N/A N/A x N/A isqrt_fast N/A x prec N/A one N/A MPZ_ONE prec N/A v N/A N/A N/A x one prec N/A x one N/A sign N/A v 0 N/A sign N/A N/A v N/A v N/A v2 N/A N/A v v prec N/A v4 N/A N/A v2 v2 prec N/A s0 v N/A s1 N/A v 3 N/A v N/A N/A v v4 prec N/A k 5 N/A v N/A N/A s0 N/A v k N/A k 2 N/A s1 N/A v k N/A v N/A N/A v v4 prec N/A k 2 N/A s1 N/A N/A s1 v2 prec N/A s N/A N/A s0 s1 N/A 1 r N/A sign N/A N/A N/A s N/A s N/A log_taylor_cached N/A N/A x prec N/A N/A N/A 
    Fixed-point computation of log(x), assuming x in (0.5, 2)
    and prec <= LOG_TAYLOR_PREC.
     N/A n N/A x N/A prec LOG_TAYLOR_SHIFT N/A cached_prec N/A cache_prec_steps N/A prec N/A dprec N/A cached_prec prec N/A N/A N/A n cached_prec log_taylor_cache N/A N/A N/A a log_a N/A log_taylor_cache N/A N/A n cached_prec N/A N/A a N/A n N/A cached_prec LOG_TAYLOR_SHIFT N/A log_a N/A log_taylor a cached_prec 8 N/A N/A log_taylor_cache N/A N/A n cached_prec N/A a log_a N/A a dprec N/A log_a dprec N/A u N/A N/A N/A x a prec a N/A v N/A N/A u prec N/A N/A MPZ_TWO prec u N/A v2 N/A N/A v v prec N/A v4 N/A N/A v2 v2 prec N/A s0 v N/A s1 N/A v 3 N/A v N/A N/A v v4 prec N/A k 5 N/A v N/A N/A s0 N/A v k N/A k 2 N/A s1 N/A v k N/A v N/A N/A v v4 prec N/A k 2 N/A s1 N/A N/A s1 v2 prec N/A s N/A N/A s0 s1 1 N/A N/A log_a s N/A mpf_log N/A N/A x prec rnd N/A round_fast N/A N/A 
    Compute the natural logarithm of the mpf value x. If x is negative,
    ComplexResult is raised.
     N/A N/A sign man exp bc x N/A N/A man N/A N/A N/A x fzero N/A N/A fninf N/A N/A x finf N/A N/A finf N/A N/A x fnan N/A N/A fnan N/A sign N/A N/A N/A ComplexResult logarithm of a negative number N/A wp N/A prec 20 N/A N/A man 1 N/A N/A N/A exp N/A N/A fzero N/A N/A from_man_exp N/A exp N/A ln2_fixed wp N/A wp prec rnd N/A mag N/A exp bc N/A abs_mag N/A abs mag N/A N/A abs_mag 1 N/A N/A tsign N/A 1 abs_mag N/A tsign N/A N/A tman N/A N/A MPZ_ONE bc man N/A N/A tman N/A man N/A MPZ_ONE N/A bc 1 N/A tbc N/A bitcount tman N/A cancellation N/A bc tbc N/A N/A cancellation wp N/A N/A t N/A normalize tsign tman N/A abs_mag bc tbc tbc n N/A N/A mpf_perturb t tsign prec rnd N/A N/A wp cancellation N/A N/A abs_mag 10000 N/A N/A N/A N/A bitcount abs_mag wp N/A N/A N/A from_man_exp N/A exp N/A ln2_fixed wp N/A wp prec rnd N/A N/A wp LOG_TAYLOR_PREC N/A N/A m N/A log_taylor_cached N/A lshift man N/A wp bc wp N/A mag N/A N/A m N/A mag N/A ln2_fixed wp N/A N/A optimal_mag N/A N/A wp LOG_AGM_MAG_PREC_RATIO N/A n N/A optimal_mag mag N/A x N/A mpf_shift x n N/A wp N/A optimal_mag N/A m N/A N/A log_agm N/A to_fixed x wp wp N/A m N/A n N/A ln2_fixed wp N/A N/A from_man_exp m N/A wp prec rnd N/A mpf_log_hypot N/A N/A a b prec rnd N/A N/A N/A 
    Computes log(sqrt(a^2+b^2)) accurately.
     N/A N/A N/A b N/A 1 N/A N/A N/A a b N/A b a N/A N/A N/A a N/A 1 N/A N/A N/A N/A b N/A 1 N/A N/A N/A a b fzero N/A N/A fninf N/A N/A fnan N/A a b N/A N/A fnan N/A finf N/A N/A a fzero N/A N/A N/A mpf_log N/A mpf_abs b prec rnd N/A N/A a fnan N/A N/A fnan N/A finf N/A a2 N/A mpf_mul a a N/A b2 N/A mpf_mul b b N/A extra 20 N/A h2 N/A mpf_add a2 b2 N/A prec extra N/A cancelled N/A mpf_add h2 fnone 10 N/A mag_cancelled N/A N/A cancelled N/A 2 N/A cancelled N/A 3 N/A N/A N/A cancelled fzero N/A mag_cancelled N/A N/A extra 2 N/A N/A h2 N/A mpf_add a2 b2 N/A N/A prec extra N/A min N/A a2 N/A 2 N/A b2 N/A 2 N/A N/A mpf_shift N/A mpf_log h2 prec rnd -1 N/A atan_newton N/A N/A x prec N/A N/A N/A N/A prec 100 N/A N/A r N/A N/A math atan N/A N/A int N/A x N/A prec 53 N/A 2.0 53 N/A N/A r N/A N/A math atan N/A N/A int x N/A 2.0 prec N/A prevp 50 N/A r N/A MPZ N/A N/A int N/A r N/A 2.0 53 N/A 53 prevp N/A extra_p 50 N/A wp N/A giant_steps prevp prec N/A N/A wp extra_p N/A r N/A r N/A wp prevp N/A N/A cos sin N/A cos_sin_fixed r wp N/A tan N/A N/A sin wp cos N/A a N/A N/A N/A tan N/A rshift x N/A prec wp wp N/A N/A MPZ_ONE wp N/A N/A tan 2 wp N/A r N/A r a N/A prevp wp N/A N/A rshift r N/A prevp prec N/A atan_taylor_get_cached N/A N/A n prec N/A N/A N/A prec2 N/A N/A 1 N/A bitcount N/A prec 1 20 N/A dprec N/A prec2 prec N/A N/A N/A n prec2 atan_taylor_cache N/A N/A N/A a atan_a N/A atan_taylor_cache N/A N/A n prec2 N/A N/A a N/A n N/A prec2 ATAN_TAYLOR_SHIFT N/A atan_a N/A atan_newton a prec2 N/A N/A atan_taylor_cache N/A N/A n prec2 N/A a atan_a N/A N/A N/A a dprec N/A atan_a dprec N/A atan_taylor N/A N/A x prec N/A N/A N/A n N/A x N/A prec ATAN_TAYLOR_SHIFT N/A N/A a atan_a N/A atan_taylor_get_cached n prec N/A d N/A x a N/A s0 v N/A N/A d prec N/A N/A N/A N/A a 2 prec N/A N/A a d prec N/A MPZ_ONE prec N/A v2 N/A N/A v 2 prec N/A v4 N/A N/A v2 v2 prec N/A s1 N/A v 3 N/A v N/A N/A v v4 prec N/A k 5 N/A v N/A N/A s0 N/A v k N/A k 2 N/A s1 N/A v k N/A v N/A N/A v v4 prec N/A k 2 N/A s1 N/A N/A s1 v2 prec N/A s N/A s0 s1 N/A N/A atan_a s N/A atan_inf N/A N/A sign prec rnd N/A N/A N/A N/A sign N/A N/A N/A mpf_shift N/A mpf_pi prec rnd -1 N/A N/A mpf_neg N/A mpf_shift N/A mpf_pi prec N/A negative_rnd N/A rnd -1 N/A mpf_atan N/A N/A x prec rnd N/A round_fast N/A N/A N/A sign man exp bc x N/A N/A man N/A N/A N/A x fzero N/A N/A fzero N/A N/A x finf N/A N/A N/A atan_inf 0 prec rnd N/A N/A x fninf N/A N/A N/A atan_inf 1 prec rnd N/A fnan N/A mag N/A exp bc N/A N/A mag N/A prec 20 N/A N/A N/A atan_inf sign prec rnd N/A N/A N/A mag N/A prec 20 N/A N/A N/A mpf_perturb x N/A 1 sign prec rnd N/A wp N/A N/A prec 30 N/A abs mag N/A N/A mag 2 N/A N/A x N/A mpf_rdiv_int 1 x wp N/A reciprocal True N/A N/A reciprocal False N/A t N/A to_fixed x wp N/A sign N/A N/A t N/A t N/A N/A wp ATAN_TAYLOR_PREC N/A N/A a N/A atan_taylor t wp N/A N/A a N/A atan_newton t wp N/A reciprocal N/A N/A a N/A N/A N/A N/A pi_fixed wp 1 1 a N/A sign N/A N/A a N/A a N/A N/A from_man_exp a N/A wp prec rnd N/A mpf_atan2 N/A N/A y x prec rnd N/A round_fast N/A N/A N/A xsign xman xexp xbc x N/A N/A ysign yman yexp ybc y N/A N/A yman N/A N/A N/A N/A y fzero N/A x fnan N/A N/A N/A N/A mpf_sign x 0 N/A N/A fzero N/A N/A mpf_pi prec rnd N/A N/A y N/A finf fninf N/A N/A N/A x N/A finf fninf N/A N/A fnan N/A N/A y finf N/A N/A N/A mpf_shift N/A mpf_pi prec rnd -1 N/A N/A mpf_neg N/A mpf_shift N/A mpf_pi prec N/A negative_rnd N/A rnd -1 N/A fnan N/A ysign N/A N/A N/A mpf_neg N/A mpf_atan2 N/A mpf_neg y x prec N/A negative_rnd N/A rnd N/A N/A xman N/A N/A N/A x fnan N/A N/A fnan N/A N/A x finf N/A N/A fzero N/A N/A x fninf N/A N/A N/A mpf_pi prec rnd N/A N/A y fzero N/A N/A fzero N/A N/A mpf_shift N/A mpf_pi prec rnd -1 N/A tquo N/A mpf_atan N/A mpf_div y x N/A prec 4 N/A prec 4 N/A xsign N/A N/A N/A mpf_add N/A mpf_pi N/A prec 4 tquo prec rnd N/A N/A N/A mpf_pos tquo prec rnd N/A mpf_asin N/A N/A x prec rnd N/A round_fast N/A N/A N/A sign man exp bc x N/A N/A N/A N/A bc exp 0 N/A x N/A fone fnone N/A N/A N/A ComplexResult asin(x) is real only for -1 <= x <= 1 N/A wp N/A prec 15 N/A a N/A mpf_mul x x N/A b N/A mpf_add fone N/A mpf_sqrt N/A mpf_sub fone a wp wp wp N/A c N/A mpf_div x b wp N/A N/A mpf_shift N/A mpf_atan c prec rnd 1 N/A mpf_acos N/A N/A x prec rnd N/A round_fast N/A N/A N/A sign man exp bc x N/A N/A N/A bc exp 0 N/A N/A N/A x N/A fone fnone N/A N/A N/A ComplexResult acos(x) is real only for -1 <= x <= 1 N/A N/A x fnone N/A N/A N/A mpf_pi prec rnd N/A wp N/A prec 15 N/A a N/A mpf_mul x x N/A b N/A mpf_sqrt N/A mpf_sub fone a wp wp N/A c N/A mpf_div b N/A mpf_add fone x wp wp N/A N/A mpf_shift N/A mpf_atan c prec rnd 1 N/A mpf_asinh N/A N/A x prec rnd N/A round_fast N/A N/A wp N/A prec 20 N/A N/A sign man exp bc x N/A mag N/A exp bc N/A N/A mag -8 N/A N/A N/A mag N/A wp N/A N/A N/A mpf_perturb x N/A 1 sign prec rnd N/A wp N/A mag N/A q N/A mpf_sqrt N/A mpf_add N/A mpf_mul x x fone wp wp N/A q N/A mpf_add N/A mpf_abs x q wp N/A sign N/A N/A N/A mpf_neg N/A mpf_log q prec N/A negative_rnd N/A rnd N/A N/A N/A mpf_log q prec rnd N/A mpf_acosh N/A N/A x prec rnd N/A round_fast N/A N/A wp N/A prec 15 N/A N/A N/A mpf_cmp x fone -1 N/A N/A N/A ComplexResult acosh(x) is real only for x >= 1 N/A q N/A mpf_sqrt N/A mpf_add N/A mpf_mul x x fnone wp wp N/A N/A mpf_log N/A mpf_add x q wp prec rnd N/A mpf_atanh N/A N/A x prec rnd N/A round_fast N/A N/A N/A sign man exp bc x N/A N/A N/A man exp N/A N/A N/A x N/A fzero fnan N/A N/A x N/A N/A ComplexResult atanh(x) is real only for -1 <= x <= 1 N/A mag N/A bc exp N/A N/A mag 0 N/A N/A N/A N/A mag 1 N/A man 1 N/A N/A N/A N/A finf fninf N/A sign N/A N/A ComplexResult atanh(x) is real only for -1 <= x <= 1 N/A wp N/A prec 15 N/A N/A mag -8 N/A N/A N/A mag N/A wp N/A N/A N/A mpf_perturb x sign prec rnd N/A wp N/A mag N/A a N/A mpf_add x fone wp N/A b N/A mpf_sub fone x wp N/A N/A mpf_shift N/A mpf_log N/A mpf_div a b wp prec rnd -1 N/A mpf_fibonacci N/A N/A x prec rnd N/A round_fast N/A N/A N/A sign man exp bc x N/A N/A man N/A N/A N/A x fninf N/A N/A fnan N/A x N/A size N/A abs N/A exp bc N/A N/A exp 0 N/A N/A N/A N/A size 10 N/A size N/A bitcount prec N/A N/A N/A from_int N/A ifib N/A to_int x prec rnd N/A wp N/A N/A prec size 20 N/A a N/A mpf_phi wp N/A b N/A mpf_add N/A mpf_shift a 1 fnone wp N/A u N/A mpf_pow a x wp N/A v N/A mpf_cos_pi x wp N/A v N/A mpf_div v u wp N/A u N/A mpf_sub u v wp N/A u N/A mpf_div u b prec rnd N/A u N/A exponential_series N/A N/A x prec type N/A 0 N/A N/A 
    Taylor series for cosh/sinh or cos/sin.

    type = 0 -- returns exp(x)  (slightly faster than cosh+sinh)
    type = 1 -- returns (cosh(x), sinh(x))
    type = 2 -- returns (cos(x), sin(x))
     N/A N/A x 0 N/A N/A x N/A x N/A sign 1 N/A N/A sign 0 N/A r N/A int N/A 0.5 N/A prec 0.5 N/A xmag N/A N/A bitcount x prec N/A r N/A max 0 N/A xmag r N/A extra N/A 10 N/A 2 N/A max r N/A xmag N/A wp N/A prec extra N/A x N/A extra r N/A one N/A MPZ_ONE wp N/A alt N/A type 2 N/A N/A prec EXP_SERIES_U_CUTOFF N/A N/A x2 a N/A N/A x x wp N/A x4 N/A N/A x2 x2 wp N/A s0 s1 MPZ_ZERO N/A k 2 N/A a N/A N/A a N/A N/A k 1 k N/A s0 a N/A k 2 N/A a N/A N/A k 1 k N/A s1 a N/A k 2 N/A a N/A N/A a x4 wp N/A s1 N/A N/A x2 s1 wp N/A alt N/A N/A c N/A N/A s1 s0 one N/A N/A c N/A N/A s1 s0 one N/A N/A u N/A int N/A 0.3 N/A prec 0.35 N/A x2 a N/A N/A x x wp N/A xpowers N/A one x2 N/A i N/A xrange 1 u N/A N/A N/A N/A xpowers append N/A N/A N/A xpowers N/A -1 x2 wp N/A sums N/A N/A MPZ_ZERO u N/A k 2 N/A a N/A N/A i N/A xrange u N/A N/A a N/A N/A k 1 k N/A N/A alt N/A k 2 N/A N/A N/A sums N/A i a N/A N/A N/A sums N/A i a N/A k 2 N/A a N/A N/A a N/A xpowers N/A -1 wp N/A i N/A xrange 1 u N/A N/A N/A sums N/A i N/A N/A N/A sums N/A i N/A xpowers N/A i wp N/A c N/A N/A sum sums one N/A N/A type 0 N/A N/A s N/A isqrt_fast N/A N/A c c N/A one wp N/A sign N/A N/A v N/A c s N/A N/A v N/A c s N/A i N/A xrange r N/A N/A v N/A N/A v v wp N/A N/A v extra N/A N/A pshift N/A wp 1 N/A i N/A xrange r N/A N/A c N/A N/A N/A c c pshift one N/A s N/A isqrt_fast N/A abs N/A N/A one wp N/A c c N/A sign N/A N/A s N/A s N/A N/A N/A c extra N/A s extra N/A exp_basecase N/A N/A x prec N/A N/A N/A 
    Compute exp(x) as a fixed-point number. Works for any x,
    but for speed should have |x| < 1. For an arbitrary number,
    use exp(x) = exp(x-m*log(2)) * 2^m where m = floor(x/log(2)).
     N/A N/A prec EXP_COSH_CUTOFF N/A N/A N/A exponential_series x prec 0 N/A r N/A int N/A prec 0.5 N/A prec r N/A s0 s1 N/A MPZ_ONE prec N/A k 2 N/A a x2 N/A N/A x x prec N/A a N/A N/A a k N/A s0 a N/A k 1 N/A a k N/A s1 a N/A k 1 N/A a N/A N/A a x2 prec N/A s1 N/A N/A s1 x prec N/A s N/A s0 s1 N/A u r N/A r N/A N/A s N/A N/A s s prec N/A r 1 N/A N/A s u N/A exp_expneg_basecase N/A N/A x prec N/A N/A N/A 
    Computation of exp(x), exp(-x)
     N/A N/A prec EXP_COSH_CUTOFF N/A N/A N/A cosh sinh N/A exponential_series x prec 1 N/A N/A N/A cosh sinh N/A cosh sinh N/A a N/A exp_basecase x prec N/A b N/A N/A MPZ_ONE N/A prec prec a N/A N/A a b N/A cos_sin_basecase N/A N/A x prec N/A N/A N/A 
    Compute cos(x), sin(x) as fixed-point numbers, assuming x
    in [0, pi/2). For an arbitrary number, use x' = x - m*(pi/2)
    where m = floor(x/(pi/2)) along with quarter-period symmetries.
     N/A N/A prec COS_SIN_CACHE_PREC N/A N/A N/A exponential_series x prec 2 N/A precs N/A prec COS_SIN_CACHE_STEP N/A t N/A x precs N/A n N/A int t N/A N/A n cos_sin_cache N/A N/A w N/A t N/A N/A 10 COS_SIN_CACHE_PREC COS_SIN_CACHE_STEP N/A N/A cos_t sin_t N/A exponential_series w N/A 10 COS_SIN_CACHE_PREC 2 N/A N/A cos_sin_cache N/A n N/A N/A cos_t 10 N/A sin_t 10 N/A N/A cos_t sin_t N/A cos_sin_cache N/A n N/A offset N/A COS_SIN_CACHE_PREC prec N/A cos_t offset N/A sin_t offset N/A x N/A t precs N/A cos N/A MPZ_ONE prec N/A sin x N/A k 2 N/A a N/A N/A N/A x x prec N/A a N/A N/A a k N/A cos a N/A k 1 N/A a N/A N/A a x prec N/A a k N/A sin a N/A k 1 N/A a N/A N/A N/A a x prec N/A N/A N/A N/A N/A cos cos_t N/A sin sin_t prec N/A N/A N/A sin cos_t N/A cos sin_t prec N/A mpf_exp N/A N/A x prec rnd N/A round_fast N/A N/A N/A sign man exp bc x N/A man N/A N/A mag N/A bc exp N/A wp N/A prec 14 N/A sign N/A N/A man N/A man N/A N/A N/A prec 600 N/A exp 0 N/A N/A e N/A mpf_e N/A wp N/A int N/A 1.45 mag N/A N/A mpf_pow_int e N/A man exp prec rnd N/A N/A mag N/A wp N/A N/A N/A mpf_perturb fone sign prec rnd N/A N/A mag 1 N/A N/A wpmod N/A wp mag N/A offset N/A exp wpmod N/A N/A offset 0 N/A N/A t N/A man offset N/A N/A t N/A man N/A offset N/A lg2 N/A ln2_fixed wpmod N/A N/A n t N/A divmod t lg2 N/A n N/A int n N/A t mag N/A N/A offset N/A exp wp N/A N/A offset 0 N/A N/A t N/A man offset N/A N/A t N/A man N/A offset N/A n 0 N/A man N/A exp_basecase t wp N/A N/A from_man_exp man N/A n wp prec rnd N/A N/A exp N/A N/A fone N/A N/A x fninf N/A N/A fzero N/A x N/A mpf_cosh_sinh N/A N/A x prec rnd tanh N/A round_fast 0 N/A N/A Simultaneously compute (cosh(x), sinh(x)) for real x N/A N/A sign man exp bc x N/A N/A N/A man exp N/A N/A tanh N/A N/A N/A x finf N/A N/A fone N/A N/A x fninf N/A N/A fnone N/A fnan N/A N/A x finf N/A N/A N/A finf finf N/A N/A x fninf N/A N/A N/A finf fninf N/A N/A fnan fnan N/A mag N/A exp bc N/A wp N/A prec 14 N/A N/A mag -4 N/A N/A N/A mag N/A wp N/A N/A tanh N/A N/A N/A mpf_perturb x N/A 1 sign prec rnd N/A cosh N/A mpf_perturb fone 0 prec rnd N/A sinh N/A mpf_perturb x sign prec rnd N/A N/A cosh sinh N/A wp N/A mag N/A N/A mag 10 N/A N/A N/A N/A 3 N/A 1 N/A mag 1 wp N/A N/A tanh N/A N/A N/A mpf_perturb N/A N/A fone fnone N/A sign N/A 1 sign prec rnd N/A c s N/A mpf_shift N/A mpf_exp N/A mpf_abs x prec rnd -1 N/A sign N/A N/A s N/A mpf_neg s N/A N/A c s N/A N/A mag 1 N/A N/A wpmod N/A wp mag N/A offset N/A exp wpmod N/A N/A offset 0 N/A N/A t N/A man offset N/A N/A t N/A man N/A offset N/A lg2 N/A ln2_fixed wpmod N/A N/A n t N/A divmod t lg2 N/A n N/A int n N/A t mag N/A N/A offset N/A exp wp N/A N/A offset 0 N/A N/A t N/A man offset N/A N/A t N/A man N/A offset N/A n 0 N/A N/A a b N/A exp_expneg_basecase t wp N/A cosh N/A a N/A b N/A 2 n N/A sinh N/A a N/A b N/A 2 n N/A sign N/A N/A sinh N/A sinh N/A tanh N/A N/A man N/A N/A sinh wp cosh N/A N/A from_man_exp man N/A wp prec rnd N/A N/A cosh N/A from_man_exp cosh N/A N/A n wp 1 prec rnd N/A sinh N/A from_man_exp sinh N/A N/A n wp 1 prec rnd N/A N/A cosh sinh N/A mod_pi2 N/A N/A man exp mag wp N/A N/A N/A N/A mag 0 N/A N/A i 0 N/A 1 N/A N/A cancellation_prec N/A 20 i N/A wpmod N/A N/A wp mag cancellation_prec N/A pi2 N/A pi_fixed N/A wpmod 1 N/A pi4 N/A pi2 1 N/A offset N/A wpmod exp N/A N/A offset 0 N/A N/A t N/A man offset N/A N/A t N/A man N/A offset N/A N/A n y N/A divmod t pi2 N/A N/A y pi4 N/A N/A small N/A pi2 y N/A N/A small y N/A N/A small N/A N/A wp mag 10 N/A N/A n N/A int n N/A t N/A y mag N/A wp N/A wpmod mag N/A N/A i 1 N/A N/A wp N/A mag N/A offset N/A exp wp N/A N/A offset 0 N/A N/A t N/A man offset N/A N/A t N/A man N/A offset N/A n 0 N/A N/A t n wp N/A mpf_cos_sin N/A N/A x prec rnd which pi N/A round_fast 0 False N/A N/A 
    which:
    0 -- return cos(x), sin(x)
    1 -- return cos(x)
    2 -- return sin(x)
    3 -- return tan(x)

    if pi=True, compute for pi*x
     N/A N/A sign man exp bc x N/A N/A man N/A N/A exp N/A N/A N/A c s N/A fnan fnan N/A N/A N/A c s N/A fone fzero N/A N/A which 0 N/A N/A N/A c s N/A N/A which 1 N/A N/A c N/A N/A which 2 N/A N/A s N/A N/A which 3 N/A N/A s N/A mag N/A bc exp N/A wp N/A prec 10 N/A N/A mag 0 N/A N/A N/A mag N/A wp N/A N/A pi N/A N/A x N/A mpf_mul x N/A mpf_pi wp N/A c N/A mpf_perturb fone 1 prec rnd N/A s N/A mpf_perturb x N/A 1 sign prec rnd N/A N/A which 0 N/A N/A N/A c s N/A N/A which 1 N/A N/A c N/A N/A which 2 N/A N/A s N/A N/A which 3 N/A N/A N/A mpf_perturb x sign prec rnd N/A pi N/A N/A N/A exp -1 N/A N/A N/A exp -1 N/A N/A c fzero N/A s N/A N/A fone fnone N/A N/A N/A bool N/A man 2 sign N/A N/A N/A exp 0 N/A N/A N/A c s N/A fnone fzero N/A N/A N/A c s N/A fone fzero N/A N/A which 0 N/A N/A N/A c s N/A N/A which 1 N/A N/A c N/A N/A which 2 N/A N/A s N/A N/A which 3 N/A N/A N/A mpf_div s c prec rnd N/A n N/A N/A N/A man N/A N/A exp 2 1 1 N/A man N/A man N/A n N/A N/A exp 1 N/A mag2 N/A N/A bitcount man exp N/A wp N/A N/A prec 10 mag2 N/A offset N/A exp wp N/A N/A offset 0 N/A N/A t N/A man offset N/A N/A t N/A man N/A offset N/A t N/A N/A t N/A pi_fixed wp wp N/A N/A N/A t n wp N/A mod_pi2 man exp mag wp N/A N/A c s N/A cos_sin_basecase t wp N/A m N/A n 3 N/A N/A m 1 N/A N/A N/A c s N/A N/A s c N/A N/A N/A m 2 N/A N/A N/A c s N/A N/A c N/A s N/A N/A N/A m 3 N/A N/A N/A c s N/A s N/A c N/A sign N/A N/A s N/A s N/A N/A which 0 N/A N/A c N/A from_man_exp c N/A wp prec rnd N/A s N/A from_man_exp s N/A wp prec rnd N/A N/A c s N/A N/A which 1 N/A N/A N/A from_man_exp c N/A wp prec rnd N/A N/A which 2 N/A N/A N/A from_man_exp s N/A wp prec rnd N/A N/A which 3 N/A N/A N/A from_rational s c prec rnd N/A mpf_cos N/A N/A x prec rnd N/A round_fast N/A N/A N/A mpf_cos_sin x prec rnd 1 N/A mpf_sin N/A N/A x prec rnd N/A round_fast N/A N/A N/A mpf_cos_sin x prec rnd 2 N/A mpf_tan N/A N/A x prec rnd N/A round_fast N/A N/A N/A mpf_cos_sin x prec rnd 3 N/A mpf_cos_sin_pi N/A N/A x prec rnd N/A round_fast N/A N/A N/A mpf_cos_sin x prec rnd 0 1 N/A mpf_cos_pi N/A N/A x prec rnd N/A round_fast N/A N/A N/A mpf_cos_sin x prec rnd 1 1 N/A mpf_sin_pi N/A N/A x prec rnd N/A round_fast N/A N/A N/A mpf_cos_sin x prec rnd 2 1 N/A mpf_cosh N/A N/A x prec rnd N/A round_fast N/A N/A N/A N/A mpf_cosh_sinh x prec rnd N/A 0 N/A mpf_sinh N/A N/A x prec rnd N/A round_fast N/A N/A N/A N/A mpf_cosh_sinh x prec rnd N/A 1 N/A mpf_tanh N/A N/A x prec rnd N/A round_fast N/A N/A N/A mpf_cosh_sinh x prec rnd tanh 1 N/A cos_sin_fixed N/A N/A x prec pi2 N/A None N/A N/A N/A pi2 None N/A N/A pi2 N/A pi_fixed N/A prec 1 N/A N/A n t N/A divmod x pi2 N/A n N/A int n N/A N/A c s N/A cos_sin_basecase t prec N/A m N/A n 3 N/A N/A m 0 N/A N/A N/A c s N/A N/A m 1 N/A N/A N/A N/A s c N/A N/A m 2 N/A N/A N/A N/A c N/A s N/A N/A m 3 N/A N/A N/A s N/A c N/A exp_fixed N/A N/A x prec ln2 N/A None N/A N/A N/A ln2 None N/A N/A ln2 N/A ln2_fixed prec N/A N/A n t N/A divmod x ln2 N/A n N/A int n N/A v N/A exp_basecase t prec N/A N/A n 0 N/A N/A N/A v n N/A N/A N/A v N/A n N/A N/A N/A BACKEND sage N/A N/A N/A N/A sage.libs.mpmath.ext_libmp _lbmp N/A mpf_sqrt N/A _lbmp mpf_sqrt N/A mpf_exp N/A _lbmp mpf_exp N/A mpf_log N/A _lbmp mpf_log N/A mpf_cos N/A _lbmp mpf_cos N/A mpf_sin N/A _lbmp mpf_sin N/A mpf_pow N/A _lbmp mpf_pow N/A exp_fixed N/A _lbmp exp_fixed N/A cos_sin_fixed N/A _lbmp cos_sin_fixed N/A log_int_fixed N/A _lbmp log_int_fixed N/A N/A N/A N/A ImportError AttributeError N/A N/A Warning: Sage imports in libelefun failed