Watson1978
12/16/2010 - 12:21 PM

#1048 : [script 1] google-perftools result

#1048 : [script 1] google-perftools result

Total: 180 samples
      30  16.7%  16.7%       32  17.8% _rb_vm_yield_under
      29  16.1%  32.8%       29  16.1% ___workq_kernreturn
      23  12.8%  45.6%       23  12.8% _rb_vm_get_opaque_data
      15   8.3%  53.9%       15   8.3% _strlen
      10   5.6%  59.4%      137  76.1% _rb_vm_dispatch
       7   3.9%  63.3%       17   9.4% Auto::Admin::thread_cache_allocate
       7   3.9%  67.2%        7   3.9% _rb_objc_class_sync_version
       7   3.9%  71.1%       22  12.2% _st_numhash
       6   3.3%  74.4%       60  33.3% _rb_ary_equal
       6   3.3%  77.8%        8   4.4% _rb_str_NSCoder_decode
       6   3.3%  81.1%       24  13.3% _rb_vm_dup_block
       5   2.8%  83.9%        5   2.8% _rb_ary_elt
       4   2.2%  86.1%       11   6.1% _rb_objc_type
       4   2.2%  88.3%      111  61.7% _rb_send_dup
       3   1.7%  90.0%        3   1.7% _rb_vm_unregister_current_alien_thread
       2   1.1%  91.1%        2   1.1% 00007fffffe00673
       2   1.1%  92.2%       55  30.6% _rb_vm_register_finalizer
       2   1.1%  93.3%       15   8.3% _rstr_concat
       1   0.6%  93.9%        1   0.6% 00007fffffe007d9
       1   0.6%  94.4%        1   0.6% 00007fffffe008bc
       1   0.6%  95.0%        2   1.1% Auto::Zone::set_write_barrier
       1   0.6%  95.6%        1   0.6% ___bsdthread_create
       1   0.6%  96.1%        1   0.6% _memcmp
       1   0.6%  96.7%        4   2.2% _rary_reserve
       1   0.6%  97.2%        1   0.6% _rb_ary_len
       1   0.6%  97.8%        1   0.6% _rb_vm_current_vm
       1   0.6%  98.3%       87  48.3% _st_foreach_safe
       1   0.6%  98.9%       50  27.8% _st_lookup
       1   0.6%  99.4%        1   0.6% _tiny_malloc_from_free_list
       1   0.6% 100.0%        1   0.6% std::basic_string::_Rep::_S_create
       0   0.0% 100.0%        1   0.6% 0000000000000000
       0   0.0% 100.0%      147  81.7% 0000000000000001
       0   0.0% 100.0%        4   2.2% 0000000000000005
       0   0.0% 100.0%        1   0.6% 00000000000002c3
       0   0.0% 100.0%        1   0.6% 0000000000007ffe
       0   0.0% 100.0%        4   2.2% 00000000000e6dcd
       0   0.0% 100.0%        1   0.6% 0000000000bdbfee
       0   0.0% 100.0%        1   0.6% 0000000000bfc5e7
       0   0.0% 100.0%        1   0.6% 000000005fbfd4df
       0   0.0% 100.0%        1   0.6% 0000000100000001
       0   0.0% 100.0%        2   1.1% 000000010000001a
       0   0.0% 100.0%      147  81.7% 0000000100000a47
       0   0.0% 100.0%        7   3.9% 0000000100000bd4
       0   0.0% 100.0%      140  77.8% 0000000100000c14
       0   0.0% 100.0%       17   9.4% 0000000100b73fff
       0   0.0% 100.0%        2   1.1% 0000000100b745c7
       0   0.0% 100.0%        3   1.7% 0000000100c0584f
       0   0.0% 100.0%        2   1.1% 0000000100c2512f
       0   0.0% 100.0%        1   0.6% 0000000100cfe187
       0   0.0% 100.0%        2   1.1% 0000000100d0000f
       0   0.0% 100.0%        1   0.6% 00000001010057ff
       0   0.0% 100.0%        1   0.6% 000000010199c9af
       0   0.0% 100.0%        1   0.6% 0000000103300187
       0   0.0% 100.0%        1   0.6% 0000000103300254
       0   0.0% 100.0%      134  74.4% 0000000103300282
       0   0.0% 100.0%      135  75.0% 0000000103300965
       0   0.0% 100.0%       33  18.3% 0000000103300e7e
       0   0.0% 100.0%        4   2.2% 0000000103300e9e
       0   0.0% 100.0%       50  27.8% 0000000103300ead
       0   0.0% 100.0%       47  26.1% 00000001033010df
       0   0.0% 100.0%       50  27.8% 00000001033012b6
       0   0.0% 100.0%        4   2.2% 00000001033012ed
       0   0.0% 100.0%        2   1.1% 00000001033a106f
       0   0.0% 100.0%        1   0.6% 0000000187cfb39d
       0   0.0% 100.0%        1   0.6% 0000000200000001
       0   0.0% 100.0%        1   0.6% 000000020001305f
       0   0.0% 100.0%        1   0.6% 00000002000c89c7
       0   0.0% 100.0%        1   0.6% 00000002000def47
       0   0.0% 100.0%        1   0.6% 00000002000ebaa7
       0   0.0% 100.0%        1   0.6% 00000002000ed05f
       0   0.0% 100.0%        1   0.6% 00000002000f5827
       0   0.0% 100.0%        1   0.6% 00000015ffffffff
       0   0.0% 100.0%        1   0.6% 0000001600000000
       0   0.0% 100.0%        3   1.7% 00000026ffffffff
       0   0.0% 100.0%        1   0.6% 0000005000000001
       0   0.0% 100.0%        1   0.6% 0000006100000000
       0   0.0% 100.0%        2   1.1% 000000ffffffffff
       0   0.0% 100.0%        1   0.6% 0000037effffffff
       0   0.0% 100.0%        1   0.6% 00007fff00000000
       0   0.0% 100.0%        1   0.6% 00007fff5fbfbad7
       0   0.0% 100.0%        3   1.7% 00007fff5fbfbb07
       0   0.0% 100.0%        1   0.6% 00007fff5fbfbb37
       0   0.0% 100.0%        2   1.1% 00007fff5fbfbb3f
       0   0.0% 100.0%        1   0.6% 00007fff5fbfbb47
       0   0.0% 100.0%        1   0.6% 00007fff5fbfc3cf
       0   0.0% 100.0%        1   0.6% 00007fff5fbfc410
       0   0.0% 100.0%        4   2.2% 00007fff5fbfc56f
       0   0.0% 100.0%        1   0.6% 00007fff5fbfc57e
       0   0.0% 100.0%        4   2.2% 00007fff5fbfc5ff
       0   0.0% 100.0%        2   1.1% 00007fff5fbfc60e
       0   0.0% 100.0%        2   1.1% 00007fff5fbfd3df
       0   0.0% 100.0%        1   0.6% 00007fff5fbfd40f
       0   0.0% 100.0%        1   0.6% 00007fff5fbfe08f
       0   0.0% 100.0%        1   0.6% 00007fff5fbfea1f
       0   0.0% 100.0%        1   0.6% 00007fff5fbfec9f
       0   0.0% 100.0%        1   0.6% 00007fff82b2f965
       0   0.0% 100.0%        1   0.6% 000100000004397f
       0   0.0% 100.0%        1   0.6% 000123e000000000
       0   0.0% 100.0%        1   0.6% 0003466000000001
       0   0.0% 100.0%        1   0.6% 000be32000000000
       0   0.0% 100.0%        1   0.6% 000e3fffffffffff
       0   0.0% 100.0%        1   0.6% 001407a500000001
       0   0.0% 100.0%        1   0.6% 00ba60a000007ffe
       0   0.0% 100.0%        1   0.6% 00c2513000000000
       0   0.0% 100.0%        1   0.6% 01007fff5fbfc5ff
       0   0.0% 100.0%        1   0.6% 033a107000000000
       0   0.0% 100.0%        1   0.6% 5fbfbb6000000001
       0   0.0% 100.0%        3   1.7% 5fbfbbb000000000
       0   0.0% 100.0%        1   0.6% Auto::AutoPointerHash::grow
       0   0.0% 100.0%        1   0.6% Auto::Thread::block_escaped
       0   0.0% 100.0%       38  21.1% Auto::Zone::block_allocate
       0   0.0% 100.0%        7   3.9% ProfileHandler::SignalHandler
       0   0.0% 100.0%        1   0.6% _NXMapRemove
       0   0.0% 100.0%        3   1.7% _UCNV_FROM_U_CALLBACK_STOP
       0   0.0% 100.0%        1   0.6% ___pthread_wq_head_tbl
       0   0.0% 100.0%        1   0.6% __class_addMethod
       0   0.0% 100.0%       28  15.6% __dispatch_queue_push_list_slow
       0   0.0% 100.0%       28  15.6% __dispatch_queue_wakeup_global
       0   0.0% 100.0%       29  16.1% __dispatch_wakeup
       0   0.0% 100.0%        3   1.7% __sigtramp
       0   0.0% 100.0%        1   0.6% _attachMethodLists
       0   0.0% 100.0%       28  15.6% _auto_collect
       0   0.0% 100.0%       34  18.9% _auto_zone_allocate_object
       0   0.0% 100.0%        2   1.1% _auto_zone_set_write_barrier
       0   0.0% 100.0%        1   0.6% _malloc
       0   0.0% 100.0%        2   1.1% _malloc_zone_calloc
       0   0.0% 100.0%        1   0.6% _malloc_zone_malloc
       0   0.0% 100.0%        1   0.6% _malloc_zone_realloc
       0   0.0% 100.0%        1   0.6% _objc_allocateClassPair
       0   0.0% 100.0%       28  15.6% _pthread_workqueue_additem_np
       0   0.0% 100.0%        3   1.7% _rb_ary_new2
       0   0.0% 100.0%        6   3.3% _rb_call_inits
       0   0.0% 100.0%        4   2.2% _rb_check_array_type
       0   0.0% 100.0%        1   0.6% _rb_define_class
       0   0.0% 100.0%        1   0.6% _rb_define_class_id
       0   0.0% 100.0%        1   0.6% _rb_define_object_special_methods
       0   0.0% 100.0%        7   3.9% _rb_enc_str_new
       0   0.0% 100.0%       77  42.8% _rb_eql
       0   0.0% 100.0%       53  29.4% _rb_exec_recursive
       0   0.0% 100.0%      135  75.0% _rb_fix_div
       0   0.0% 100.0%        6   3.3% _rb_hash
       0   0.0% 100.0%       26  14.4% _rb_intern
       0   0.0% 100.0%        5   2.8% _rb_intern_str
       0   0.0% 100.0%       33  18.3% _rb_obj_alloc
       0   0.0% 100.0%        3   1.7% _rb_obj_singleton_methods
       0   0.0% 100.0%        1   0.6% _rb_objc_ary_is_pure
       0   0.0% 100.0%        1   0.6% _rb_objc_create_class
       0   0.0% 100.0%        4   2.2% _rb_objc_define_method
       0   0.0% 100.0%        1   0.6% _rb_objc_didChangeValueForKey
       0   0.0% 100.0%       17   9.4% _rb_objc_newobj
       0   0.0% 100.0%       34  18.9% _rb_range_beg_len
       0   0.0% 100.0%       33  18.3% _rb_range_new
       0   0.0% 100.0%       33  18.3% _rb_range_new2
       0   0.0% 100.0%        1   0.6% _rb_reg_nth_match
       0   0.0% 100.0%        6   3.3% _rb_str_get_uchars
       0   0.0% 100.0%        5   2.8% _rb_str_hash
       0   0.0% 100.0%        7   3.9% _rb_str_new
       0   0.0% 100.0%        7   3.9% _rb_str_new2
       0   0.0% 100.0%        1   0.6% _rb_str_subseq
       0   0.0% 100.0%        1   0.6% _rb_str_substr
       0   0.0% 100.0%       33  18.3% _rb_struct_alloc_noinit
       0   0.0% 100.0%       33  18.3% _rb_struct_initialize
       0   0.0% 100.0%       26  14.4% _rb_struct_iv_get
       0   0.0% 100.0%        1   0.6% _rb_thread_synchronize
       0   0.0% 100.0%        5   2.8% _rb_vm_aot_compile
       0   0.0% 100.0%        3   1.7% _rb_vm_define_method
       0   0.0% 100.0%        1   0.6% _rb_vm_get_struct_fields
       0   0.0% 100.0%        4   2.2% _rb_vm_init_jit
       0   0.0% 100.0%        1   0.6% _rb_vm_ivar_slot_allocate
       0   0.0% 100.0%        5   2.8% _rb_vm_parse_bs_full_file
       0   0.0% 100.0%        1   0.6% _rb_vm_prepare_block
       0   0.0% 100.0%        1   0.6% _rb_vm_push_methods
       0   0.0% 100.0%      140  77.8% _rb_vm_run
       0   0.0% 100.0%      134  74.4% _rb_vm_yield_args
       0   0.0% 100.0%        1   0.6% _rb_write_error
       0   0.0% 100.0%      134  74.4% _rb_yield
       0   0.0% 100.0%       50  27.8% _rhash_aref
       0   0.0% 100.0%       47  26.1% _rhash_aset
       0   0.0% 100.0%        7   3.9% _ruby_init
       0   0.0% 100.0%        1   0.6% _ruby_patchlevel
       0   0.0% 100.0%      140  77.8% _ruby_run_node
       0   0.0% 100.0%       18  10.0% _ruby_xmalloc
       0   0.0% 100.0%       47  26.1% _st_insert
       0   0.0% 100.0%        2   1.1% _szone_malloc_should_clear
       0   0.0% 100.0%        1   0.6% _szone_realloc
       0   0.0% 100.0%        1   0.6% _ucnv_safeClone
       0   0.0% 100.0%        1   0.6% operator new
       0   0.0% 100.0%        1   0.6% std::basic_string::_S_construct
       0   0.0% 100.0%        1   0.6% std::basic_string::basic_string
digraph "./test_perf.rb; 180 samples" {
node [width=0.375,height=0.25];
Legend [shape=box,fontsize=24,shape=plaintext,label="./test_perf.rb\lTotal samples: 180\lFocusing on: 180\lDropped nodes with <= 0 abs(samples)\lDropped edges with <= 0 samples\l"];
N1 [label="0000000000000001\n0 (0.0%)\rof 147 (81.7%)\r",shape=box,fontsize=8.0];
N2 [label="0000000100000a47\n0 (0.0%)\rof 147 (81.7%)\r",shape=box,fontsize=8.0];
N3 [label="0000000100000c14\n0 (0.0%)\rof 140 (77.8%)\r",shape=box,fontsize=8.0];
N4 [label="_rb_vm_run\n0 (0.0%)\rof 140 (77.8%)\r",shape=box,fontsize=8.0];
N5 [label="_ruby_run_node\n0 (0.0%)\rof 140 (77.8%)\r",shape=box,fontsize=8.0];
N6 [label="_rb_vm_dispatch\n10 (5.6%)\rof 137 (76.1%)\r",shape=box,fontsize=19.8];
N7 [label="0000000103300965\n0 (0.0%)\rof 135 (75.0%)\r",shape=box,fontsize=8.0];
N8 [label="_rb_fix_div\n0 (0.0%)\rof 135 (75.0%)\r",shape=box,fontsize=8.0];
N9 [label="0000000103300282\n0 (0.0%)\rof 134 (74.4%)\r",shape=box,fontsize=8.0];
N10 [label="_rb_vm_yield_args\n0 (0.0%)\rof 134 (74.4%)\r",shape=box,fontsize=8.0];
N11 [label="_rb_yield\n0 (0.0%)\rof 134 (74.4%)\r",shape=box,fontsize=8.0];
N12 [label="_rb_send_dup\n4 (2.2%)\rof 111 (61.7%)\r",shape=box,fontsize=15.5];
N13 [label="_st_foreach_safe\n1 (0.6%)\rof 87 (48.3%)\r",shape=box,fontsize=11.7];
N14 [label="_rb_eql\n0 (0.0%)\rof 77 (42.8%)\r",shape=box,fontsize=8.0];
N15 [label="_rb_ary_equal\n6 (3.3%)\rof 60 (33.3%)\r",shape=box,fontsize=17.1];
N16 [label="_rb_vm_register_finalizer\n2 (1.1%)\rof 55 (30.6%)\r",shape=box,fontsize=13.3];
N17 [label="_rb_exec_recursive\n0 (0.0%)\rof 53 (29.4%)\r",shape=box,fontsize=8.0];
N18 [label="0000000103300ead\n0 (0.0%)\rof 50 (27.8%)\r",shape=box,fontsize=8.0];
N19 [label="00000001033012b6\n0 (0.0%)\rof 50 (27.8%)\r",shape=box,fontsize=8.0];
N20 [label="_rhash_aref\n0 (0.0%)\rof 50 (27.8%)\r",shape=box,fontsize=8.0];
N21 [label="_st_lookup\n1 (0.6%)\rof 50 (27.8%)\r",shape=box,fontsize=11.7];
N22 [label="00000001033010df\n0 (0.0%)\rof 47 (26.1%)\r",shape=box,fontsize=8.0];
N23 [label="_rhash_aset\n0 (0.0%)\rof 47 (26.1%)\r",shape=box,fontsize=8.0];
N24 [label="_st_insert\n0 (0.0%)\rof 47 (26.1%)\r",shape=box,fontsize=8.0];
N25 [label="Auto\nZone\nblock_allocate\n0 (0.0%)\rof 38 (21.1%)\r",shape=box,fontsize=8.0];
N26 [label="_auto_zone_allocate_object\n0 (0.0%)\rof 34 (18.9%)\r",shape=box,fontsize=8.0];
N27 [label="_rb_range_beg_len\n0 (0.0%)\rof 34 (18.9%)\r",shape=box,fontsize=8.0];
N28 [label="0000000103300e7e\n0 (0.0%)\rof 33 (18.3%)\r",shape=box,fontsize=8.0];
N29 [label="_rb_obj_alloc\n0 (0.0%)\rof 33 (18.3%)\r",shape=box,fontsize=8.0];
N30 [label="_rb_range_new\n0 (0.0%)\rof 33 (18.3%)\r",shape=box,fontsize=8.0];
N31 [label="_rb_range_new2\n0 (0.0%)\rof 33 (18.3%)\r",shape=box,fontsize=8.0];
N32 [label="_rb_struct_alloc_noinit\n0 (0.0%)\rof 33 (18.3%)\r",shape=box,fontsize=8.0];
N33 [label="_rb_struct_initialize\n0 (0.0%)\rof 33 (18.3%)\r",shape=box,fontsize=8.0];
N34 [label="_rb_vm_yield_under\n30 (16.7%)\rof 32 (17.8%)\r",shape=box,fontsize=28.4];
N35 [label="___workq_kernreturn\n29 (16.1%)\r",shape=box,fontsize=28.1];
N36 [label="__dispatch_wakeup\n0 (0.0%)\rof 29 (16.1%)\r",shape=box,fontsize=8.0];
N37 [label="__dispatch_queue_push_list_slow\n0 (0.0%)\rof 28 (15.6%)\r",shape=box,fontsize=8.0];
N38 [label="__dispatch_queue_wakeup_global\n0 (0.0%)\rof 28 (15.6%)\r",shape=box,fontsize=8.0];
N39 [label="_auto_collect\n0 (0.0%)\rof 28 (15.6%)\r",shape=box,fontsize=8.0];
N40 [label="_pthread_workqueue_additem_np\n0 (0.0%)\rof 28 (15.6%)\r",shape=box,fontsize=8.0];
N41 [label="_rb_intern\n0 (0.0%)\rof 26 (14.4%)\r",shape=box,fontsize=8.0];
N42 [label="_rb_struct_iv_get\n0 (0.0%)\rof 26 (14.4%)\r",shape=box,fontsize=8.0];
N43 [label="_rb_vm_dup_block\n6 (3.3%)\rof 24 (13.3%)\r",shape=box,fontsize=17.1];
N44 [label="_rb_vm_get_opaque_data\n23 (12.8%)\r",shape=box,fontsize=25.9];
N45 [label="_st_numhash\n7 (3.9%)\rof 22 (12.2%)\r",shape=box,fontsize=17.9];
N46 [label="_ruby_xmalloc\n0 (0.0%)\rof 18 (10.0%)\r",shape=box,fontsize=8.0];
N47 [label="0000000100b73fff\n0 (0.0%)\rof 17 (9.4%)\r",shape=box,fontsize=8.0];
N48 [label="Auto\nAdmin\nthread_cache_allocate\n7 (3.9%)\rof 17 (9.4%)\r",shape=box,fontsize=17.9];
N49 [label="_rb_objc_newobj\n0 (0.0%)\rof 17 (9.4%)\r",shape=box,fontsize=8.0];
N50 [label="_rstr_concat\n2 (1.1%)\rof 15 (8.3%)\r",shape=box,fontsize=13.3];
N51 [label="_strlen\n15 (8.3%)\r",shape=box,fontsize=22.4];
N52 [label="_rb_objc_type\n4 (2.2%)\rof 11 (6.1%)\r",shape=box,fontsize=15.5];
N53 [label="_rb_str_NSCoder_decode\n6 (3.3%)\rof 8 (4.4%)\r",shape=box,fontsize=17.1];
N54 [label="0000000100000bd4\n0 (0.0%)\rof 7 (3.9%)\r",shape=box,fontsize=8.0];
N55 [label="ProfileHandler\nSignalHandler\n0 (0.0%)\rof 7 (3.9%)\r",shape=box,fontsize=8.0];
N56 [label="_rb_enc_str_new\n0 (0.0%)\rof 7 (3.9%)\r",shape=box,fontsize=8.0];
N57 [label="_rb_objc_class_sync_version\n7 (3.9%)\r",shape=box,fontsize=17.9];
N58 [label="_rb_str_new\n0 (0.0%)\rof 7 (3.9%)\r",shape=box,fontsize=8.0];
N59 [label="_rb_str_new2\n0 (0.0%)\rof 7 (3.9%)\r",shape=box,fontsize=8.0];
N60 [label="_ruby_init\n0 (0.0%)\rof 7 (3.9%)\r",shape=box,fontsize=8.0];
N61 [label="_rb_call_inits\n0 (0.0%)\rof 6 (3.3%)\r",shape=box,fontsize=8.0];
N62 [label="_rb_hash\n0 (0.0%)\rof 6 (3.3%)\r",shape=box,fontsize=8.0];
N63 [label="_rb_str_get_uchars\n0 (0.0%)\rof 6 (3.3%)\r",shape=box,fontsize=8.0];
N64 [label="_rb_ary_elt\n5 (2.8%)\r",shape=box,fontsize=16.3];
N65 [label="_rb_intern_str\n0 (0.0%)\rof 5 (2.8%)\r",shape=box,fontsize=8.0];
N66 [label="_rb_str_hash\n0 (0.0%)\rof 5 (2.8%)\r",shape=box,fontsize=8.0];
N67 [label="_rb_vm_aot_compile\n0 (0.0%)\rof 5 (2.8%)\r",shape=box,fontsize=8.0];
N68 [label="_rb_vm_parse_bs_full_file\n0 (0.0%)\rof 5 (2.8%)\r",shape=box,fontsize=8.0];
N69 [label="0000000000000005\n0 (0.0%)\rof 4 (2.2%)\r",shape=box,fontsize=8.0];
N70 [label="00000000000e6dcd\n0 (0.0%)\rof 4 (2.2%)\r",shape=box,fontsize=8.0];
N71 [label="0000000103300e9e\n0 (0.0%)\rof 4 (2.2%)\r",shape=box,fontsize=8.0];
N72 [label="00000001033012ed\n0 (0.0%)\rof 4 (2.2%)\r",shape=box,fontsize=8.0];
N73 [label="00007fff5fbfc56f\n0 (0.0%)\rof 4 (2.2%)\r",shape=box,fontsize=8.0];
N74 [label="00007fff5fbfc5ff\n0 (0.0%)\rof 4 (2.2%)\r",shape=box,fontsize=8.0];
N75 [label="_rary_reserve\n1 (0.6%)\rof 4 (2.2%)\r",shape=box,fontsize=11.7];
N76 [label="_rb_check_array_type\n0 (0.0%)\rof 4 (2.2%)\r",shape=box,fontsize=8.0];
N77 [label="_rb_objc_define_method\n0 (0.0%)\rof 4 (2.2%)\r",shape=box,fontsize=8.0];
N78 [label="_rb_vm_init_jit\n0 (0.0%)\rof 4 (2.2%)\r",shape=box,fontsize=8.0];
N79 [label="0000000100c0584f\n0 (0.0%)\rof 3 (1.7%)\r",shape=box,fontsize=8.0];
N80 [label="00000026ffffffff\n0 (0.0%)\rof 3 (1.7%)\r",shape=box,fontsize=8.0];
N33 -> N49 [label=7, weight=3, style="setlinewidth(0.233333)"];
N60 -> N78 [label=1, weight=1, style="setlinewidth(0.033333)"];
N6 -> N74 [label=4, weight=2, style="setlinewidth(0.133333)"];
N59 -> N58 [label=7, weight=3, style="setlinewidth(0.233333)"];
N11 -> N10 [label=134, weight=30, style="setlinewidth(2.000000)"];
N13 -> N14 [label=77, weight=20, style="setlinewidth(2.000000)"];
N78 -> N78 [label=2, weight=1, style="setlinewidth(0.066667)"];
N9 -> N7 [label=134, weight=30, style="setlinewidth(2.000000)"];
N6 -> N27 [label=33, weight=11, style="setlinewidth(1.100000)"];
N53 -> N53 [label=37, weight=12, style="setlinewidth(1.233333)"];
N43 -> N34 [label=15, weight=6, style="setlinewidth(0.500000)"];
N19 -> N20 [label=50, weight=15, style="setlinewidth(1.666667)"];
N22 -> N23 [label=47, weight=14, style="setlinewidth(1.566667)"];
N16 -> N15 [label=44, weight=14, style="setlinewidth(1.466667)"];
N26 -> N25 [label=34, weight=11, style="setlinewidth(1.133333)"];
N1 -> N2 [label=147, weight=32, style="setlinewidth(2.000000)"];
N6 -> N34 [label=2, weight=1, style="setlinewidth(0.066667)"];
N12 -> N6 [label=136, weight=31, style="setlinewidth(2.000000)"];
N16 -> N44 [label=5, weight=3, style="setlinewidth(0.166667)"];
N23 -> N24 [label=47, weight=14, style="setlinewidth(1.566667)"];
N20 -> N21 [label=50, weight=15, style="setlinewidth(1.666667)"];
N48 -> N15 [label=3, weight=2, style="setlinewidth(0.100000)"];
N70 -> N35 [label=4, weight=2, style="setlinewidth(0.133333)"];
N25 -> N57 [label=1, weight=1, style="setlinewidth(0.033333)"];
N2 -> N54 [label=7, weight=3, style="setlinewidth(0.233333)"];
N36 -> N38 [label=28, weight=10, style="setlinewidth(0.933333)"];
N15 -> N75 [label=2, weight=1, style="setlinewidth(0.066667)"];
N25 -> N36 [label=1, weight=1, style="setlinewidth(0.033333)"];
N74 -> N34 [label=2, weight=1, style="setlinewidth(0.066667)"];
N44 -> N44 [label=3, weight=2, style="setlinewidth(0.100000)"];
N16 -> N48 [label=3, weight=2, style="setlinewidth(0.100000)"];
N41 -> N59 [label=7, weight=3, style="setlinewidth(0.233333)"];
N27 -> N35 [label=1, weight=1, style="setlinewidth(0.033333)"];
N52 -> N25 [label=1, weight=1, style="setlinewidth(0.033333)"];
N55 -> N45 [label=2, weight=1, style="setlinewidth(0.066667)"];
N62 -> N80 [label=1, weight=1, style="setlinewidth(0.033333)"];
N68 -> N46 [label=4, weight=2, style="setlinewidth(0.133333)"];
N15 -> N47 [label=2, weight=1, style="setlinewidth(0.066667)"];
N58 -> N56 [label=7, weight=3, style="setlinewidth(0.233333)"];
N61 -> N50 [label=1, weight=1, style="setlinewidth(0.033333)"];
N10 -> N22 [label=47, weight=14, style="setlinewidth(1.566667)"];
N6 -> N25 [label=2, weight=1, style="setlinewidth(0.066667)"];
N60 -> N61 [label=6, weight=3, style="setlinewidth(0.200000)"];
N21 -> N13 [label=48, weight=15, style="setlinewidth(1.600000)"];
N30 -> N29 [label=33, weight=11, style="setlinewidth(1.100000)"];
N10 -> N28 [label=33, weight=11, style="setlinewidth(1.100000)"];
N4 -> N67 [label=4, weight=2, style="setlinewidth(0.133333)"];
N2 -> N3 [label=140, weight=31, style="setlinewidth(2.000000)"];
N40 -> N48 [label=5, weight=3, style="setlinewidth(0.166667)"];
N3 -> N5 [label=140, weight=31, style="setlinewidth(2.000000)"];
N50 -> N35 [label=1, weight=1, style="setlinewidth(0.033333)"];
N48 -> N44 [label=1, weight=1, style="setlinewidth(0.033333)"];
N66 -> N63 [label=5, weight=3, style="setlinewidth(0.166667)"];
N67 -> N67 [label=1, weight=1, style="setlinewidth(0.033333)"];
N50 -> N55 [label=1, weight=1, style="setlinewidth(0.033333)"];
N33 -> N42 [label=26, weight=9, style="setlinewidth(0.866667)"];
N44 -> N48 [label=1, weight=1, style="setlinewidth(0.033333)"];
N69 -> N35 [label=4, weight=2, style="setlinewidth(0.133333)"];
N47 -> N75 [label=1, weight=1, style="setlinewidth(0.033333)"];
N6 -> N15 [label=57, weight=16, style="setlinewidth(1.900000)"];
N73 -> N34 [label=4, weight=2, style="setlinewidth(0.133333)"];
N80 -> N52 [label=1, weight=1, style="setlinewidth(0.033333)"];
N34 -> N34 [label=14, weight=6, style="setlinewidth(0.466667)"];
N18 -> N19 [label=50, weight=15, style="setlinewidth(1.666667)"];
N34 -> N73 [label=4, weight=2, style="setlinewidth(0.133333)"];
N15 -> N14 [label=41, weight=13, style="setlinewidth(1.366667)"];
N46 -> N26 [label=18, weight=7, style="setlinewidth(0.600000)"];
N28 -> N31 [label=33, weight=11, style="setlinewidth(1.100000)"];
N15 -> N17 [label=53, weight=16, style="setlinewidth(1.766667)"];
N27 -> N32 [label=33, weight=11, style="setlinewidth(1.100000)"];
N46 -> N46 [label=18, weight=7, style="setlinewidth(0.600000)"];
N14 -> N12 [label=117, weight=28, style="setlinewidth(2.000000)"];
N61 -> N8 [label=1, weight=1, style="setlinewidth(0.033333)"];
N40 -> N50 [label=1, weight=1, style="setlinewidth(0.033333)"];
N72 -> N7 [label=4, weight=2, style="setlinewidth(0.133333)"];
N47 -> N51 [label=14, weight=6, style="setlinewidth(0.466667)"];
N25 -> N15 [label=1, weight=1, style="setlinewidth(0.033333)"];
N50 -> N45 [label=3, weight=2, style="setlinewidth(0.100000)"];
N6 -> N76 [label=4, weight=2, style="setlinewidth(0.133333)"];
N53 -> N77 [label=1, weight=1, style="setlinewidth(0.033333)"];
N6 -> N80 [label=1, weight=1, style="setlinewidth(0.033333)"];
N47 -> N34 [label=1, weight=1, style="setlinewidth(0.033333)"];
N50 -> N53 [label=1, weight=1, style="setlinewidth(0.033333)"];
N45 -> N68 [label=5, weight=3, style="setlinewidth(0.166667)"];
N41 -> N65 [label=5, weight=3, style="setlinewidth(0.166667)"];
N75 -> N52 [label=1, weight=1, style="setlinewidth(0.033333)"];
N49 -> N26 [label=16, weight=6, style="setlinewidth(0.533333)"];
N40 -> N69 [label=4, weight=2, style="setlinewidth(0.133333)"];
N13 -> N35 [label=3, weight=2, style="setlinewidth(0.100000)"];
N67 -> N53 [label=5, weight=3, style="setlinewidth(0.166667)"];
N17 -> N16 [label=53, weight=16, style="setlinewidth(1.766667)"];
N40 -> N13 [label=3, weight=2, style="setlinewidth(0.100000)"];
N45 -> N52 [label=1, weight=1, style="setlinewidth(0.033333)"];
N25 -> N48 [label=1, weight=1, style="setlinewidth(0.033333)"];
N6 -> N8 [label=134, weight=30, style="setlinewidth(2.000000)"];
N45 -> N55 [label=1, weight=1, style="setlinewidth(0.033333)"];
N37 -> N36 [label=56, weight=16, style="setlinewidth(1.866667)"];
N36 -> N37 [label=28, weight=10, style="setlinewidth(0.933333)"];
N76 -> N75 [label=1, weight=1, style="setlinewidth(0.033333)"];
N56 -> N45 [label=7, weight=3, style="setlinewidth(0.233333)"];
N63 -> N45 [label=6, weight=3, style="setlinewidth(0.200000)"];
N79 -> N12 [label=1, weight=1, style="setlinewidth(0.033333)"];
N32 -> N33 [label=33, weight=11, style="setlinewidth(1.100000)"];
N45 -> N46 [label=2, weight=1, style="setlinewidth(0.066667)"];
N74 -> N43 [label=2, weight=1, style="setlinewidth(0.066667)"];
N80 -> N44 [label=1, weight=1, style="setlinewidth(0.033333)"];
N6 -> N50 [label=11, weight=5, style="setlinewidth(0.366667)"];
N36 -> N48 [label=1, weight=1, style="setlinewidth(0.033333)"];
N12 -> N80 [label=1, weight=1, style="setlinewidth(0.033333)"];
N12 -> N12 [label=147, weight=32, style="setlinewidth(2.000000)"];
N29 -> N29 [label=33, weight=11, style="setlinewidth(1.100000)"];
N10 -> N71 [label=4, weight=2, style="setlinewidth(0.133333)"];
N40 -> N55 [label=5, weight=3, style="setlinewidth(0.166667)"];
N5 -> N4 [label=140, weight=31, style="setlinewidth(2.000000)"];
N40 -> N27 [label=1, weight=1, style="setlinewidth(0.033333)"];
N24 -> N46 [label=12, weight=5, style="setlinewidth(0.400000)"];
N4 -> N9 [label=134, weight=30, style="setlinewidth(2.000000)"];
N80 -> N34 [label=1, weight=1, style="setlinewidth(0.033333)"];
N45 -> N45 [label=2, weight=1, style="setlinewidth(0.066667)"];
N47 -> N52 [label=1, weight=1, style="setlinewidth(0.033333)"];
N55 -> N35 [label=5, weight=3, style="setlinewidth(0.166667)"];
N10 -> N18 [label=50, weight=15, style="setlinewidth(1.666667)"];
N78 -> N53 [label=1, weight=1, style="setlinewidth(0.033333)"];
N65 -> N66 [label=5, weight=3, style="setlinewidth(0.166667)"];
N71 -> N72 [label=4, weight=2, style="setlinewidth(0.133333)"];
N20 -> N20 [label=50, weight=15, style="setlinewidth(1.666667)"];
N13 -> N62 [label=6, weight=3, style="setlinewidth(0.200000)"];
N24 -> N13 [label=35, weight=12, style="setlinewidth(1.166667)"];
N15 -> N64 [label=3, weight=2, style="setlinewidth(0.100000)"];
N31 -> N30 [label=33, weight=11, style="setlinewidth(1.100000)"];
N29 -> N12 [label=33, weight=11, style="setlinewidth(1.100000)"];
N50 -> N79 [label=2, weight=1, style="setlinewidth(0.066667)"];
N41 -> N47 [label=14, weight=6, style="setlinewidth(0.466667)"];
N76 -> N76 [label=4, weight=2, style="setlinewidth(0.133333)"];
N54 -> N60 [label=7, weight=3, style="setlinewidth(0.233333)"];
N38 -> N40 [label=28, weight=10, style="setlinewidth(0.933333)"];
N25 -> N39 [label=28, weight=10, style="setlinewidth(0.933333)"];
N6 -> N43 [label=20, weight=8, style="setlinewidth(0.666667)"];
N12 -> N79 [label=1, weight=1, style="setlinewidth(0.033333)"];
N11 -> N11 [label=134, weight=30, style="setlinewidth(2.000000)"];
N8 -> N11 [label=134, weight=30, style="setlinewidth(2.000000)"];
N45 -> N49 [label=6, weight=3, style="setlinewidth(0.200000)"];
N79 -> N45 [label=1, weight=1, style="setlinewidth(0.033333)"];
N40 -> N70 [label=4, weight=2, style="setlinewidth(0.133333)"];
N75 -> N75 [label=1, weight=1, style="setlinewidth(0.033333)"];
N42 -> N41 [label=26, weight=9, style="setlinewidth(0.866667)"];
N39 -> N37 [label=28, weight=10, style="setlinewidth(0.933333)"];
N7 -> N6 [label=139, weight=31, style="setlinewidth(2.000000)"];
N48 -> N35 [label=5, weight=3, style="setlinewidth(0.166667)"];
N34 -> N47 [label=1, weight=1, style="setlinewidth(0.033333)"];
N62 -> N52 [label=5, weight=3, style="setlinewidth(0.166667)"];
}