Profiling results ----------------- Total cpu time observed: 100182ms (out of 100560ms) Number of samples taken: 317 (once every 316ms) (Hiding functions with self<1.0% and local<2.0%: 6 of 209 hidden) =================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =================================================================================== run [24] 50.0% [1] 100182(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [10] 50.0% run-improve39 [11] 46.3% loop [13] 3.4% get-final-combination [22] 0.3% ----------------------------------------------------------------------------------- ??? [142] 100.0% [2] 63912(63.8%) 0(0.0%) ??? ...s/herbie/develop/src/core/simplify.rkt:31:0 iterate-egraph!7 [12] 91.5% loop [14] 7.1% mk-egraph [19] 1.4% ----------------------------------------------------------------------------------- loop [52] 100.0% [3] 3500(3.5%) 0(0.0%) set-precompute! ...lop/src/core/simplify.rkt:140:0 for-loop [15] 100.0% ----------------------------------------------------------------------------------- ??? [142] 100.0% [4] 2756(2.8%) 0(0.0%) approximate9 ...e/develop/src/core/taylor.rkt:12:0 loop [16] 66.2% for-loop [20] 22.1% taylor [32] 11.7% ----------------------------------------------------------------------------------- hash-ref! [154] 100.0% [5] 1222(1.2%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:282:26 for-loop [18] 100.0% ----------------------------------------------------------------------------------- substitute-e [65] 34.5% match-e [51] 65.5% [6] 946(0.9%) 0(0.0%) variable? ...e/develop/src/syntax/syntax.rkt:713:0 ??? [61] 100.0% ----------------------------------------------------------------------------------- for-loop [200] 100.0% [7] 932(0.9%) 0(0.0%) syntax-e (unknown source) syntax-e/no-taint [17] 100.0% ----------------------------------------------------------------------------------- taylor [32] 100.0% [8] 610(0.6%) 0(0.0%) taylor-invert ...develop/src/core/taylor.rkt:309:0 first-nonzero-exp [21] 100.0% ----------------------------------------------------------------------------------- hash-ref! [154] 100.0% [9] 300(0.3%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:292:23 for-loop [23] 100.0% ----------------------------------------------------------------------------------- ??? [1] 100.0% [10] 100182(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [24] 100.0% ----------------------------------------------------------------------------------- ??? [1] 100.0% [11] 92720(92.6%) 0(0.0%) run-improve39 ...ie/develop/src/mainloop.rkt:286:0 for-loop [25] 99.7% ??? [61] 0.3% ----------------------------------------------------------------------------------- ??? [2] 100.0% [12] 58470(58.4%) 0(0.0%) iterate-egraph!7 ...lop/src/core/simplify.rkt:55:0 one-iter [26] 94.0% map-enodes [28] 6.0% ----------------------------------------------------------------------------------- ??? [1] 100.0% [13] 6858(6.8%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:166:2 loop [41] 56.7% loop [30] 38.7% make-exacts [36] 4.6% ----------------------------------------------------------------------------------- ??? [2] 100.0% [14] 4518(4.5%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:184:2 for-loop [27] 100.0% ----------------------------------------------------------------------------------- set-precompute! [3] 100.0% [15] 3500(3.5%) 624(0.6%) for-loop ...ie/develop/src/core/simplify.rkt:142:2 update-leader! [76] 28.6% eval-const-expr [31] 27.3% reduce-to-new! [34] 17.8% composed [37] 8.6% ----------------------------------------------------------------------------------- approximate9 [4] 100.0% [16] 1824(1.8%) 0(0.0%) loop ...es/herbie/develop/src/core/taylor.rkt:86:4 ??? [142] 100.0% ----------------------------------------------------------------------------------- gf [192] 25.2% syntax-e [7] 74.8% [17] 1246(1.2%) 0(0.0%) syntax-e/no-taint (unknown source) loop [189] 100.0% ----------------------------------------------------------------------------------- ??? [5] 100.0% [18] 1222(1.2%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:282:52 hash-ref! [154] 100.0% ----------------------------------------------------------------------------------- ??? [2] 100.0% [19] 924(0.9%) 0(0.0%) mk-egraph ...bie/develop/src/core/egraph.rkt:131:0 mk-enode-rec! [33] 100.0% ----------------------------------------------------------------------------------- approximate9 [4] 100.0% [20] 610(0.6%) 0(0.0%) for-loop ...rbie/develop/src/core/taylor.rkt:29:18 taylor [32] 100.0% ----------------------------------------------------------------------------------- taylor-invert [8] 100.0% [21] 610(0.6%) 0(0.0%) first-nonzero-exp ...lop/src/core/taylor.rkt:257:0 simplify [29] 100.0% ----------------------------------------------------------------------------------- ??? [1] 100.0% [22] 604(0.6%) 0(0.0%) get-final-combination ...op/src/mainloop.rkt:309:0 infer-splitpoints [35] 100.0% ----------------------------------------------------------------------------------- ??? [9] 100.0% [23] 300(0.3%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:295:27 hash-ref! [154] 100.0% ----------------------------------------------------------------------------------- profile-thunk16 [10] 100.0% [24] 100182(100.0%) 0(0.0%) run ...racket/share/pkgs/profile-lib/main.rkt:39:2 ??? [1] 100.0% ----------------------------------------------------------------------------------- run-improve39 [11] 100.0% [25] 92420(92.3%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:303:8 run-iter! [38] 100.0% ----------------------------------------------------------------------------------- iterate-egraph!7 [12] 100.0% [26] 54970(54.9%) 2204(2.2%) one-iter ...bie/develop/src/core/simplify.rkt:66:0 for-loop [39] 59.0% for-loop [40] 36.4% ----------------------------------------------------------------------------------- loop [14] 100.0% [27] 4518(4.5%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:177:29 argmin [42] 64.9% loop [44] 35.1% ----------------------------------------------------------------------------------- iterate-egraph!7 [12] 100.0% [28] 3500(3.5%) 0(0.0%) map-enodes ...ie/develop/src/core/egraph.rkt:140:0 loop [52] 100.0% ----------------------------------------------------------------------------------- first-nonzero-exp [21] 22.1% hash-ref! [154] 77.9% [29] 2756(2.8%) 0(0.0%) simplify ...erbie/develop/src/core/reduce.rkt:16:0 parse-loop80 [43] 77.9% f67 [135] 22.1% ----------------------------------------------------------------------------------- loop [13] 100.0% [30] 2654(2.6%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:124:2 loop [41] 61.4% make-exacts* [45] 38.6% ----------------------------------------------------------------------------------- for-loop [15] 100.0% [31] 954(1.0%) 0(0.0%) eval-const-expr .../develop/src/programs.rkt:132:0 eval-prog [121] 100.0% ----------------------------------------------------------------------------------- approximate9 [4] 17.3% map [147] 17.5% for-loop [20] 17.5% taylor [32] 47.7% [32] 932(0.9%) 0(0.0%) taylor ...herbie/develop/src/core/taylor.rkt:163:0 taylor [32] 47.7% map [147] 17.5% taylor-invert [8] 17.5% taylor-sqrt [47] 17.3% ----------------------------------------------------------------------------------- mk-enode-rec! [33] 25.3% mk-egraph [19] 74.7% [33] 924(0.9%) 0(0.0%) mk-enode-rec! ...develop/src/core/egraph.rkt:122:0 mk-enode! [88] 74.7% mk-enode-rec! [33] 25.3% ----------------------------------------------------------------------------------- for-loop [15] 100.0% [34] 622(0.6%) 0(0.0%) reduce-to-new! ...evelop/src/core/egraph.rkt:337:0 merge-egraph-nodes! [63] 100.0% ----------------------------------------------------------------------------------- get-final-combination [22] 100.0% [35] 604(0.6%) 0(0.0%) infer-splitpoints ...lop/src/core/regimes.rkt:32:0 for-loop [46] 100.0% ----------------------------------------------------------------------------------- loop [13] 100.0% [36] 318(0.3%) 0(0.0%) make-exacts ...herbie/develop/src/points.rkt:122:0 make-exacts* [45] 100.0% ----------------------------------------------------------------------------------- for-loop [15] 100.0% [37] 300(0.3%) 300(0.3%) composed ...ollects/racket/private/list.rkt:321:16 ----------------------------------------------------------------------------------- for-loop [25] 100.0% [38] 92420(92.3%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:267:0 simplify! [48] 69.2% finalize-iter! [50] 23.2% gen-rewrites! [53] 4.3% gen-series! [54] 3.0% localize-error [59] 0.3% ----------------------------------------------------------------------------------- one-iter [26] 100.0% [39] 32412(32.4%) 1236(1.2%) for-loop ...ie/develop/src/core/simplify.rkt:113:2 for-loop [49] 73.1% match-e [51] 13.5% reduce-to-single! [55] 2.0% custom-set-intersect [56] 1.9% update-leader! [76] 1.9% set [105] 1.9% ----------------------------------------------------------------------------------- for-loop [40] 48.4% one-iter [26] 51.6% [40] 20018(20.0%) 4480(4.5%) for-loop ...ie/develop/src/core/simplify.rkt:76:12 for-loop [40] 48.4% match-e [51] 38.8% ----------------------------------------------------------------------------------- loop [30] 29.6% loop [13] 70.4% [41] 5516(5.5%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:107:4 loop [52] 100.0% ----------------------------------------------------------------------------------- for-loop [27] 100.0% [42] 2934(2.9%) 0(0.0%) argmin ...92/racket/collects/racket/list.rkt:765:0 for-loop [112] 100.0% ----------------------------------------------------------------------------------- loop [52] 3.3% map [147] 7.4% hash-ref! [154] 12.8% parse-loop80 [43] 13.5% simplify [29] 63.1% [43] 2460(2.5%) 0(0.0%) parse-loop80 ...s/racket/match/compiler.rkt:418:15 temp68_2 [133] 39.9% loop [52] 26.2% f67 [135] 16.4% parse-loop80 [43] 13.5% eval [58] 4.1% ----------------------------------------------------------------------------------- for-loop [27] 100.0% [44] 1584(1.6%) 0(0.0%) loop .../p92/racket/collects/racket/list.rkt:751:4 for-loop [112] 60.1% expression-cost [116] 39.9% ----------------------------------------------------------------------------------- make-exacts [36] 23.7% loop [30] 76.3% [45] 1342(1.3%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:104:0 loop [52] 76.9% eval-prog [121] 23.1% ----------------------------------------------------------------------------------- infer-splitpoints [35] 100.0% [46] 604(0.6%) 0(0.0%) for-loop ...rbie/develop/src/core/regimes.rkt:44:6 option-on-expr [57] 100.0% ----------------------------------------------------------------------------------- taylor [32] 100.0% [47] 322(0.3%) 0(0.0%) taylor-sqrt ...e/develop/src/core/taylor.rkt:343:0 hash-ref! [154] 100.0% ----------------------------------------------------------------------------------- run-iter! [38] 100.0% [48] 63912(63.8%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:181:0 for-loop [60] 100.0% ----------------------------------------------------------------------------------- for-loop [39] 100.0% [49] 23684(23.6%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:98:4 merge-egraph-nodes! [63] 31.4% loop! [89] 28.9% mk-enode! [88] 25.0% substitute-e [65] 14.7% ----------------------------------------------------------------------------------- run-iter! [38] 100.0% [50] 21462(21.4%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:221:0 ??? [61] 100.0% ----------------------------------------------------------------------------------- for-loop [39] 13.4% for-loop [75] 22.0% for-loop [40] 64.6% [51] 19914(19.9%) 6868(6.9%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [62] 56.2% ??? [61] 5.7% custom-in-set [68] 3.1% make-sequence [129] 1.5% variable? [6] 1.3% ----------------------------------------------------------------------------------- make-exacts* [45] 0.2% loop [41] 0.3% map-enodes [28] 2.3% parse-loop80 [43] 3.9% loop! [89] 9.7% loop [52] 83.6% [52] 15952(15.9%) 300(0.3%) loop ...cket/collects/racket/private/map.rkt:40:19 loop [52] 83.6% loop! [89] 8.8% f67 [135] 2.8% set-precompute! [3] 2.3% parse-loop80 [43] 1.0% ??? [131] 0.4% hash-ref! [154] 0.1% ??? [153] 0.0% ??? [142] 0.0% ----------------------------------------------------------------------------------- run-iter! [38] 100.0% [53] 3976(4.0%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:164:0 for-loop [64] 100.0% ----------------------------------------------------------------------------------- run-iter! [38] 100.0% [54] 2756(2.8%) 0(0.0%) gen-series! ...rbie/develop/src/mainloop.rkt:151:0 for-loop [66] 100.0% ----------------------------------------------------------------------------------- for-loop [39] 100.0% [55] 650(0.6%) 0(0.0%) reduce-to-single! ...lop/src/core/egraph.rkt:325:0 for-loop [67] 100.0% ----------------------------------------------------------------------------------- for-loop [39] 100.0% [56] 622(0.6%) 0(0.0%) custom-set-intersect ...rivate/set-types.rkt:195:0 for-loop [69] 100.0% ----------------------------------------------------------------------------------- for-loop [46] 100.0% [57] 604(0.6%) 0(0.0%) option-on-expr ...velop/src/core/regimes.rkt:112:0 err-lsts->split-indices [71] 50.0% for-loop [72] 50.0% ----------------------------------------------------------------------------------- eval-prog [121] 49.8% parse-loop80 [43] 50.2% [58] 598(0.6%) 0(0.0%) eval (unknown source) add-ns-scopes [70] 100.0% ----------------------------------------------------------------------------------- run-iter! [38] 100.0% [59] 314(0.3%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:47:0 hash-ref! [154] 100.0% ----------------------------------------------------------------------------------- simplify! [48] 100.0% [60] 63912(63.8%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:185:6 for-loop [73] 100.0% ----------------------------------------------------------------------------------- run-improve39 [11] 1.2% variable? [6] 3.8% match-e [51] 9.9% finalize-iter! [50] 85.1% [61] 25206(25.2%) 3118(3.1%) ??? ...contract/private/arrow-val-first.rkt:388:18 for-loop [74] 86.3% ----------------------------------------------------------------------------------- match-e [51] 100.0% [62] 13058(13.0%) 4946(4.9%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 for-loop [75] 63.5% list-cartesian-product [81] 9.7% foldl [86] 2.3% filter [179] 1.2% ----------------------------------------------------------------------------------- for-loop [79] 3.8% reduce-to-new! [34] 7.7% for-loop [49] 88.5% [63] 8058(8.0%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:153:0 update-leader! [76] 64.9% for-loop [79] 31.3% enode-merge! [83] 3.8% ----------------------------------------------------------------------------------- gen-rewrites! [53] 100.0% [64] 3976(4.0%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:169:11 ??? [77] 100.0% ----------------------------------------------------------------------------------- for-loop [78] 6.2% for-loop [49] 93.8% [65] 3478(3.5%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 for-loop [78] 96.9% variable? [6] 3.1% ----------------------------------------------------------------------------------- gen-series! [54] 100.0% [66] 2756(2.8%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:157:7 taylor-alt [80] 100.0% ----------------------------------------------------------------------------------- reduce-to-single! [55] 100.0% [67] 650(0.6%) 650(0.6%) for-loop ...rbie/develop/src/core/egraph.rkt:326:8 ----------------------------------------------------------------------------------- match-e [51] 100.0% [68] 622(0.6%) 622(0.6%) custom-in-set ...acket/private/set-types.rkt:577:0 ----------------------------------------------------------------------------------- custom-set-intersect [56] 100.0% [69] 622(0.6%) 312(0.3%) for-loop ...cts/racket/private/set-types.rkt:207:3 for-loop [82] 49.8% ----------------------------------------------------------------------------------- eval [58] 100.0% [70] 598(0.6%) 0(0.0%) add-ns-scopes (unknown source) add-scopes [85] 50.2% gf [192] 49.8% ----------------------------------------------------------------------------------- option-on-expr [57] 100.0% [71] 302(0.3%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:238:0 loop [84] 100.0% ----------------------------------------------------------------------------------- option-on-expr [57] 100.0% [72] 302(0.3%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:120:4 errors [109] 100.0% ----------------------------------------------------------------------------------- for-loop [60] 100.0% [73] 63912(63.8%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:209:8 ??? [142] 100.0% ----------------------------------------------------------------------------------- ??? [61] 100.0% [74] 21762(21.7%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [87] 95.8% loop [93] 4.2% ----------------------------------------------------------------------------------- for-loop [62] 100.0% [75] 10236(10.2%) 1538(1.5%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [51] 80.1% ??? [94] 6.3% ----------------------------------------------------------------------------------- for-loop [39] 8.7% for-loop [15] 14.0% merge-egraph-nodes! [63] 77.3% [76] 7152(7.1%) 304(0.3%) update-leader! ...evelop/src/core/egraph.rkt:218:0 for-loop [90] 83.1% for-loop [95] 8.4% custom-set-union! [98] 4.2% ----------------------------------------------------------------------------------- for-loop [64] 100.0% [77] 3976(4.0%) 0(0.0%) ??? ...ies/herbie/develop/src/alternative.rkt:60:0 rewriter [91] 100.0% ----------------------------------------------------------------------------------- substitute-e [65] 100.0% [78] 3478(3.5%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:80:24 mk-enode! [88] 90.6% substitute-e [65] 9.4% ----------------------------------------------------------------------------------- merge-egraph-nodes! [63] 100.0% [79] 2830(2.8%) 0(0.0%) for-loop ...bie/develop/src/core/egraph.rkt:201:10 loop! [89] 78.4% merge-egraph-nodes! [63] 21.6% ----------------------------------------------------------------------------------- for-loop [66] 100.0% [80] 2756(2.8%) 0(0.0%) taylor-alt ...erbie/develop/src/mainloop.rkt:136:0 for-loop [92] 100.0% ----------------------------------------------------------------------------------- list-cartesian-product [81] 11.8% for-loop [62] 88.2% [81] 1268(1.3%) 1268(1.3%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [81] 11.8% ----------------------------------------------------------------------------------- for-loop [69] 100.0% [82] 310(0.3%) 310(0.3%) for-loop ...cts/racket/private/set-types.rkt:201:4 ----------------------------------------------------------------------------------- merge-egraph-nodes! [63] 100.0% [83] 306(0.3%) 0(0.0%) enode-merge! ...e/develop/src/core/enode.rkt:127:0 adopt-enode! [96] 100.0% ----------------------------------------------------------------------------------- err-lsts->split-indices [71] 100.0% [84] 302(0.3%) 0(0.0%) loop .../herbie/develop/src/core/regimes.rkt:289:4 for-loop [97] 100.0% ----------------------------------------------------------------------------------- add-ns-scopes [70] 100.0% [85] 300(0.3%) 300(0.3%) add-scopes (unknown source) ----------------------------------------------------------------------------------- for-loop [62] 100.0% [86] 298(0.3%) 298(0.3%) foldl ...et/collects/racket/private/list.rkt:229:4 ----------------------------------------------------------------------------------- for-loop [74] 100.0% [87] 20838(20.8%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:210:0 best-and-tied-at-points [99] 50.3% override-at-pnts [100] 48.3% ----------------------------------------------------------------------------------- mk-enode-rec! [33] 9.2% for-loop [78] 31.5% for-loop [49] 59.3% [88] 10006(10.0%) 0(0.0%) mk-enode! ...bie/develop/src/core/egraph.rkt:102:0 new-enode [101] 100.0% ----------------------------------------------------------------------------------- for-loop [79] 17.0% loop [52] 24.7% for-loop [49] 58.3% [89] 9060(9.0%) 1268(1.3%) loop! ...s/herbie/develop/src/core/enode.rkt:190:2 custom-set-union [103] 51.6% loop [52] 28.0% set [105] 6.5% update-en-expr [146] 5.1% ----------------------------------------------------------------------------------- update-leader! [76] 100.0% [90] 5946(5.9%) 312(0.3%) for-loop ...rbie/develop/src/core/egraph.rkt:223:6 for-loop [102] 94.8% ----------------------------------------------------------------------------------- ??? [77] 33.4% matcher [113] 66.6% [91] 3976(4.0%) 0(0.0%) rewriter ...bie/develop/src/core/matcher.rkt:131:2 for-loop [104] 95.5% *rules* [107] 4.5% ----------------------------------------------------------------------------------- taylor-alt [80] 100.0% [92] 2756(2.8%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:142:6 ??? [142] 100.0% ----------------------------------------------------------------------------------- for-loop [74] 100.0% [93] 924(0.9%) 0(0.0%) loop ...erbie/develop/src/core/alt-table.rkt:184:2 argmax [106] 100.0% ----------------------------------------------------------------------------------- for-loop [75] 100.0% [94] 648(0.6%) 324(0.3%) ??? ...ies/herbie/develop/src/core/ematch.rkt:50:5 for-loop [108] 50.0% ----------------------------------------------------------------------------------- update-leader! [76] 100.0% [95] 602(0.6%) 294(0.3%) for-loop ...rbie/develop/src/core/egraph.rkt:233:6 update-en-expr [146] 51.2% ----------------------------------------------------------------------------------- enode-merge! [83] 100.0% [96] 306(0.3%) 0(0.0%) adopt-enode! ...e/develop/src/core/enode.rkt:103:0 custom-set-union [103] 100.0% ----------------------------------------------------------------------------------- loop [84] 100.0% [97] 302(0.3%) 302(0.3%) for-loop ...bie/develop/src/core/regimes.rkt:254:4 ----------------------------------------------------------------------------------- update-leader! [76] 100.0% [98] 300(0.3%) 300(0.3%) custom-set-union! ...t/private/set-types.rkt:245:0 ----------------------------------------------------------------------------------- atab-add-altn [87] 100.0% [99] 10476(10.5%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [109] 96.8% for-loop [119] 3.2% ----------------------------------------------------------------------------------- atab-add-altn [87] 100.0% [100] 10062(10.0%) 312(0.3%) override-at-pnts ...p/src/core/alt-table.rkt:145:0 errors [109] 96.9% ----------------------------------------------------------------------------------- mk-enode! [88] 100.0% [101] 10006(10.0%) 0(0.0%) new-enode ...erbie/develop/src/core/enode.rkt:95:0 type-of-enode-expr [110] 100.0% ----------------------------------------------------------------------------------- for-loop [90] 100.0% [102] 5634(5.6%) 314(0.3%) for-loop ...rbie/develop/src/core/egraph.rkt:224:8 hash-update! [111] 94.4% ----------------------------------------------------------------------------------- adopt-enode! [96] 5.5% loop! [89] 94.5% [103] 5596(5.6%) 1212(1.2%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [114] 67.2% for-loop [117] 11.2% ----------------------------------------------------------------------------------- rewriter [91] 100.0% [104] 3976(4.0%) 298(0.3%) for-loop ...ie/develop/src/core/matcher.rkt:134:10 matcher [113] 71.1% type-of [115] 26.5% ----------------------------------------------------------------------------------- for-loop [39] 32.5% loop! [89] 67.5% [105] 1896(1.9%) 1896(1.9%) set ...collects/racket/private/set-types.rkt:981:0 ----------------------------------------------------------------------------------- loop [93] 100.0% [106] 924(0.9%) 0(0.0%) argmax ...92/racket/collects/racket/list.rkt:766:0 for-loop [112] 67.5% expression-cost [116] 32.5% ----------------------------------------------------------------------------------- rewriter [91] 100.0% [107] 608(0.6%) 0(0.0%) *rules* ...rbie/develop/src/syntax/rules.rkt:643:0 for-loop [118] 100.0% ----------------------------------------------------------------------------------- ??? [94] 100.0% [108] 324(0.3%) 324(0.3%) for-loop ...erbie/develop/src/core/ematch.rkt:51:7 ----------------------------------------------------------------------------------- for-loop [72] 1.5% override-at-pnts [100] 48.3% best-and-tied-at-points [99] 50.2% [109] 20192(20.2%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:207:0 for-loop [120] 72.2% eval-prog [121] 26.1% make-sequence [129] 1.7% ----------------------------------------------------------------------------------- new-enode [101] 100.0% [110] 10006(10.0%) 0(0.0%) type-of-enode-expr ...elop/src/core/enode.rkt:68:0 ??? [122] 43.5% for-loop [125] 32.2% table-ref [144] 21.2% ...velop/src/common.rkt:48:2 [127] 3.0% ----------------------------------------------------------------------------------- for-loop [102] 100.0% [111] 5320(5.3%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [123] 100.0% ----------------------------------------------------------------------------------- argmax [106] 13.8% loop [44] 21.1% argmin [42] 65.1% [112] 4510(4.5%) 300(0.3%) for-loop .../herbie/develop/src/programs.rkt:169:2 table-ref [144] 70.8% ...velop/src/common.rkt:48:2 [127] 22.5% ----------------------------------------------------------------------------------- for-loop [124] 50.0% for-loop [104] 50.0% [113] 3976(4.0%) 0(0.0%) matcher ...rbie/develop/src/core/matcher.rkt:168:2 for-loop [124] 50.0% rewriter [91] 50.0% ----------------------------------------------------------------------------------- custom-set-union [103] 100.0% [114] 3758(3.8%) 942(0.9%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [126] 74.9% ----------------------------------------------------------------------------------- for-loop [104] 100.0% [115] 3070(3.1%) 0(0.0%) type-of .../herbie/develop/src/type-check.rkt:34:0 ??? [122] 50.0% table-ref [144] 40.0% for-loop [125] 10.0% ----------------------------------------------------------------------------------- argmax [106] 32.2% loop [44] 67.8% [116] 932(0.9%) 0(0.0%) expression-cost .../develop/src/programs.rkt:168:0 compile [128] 100.0% ----------------------------------------------------------------------------------- custom-set-union [103] 100.0% [117] 626(0.6%) 626(0.6%) for-loop ...cts/racket/private/set-types.rkt:152:2 ----------------------------------------------------------------------------------- *rules* [107] 100.0% [118] 608(0.6%) 306(0.3%) for-loop ...ies/herbie/develop/src/common.rkt:92:9 ormap [130] 49.7% ----------------------------------------------------------------------------------- best-and-tied-at-points [99] 100.0% [119] 336(0.3%) 336(0.3%) for-loop .../develop/src/core/alt-table.rkt:124:16 ----------------------------------------------------------------------------------- errors [109] 100.0% [120] 14586(14.6%) 622(0.6%) for-loop ...es/herbie/develop/src/points.rkt:210:4 ??? [131] 85.2% ulp-difference [136] 6.2% ??? [142] 4.3% ----------------------------------------------------------------------------------- make-exacts* [45] 4.7% eval-const-expr [31] 14.6% errors [109] 80.7% [121] 6536(6.5%) 0(0.0%) eval-prog ...herbie/develop/src/programs.rkt:109:0 temp68_2 [133] 52.0% f67 [135] 28.8% loop [189] 10.0% eval-one-top12 [141] 4.6% eval [58] 4.6% ----------------------------------------------------------------------------------- type-of [115] 26.1% type-of-enode-expr [110] 73.9% [122] 5890(5.9%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:227:4 contract-pos/neg-doubling/proc [132] 100.0% ----------------------------------------------------------------------------------- hash-update! [111] 100.0% [123] 5320(5.3%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:226:24 for-loop [134] 100.0% ----------------------------------------------------------------------------------- matcher [113] 100.0% [124] 3976(4.0%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:184:21 matcher [113] 100.0% ----------------------------------------------------------------------------------- type-of [115] 8.0% for-loop [165] 8.2% type-of-enode-expr [110] 83.9% [125] 3846(3.8%) 0(0.0%) for-loop ...racket/contract/private/hash.rkt:277:6 ??? [162] 100.0% ----------------------------------------------------------------------------------- for-loop [114] 100.0% [126] 2816(2.8%) 2816(2.8%) for-loop ...cts/racket/private/set-types.rkt:178:5 ----------------------------------------------------------------------------------- type-of-enode-expr [110] 22.9% for-loop [112] 77.1% [127] 1318(1.3%) 334(0.3%) ...velop/src/common.rkt:48:2 ...e/arr-i.rkt:918:19 ??? [137] 51.7% ??? [140] 22.9% ----------------------------------------------------------------------------------- expression-cost [116] 100.0% [128] 932(0.9%) 0(0.0%) compile ...s/herbie/develop/src/programs.rkt:145:0 hash-ref! [154] 100.0% ----------------------------------------------------------------------------------- ??? [138] 26.3% errors [109] 26.3% match-e [51] 47.3% [129] 634(0.6%) 634(0.6%) make-sequence ...ects/racket/private/for.rkt:528:2 ??? [138] 26.3% ----------------------------------------------------------------------------------- for-loop [118] 100.0% [130] 302(0.3%) 0(0.0%) ormap ...et/collects/racket/private/map.rkt:141:13 flag-set? [139] 100.0% ----------------------------------------------------------------------------------- loop [52] 33.2% for-loop [120] 66.8% [131] 18590(18.6%) 320(0.3%) ??? ...tlies/herbie/develop/src/programs.rkt:129:2 ??? [143] 92.4% ??? [142] 3.5% bf [149] 2.4% ----------------------------------------------------------------------------------- ??? [122] 100.0% [132] 5890(5.9%) 5290(5.3%) contract-pos/neg-doubling/proc ...e/guts.rkt:956:0 ??? [148] 10.2% ----------------------------------------------------------------------------------- parse-loop80 [43] 20.9% f67 [135] 21.0% eval-prog [121] 58.0% [133] 5854(5.8%) 0(0.0%) temp68_2 (unknown source) compile16 [145] 100.0% ----------------------------------------------------------------------------------- ??? [123] 100.0% [134] 5320(5.3%) 4716(4.7%) for-loop ...bie/develop/src/core/egraph.rkt:227:26 update-en-expr [146] 11.4% ----------------------------------------------------------------------------------- map [147] 4.3% parse-loop80 [43] 13.0% eval-prog [121] 13.3% loop [52] 16.0% simplify [29] 16.3% f67 [135] 37.0% [135] 3740(3.7%) 0(0.0%) f67 ...t/collects/racket/match/compiler.rkt:507:40 f67 [135] 37.0% temp68_2 [133] 28.6% map [147] 21.0% table-ref [144] 13.3% ----------------------------------------------------------------------------------- for-loop [120] 100.0% [136] 910(0.9%) 910(0.9%) ulp-difference ...erbie/develop/src/float.rkt:19:0 ----------------------------------------------------------------------------------- ??? [162] 22.3% ...velop/src/common.rkt:48:2 [127] 77.7% [137] 682(0.7%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:367:4 ??? [162] 77.7% ??? [181] 22.3% ----------------------------------------------------------------------------------- make-sequence [129] 100.0% [138] 334(0.3%) 0(0.0%) ??? ...cket/collects/racket/private/for.rkt:1203:9 make-sequence [129] 100.0% ----------------------------------------------------------------------------------- ormap [130] 100.0% [139] 302(0.3%) 302(0.3%) flag-set? ...es/herbie/develop/src/config.rkt:31:0 ----------------------------------------------------------------------------------- ...velop/src/common.rkt:48:2 [127] 100.0% [140] 302(0.3%) 0(0.0%) ??? ...s/racket/contract/private/arr-i.rkt:1286:39 ??? [167] 100.0% ----------------------------------------------------------------------------------- eval-prog [121] 100.0% [141] 300(0.3%) 300(0.3%) eval-one-top12 (unknown source) ----------------------------------------------------------------------------------- loop [52] 0.6% loop [16] 0.9% for-loop [120] 0.9% ??? [131] 0.9% for-loop [92] 1.6% for-loop [73] 46.8% location-do [150] 48.3% [142] 68328(68.2%) 610(0.6%) ??? ...tract/private/arrow-higher-order.rkt:357:33 location-do [150] 48.3% ??? [2] 46.8% approximate9 [4] 1.6% ->flonum [156] 1.5% hash-ref! [154] 0.9% ----------------------------------------------------------------------------------- ??? [131] 100.0% [143] 17172(17.1%) 10104(10.1%) ??? ...acket/collects/racket/private/kw.rkt:592:14 ??? [153] 18.8% ??? [155] 16.7% ??? [158] 3.8% ...higher-order.rkt:361:33 [161] 1.8% ----------------------------------------------------------------------------------- type-of [115] 14.6% f67 [135] 22.3% type-of-enode-expr [110] 25.2% for-loop [112] 37.9% [144] 8430(8.4%) 298(0.3%) table-ref ...es/herbie/develop/src/common.rkt:47:0 ??? [151] 81.3% return/no-unsupplied [169] 7.8% for-loop [160] 3.8% ??? [167] 3.6% ----------------------------------------------------------------------------------- temp68_2 [133] 100.0% [145] 5854(5.8%) 0(0.0%) compile16 (unknown source) temp74_0 [152] 94.7% loop [189] 5.3% ----------------------------------------------------------------------------------- for-loop [95] 16.8% for-loop [134] 32.9% loop! [89] 50.3% [146] 1834(1.8%) 922(0.9%) update-en-expr ...evelop/src/core/egraph.rkt:212:0 for-loop [157] 49.7% ----------------------------------------------------------------------------------- taylor [32] 39.2% f67 [135] 60.8% [147] 1556(1.6%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:35:13 parse-loop80 [43] 40.1% taylor [32] 39.2% f67 [135] 20.7% ----------------------------------------------------------------------------------- contract-pos/neg-doubling/proc [132] 100.0% [148] 600(0.6%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:191:2 ??? [159] 100.0% ----------------------------------------------------------------------------------- ??? [131] 100.0% [149] 450(0.4%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [176] 100.0% ----------------------------------------------------------------------------------- location-do [150] 46.8% ??? [142] 53.2% [150] 66668(66.5%) 0(0.0%) location-do ...erbie/develop/src/programs.rkt:90:0 ??? [142] 53.2% location-do [150] 46.8% ----------------------------------------------------------------------------------- table-ref [144] 100.0% [151] 6854(6.8%) 2778(2.8%) ??? ...ects/racket/contract/private/list.rkt:798:4 ??? [175] 31.9% for-loop [165] 27.5% ----------------------------------------------------------------------------------- compile16 [145] 100.0% [152] 5546(5.5%) 0(0.0%) temp74_0 (unknown source) expand-single [163] 71.9% compile-top9 [168] 28.1% ----------------------------------------------------------------------------------- loop [52] 8.8% ??? [143] 91.2% [153] 3550(3.5%) 314(0.3%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfexp [164] 61.9% bfdiv [170] 29.2% ----------------------------------------------------------------------------------- for-loop [23] 2.9% localize-error [59] 3.1% ??? [172] 4.7% taylor-sqrt [47] 4.7% loop [52] 6.2% for-loop [18] 12.4% ??? [171] 13.1% compile [128] 14.4% ??? [166] 18.3% ??? [142] 18.3% [154] 3392(3.4%) 632(0.6%) hash-ref! .../racket/private/more-scheme.rkt:376:2 simplify [29] 23.1% ??? [166] 18.3% ??? [171] 15.3% ??? [5] 12.4% parse-loop80 [43] 9.3% ??? [172] 4.7% ??? [9] 2.9% ----------------------------------------------------------------------------------- ??? [143] 100.0% [155] 2876(2.9%) 1646(1.6%) ??? ...herbie/develop/src/syntax/syntax.rkt:195:17 return/no-unsupplied [169] 21.6% ??? [167] 21.1% ----------------------------------------------------------------------------------- ??? [142] 100.0% [156] 1050(1.0%) 668(0.7%) ->flonum ...s/herbie/develop/src/programs.rkt:36:0 ??? [167] 36.4% ----------------------------------------------------------------------------------- update-en-expr [146] 100.0% [157] 912(0.9%) 912(0.9%) for-loop ...rbie/develop/src/core/egraph.rkt:214:6 ----------------------------------------------------------------------------------- ??? [143] 100.0% [158] 644(0.6%) 644(0.6%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ----------------------------------------------------------------------------------- ??? [148] 100.0% [159] 600(0.6%) 600(0.6%) ??? ...ects/racket/contract/private/list.rkt:739:5 ----------------------------------------------------------------------------------- table-ref [144] 100.0% [160] 320(0.3%) 320(0.3%) for-loop ...ies/herbie/develop/src/common.rkt:53:4 ----------------------------------------------------------------------------------- ??? [143] 100.0% [161] 312(0.3%) 0(0.0%) ...higher-order.rkt:361:33 (unknown source) ??? [162] 100.0% ----------------------------------------------------------------------------------- ...higher-order.rkt:361:33 [161] 6.4% ??? [137] 14.1% for-loop [125] 79.5% [162] 4840(4.8%) 312(0.3%) ??? ...cts/racket/contract/private/list.rkt:209:10 ??? [174] 79.5% for-loop [180] 7.8% ??? [137] 6.3% ----------------------------------------------------------------------------------- temp74_0 [152] 100.0% [163] 3988(4.0%) 0(0.0%) expand-single (unknown source) expand-capturing-lifts [173] 100.0% ----------------------------------------------------------------------------------- ??? [153] 100.0% [164] 2198(2.2%) 0(0.0%) bfexp ...-lib/math/private/bigfloat/mpfr.rkt:618:4 new-mpfr [176] 65.8% ??? [178] 34.2% ----------------------------------------------------------------------------------- ??? [151] 100.0% [165] 1888(1.9%) 312(0.3%) for-loop ...acket/contract/private/list.rkt:804:12 ??? [175] 66.8% for-loop [125] 16.6% ----------------------------------------------------------------------------------- hash-ref! [154] 100.0% [166] 1824(1.8%) 0(0.0%) ??? ...es/herbie/develop/src/core/taylor.rkt:44:15 hash-ref! [154] 100.0% ----------------------------------------------------------------------------------- ??? [140] 18.9% table-ref [144] 18.9% ->flonum [156] 24.0% ??? [155] 38.1% [167] 1594(1.6%) 1594(1.6%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 ----------------------------------------------------------------------------------- temp74_0 [152] 100.0% [168] 1558(1.6%) 600(0.6%) compile-top9 (unknown source) compile-forms31 [177] 61.5% ----------------------------------------------------------------------------------- ??? [155] 48.7% table-ref [144] 51.3% [169] 1278(1.3%) 958(1.0%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [179] 25.0% ----------------------------------------------------------------------------------- ??? [153] 100.0% [170] 1038(1.0%) 0(0.0%) bfdiv ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [176] 100.0% ----------------------------------------------------------------------------------- hash-ref! [154] 100.0% [171] 630(0.6%) 300(0.3%) ??? ...tlies/herbie/develop/src/programs.rkt:153:5 hash-ref! [154] 88.1% ----------------------------------------------------------------------------------- hash-ref! [154] 100.0% [172] 600(0.6%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:335:33 hash-ref! [154] 100.0% ----------------------------------------------------------------------------------- loop [189] 19.5% expand-single [163] 80.5% [173] 4952(4.9%) 0(0.0%) expand-capturing-lifts (unknown source) lambda-clause-expander [182] 55.8% for-loop [200] 18.7% loop [189] 13.1% dispatch-transformer41 [184] 12.4% ----------------------------------------------------------------------------------- ??? [162] 100.0% [174] 3846(3.8%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:747:7 ??? [181] 100.0% ----------------------------------------------------------------------------------- for-loop [165] 36.6% ??? [151] 63.4% [175] 3450(3.4%) 618(0.6%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [183] 55.2% loop [185] 26.9% ----------------------------------------------------------------------------------- bf [149] 15.3% bfdiv [170] 35.4% bfexp [164] 49.3% [176] 2934(2.9%) 2934(2.9%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ----------------------------------------------------------------------------------- compile-top9 [168] 100.0% [177] 958(1.0%) 0(0.0%) compile-forms31 (unknown source) for-loop [200] 66.0% serialize-phase-to-link-module-uses [186] 34.0% ----------------------------------------------------------------------------------- bfexp [164] 100.0% [178] 752(0.8%) 752(0.8%) ??? /home/p92/racket/collects/ffi/unsafe.rkt:898:4 ----------------------------------------------------------------------------------- for-loop [62] 49.0% return/no-unsupplied [169] 51.0% [179] 628(0.6%) 628(0.6%) filter ...t/collects/racket/private/list.rkt:256:2 ----------------------------------------------------------------------------------- ??? [162] 100.0% [180] 378(0.4%) 378(0.4%) for-loop ...acket/contract/private/list.rkt:212:15 ----------------------------------------------------------------------------------- ??? [137] 7.3% ??? [174] 92.7% [181] 4150(4.1%) 4150(4.1%) ??? ...ects/racket/contract/private/guts.rkt:746:8 ----------------------------------------------------------------------------------- expand-capturing-lifts [173] 100.0% [182] 2764(2.8%) 0(0.0%) lambda-clause-expander (unknown source) finish-bodys [187] 100.0% ----------------------------------------------------------------------------------- ??? [175] 100.0% [183] 1904(1.9%) 1904(1.9%) make-keyword-procedure ...ket/private/kw.rkt:407:4 ----------------------------------------------------------------------------------- expand-capturing-lifts [173] 39.7% for-loop [200] 60.3% [184] 1548(1.5%) 0(0.0%) dispatch-transformer41 (unknown source) apply-transformer52 [188] 100.0% ----------------------------------------------------------------------------------- loop [185] 42.5% ??? [175] 57.5% [185] 928(0.9%) 928(0.9%) loop ...ts/racket/contract/private/blame.rkt:320:2 loop [185] 42.5% ----------------------------------------------------------------------------------- compile-forms31 [177] 100.0% [186] 326(0.3%) 326(0.3%) serialize-phase-to-link-module-uses ...own source) ----------------------------------------------------------------------------------- lambda-clause-expander [182] 24.5% for-loop [200] 75.5% [187] 2764(2.8%) 0(0.0%) finish-bodys (unknown source) for-loop [200] 100.0% ----------------------------------------------------------------------------------- dispatch-transformer41 [184] 100.0% [188] 1548(1.5%) 300(0.3%) apply-transformer52 (unknown source) loop [189] 40.3% apply-post-expansion [190] 20.3% apply-transformer-in-context [191] 20.0% ----------------------------------------------------------------------------------- compile16 [145] 5.5% gf [192] 10.6% expand-capturing-lifts [173] 11.5% eval-prog [121] 11.6% apply-transformer52 [188] 22.1% syntax-e/no-taint [17] 38.6% [189] 2818(2.8%) 650(0.6%) loop (unknown source) gf [192] 49.2% core-form-sym [193] 22.1% expand-capturing-lifts [173] 17.1% ----------------------------------------------------------------------------------- apply-transformer52 [188] 100.0% [190] 314(0.3%) 0(0.0%) apply-post-expansion (unknown source) gf [192] 100.0% ----------------------------------------------------------------------------------- apply-transformer52 [188] 100.0% [191] 310(0.3%) 0(0.0%) apply-transformer-in-context (unknown source) parse-app [194] 100.0% ----------------------------------------------------------------------------------- add-ns-scopes [70] 9.7% apply-post-expansion [190] 10.2% loop [189] 80.2% [192] 1544(1.5%) 598(0.6%) gf (unknown source) cache-or-reuse-set [196] 21.5% propagation-apply-shifted [198] 19.4% syntax-e/no-taint [17] 10.2% propagation-merge [197] 10.2% loop [189] 9.7% ----------------------------------------------------------------------------------- loop [189] 100.0% [193] 624(0.6%) 0(0.0%) core-form-sym (unknown source) resolve+shift28 [195] 100.0% ----------------------------------------------------------------------------------- apply-transformer-in-context [191] 100.0% [194] 310(0.3%) 310(0.3%) parse-app ...collects/racket/private/kw.rkt:1105:2 ----------------------------------------------------------------------------------- core-form-sym [193] 100.0% [195] 624(0.6%) 0(0.0%) resolve+shift28 (unknown source) fallback-loop [199] 100.0% ----------------------------------------------------------------------------------- gf [192] 100.0% [196] 332(0.3%) 332(0.3%) cache-or-reuse-set (unknown source) ----------------------------------------------------------------------------------- gf [192] 100.0% [197] 314(0.3%) 314(0.3%) propagation-merge (unknown source) ----------------------------------------------------------------------------------- gf [192] 100.0% [198] 300(0.3%) 300(0.3%) propagation-apply-shifted (unknown source) ----------------------------------------------------------------------------------- resolve+shift28 [195] 100.0% [199] 624(0.6%) 0(0.0%) fallback-loop (unknown source) for-loop [200] 100.0% ----------------------------------------------------------------------------------- fallback-loop [199] 4.8% expand-capturing-lifts [173] 7.1% compile-forms31 [177] 14.6% for-loop [200] 20.4% finish-bodys [187] 53.0% [200] 4320(4.3%) 2164(2.2%) for-loop (unknown source) finish-bodys [187] 43.6% for-loop [200] 20.4% dispatch-transformer41 [184] 6.6% add-local-binding!37 [201] 3.2% expand-implicit [202] 2.3% syntax-e [7] 1.6% ----------------------------------------------------------------------------------- for-loop [200] 100.0% [201] 614(0.6%) 614(0.6%) add-local-binding!37 (unknown source) ----------------------------------------------------------------------------------- for-loop [200] 100.0% [202] 300(0.3%) 0(0.0%) expand-implicit (unknown source) binding-lookup50 [203] 100.0% ----------------------------------------------------------------------------------- expand-implicit [202] 100.0% [203] 300(0.3%) 300(0.3%) binding-lookup50 (unknown source) -----------------------------------------------------------------------------------