Profiling results ----------------- Total cpu time observed: 164896ms (out of 166220ms) Number of samples taken: 490 (once every 337ms) (Hiding functions with self<1.0% and local<2.0%: 3 of 208 hidden) ============================================================================ Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ============================================================================ ??? [18] 100.0% [1] 164896(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [11] 100.0% ---------------------------------------------------------------------------- ??? [18] 100.0% [2] 94708(57.4%) 0(0.0%) run-improve43 ...ie/develop/src/mainloop.rkt:362:0 for-loop [12] 92.3% simplify! [22] 6.1% setup-prog!34 [16] 1.4% finalize-iter! [24] 0.3% ---------------------------------------------------------------------------- ??? [18] 100.0% [3] 20312(12.3%) 0(0.0%) oracle-error ...erbie/develop/src/points.rkt:216:0 for-loop [13] 100.0% ---------------------------------------------------------------------------- loop [137] 100.0% [4] 17754(10.8%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 ??? [146] 100.0% ---------------------------------------------------------------------------- matcher [66] 100.0% [5] 2584(1.6%) 0(0.0%) ??? .../herbie/develop/src/core/matcher.rkt:178:11 for-loop [14] 100.0% ---------------------------------------------------------------------------- ??? [18] 100.0% [6] 1838(1.1%) 0(0.0%) get-final-combination ...op/src/mainloop.rkt:383:0 infer-splitpoints [15] 100.0% ---------------------------------------------------------------------------- map [20] 26.6% loop [138] 73.4% [7] 1226(0.7%) 0(0.0%) ??? .../herbie/develop/src/core/localize.rkt:43:32 ??? [151] 100.0% ---------------------------------------------------------------------------- ??? [18] 100.0% [8] 894(0.5%) 0(0.0%) baseline-error ...bie/develop/src/points.rkt:220:0 loop [52] 67.1% argmin [54] 32.9% ---------------------------------------------------------------------------- for-loop [197] 100.0% [9] 604(0.4%) 0(0.0%) syntax-e (unknown source) syntax-e/no-taint [17] 100.0% ---------------------------------------------------------------------------- for-loop [55] 100.0% [10] 308(0.2%) 0(0.0%) variable? .../develop/src/syntax/syntax.rkt:1159:0 ??? [91] 100.0% ---------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [11] 164896(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [18] 100.0% ---------------------------------------------------------------------------- run-improve43 [2] 100.0% [12] 87390(53.0%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:377:4 run-iter! [19] 100.0% ---------------------------------------------------------------------------- oracle-error [3] 100.0% [13] 20312(12.3%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:217:2 loop [137] 65.9% map [20] 34.1% ---------------------------------------------------------------------------- ??? [5] 100.0% [14] 2584(1.6%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:182:21 matcher [66] 100.0% ---------------------------------------------------------------------------- get-final-combination [6] 100.0% [15] 1838(1.1%) 0(0.0%) infer-splitpoints ...lop/src/core/regimes.rkt:33:0 for-loop [21] 100.0% ---------------------------------------------------------------------------- run-improve43 [2] 100.0% [16] 1288(0.8%) 0(0.0%) setup-prog!34 ...bie/develop/src/mainloop.rkt:76:0 loop [23] 100.0% ---------------------------------------------------------------------------- expand-id-application-form17 [175] 33.0% syntax-e [9] 67.0% [17] 902(0.5%) 0(0.0%) syntax-e/no-taint (unknown source) loop [163] 100.0% ---------------------------------------------------------------------------- run [11] 50.0% [18] 164896(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 50.0% run-improve43 [2] 28.7% loop [23] 11.9% oracle-error [3] 6.2% eval-errors [75] 1.3% errors [121] 1.0% get-final-combination [6] 0.6% baseline-error [8] 0.3% loop [137] 0.1% ---------------------------------------------------------------------------- for-loop [12] 100.0% [19] 87390(53.0%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:343:0 simplify! [22] 75.8% localize! [25] 9.5% finalize-iter! [24] 9.3% gen-rewrites! [26] 3.0% choose-best-alt! [27] 2.5% ---------------------------------------------------------------------------- parse-loop15 [132] 2.5% f9 [135] 10.2% loop [137] 29.9% for-loop [13] 57.5% [20] 12070(7.3%) 298(0.2%) map ...t-7.0/collects/racket/private/map.rkt:35:13 ??? [142] 40.1% ??? [151] 27.4% loop [137] 17.3% loop [138] 9.9% ??? [7] 2.7% ---------------------------------------------------------------------------- infer-splitpoints [15] 100.0% [21] 1838(1.1%) 0(0.0%) for-loop ...rbie/develop/src/core/regimes.rkt:45:6 option-on-expr [28] 100.0% ---------------------------------------------------------------------------- run-improve43 [2] 8.0% run-iter! [19] 92.0% [22] 71942(43.6%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:239:0 ??? [29] 100.0% ---------------------------------------------------------------------------- setup-prog!34 [16] 3.2% ??? [18] 96.8% [23] 40520(24.6%) 314(0.2%) loop ...htlies/herbie/develop/src/points.rkt:320:2 loop [38] 48.1% loop [30] 34.1% make-exacts-walkup [40] 11.1% make-exacts-halfpoints35 [33] 3.9% ---------------------------------------------------------------------------- run-improve43 [2] 3.6% run-iter! [19] 96.4% [24] 8390(5.1%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:294:0 ??? [91] 100.0% ---------------------------------------------------------------------------- run-iter! [19] 100.0% [25] 8282(5.0%) 0(0.0%) localize! ...herbie/develop/src/mainloop.rkt:138:0 localize-error [31] 100.0% ---------------------------------------------------------------------------- run-iter! [19] 100.0% [26] 2584(1.6%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:195:0 for-loop [32] 100.0% ---------------------------------------------------------------------------- run-iter! [19] 100.0% [27] 2222(1.3%) 0(0.0%) choose-best-alt! ...develop/src/mainloop.rkt:129:0 ??? [91] 100.0% ---------------------------------------------------------------------------- for-loop [21] 100.0% [28] 1838(1.1%) 0(0.0%) option-on-expr ...velop/src/core/regimes.rkt:145:0 for-loop [34] 49.8% loop [137] 17.8% sort-context-on-expr [35] 16.2% err-lsts->split-indices [36] 16.1% ---------------------------------------------------------------------------- simplify! [22] 100.0% [29] 71942(43.6%) 0(0.0%) ??? ...s/herbie/develop/src/core/simplify.rkt:29:0 loop [37] 79.2% loop [39] 20.8% ---------------------------------------------------------------------------- loop [23] 100.0% [30] 13812(8.4%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:275:2 loop [38] 42.3% make-exacts-walkup [40] 35.7% eval-prog [125] 21.9% ---------------------------------------------------------------------------- localize! [25] 100.0% [31] 8282(5.0%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:52:0 hash-ref! [126] 96.5% ??? [42] 3.5% ---------------------------------------------------------------------------- gen-rewrites! [26] 100.0% [32] 2584(1.6%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:204:11 rewrite-expression-head20 [41] 100.0% ---------------------------------------------------------------------------- loop [23] 100.0% [33] 1590(1.0%) 0(0.0%) make-exacts-halfpoints35 ...p/src/points.rkt:273:0 make-exacts-walkup [40] 80.3% loop [38] 19.7% ---------------------------------------------------------------------------- option-on-expr [28] 100.0% [34] 916(0.6%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:153:4 errors [121] 100.0% ---------------------------------------------------------------------------- option-on-expr [28] 100.0% [35] 298(0.2%) 0(0.0%) sort-context-on-expr ...src/core/regimes.rkt:140:0 ??? [42] 100.0% ---------------------------------------------------------------------------- option-on-expr [28] 100.0% [36] 296(0.2%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:271:0 loop [43] 100.0% ---------------------------------------------------------------------------- ??? [29] 100.0% [37] 56988(34.6%) 0(0.0%) loop .../herbie/develop/src/core/simplify.rkt:43:2 one-iter [44] 98.9% loop [48] 1.1% ---------------------------------------------------------------------------- make-exacts-halfpoints35 [33] 1.2% loop [30] 22.8% loop [23] 76.0% [38] 25660(15.6%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:258:4 loop [137] 97.5% loop [47] 2.5% ---------------------------------------------------------------------------- ??? [29] 100.0% [39] 14954(9.1%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:127:2 for-loop [45] 100.0% ---------------------------------------------------------------------------- make-exacts-halfpoints35 [33] 11.9% loop [23] 42.0% loop [30] 46.1% [40] 10710(6.5%) 0(0.0%) make-exacts-walkup ...develop/src/points.rkt:255:0 loop [137] 75.8% eval-prog [125] 24.2% ---------------------------------------------------------------------------- for-loop [32] 100.0% [41] 2584(1.6%) 0(0.0%) rewrite-expression-head20 ...ore/matcher.rkt:128:0 rewriter [46] 100.0% ---------------------------------------------------------------------------- localize-error [31] 49.7% sort-context-on-expr [35] 50.3% [42] 592(0.4%) 0(0.0%) ??? ...-7.0/collects/racket/private/sort.rkt:369:3 loop [49] 100.0% ---------------------------------------------------------------------------- err-lsts->split-indices [36] 100.0% [43] 296(0.2%) 0(0.0%) loop .../herbie/develop/src/core/regimes.rkt:322:4 for-loop [50] 100.0% ---------------------------------------------------------------------------- loop [37] 100.0% [44] 56358(34.2%) 0(0.0%) one-iter ...bie/develop/src/core/simplify.rkt:98:0 for-loop [51] 88.1% find-matches [53] 11.9% ---------------------------------------------------------------------------- loop [39] 100.0% [45] 14954(9.1%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:133:4 loop [52] 51.4% argmin [54] 20.3% for-loop [56] 12.3% expression-cost [63] 9.9% for-loop [65] 6.1% ---------------------------------------------------------------------------- rewrite-expression-head20 [41] 22.8% matcher [66] 77.2% [46] 2584(1.6%) 0(0.0%) rewriter ...bie/develop/src/core/matcher.rkt:131:2 for-loop [55] 85.3% *rules* [57] 14.7% ---------------------------------------------------------------------------- loop [38] 100.0% [47] 636(0.4%) 0(0.0%) loop ...-7.0/collects/racket/private/map.rkt:277:4 =-or-nan? [58] 100.0% ---------------------------------------------------------------------------- loop [37] 100.0% [48] 630(0.4%) 0(0.0%) loop ...-7.0/collects/racket/private/map.rkt:74:19 set-precompute! [59] 100.0% ---------------------------------------------------------------------------- ??? [42] 100.0% [49] 592(0.4%) 0(0.0%) loop ...7.0/collects/racket/private/sort.rkt:96:12 ??? [151] 50.3% errors-score [61] 49.7% ---------------------------------------------------------------------------- loop [43] 100.0% [50] 296(0.2%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:287:4 for-loop [60] 100.0% ---------------------------------------------------------------------------- one-iter [44] 100.0% [51] 49646(30.1%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:99:2 apply-match [62] 100.0% ---------------------------------------------------------------------------- baseline-error [8] 7.2% for-loop [45] 92.8% [52] 8282(5.0%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:751:4 expression-cost [63] 66.7% for-loop [65] 26.1% ??? [69] 7.2% ---------------------------------------------------------------------------- one-iter [44] 100.0% [53] 6712(4.1%) 0(0.0%) find-matches ...develop/src/core/simplify.rkt:62:0 for-loop [64] 100.0% ---------------------------------------------------------------------------- baseline-error [8] 8.8% for-loop [45] 91.2% [54] 3332(2.0%) 300(0.2%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 expression-cost [63] 72.5% for-loop [65] 9.7% ??? [69] 8.8% ---------------------------------------------------------------------------- rewriter [46] 100.0% [55] 2584(1.6%) 624(0.4%) for-loop ...ie/develop/src/core/matcher.rkt:134:10 matcher [66] 92.0% variable? [10] 3.0% ---------------------------------------------------------------------------- for-loop [45] 100.0% [56] 1836(1.1%) 888(0.5%) for-loop ...e/develop/src/core/simplify.rkt:137:16 for-loop [68] 51.6% ---------------------------------------------------------------------------- rewriter [46] 100.0% [57] 1652(1.0%) 0(0.0%) *rules* ...rbie/develop/src/syntax/rules.rkt:767:0 for-loop [67] 100.0% ---------------------------------------------------------------------------- loop [47] 100.0% [58] 636(0.4%) 636(0.4%) =-or-nan? ...ies/herbie/develop/src/float.rkt:76:0 ---------------------------------------------------------------------------- loop [48] 100.0% [59] 630(0.4%) 0(0.0%) set-precompute! ...lop/src/core/simplify.rkt:103:0 for-loop [70] 100.0% ---------------------------------------------------------------------------- for-loop [50] 100.0% [60] 296(0.2%) 296(0.2%) for-loop ...bie/develop/src/core/regimes.rkt:291:8 ---------------------------------------------------------------------------- loop [49] 100.0% [61] 294(0.2%) 0(0.0%) errors-score ...erbie/develop/src/points.rkt:224:0 loop [71] 100.0% ---------------------------------------------------------------------------- for-loop [51] 100.0% [62] 49646(30.1%) 0(0.0%) apply-match .../develop/src/core/simplify.rkt:71:0 for-loop [72] 77.7% match-e [73] 18.1% update-leader! [90] 3.0% custom-set-intersect [79] 0.6% set [117] 0.6% ---------------------------------------------------------------------------- for-loop [45] 15.8% argmin [54] 25.6% loop [52] 58.6% [63] 9422(5.7%) 0(0.0%) expression-cost .../develop/src/programs.rkt:205:0 compile [74] 100.0% ---------------------------------------------------------------------------- for-loop [64] 50.0% find-matches [53] 50.0% [64] 6712(4.1%) 902(0.5%) for-loop ...bie/develop/src/core/simplify.rkt:64:8 for-loop [64] 50.0% match-e [73] 43.3% ---------------------------------------------------------------------------- argmin [54] 9.5% for-loop [45] 26.9% loop [52] 63.6% [65] 3396(2.1%) 960(0.6%) for-loop .../herbie/develop/src/programs.rkt:206:2 table-ref [76] 71.7% ---------------------------------------------------------------------------- for-loop [14] 50.0% for-loop [55] 50.0% [66] 2584(1.6%) 0(0.0%) matcher ...rbie/develop/src/core/matcher.rkt:166:2 ??? [5] 50.0% rewriter [46] 50.0% ---------------------------------------------------------------------------- *rules* [57] 100.0% [67] 1652(1.0%) 326(0.2%) for-loop ...ies/herbie/develop/src/common.rkt:71:9 ormap [77] 80.3% ---------------------------------------------------------------------------- for-loop [56] 100.0% [68] 948(0.6%) 948(0.6%) for-loop ...e/develop/src/core/simplify.rkt:141:23 ---------------------------------------------------------------------------- argmin [54] 32.9% loop [52] 67.1% [69] 894(0.5%) 0(0.0%) ??? ...htlies/herbie/develop/src/points.rkt:221:27 eval-errors [75] 67.1% loop [137] 32.9% ---------------------------------------------------------------------------- set-precompute! [59] 100.0% [70] 630(0.4%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:105:2 setfindf [78] 100.0% ---------------------------------------------------------------------------- errors-score [61] 100.0% [71] 294(0.2%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ordinary-value? [80] 100.0% ---------------------------------------------------------------------------- apply-match [62] 100.0% [72] 38566(23.4%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:85:2 merge-egraph-nodes! [81] 73.0% loop! [100] 18.1% mk-enode! [102] 4.9% substitute-e [84] 4.0% ---------------------------------------------------------------------------- for-loop [64] 28.1% for-loop [93] 31.3% apply-match [62] 40.7% [73] 14772(9.0%) 1578(1.0%) match-e ...herbie/develop/src/core/ematch.rkt:39:0 for-loop [82] 84.3% ??? [91] 3.9% make-sequence [87] 2.1% ---------------------------------------------------------------------------- expression-cost [63] 100.0% [74] 9422(5.7%) 0(0.0%) compile ...s/herbie/develop/src/programs.rkt:182:0 hash-ref! [126] 100.0% ---------------------------------------------------------------------------- ??? [69] 12.4% ??? [18] 87.6% [75] 4822(2.9%) 0(0.0%) eval-errors ...herbie/develop/src/points.rkt:207:0 for-loop [83] 100.0% ---------------------------------------------------------------------------- for-loop [65] 100.0% [76] 2436(1.5%) 1542(0.9%) table-ref ...es/herbie/develop/src/common.rkt:42:0 for-loop [86] 36.7% ---------------------------------------------------------------------------- for-loop [67] 100.0% [77] 1326(0.8%) 0(0.0%) ormap ....0/collects/racket/private/map.rkt:141:13 flag-set? [85] 74.8% curried [95] 25.2% ---------------------------------------------------------------------------- for-loop [70] 100.0% [78] 630(0.4%) 298(0.2%) setfindf ...es/herbie/develop/src/common.rkt:139:0 for-loop [88] 52.7% ---------------------------------------------------------------------------- apply-match [62] 100.0% [79] 308(0.2%) 0(0.0%) custom-set-intersect ...rivate/set-types.rkt:195:0 for-loop [89] 100.0% ---------------------------------------------------------------------------- loop [71] 100.0% [80] 294(0.2%) 294(0.2%) ordinary-value? ...rbie/develop/src/float.rkt:54:0 ---------------------------------------------------------------------------- merge-egraph-nodes! [81] 5.1% for-loop [92] 14.5% for-loop [72] 80.4% [81] 28152(17.1%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:144:0 update-leader! [90] 56.1% for-loop [92] 22.2% loop! [100] 15.0% merge-egraph-nodes! [81] 5.1% enode-merge! [96] 1.6% ---------------------------------------------------------------------------- match-e [73] 100.0% [82] 13820(8.4%) 6644(4.0%) for-loop ...rbie/develop/src/core/ematch.rkt:52:11 for-loop [93] 43.4% loop [137] 20.2% curried [95] 1.2% foldr [98] 1.1% foldl [144] 1.1% filter [183] 1.1% ---------------------------------------------------------------------------- eval-errors [75] 100.0% [83] 4822(2.9%) 602(0.4%) for-loop ...es/herbie/develop/src/points.rkt:209:2 ??? [146] 87.5% ---------------------------------------------------------------------------- for-loop [72] 100.0% [84] 1534(0.9%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:64:0 for-loop [94] 100.0% ---------------------------------------------------------------------------- ormap [77] 100.0% [85] 992(0.6%) 664(0.4%) flag-set? ...es/herbie/develop/src/config.rkt:28:0 ??? [166] 33.1% ---------------------------------------------------------------------------- table-ref [76] 100.0% [86] 894(0.5%) 894(0.5%) for-loop ...ies/herbie/develop/src/common.rkt:44:4 ---------------------------------------------------------------------------- match-e [73] 100.0% [87] 634(0.4%) 634(0.4%) make-sequence ...ects/racket/private/for.rkt:528:2 ---------------------------------------------------------------------------- setfindf [78] 100.0% [88] 332(0.2%) 0(0.0%) for-loop ...es/herbie/develop/src/common.rkt:140:2 ??? [91] 100.0% ---------------------------------------------------------------------------- custom-set-intersect [79] 100.0% [89] 308(0.2%) 0(0.0%) for-loop ...cts/racket/private/set-types.rkt:207:3 for-loop [97] 100.0% ---------------------------------------------------------------------------- apply-match [62] 7.2% merge-egraph-nodes! [81] 92.8% [90] 21030(12.8%) 300(0.2%) update-leader! ...evelop/src/core/egraph.rkt:212:0 for-loop [99] 92.6% custom-set-union! [104] 3.0% for-loop [106] 3.0% ---------------------------------------------------------------------------- variable? [10] 2.4% for-loop [88] 2.6% match-e [73] 12.4% choose-best-alt! [27] 17.3% finalize-iter! [24] 65.3% [91] 12840(7.8%) 2228(1.4%) ??? ...contract/private/arrow-val-first.rkt:388:18 for-loop [101] 65.3% ??? [103] 17.3% ---------------------------------------------------------------------------- merge-egraph-nodes! [81] 100.0% [92] 10460(6.3%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:198:4 merge-egraph-nodes! [81] 79.3% loop! [100] 20.7% ---------------------------------------------------------------------------- for-loop [82] 100.0% [93] 8808(5.3%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:58:37 match-e [73] 100.0% ---------------------------------------------------------------------------- substitute-e [84] 100.0% [94] 1534(0.9%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:73:24 mk-enode! [102] 100.0% ---------------------------------------------------------------------------- for-loop [82] 48.9% ormap [77] 51.1% [95] 654(0.4%) 654(0.4%) curried ...-7.0/collects/racket/function.rkt:71:18 ---------------------------------------------------------------------------- merge-egraph-nodes! [81] 100.0% [96] 626(0.4%) 0(0.0%) enode-merge! ...e/develop/src/core/enode.rkt:127:0 adopt-enode! [105] 100.0% ---------------------------------------------------------------------------- for-loop [89] 100.0% [97] 308(0.2%) 308(0.2%) for-loop ...cts/racket/private/set-types.rkt:201:4 ---------------------------------------------------------------------------- for-loop [82] 100.0% [98] 296(0.2%) 0(0.0%) foldr ....0/collects/racket/private/list.rkt:242:4 cp-2 [107] 100.0% ---------------------------------------------------------------------------- update-leader! [90] 100.0% [99] 19482(11.8%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:217:6 for-loop [108] 50.6% hash-update! [113] 49.4% ---------------------------------------------------------------------------- for-loop [92] 10.0% merge-egraph-nodes! [81] 23.8% for-loop [72] 31.9% loop [137] 34.3% [100] 15002(9.1%) 3856(2.3%) loop! ...s/herbie/develop/src/core/enode.rkt:190:2 loop [137] 38.4% custom-set-union [110] 38.0% set [117] 9.2% update-en-expr [128] 2.3% ---------------------------------------------------------------------------- ??? [91] 100.0% [101] 8390(5.1%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [109] 100.0% ---------------------------------------------------------------------------- for-loop [94] 44.8% for-loop [72] 55.2% [102] 3422(2.1%) 2224(1.3%) mk-enode! ...rbie/develop/src/core/egraph.rkt:99:0 hash-has-key? [111] 26.2% new-enode [112] 8.8% ---------------------------------------------------------------------------- ??? [91] 100.0% [103] 2222(1.3%) 0(0.0%) ??? .../herbie/develop/src/core/alt-table.rkt:54:0 ??? [151] 100.0% ---------------------------------------------------------------------------- update-leader! [90] 100.0% [104] 626(0.4%) 626(0.4%) custom-set-union! ...t/private/set-types.rkt:245:0 ---------------------------------------------------------------------------- enode-merge! [96] 100.0% [105] 626(0.4%) 326(0.2%) adopt-enode! ...e/develop/src/core/enode.rkt:103:0 custom-set-union [110] 47.9% ---------------------------------------------------------------------------- update-leader! [90] 100.0% [106] 622(0.4%) 622(0.4%) for-loop ...rbie/develop/src/core/egraph.rkt:227:6 ---------------------------------------------------------------------------- foldr [98] 100.0% [107] 296(0.2%) 296(0.2%) cp-2 .../racket-7.0/collects/racket/list.rkt:826:2 ---------------------------------------------------------------------------- for-loop [99] 100.0% [108] 9860(6.0%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:218:8 hash-update! [113] 100.0% ---------------------------------------------------------------------------- for-loop [101] 100.0% [109] 8390(5.1%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:200:0 best-and-tied-at-points [115] 49.0% override-at-pnts [116] 47.4% loop [119] 3.6% ---------------------------------------------------------------------------- adopt-enode! [105] 4.1% loop! [100] 95.9% [110] 7284(4.4%) 1846(1.1%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [114] 69.7% for-loop [118] 4.9% ---------------------------------------------------------------------------- mk-enode! [102] 100.0% [111] 896(0.5%) 896(0.5%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 ---------------------------------------------------------------------------- mk-enode! [102] 100.0% [112] 302(0.2%) 0(0.0%) new-enode ...erbie/develop/src/core/enode.rkt:95:0 set [117] 100.0% ---------------------------------------------------------------------------- for-loop [99] 49.4% for-loop [108] 50.6% [113] 19482(11.8%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [120] 100.0% ---------------------------------------------------------------------------- custom-set-union [110] 100.0% [114] 5080(3.1%) 3112(1.9%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [122] 38.7% ---------------------------------------------------------------------------- atab-add-altn [109] 100.0% [115] 4110(2.5%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:112:0 errors [121] 100.0% ---------------------------------------------------------------------------- atab-add-altn [109] 100.0% [116] 3976(2.4%) 0(0.0%) override-at-pnts ...p/src/core/alt-table.rkt:135:0 errors [121] 100.0% ---------------------------------------------------------------------------- apply-match [62] 8.5% new-enode [112] 8.7% loop! [100] 82.7% [117] 3462(2.1%) 3462(2.1%) set ...collects/racket/private/set-types.rkt:981:0 ---------------------------------------------------------------------------- custom-set-union [110] 100.0% [118] 358(0.2%) 358(0.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 ---------------------------------------------------------------------------- atab-add-altn [109] 100.0% [119] 304(0.2%) 304(0.2%) loop ...-7.0/collects/racket/private/hash.rkt:20:4 ---------------------------------------------------------------------------- hash-update! [113] 100.0% [120] 19482(11.8%) 598(0.4%) ??? ...s/herbie/develop/src/core/egraph.rkt:220:24 for-loop [123] 95.2% update-en-expr [128] 1.7% ---------------------------------------------------------------------------- for-loop [34] 6.3% ??? [182] 15.2% ??? [18] 23.2% override-at-pnts [116] 27.2% best-and-tied-at-points [115] 28.1% [121] 14620(8.9%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:232:0 for-loop [124] 87.4% eval-prog [125] 12.6% ---------------------------------------------------------------------------- for-loop [114] 100.0% [122] 1968(1.2%) 1968(1.2%) for-loop ...cts/racket/private/set-types.rkt:178:5 ---------------------------------------------------------------------------- ??? [120] 100.0% [123] 18552(11.3%) 17960(10.9%) for-loop ...bie/develop/src/core/egraph.rkt:221:26 update-en-expr [128] 3.2% ---------------------------------------------------------------------------- errors [121] 100.0% [124] 12776(7.7%) 632(0.4%) for-loop ...es/herbie/develop/src/points.rkt:235:4 ??? [146] 73.1% ??? [151] 12.4% ulp-difference [129] 5.0% ??? [154] 4.6% ---------------------------------------------------------------------------- loop [137] 3.8% errors [121] 23.8% make-exacts-walkup [40] 33.4% loop [30] 39.0% [125] 7760(4.7%) 0(0.0%) eval-prog ...herbie/develop/src/programs.rkt:131:0 hash-ref! [126] 54.4% temp68_2 [127] 41.4% eval [130] 4.2% ---------------------------------------------------------------------------- eval-prog [125] 9.4% localize-error [31] 10.9% compile [74] 20.6% ??? [131] 23.0% loop [137] 36.2% [126] 21632(13.1%) 8544(5.2%) hash-ref! .../racket/private/more-scheme.rkt:376:2 parse-loop15 [132] 36.0% ??? [131] 35.7% bigfloat-hash [133] 9.1% f9 [135] 0.9% ---------------------------------------------------------------------------- eval-prog [125] 100.0% [127] 3214(1.9%) 0(0.0%) temp68_2 (unknown source) compile16 [134] 100.0% ---------------------------------------------------------------------------- ??? [120] 20.7% for-loop [123] 37.0% loop! [100] 42.3% [128] 1602(1.0%) 1602(1.0%) update-en-expr ...evelop/src/core/egraph.rkt:206:0 ---------------------------------------------------------------------------- for-loop [124] 100.0% [129] 634(0.4%) 0(0.0%) ulp-difference ...erbie/develop/src/float.rkt:14:0 f9 [135] 100.0% ---------------------------------------------------------------------------- eval-prog [125] 100.0% [130] 324(0.2%) 0(0.0%) eval (unknown source) datum->syntax6 [136] 100.0% ---------------------------------------------------------------------------- hash-ref! [126] 100.0% [131] 11546(7.0%) 1194(0.7%) ??? ...tlies/herbie/develop/src/programs.rkt:190:5 hash-ref! [126] 63.8% loop [137] 31.3% ---------------------------------------------------------------------------- hash-ref! [126] 100.0% [132] 7988(4.8%) 0(0.0%) parse-loop15 ...s/racket/match/compiler.rkt:418:15 loop [137] 89.2% loop [138] 9.6% map [20] 1.2% ---------------------------------------------------------------------------- hash-ref! [126] 100.0% [133] 3906(2.4%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:167:0 bfcanonicalize [139] 90.9% sig+exp->bigfloat [141] 9.1% ---------------------------------------------------------------------------- temp68_2 [127] 100.0% [134] 3214(1.9%) 0(0.0%) compile16 (unknown source) temp74_0 [140] 100.0% ---------------------------------------------------------------------------- ulp-difference [129] 34.1% hash-ref! [126] 65.9% [135] 1860(1.1%) 310(0.2%) f9 ....0/collects/racket/match/compiler.rkt:507:40 map [20] 65.9% keyword-apply [164] 17.4% ---------------------------------------------------------------------------- eval [130] 100.0% [136] 324(0.2%) 0(0.0%) datum->syntax6 (unknown source) loop [163] 100.0% ---------------------------------------------------------------------------- ??? [69] 0.0% option-on-expr [28] 0.0% ??? [18] 0.2% for-loop [82] 0.2% make-exacts-walkup [40] 0.3% loop [38] 0.8% loop! [100] 1.0% map [20] 2.8% ??? [131] 4.9% parse-loop15 [132] 6.2% for-loop [13] 12.9% loop [137] 70.7% [137] 74412(45.1%) 1266(0.8%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [137] 70.7% hash-ref! [126] 11.0% ??? [142] 8.1% ??? [146] 7.4% loop! [100] 1.0% composed [4] 0.7% ??? [151] 0.6% foldl [144] 0.2% eval-prog [125] 0.2% map [20] 0.1% ---------------------------------------------------------------------------- parse-loop15 [132] 2.5% map [20] 3.5% loop [138] 93.9% [138] 4052(2.5%) 896(0.5%) loop ...-7.0/collects/racket/private/map.rkt:54:19 loop [138] 93.9% ??? [151] 1.8% ??? [7] 1.1% ??? [154] 0.2% ---------------------------------------------------------------------------- bigfloat-hash [133] 100.0% [139] 3550(2.2%) 3250(2.0%) bfcanonicalize .../private/bigfloat/mpfr.rkt:157:0 bigfloat->sig+exp [145] 8.5% ---------------------------------------------------------------------------- compile16 [134] 100.0% [140] 3214(1.9%) 0(0.0%) temp74_0 (unknown source) expand-single [143] 100.0% ---------------------------------------------------------------------------- bigfloat-hash [133] 100.0% [141] 356(0.2%) 0(0.0%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:387:0 new-mpfr [195] 100.0% ---------------------------------------------------------------------------- map [20] 39.0% loop [137] 61.0% [142] 12402(7.5%) 0(0.0%) ??? ...htlies/herbie/develop/src/points.rkt:218:26 ??? [146] 90.0% ??? [151] 5.2% *bit-width* [149] 4.8% ---------------------------------------------------------------------------- temp74_0 [140] 100.0% [143] 3214(1.9%) 0(0.0%) expand-single (unknown source) expand-capturing-lifts [147] 100.0% ---------------------------------------------------------------------------- for-loop [82] 9.5% loop [137] 90.5% [144] 3092(1.9%) 294(0.2%) foldl ....0/collects/racket/private/list.rkt:229:4 merge2 [148] 90.5% ---------------------------------------------------------------------------- bfcanonicalize [139] 100.0% [145] 300(0.2%) 300(0.2%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:372:0 ---------------------------------------------------------------------------- for-loop [83] 7.6% for-loop [124] 16.8% ??? [142] 20.1% loop [137] 23.6% composed [4] 31.9% [146] 55600(33.7%) 1110(0.7%) ??? ...tlies/herbie/develop/src/programs.rkt:147:2 ??? [150] 72.7% ->bf [152] 18.7% ??? [151] 5.5% ??? [154] 1.1% ---------------------------------------------------------------------------- expand-single [143] 100.0% [147] 3214(1.9%) 296(0.2%) expand-capturing-lifts (unknown source) lambda-clause-expander [153] 90.8% ---------------------------------------------------------------------------- foldl [144] 100.0% [148] 2798(1.7%) 2798(1.7%) merge2 .../herbie/develop/src/core/ematch.rkt:24:0 ---------------------------------------------------------------------------- ??? [142] 100.0% [149] 594(0.4%) 298(0.2%) *bit-width* ...s/herbie/develop/src/float.rkt:43:0 ??? [171] 49.8% ---------------------------------------------------------------------------- ??? [146] 100.0% [150] 40416(24.5%) 7328(4.4%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 double->posit16 [155] 50.7% big-posit16-add [157] 16.3% big-posit16-div [159] 8.5% ??? [169] 2.2% for-loop [165] 1.8% big-posit16-mul [167] 1.7% keyword-apply [164] 0.7% ---------------------------------------------------------------------------- loop [49] 1.3% ??? [142] 2.7% ??? [7] 5.2% for-loop [124] 6.0% loop [138] 6.7% ??? [103] 8.7% ??? [146] 12.8% map [20] 13.9% loop [137] 42.6% [151] 23778(14.4%) 2618(1.6%) ??? ...tract/private/arrow-higher-order.rkt:357:33 ->flonum [156] 42.3% double->posit16 [155] 38.0% best-alt [161] 8.7% ---------------------------------------------------------------------------- ??? [146] 100.0% [152] 10396(6.3%) 3460(2.1%) ->bf ...tlies/herbie/develop/src/programs.rkt:63:0 bf [158] 60.3% ??? [166] 3.4% keyword-apply [164] 3.0% ---------------------------------------------------------------------------- expand-capturing-lifts [147] 100.0% [153] 2918(1.8%) 0(0.0%) lambda-clause-expander (unknown source) finish-bodys [160] 89.8% loop [163] 10.2% ---------------------------------------------------------------------------- for-loop [124] 31.6% ??? [146] 33.4% loop [138] 35.1% [154] 1870(1.1%) 0(0.0%) ??? ...ects/racket/contract/private/prop.rkt:519:4 ??? [162] 100.0% ---------------------------------------------------------------------------- ??? [151] 30.6% ??? [150] 69.4% [155] 29510(17.9%) 0(0.0%) double->posit16 ...ftposit-rkt/softposit.rkt:248:0 get-ffi-obj* [168] 100.0% ---------------------------------------------------------------------------- ??? [151] 100.0% [156] 10220(6.2%) 7366(4.5%) ->flonum ...s/herbie/develop/src/programs.rkt:37:0 ??? [171] 9.5% return/no-unsupplied [174] 8.7% ??? [169] 6.7% ??? [196] 2.9% ---------------------------------------------------------------------------- ??? [150] 100.0% [157] 6574(4.0%) 376(0.2%) big-posit16-add .../src/syntax/softposit.rkt:108:0 ??? [181] 89.3% ...higher-order.rkt:361:33 [176] 5.0% ---------------------------------------------------------------------------- ->bf [152] 100.0% [158] 6264(3.8%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [195] 100.0% ---------------------------------------------------------------------------- ??? [150] 100.0% [159] 3446(2.1%) 0(0.0%) big-posit16-div .../src/syntax/softposit.rkt:111:0 ??? [181] 89.4% ...higher-order.rkt:361:33 [176] 10.6% ---------------------------------------------------------------------------- lambda-clause-expander [153] 19.4% for-loop [197] 80.6% [160] 2620(1.6%) 0(0.0%) finish-bodys (unknown source) for-loop [197] 100.0% ---------------------------------------------------------------------------- ??? [151] 100.0% [161] 2222(1.3%) 0(0.0%) best-alt .../herbie/develop/src/mainloop.rkt:124:0 loop [170] 57.6% argmins [172] 42.4% ---------------------------------------------------------------------------- ??? [154] 100.0% [162] 1870(1.1%) 1218(0.7%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [169] 34.9% ---------------------------------------------------------------------------- datum->syntax6 [136] 0.7% lambda-clause-expander [153] 16.4% loop [163] 17.1% for-loop [197] 24.5% syntax-e/no-taint [17] 41.4% [163] 1820(1.1%) 324(0.2%) loop (unknown source) gf [173] 41.4% expand-id-application-form17 [175] 40.8% loop [163] 17.1% ---------------------------------------------------------------------------- ??? [150] 31.7% ->bf [152] 33.6% f9 [135] 34.7% [164] 934(0.6%) 934(0.6%) keyword-apply ...lects/racket/private/kw.rkt:421:2 ---------------------------------------------------------------------------- ??? [150] 100.0% [165] 718(0.4%) 0(0.0%) for-loop ...ie/develop/src/syntax/syntax.rkt:725:2 fold-binary-pred [177] 51.8% ...higher-order.rkt:357:33 [179] 48.2% ---------------------------------------------------------------------------- flag-set? [85] 47.8% ->bf [152] 52.2% [166] 686(0.4%) 686(0.4%) ??? ...ects/racket/contract/private/guts.rkt:746:8 ---------------------------------------------------------------------------- ??? [150] 100.0% [167] 684(0.4%) 336(0.2%) big-posit16-mul .../src/syntax/softposit.rkt:110:0 bf* [178] 50.9% ---------------------------------------------------------------------------- double->posit16 [155] 100.0% [168] 29510(17.9%) 7294(4.4%) get-ffi-obj* ...-7.0/collects/ffi/unsafe.rkt:209:2 get-ffi-lib9 [180] 75.3% ---------------------------------------------------------------------------- ??? [162] 29.3% ->flonum [156] 30.8% ??? [150] 39.9% [169] 2226(1.3%) 2226(1.3%) ??? ...-7.0/collects/racket/lazy-require.rkt:106:6 ---------------------------------------------------------------------------- best-alt [161] 100.0% [170] 1280(0.8%) 0(0.0%) loop ...ghtlies/herbie/develop/src/common.rkt:94:2 ??? [182] 100.0% ---------------------------------------------------------------------------- *bit-width* [149] 23.3% ->flonum [156] 76.7% [171] 1270(0.8%) 1270(0.8%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 ---------------------------------------------------------------------------- best-alt [161] 100.0% [172] 942(0.6%) 0(0.0%) argmins ...lies/herbie/develop/src/common.rkt:93:0 ??? [182] 100.0% ---------------------------------------------------------------------------- loop [163] 100.0% [173] 902(0.5%) 0(0.0%) gf (unknown source) propagation-apply [184] 65.6% cache-or-reuse-set [187] 34.4% ---------------------------------------------------------------------------- ->flonum [156] 100.0% [174] 894(0.5%) 298(0.2%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [183] 66.7% ---------------------------------------------------------------------------- loop [163] 100.0% [175] 892(0.5%) 0(0.0%) expand-id-application-form17 (unknown source) binding-lookup50 [188] 33.4% syntax-e/no-taint [17] 33.4% resolve+shift28 [189] 33.2% ---------------------------------------------------------------------------- big-posit16-add [157] 47.3% big-posit16-div [159] 52.7% [176] 694(0.4%) 366(0.2%) ...higher-order.rkt:361:33 (unknown source) ??? [186] 47.3% ---------------------------------------------------------------------------- for-loop [165] 100.0% [177] 372(0.2%) 0(0.0%) fold-binary-pred ...gfloat/bigfloat-mpfr.rkt:117:0 ??? [185] 100.0% ---------------------------------------------------------------------------- big-posit16-mul [167] 100.0% [178] 348(0.2%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [181] 100.0% ---------------------------------------------------------------------------- for-loop [165] 100.0% [179] 346(0.2%) 346(0.2%) ...higher-order.rkt:357:33 (unknown source) ---------------------------------------------------------------------------- get-ffi-obj* [168] 100.0% [180] 22216(13.5%) 11542(7.0%) get-ffi-lib9 ...-7.0/collects/ffi/unsafe.rkt:121:0 get-cross-lib-search-dirs [190] 42.4% loop [192] 2.8% get-lib-search-dirs [193] 2.8% ---------------------------------------------------------------------------- bf* [178] 3.7% big-posit16-div [159] 33.1% big-posit16-add [157] 63.1% [181] 9298(5.6%) 1022(0.6%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfadd [191] 89.0% ---------------------------------------------------------------------------- argmins [172] 42.4% loop [170] 57.6% [182] 2222(1.3%) 0(0.0%) ??? ...lies/herbie/develop/src/mainloop.rkt:126:19 errors [121] 100.0% ---------------------------------------------------------------------------- for-loop [82] 33.0% return/no-unsupplied [174] 67.0% [183] 890(0.5%) 890(0.5%) filter ...0/collects/racket/private/list.rkt:256:2 ---------------------------------------------------------------------------- gf [173] 100.0% [184] 592(0.4%) 592(0.4%) propagation-apply (unknown source) ---------------------------------------------------------------------------- fold-binary-pred [177] 100.0% [185] 372(0.2%) 372(0.2%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ---------------------------------------------------------------------------- ...higher-order.rkt:361:33 [176] 100.0% [186] 328(0.2%) 328(0.2%) ??? ...cts/racket/contract/private/list.rkt:209:10 ---------------------------------------------------------------------------- gf [173] 100.0% [187] 310(0.2%) 310(0.2%) cache-or-reuse-set (unknown source) ---------------------------------------------------------------------------- expand-id-application-form17 [175]100.0% [188] 298(0.2%) 298(0.2%) binding-lookup50 (unknown source) ---------------------------------------------------------------------------- expand-id-application-form17 [175]100.0% [189] 296(0.2%) 0(0.0%) resolve+shift28 (unknown source) fallback-loop [194] 100.0% ---------------------------------------------------------------------------- get-ffi-lib9 [180] 100.0% [190] 9418(5.7%) 8500(5.2%) get-cross-lib-search-dirs ...rivate/dirs.rkt:168:7 ??? [198] 9.7% ---------------------------------------------------------------------------- ??? [181] 100.0% [191] 8276(5.0%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [195] 51.7% ??? [196] 48.3% ---------------------------------------------------------------------------- get-ffi-lib9 [180] 100.0% [192] 628(0.4%) 628(0.4%) loop ...lects/ffi/../racket/private/map.rkt:149:23 ---------------------------------------------------------------------------- get-ffi-lib9 [180] 100.0% [193] 628(0.4%) 0(0.0%) get-lib-search-dirs ...llects/setup/dirs.rkt:177:0 cross-system-type [199] 100.0% ---------------------------------------------------------------------------- resolve+shift28 [189] 100.0% [194] 296(0.2%) 0(0.0%) fallback-loop (unknown source) for-loop [197] 100.0% ---------------------------------------------------------------------------- sig+exp->bigfloat [141] 3.3% bfadd [191] 39.3% bf [158] 57.5% [195] 10900(6.6%) 10900(6.6%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ---------------------------------------------------------------------------- ->flonum [156] 7.0% bfadd [191] 93.0% [196] 4296(2.6%) 4296(2.6%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ---------------------------------------------------------------------------- fallback-loop [194] 1.3% for-loop [197] 15.8% finish-bodys [160] 82.9% [197] 2620(1.6%) 658(0.4%) for-loop (unknown source) finish-bodys [160] 68.2% for-loop [197] 15.8% syntax-e [9] 4.6% dispatch-transformer41 [200] 3.6% loop [163] 2.7% ---------------------------------------------------------------------------- get-cross-lib-search-dirs [190] 100.0% [198] 918(0.6%) 620(0.4%) ??? ...racket-7.0/collects/racket/promise.rkt:42:2 call-with-exception-handler [201] 32.5% ---------------------------------------------------------------------------- get-lib-search-dirs [193] 100.0% [199] 628(0.4%) 628(0.4%) cross-system-type ...s/setup/cross-system.rkt:44:2 ---------------------------------------------------------------------------- for-loop [197] 100.0% [200] 378(0.2%) 0(0.0%) dispatch-transformer41 (unknown source) apply-transformer52 [202] 100.0% ---------------------------------------------------------------------------- ??? [198] 100.0% [201] 298(0.2%) 0(0.0%) call-with-exception-handler ...re-scheme.rkt:265:2 ??? [203] 100.0% ---------------------------------------------------------------------------- dispatch-transformer41 [200] 100.0% [202] 378(0.2%) 0(0.0%) apply-transformer52 (unknown source) apply-transformer-in-context [204]100.0% ---------------------------------------------------------------------------- call-with-exception-handler [201] 100.0% [203] 298(0.2%) 298(0.2%) ??? ...acket-7.0/collects/racket/promise.rkt:74:15 ---------------------------------------------------------------------------- apply-transformer52 [202] 100.0% [204] 378(0.2%) 0(0.0%) apply-transformer-in-context (unknown source) parse-app [205] 100.0% ---------------------------------------------------------------------------- apply-transformer-in-context [204]100.0% [205] 378(0.2%) 378(0.2%) parse-app ...collects/racket/private/kw.rkt:1105:2 ----------------------------------------------------------------------------