Module Assign NameStore Str ImportFrom alias ImportFrom alias ImportFrom alias alias ImportFrom alias ImportFrom alias ImportFrom alias ImportFrom alias ImportFrom alias ImportFrom alias alias alias alias identifier ImportFrom alias ImportFrom alias alias alias alias alias ImportFrom alias ImportFrom alias ImportFrom alias ImportFrom alias Import alias Import alias Import alias ClassDef bases NameLoad body ClassDef bases NameLoad body Pass decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Call NameLoad Assign AttributeStore NameLoad attr Str Assign AttributeStore NameLoad attr Str Assign AttributeStore NameLoad attr Call NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr Call NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad SubscriptLoad AttributeLoad AttributeLoad NameLoad attr attr Index Num attr attr Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call NameLoad keyword NameLoad Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad NameLoad Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call NameLoad AttributeLoad AttributeLoad NameLoad attr attr Num Expr Call AttributeLoad AttributeLoad NameLoad attr attr keyword NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call NameLoad keyword NameLoad Assign AttributeStore AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad SubscriptLoad AttributeLoad AttributeLoad NameLoad attr attr Index Num attr attr Expr Call AttributeLoad NameLoad attr decorator_list Call AttributeLoad NameLoad attr Str FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr NameLoad keyword AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Assign NameStore Call NameLoad FunctionDef arguments args NameParam defaults NameLoad body Assign NameStore Call AttributeLoad NameLoad attr keyword NameLoad If UnaryOpNot NameLoad body Raise Call NameLoad Str Expr Call AttributeLoad NameLoad attr Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad decorator_list Assign NameStore Call NameLoad Assign NameStore Call NameLoad Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr FunctionDef arguments args defaults body Raise Call NameLoad Str decorator_list FunctionDef arguments args NameParam NameParam defaults NameLoad NameLoad body TryExcept body Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr keyword Num handlers ExceptHandler type NameLoad name NameStore body Expr Call AttributeLoad NameLoad attr NameLoad decorator_list Assign NameStore Call NameLoad Assign NameStore Call NameLoad NameLoad keyword NameLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr FunctionDef arguments args defaults body Raise Call AttributeLoad NameLoad attr Str decorator_list FunctionDef arguments args NameParam NameParam defaults NameLoad NameLoad body TryExcept body Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr keyword Num handlers ExceptHandler type NameLoad name NameStore body Expr Call AttributeLoad NameLoad attr NameLoad decorator_list Assign NameStore Call NameLoad Assign NameStore Call NameLoad NameLoad keyword NameLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Call NameLoad AttributeLoad NameLoad attr Num decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Call NameLoad Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Call NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Call NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Call NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign NameStore Call NameLoad Assign NameStore Call NameLoad FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr decorator_list Assign NameStore Call AttributeLoad NameLoad attr NameLoad Call NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Call NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign NameStore Call NameLoad Assign NameStore Call NameLoad FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr decorator_list Assign NameStore Call AttributeLoad NameLoad attr NameLoad Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Call NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Return Call AttributeLoad NameLoad attr keyword Num decorator_list Assign NameStore Dict Str Num Assign NameStore Call NameLoad With Call NameLoad Str NameStore body Assign NameStore Call NameLoad Assign AttributeStore AttributeLoad Call AttributeLoad NameLoad attr attr attr Lambda arguments args defaults vararg kwarg Call AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad Call AttributeLoad NameLoad attr attr attr Num Expr Call AttributeLoad NameLoad attr SubscriptLoad SubscriptLoad AttributeLoad AttributeLoad Call AttributeLoad NameLoad attr attr attr Index Num Index Str NameLoad Assign NameStore Call NameLoad Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Call NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr keyword Num decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Num AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call NameLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad NameLoad keyword NameLoad Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr decorator_list Assign NameStore Call NameLoad Assign NameStore Call NameLoad Assign AttributeStore NameLoad attr Lambda arguments args defaults vararg kwarg Call NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Num AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call NameLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad NameLoad keyword NameLoad Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr Assign AttributeStore AttributeLoad NameLoad attr attr NameLoad FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr decorator_list Assign NameStore Call NameLoad Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad SubscriptLoad AttributeLoad AttributeLoad NameLoad attr attr Index Num attr keyword Num Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Num AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Num AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr decorator_list Assign NameStore Call NameLoad Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr keyword Num Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Num AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Str Call NameLoad AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr decorator_list Assign NameStore Call NameLoad Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr keyword Num For NameStore Call NameLoad Num body Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr Num AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Call AttributeLoad NameLoad attr Str Dict Str Dict Str Dict Str Num Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad keyword AttributeLoad NameLoad attr keyword ListLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad Call AttributeLoad NameLoad attr attr keyword Num Expr Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr decorator_list Assign NameStore Call NameLoad Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr keyword Num For NameStore Call NameLoad Num body Assign NameStore Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad NameLoad decorator_list decorator_list Call NameLoad Str keyword Str ClassDef bases NameLoad body Expr Str Assign NameStore Str Assign NameStore ListLoad FunctionDef arguments args NameParam NameParam defaults NameLoad body If CompareIsNot NameLoad NameLoad body Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call NameLoad Expr Call AttributeLoad NameLoad attr decorator_list decorator_list ClassDef bases NameLoad body FunctionDef arguments args NameParam defaults body Expr Call AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Str Str Str Assign AttributeStore NameLoad attr Call NameLoad keyword Str decorator_list FunctionDef arguments args NameParam defaults body With Call AttributeLoad NameLoad attr NameLoad NameStore body Expr Call AttributeLoad AttributeLoad NameLoad attr attr Dict keyword Str keyword Num Expr Call AttributeLoad NameLoad attr Str AttributeLoad AttributeLoad NameLoad attr attr decorator_list Call AttributeLoad NameLoad attr Str FunctionDef arguments args NameParam defaults body Expr Call AttributeLoad NameLoad attr Str Dict Str Dict Str Dict Str Str Num Num Assign NameStore SubscriptLoad AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Index AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore Call NameLoad Expr Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Lambda arguments args defaults vararg Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call NameLoad Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr keyword Num For NameStore Call NameLoad Num body Expr Call AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr keyword Num Assign NameStore Call AttributeLoad NameLoad attr keyword Num Expr Call AttributeLoad NameLoad attr NameLoad TupleLoad NameLoad AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Call NameLoad AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Num decorator_list Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Str NameLoad Str Call AttributeLoad NameLoad attr Str decorator_list Call NameLoad Str keyword Str Call AttributeLoad NameLoad attr Str
N/A N/A __author__ Dave Foster <dfoster@asascience.com> pyon.ion.process IonProcessThread pyon.ion.endpoint ProcessRPCServer gevent.event AsyncResult Event gevent.coros Semaphore gevent.timeout Timeout pyon.util.unit_test PyonTestCase pyon.util.int_test IonIntegrationTestCase pyon.util.context LocalContextMixin pyon.core.exception IonException NotFound ContainerError Timeout IonTimeout pyon.util.async spawn mock sentinel Mock MagicMock ANY patch nose.plugins.attrib attr pyon.net.endpoint RPCClient pyon.ion.service BaseService interface.objects ProcessStateEnum N/A time N/A os N/A unittest ProcessTest N/A PyonTestCase N/A ExpectedFailure N/A StandardError N/A N/A N/A _make_service N/A N/A self N/A N/A N/A 
        Test helper to make a passable service.
         N/A svc N/A LocalContextMixin N/A N/A svc id test_id N/A N/A svc name test_svc N/A N/A svc container N/A Mock N/A N/A N/A svc container context N/A LocalContextMixin N/A svc N/A test_spawn_proc_with_no_listeners N/A N/A self N/A N/A N/A p N/A IonProcessThread name N/A sentinel name listeners N/A N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A self assertEquals N/A len N/A N/A p thread_manager children 1 N/A N/A N/A p _notify_stop N/A N/A N/A self assertTrue N/A N/A N/A N/A N/A p thread_manager children N/A 0 proc dead N/A N/A N/A p stop N/A test_spawn_proc_with_one_listener N/A N/A self N/A N/A N/A mocklistener N/A Mock spec ProcessRPCServer N/A p N/A IonProcessThread name N/A sentinel name listeners N/A mocklistener N/A readyev N/A Event N/A N/A N/A readyev set N/A N/A N/A mocklistener get_ready_event return_value readyev N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A p start_listeners N/A N/A N/A self assertEquals N/A len N/A N/A p thread_manager children 2 N/A N/A N/A N/A mocklistener listen assert_called_once_with thread_name ANY N/A N/A N/A self assertEqual N/A mocklistener routing_call N/A p _routing_call N/A N/A N/A p _notify_stop N/A N/A N/A N/A mocklistener close assert_called_once_with N/A N/A N/A p stop N/A test_spawn_with_listener_failure N/A N/A self N/A N/A N/A mocklistener N/A Mock spec ProcessRPCServer N/A N/A N/A mocklistener listen side_effect N/A self ExpectedFailure N/A readyev N/A Event N/A N/A N/A readyev set N/A N/A N/A mocklistener get_ready_event return_value readyev N/A p N/A IonProcessThread name N/A sentinel name listeners N/A mocklistener N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A p start_listeners N/A N/A N/A self assertTrue N/A N/A p proc dead N/A N/A N/A self assertIsInstance N/A N/A p proc exception N/A self ExpectedFailure N/A N/A N/A self assertRaises N/A self ExpectedFailure N/A p _notify_stop N/A N/A N/A self assertTrue N/A N/A N/A N/A N/A p thread_manager children N/A -1 proc dead N/A N/A N/A p stop N/A N/A N/A unittest skip must be retooled to work with new listener spawn rules test__routing_call N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A ar N/A AsyncResult N/A N/A N/A p _routing_call N/A ar set None value N/A sentinel callarg N/A v N/A N/A ar get timeout 5 N/A N/A N/A self assertEquals v N/A sentinel callarg N/A N/A N/A p _notify_stop N/A N/A N/A p stop N/A test_competing__routing_call N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A sem N/A Semaphore thecall N/A N/A ar N/A None N/A N/A semres N/A N/A sem acquire blocking False N/A N/A semres N/A N/A N/A StandardError Could not get semaphore, routing_call/control flow is broken! N/A N/A N/A time sleep 1 N/A N/A N/A sem release N/A N/A N/A ar set True N/A N/A ar1 N/A AsyncResult N/A ar2 N/A AsyncResult N/A ar3 N/A AsyncResult N/A N/A N/A p _routing_call thecall None ar ar3 N/A N/A N/A p _routing_call thecall None ar ar1 N/A N/A N/A p _routing_call thecall None ar ar2 N/A N/A N/A ar1 get timeout 5 N/A N/A N/A ar2 get timeout 5 N/A N/A N/A ar3 get timeout 5 N/A N/A N/A p _notify_stop N/A N/A N/A p stop N/A test_known_error N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A self addCleanup N/A p stop proc_call N/A N/A N/A N/A N/A N/A NotFound didn't find it N/A client_call N/A N/A p ar N/A None None N/A N/A N/A N/A ca N/A N/A p _routing_call proc_call None N/A N/A N/A ca get timeout 5 N/A N/A N/A IonException N/A e N/A N/A N/A N/A ar set e N/A N/A ar N/A AsyncResult N/A gl_call N/A spawn client_call p p ar ar N/A e N/A N/A ar get timeout 5 N/A N/A N/A self assertIsInstance e NotFound N/A test_unknown_error N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A self addCleanup N/A p stop proc_call N/A N/A N/A N/A N/A N/A N/A self ExpectedError didn't find it N/A client_call N/A N/A p ar N/A None None N/A N/A N/A N/A ca N/A N/A p _routing_call proc_call None N/A N/A N/A ca get timeout 5 N/A N/A N/A IonException N/A e N/A N/A N/A N/A ar set e N/A N/A ar N/A AsyncResult N/A gl_call N/A spawn client_call p p ar ar N/A e N/A N/A ar get timeout 5 N/A N/A N/A self assertIsInstance e ContainerError N/A N/A N/A self assertEquals N/A len N/A p _errors 1 N/A test_has_pending_call N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A ar N/A N/A p _routing_call N/A sentinel call N/A MagicMock N/A N/A N/A self assertTrue N/A N/A p has_pending_call ar N/A test_has_pending_call_with_no_call N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A ar N/A N/A p _routing_call N/A sentinel call N/A MagicMock N/A N/A N/A N/A p _ctrl_queue get N/A N/A N/A self assertFalse N/A N/A p has_pending_call ar N/A test__cancel_pending_call N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A ar N/A N/A p _routing_call N/A sentinel call N/A MagicMock N/A val N/A N/A p _cancel_pending_call ar N/A N/A N/A self assertTrue val N/A N/A N/A self assertTrue N/A N/A ar ready N/A test__cancel_pending_call_with_no_call N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A ar N/A N/A p _routing_call N/A sentinel call N/A MagicMock N/A N/A N/A N/A p _ctrl_queue get N/A val N/A N/A p _cancel_pending_call ar N/A N/A N/A self assertFalse val N/A test__interrupt_control_thread N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A self addCleanup N/A p stop N/A waitar N/A AsyncResult N/A callar N/A AsyncResult spin N/A N/A inar outar N/A N/A N/A N/A N/A outar set True N/A N/A N/A inar wait N/A N/A ar N/A N/A p _routing_call spin N/A MagicMock callar waitar N/A N/A N/A waitar get timeout 2 N/A N/A N/A p _interrupt_control_thread N/A N/A N/A self assertFalse N/A N/A ar ready N/A ar2 N/A N/A p _routing_call N/A callar set N/A MagicMock N/A sentinel val N/A N/A N/A ar2 get timeout 2 N/A N/A N/A self assertTrue N/A N/A callar ready N/A N/A N/A self assertEquals N/A N/A callar get N/A sentinel val N/A test__control_flow_cancelled_call N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A self addCleanup N/A p stop N/A waitar N/A AsyncResult N/A callar N/A AsyncResult spin N/A N/A inar outar N/A N/A N/A N/A N/A outar set True N/A N/A N/A inar wait N/A N/A ar N/A N/A p _routing_call spin N/A MagicMock callar waitar N/A futurear N/A AsyncResult N/A ar2 N/A N/A p _routing_call N/A futurear set N/A MagicMock N/A sentinel val N/A N/A N/A waitar get timeout 2 N/A N/A N/A p cancel_or_abort_call ar2 N/A N/A N/A callar set N/A N/A N/A ar get timeout 2 N/A N/A N/A self assertRaises Timeout N/A futurear get timeout 2 N/A N/A N/A self assertTrue N/A N/A ar2 ready N/A test__control_flow_expired_call N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A self addCleanup N/A p stop make_call N/A N/A call ctx val N/A N/A N/A ar N/A N/A p _routing_call call ctx val N/A N/A N/A ar get timeout 10 N/A N/A ctx N/A reply-by 0 N/A futurear N/A AsyncResult N/A N/A patch pyon.ion.process.greenlet gcm N/A N/A waitar N/A AsyncResult N/A N/A N/A N/A N/A gcm getcurrent kill side_effect N/A N/A N/A N/A a k N/A N/A waitar set N/A ar N/A N/A p _routing_call N/A futurear set ctx N/A sentinel val N/A N/A N/A waitar get timeout 10 N/A N/A N/A self assertFalse N/A N/A futurear ready N/A N/A N/A self assertFalse N/A N/A ar ready N/A N/A N/A self assertEquals N/A N/A N/A N/A gcm getcurrent kill call_count 1 N/A N/A N/A self assertIsInstance N/A N/A N/A N/A N/A N/A gcm getcurrent kill call_args N/A 1 N/A exception IonTimeout N/A futurear2 N/A AsyncResult N/A ar2 N/A N/A p _routing_call N/A futurear2 set N/A MagicMock N/A sentinel val2 N/A N/A N/A ar2 get timeout 2 N/A test_heartbeat_no_listeners N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A self addCleanup N/A p stop N/A hb N/A N/A p heartbeat N/A N/A N/A self assertEquals N/A True True True hb N/A N/A N/A self assertEquals 0 N/A p _heartbeat_count N/A N/A N/A self assertIsNone N/A p _heartbeat_op N/A test_heartbeat_with_listeners N/A N/A self N/A N/A N/A mocklistener N/A Mock spec ProcessRPCServer N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A mocklistener service svc N/A readyev N/A Event N/A N/A N/A readyev set N/A N/A N/A mocklistener get_ready_event return_value readyev fake_listen N/A N/A evout evin N/A N/A N/A N/A N/A evout set True N/A N/A N/A evin wait N/A N/A listenoutev N/A AsyncResult N/A listeninev N/A Event N/A N/A mocklistener listen N/A N/A N/A N/A a kw N/A fake_listen listenoutev listeninev N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A p start_listeners N/A N/A N/A listenoutev wait timeout 5 N/A N/A N/A self addCleanup N/A listeninev set N/A N/A N/A self addCleanup N/A p stop N/A hb N/A N/A p heartbeat N/A N/A N/A self assertEquals N/A True True True hb N/A N/A N/A self assertEquals 0 N/A p _heartbeat_count N/A N/A N/A self assertIsNone N/A p _heartbeat_op N/A test_heartbeat_listener_dead N/A N/A self N/A N/A N/A mocklistener N/A Mock spec ProcessRPCServer N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A mocklistener service svc N/A readyev N/A Event N/A N/A N/A readyev set N/A N/A N/A mocklistener get_ready_event return_value readyev fake_listen N/A N/A evout evin N/A N/A N/A N/A N/A evout set True N/A N/A N/A evin wait N/A N/A listenoutev N/A AsyncResult N/A listeninev N/A Event N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A p start_listeners N/A N/A N/A listenoutev wait timeout 5 N/A N/A N/A self addCleanup N/A listeninev set N/A N/A N/A self addCleanup N/A p stop N/A N/A N/A listeninev set N/A N/A N/A N/A N/A N/A p thread_manager children N/A 1 join timeout 5 N/A hb N/A N/A p heartbeat N/A N/A N/A self assertEquals N/A False True True hb N/A N/A N/A self assertEquals 0 N/A p _heartbeat_count N/A N/A N/A self assertIsNone N/A p _heartbeat_op N/A test_heartbeat_ctrl_thread_dead N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A self addCleanup N/A p stop N/A N/A N/A N/A p _ctrl_thread stop N/A hb N/A N/A p heartbeat N/A N/A N/A self assertEquals N/A True False True hb N/A N/A N/A self assertEquals 0 N/A p _heartbeat_count N/A N/A N/A self assertIsNone N/A p _heartbeat_op N/A test_heartbeat_with_current_op N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A N/A N/A p _ctrl_thread ev_exit set fake_op N/A N/A evout evin N/A N/A N/A N/A N/A evout set True N/A N/A N/A evin wait N/A N/A listenoutev N/A AsyncResult N/A listeninev N/A Event N/A N/A N/A self addCleanup N/A listeninev set N/A N/A N/A self addCleanup N/A p stop N/A ar N/A N/A p _routing_call fake_op None listenoutev listeninev N/A N/A N/A listenoutev wait timeout 5 N/A hb N/A N/A p heartbeat N/A N/A N/A self assertEquals N/A True True True hb N/A N/A N/A self assertEquals 1 N/A p _heartbeat_count N/A N/A N/A self assertEquals ar N/A p _heartbeat_op N/A N/A N/A self assertIsNotNone N/A p _heartbeat_time N/A N/A N/A self assertIsNotNone N/A p _heartbeat_stack N/A N/A N/A self assertIn evin.wait N/A str N/A p _heartbeat_stack N/A test_heartbeat_with_current_op_multiple_times N/A N/A self N/A N/A N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A N/A N/A p _ctrl_thread ev_exit set fake_op N/A N/A evout evin N/A N/A N/A N/A N/A evout set True N/A N/A N/A evin wait N/A N/A listenoutev N/A AsyncResult N/A listeninev N/A Event N/A N/A N/A self addCleanup N/A listeninev set N/A N/A N/A self addCleanup N/A p stop N/A ar N/A N/A p _routing_call fake_op None listenoutev listeninev N/A N/A N/A listenoutev wait timeout 5 N/A x N/A xrange 5 N/A N/A hb N/A N/A p heartbeat N/A N/A N/A self assertEquals N/A True True True hb N/A N/A N/A self assertEquals 5 N/A p _heartbeat_count N/A N/A N/A self assertEquals ar N/A p _heartbeat_op N/A test_heartbeat_current_op_over_limit N/A N/A self N/A N/A N/A N/A N/A self patch_cfg pyon.ion.process.CFG N/A cc N/A timeout N/A heartbeat_proc_count_threshold 2 N/A svc N/A N/A self _make_service N/A p N/A IonProcessThread name N/A sentinel name listeners N/A service svc N/A N/A N/A p start N/A N/A N/A N/A N/A p get_ready_event wait timeout 5 N/A N/A N/A N/A N/A p _ctrl_thread ev_exit set fake_op N/A N/A evout evin N/A N/A N/A N/A N/A evout set True N/A N/A N/A evin wait N/A N/A listenoutev N/A AsyncResult N/A listeninev N/A Event N/A N/A N/A self addCleanup N/A listeninev set N/A N/A N/A self addCleanup N/A p stop N/A ar N/A N/A p _routing_call fake_op None listenoutev listeninev N/A N/A N/A listenoutev wait timeout 5 N/A x N/A xrange 3 N/A N/A hb N/A N/A p heartbeat N/A N/A N/A self assertEquals N/A True True False hb N/A N/A N/A attr UNIT group coi FakeService N/A BaseService N/A N/A 
    Class to use for testing below.
     N/A name fake_service N/A dependencies N/A takes_too_long N/A N/A self noticear N/A None N/A N/A N/A noticear None N/A N/A N/A N/A noticear set True N/A ar N/A AsyncResult N/A N/A N/A ar wait N/A N/A TestProcessInt N/A IonIntegrationTestCase N/A setUp N/A N/A self N/A N/A N/A N/A N/A self _start_container N/A N/A self pid N/A N/A N/A self container spawn_process fake pyon.ion.test.test_process FakeService N/A N/A self fsclient N/A RPCClient to_name fake_service N/A test_timeout_with_messaging N/A N/A self N/A N/A N/A N/A N/A self assertRaises IonTimeout cm N/A N/A N/A N/A N/A self fsclient request N/A op takes_too_long timeout 5 N/A N/A N/A self assertIn execute in allotted time N/A N/A cm exception message N/A N/A N/A unittest skip timeouts removed 18 oct 2012 test_heartbeat_failure N/A N/A self N/A N/A N/A N/A N/A self patch_cfg pyon.ion.process.CFG N/A cc N/A timeout N/A heartbeat_proc_count_threshold heartbeat 2 1.0 N/A svc N/A N/A N/A N/A self container proc_manager procs N/A N/A self pid N/A ip N/A svc _process N/A stopar N/A AsyncResult N/A N/A N/A N/A N/A self container proc_manager add_proc_state_changed_callback N/A N/A N/A N/A args N/A N/A stopar set args N/A noticear N/A AsyncResult N/A ar N/A N/A ip _routing_call N/A svc takes_too_long None noticear noticear N/A N/A N/A noticear get timeout 10 N/A x N/A xrange 2 N/A N/A N/A N/A ip heartbeat N/A N/A N/A N/A ip _ctrl_thread join timeout 5 N/A stopargs N/A N/A stopar get timeout 5 N/A N/A N/A self assertEquals stopargs N/A svc N/A ProcessStateEnum FAILED N/A self container N/A N/A N/A self assertEquals N/A len N/A N/A N/A self container proc_manager procs 0 N/A N/A N/A unittest skipIf N/A N/A os getenv CEI_LAUNCH_TEST False Test reaches into container, doesn't work with CEI N/A N/A unittest skip heartbeat failing process is disabled N/A N/A attr INT group coi N/A N/A unittest skip no active tests, 18 oct 2012