Profiling results ----------------- Total cpu time observed: 1117322ms (out of 1121220ms) Number of samples taken: 3602 (once every 310ms) (Hiding functions with self<1.0% and local<2.0%: 14 of 206 hidden) ================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ================================================================================== ??? [39] 100.0% [1] 1090436(97.6%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [12] 100.0% ---------------------------------------------------------------------------------- ??? [39] 100.0% [2] 1079572(96.6%) 0(0.0%) run-improve50 ...bie/master/src/mainloop.rkt:234:0 for-loop [13] 99.7% get-final-combination [16] 0.2% loop [44] 0.1% prepare-points [45] 0.0% ---------------------------------------------------------------------------------- location-do [43] 100.0% [3] 10080(0.9%) 0(0.0%) loop .../herbie/master/src/core/simplify.rkt:237:2 pass [15] 100.0% ---------------------------------------------------------------------------------- substitute-e [73] 21.3% match-e [67] 78.7% [4] 4086(0.4%) 242(0.0%) variable? ...ie/master/src/syntax/syntax.rkt:665:0 ??? [102] 94.1% ---------------------------------------------------------------------------------- ??? [141] 100.0% [5] 1906(0.2%) 0(0.0%) approximate9 ...ie/master/src/core/taylor.rkt:12:0 loop [17] 77.5% f6 [132] 22.5% ---------------------------------------------------------------------------------- hash-ref! [151] 100.0% [6] 840(0.1%) 0(0.0%) ??? ...es/herbie/master/src/core/taylor.rkt:295:23 for-loop [18] 100.0% ---------------------------------------------------------------------------------- hash-ref! [151] 100.0% [7] 664(0.1%) 0(0.0%) ??? ...es/herbie/master/src/core/taylor.rkt:392:23 for-loop [19] 100.0% ---------------------------------------------------------------------------------- hash-ref! [151] 100.0% [8] 640(0.1%) 0(0.0%) ??? ...es/herbie/master/src/core/taylor.rkt:285:26 for-loop [20] 100.0% ---------------------------------------------------------------------------------- hash-ref! [151] 100.0% [9] 222(0.0%) 0(0.0%) ??? ...es/herbie/master/src/core/taylor.rkt:483:23 for-loop [21] 100.0% ---------------------------------------------------------------------------------- f6 [132] 100.0% [10] 208(0.0%) 0(0.0%) taylor .../herbie/master/src/core/taylor.rkt:163:0 debug7 [163] 100.0% ---------------------------------------------------------------------------------- copying-mergesort [191] 100.0% [11] 172(0.0%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [14] 100.0% ---------------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [12] 1090616(97.6%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [39] 100.0% ---------------------------------------------------------------------------------- run-improve50 [2] 100.0% [13] 1076758(96.4%) 0(0.0%) for-loop .../herbie/master/src/mainloop.rkt:249:10 run-iter! [22] 100.0% ---------------------------------------------------------------------------------- loop [58] 1.1% ??? [190] 1.2% jloop [11] 1.2% loop [192] 3.4% for-loop [126] 21.9% loop [161] 71.3% [14] 14054(1.3%) 0(0.0%) ??? ...htlies/herbie/master/src/programs.rkt:156:4 ??? [23] 92.7% ??? [147] 5.2% ??? [141] 2.1% ---------------------------------------------------------------------------------- loop [3] 100.0% [15] 10080(0.9%) 0(0.0%) pass .../herbie/master/src/core/simplify.rkt:227:2 for-loop [24] 100.0% ---------------------------------------------------------------------------------- run-improve50 [2] 100.0% [16] 1784(0.2%) 0(0.0%) get-final-combination ...er/src/mainloop.rkt:264:0 split-table [25] 100.0% ---------------------------------------------------------------------------------- approximate9 [5] 100.0% [17] 1478(0.1%) 0(0.0%) loop ...ies/herbie/master/src/core/taylor.rkt:86:4 ??? [141] 100.0% ---------------------------------------------------------------------------------- ??? [6] 100.0% [18] 840(0.1%) 0(0.0%) for-loop ...rbie/master/src/core/taylor.rkt:298:27 hash-ref! [151] 86.8% simplify [155] 13.2% ---------------------------------------------------------------------------------- ??? [7] 100.0% [19] 664(0.1%) 0(0.0%) for-loop ...rbie/master/src/core/taylor.rkt:396:33 for-loop [26] 100.0% ---------------------------------------------------------------------------------- ??? [8] 100.0% [20] 640(0.1%) 0(0.0%) for-loop ...rbie/master/src/core/taylor.rkt:285:52 hash-ref! [151] 100.0% ---------------------------------------------------------------------------------- ??? [9] 100.0% [21] 222(0.0%) 0(0.0%) for-loop ...rbie/master/src/core/taylor.rkt:487:35 parse-loop79 [169] 100.0% ---------------------------------------------------------------------------------- for-loop [13] 100.0% [22] 1076758(96.4%) 0(0.0%) run-iter! .../herbie/master/src/mainloop.rkt:215:0 simplify! [27] 99.3% finalize-iter! [29] 0.5% gen-series! [31] 0.2% localize-error [33] 0.1% ---------------------------------------------------------------------------------- ??? [14] 100.0% [23] 13030(1.2%) 2970(0.3%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [167] 62.0% ??? [32] 11.3% ??? [34] 3.9% ---------------------------------------------------------------------------------- pass [15] 100.0% [24] 10080(0.9%) 0(0.0%) for-loop ...ie/master/src/core/simplify.rkt:230:29 argmin [28] 54.5% loop [30] 44.0% ---------------------------------------------------------------------------------- get-final-combination [16] 100.0% [25] 1784(0.2%) 0(0.0%) split-table ...es/herbie/master/src/glue.rkt:162:0 f6 [132] 100.0% ---------------------------------------------------------------------------------- for-loop [19] 100.0% [26] 664(0.1%) 0(0.0%) for-loop ...rbie/master/src/core/taylor.rkt:398:39 hash-ref! [151] 100.0% ---------------------------------------------------------------------------------- run-iter! [22] 100.0% [27] 1068944(95.7%) 0(0.0%) simplify! .../herbie/master/src/mainloop.rkt:155:0 for-loop [35] 100.0% ---------------------------------------------------------------------------------- for-loop [24] 100.0% [28] 5490(0.5%) 300(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [36] 72.3% expression-cost [38] 22.2% ---------------------------------------------------------------------------------- run-iter! [22] 100.0% [29] 4986(0.4%) 0(0.0%) finalize-iter! ...ie/master/src/mainloop.rkt:169:0 ??? [102] 100.0% ---------------------------------------------------------------------------------- for-loop [24] 100.0% [30] 4440(0.4%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [36] 100.0% ---------------------------------------------------------------------------------- run-iter! [22] 100.0% [31] 2056(0.2%) 0(0.0%) gen-series! ...erbie/master/src/mainloop.rkt:129:0 for-loop [37] 100.0% ---------------------------------------------------------------------------------- ??? [23] 100.0% [32] 1478(0.1%) 302(0.0%) ??? .../herbie/master/src/syntax/syntax.rkt:156:17 ??? [168] 45.3% return/no-unsupplied [52] 23.0% list-member? [70] 11.2% ---------------------------------------------------------------------------------- run-iter! [22] 100.0% [33] 772(0.1%) 0(0.0%) localize-error ...aster/src/core/localize.rkt:47:0 hash-ref! [151] 100.0% ---------------------------------------------------------------------------------- ??? [23] 100.0% [34] 506(0.0%) 506(0.0%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ---------------------------------------------------------------------------------- simplify! [27] 100.0% [35] 1068944(95.7%) 0(0.0%) for-loop ...s/herbie/master/src/mainloop.rkt:159:6 ??? [39] 100.0% ---------------------------------------------------------------------------------- argmin [28] 47.2% loop [30] 52.8% [36] 8410(0.8%) 242(0.0%) for-loop ...s/herbie/master/src/programs.rkt:210:2 location-do [43] 55.3% ...aster/src/common.rkt:47:2 [40] 39.1% ??? [103] 2.7% ---------------------------------------------------------------------------------- gen-series! [31] 100.0% [37] 2056(0.2%) 0(0.0%) for-loop ...s/herbie/master/src/mainloop.rkt:135:7 taylor-alt [41] 100.0% ---------------------------------------------------------------------------------- argmin [28] 100.0% [38] 1220(0.1%) 0(0.0%) expression-cost ...e/master/src/programs.rkt:209:0 compile [42] 100.0% ---------------------------------------------------------------------------------- for-loop [35] 31.9% run [12] 32.9% [39] 1115768(99.9%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 location-do [43] 34.2% profile-thunk16 [1] 32.9% run-improve50 [2] 32.4% loop [44] 0.3% prepare-points [45] 0.2% ---------------------------------------------------------------------------------- get-sigs [97] 33.9% for-loop [36] 66.1% [40] 4984(0.4%) 720(0.1%) ...aster/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [46] 48.4% ??? [48] 37.1% ---------------------------------------------------------------------------------- for-loop [37] 100.0% [41] 2056(0.2%) 0(0.0%) taylor-alt ...ies/herbie/master/src/glue.rkt:134:0 for-loop [47] 100.0% ---------------------------------------------------------------------------------- expression-cost [38] 100.0% [42] 1220(0.1%) 0(0.0%) compile ...es/herbie/master/src/programs.rkt:186:0 hash-ref! [151] 100.0% ---------------------------------------------------------------------------------- for-loop [36] 0.1% get-sigs [97] 0.2% ??? [141] 0.2% location-do [43] 1.6% for-loop [50] 48.1% ??? [39] 49.6% [43] 1097714(98.2%) 3470(0.3%) location-do ...acket/private/norm-define.rkt:53:83 iterate-egraph!13 [49] 49.2% for-loop [50] 48.1% location-do [43] 1.6% loop [3] 0.4% ??? [110] 0.3% ??? [141] 0.1% mk-egraph [53] 0.1% ??? [168] 0.0% return/no-unsupplied [52] 0.0% ??? [54] 0.0% debug7 [163] 0.0% ---------------------------------------------------------------------------------- run-improve50 [2] 10.2% ??? [39] 89.8% [44] 6796(0.6%) 0(0.0%) loop ...ghtlies/herbie/master/src/points.rkt:238:2 make-exacts* [57] 43.3% loop [51] 33.7% loop [58] 23.0% ---------------------------------------------------------------------------------- run-improve50 [2] 6.0% ??? [39] 94.0% [45] 5578(0.5%) 0(0.0%) prepare-points ...rbie/master/src/points.rkt:214:0 make-exacts* [57] 34.3% loop [58] 31.4% loop [51] 31.0% for-loop [55] 3.2% ---------------------------------------------------------------------------------- ...aster/src/common.rkt:47:2 [40] 100.0% [46] 2414(0.2%) 626(0.1%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [168] 39.0% assoc-ref [172] 18.2% return/no-unsupplied [52] 16.8% ---------------------------------------------------------------------------------- taylor-alt [41] 100.0% [47] 2056(0.2%) 0(0.0%) for-loop ...tlies/herbie/master/src/glue.rkt:139:6 ??? [141] 100.0% ---------------------------------------------------------------------------------- for-loop [134] 16.5% ...aster/src/common.rkt:47:2 [40] 83.5% [48] 1850(0.2%) 200(0.0%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [125] 83.5% ??? [176] 11.1% ---------------------------------------------------------------------------------- location-do [43] 100.0% [49] 1082732(96.9%) 252(0.0%) iterate-egraph!13 ...r/src/core/simplify.rkt:105:0 one-iter [56] 99.8% map-enodes [59] 0.2% debug7 [163] 0.0% ---------------------------------------------------------------------------------- location-do [43] 100.0% [50] 1057726(94.7%) 0(0.0%) for-loop ...bie/master/src/core/simplify.rkt:66:12 location-do [43] 100.0% ---------------------------------------------------------------------------------- prepare-points [45] 43.0% loop [44] 57.0% [51] 4020(0.4%) 0(0.0%) loop ...ghtlies/herbie/master/src/points.rkt:158:2 make-exacts* [57] 50.6% loop [58] 49.4% ---------------------------------------------------------------------------------- ??? [32] 21.2% ??? [46] 25.3% location-do [43] 53.4% [52] 1602(0.1%) 1084(0.1%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [61] 32.3% ---------------------------------------------------------------------------------- location-do [43] 100.0% [53] 1158(0.1%) 0(0.0%) mk-egraph ...rbie/master/src/core/egraph.rkt:131:0 mk-enode-rec! [60] 100.0% ---------------------------------------------------------------------------------- location-do [43] 100.0% [54] 196(0.0%) 0(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:60:15 ??? [185] 100.0% ---------------------------------------------------------------------------------- prepare-points [45] 100.0% [55] 180(0.0%) 0(0.0%) for-loop ...es/herbie/master/src/points.rkt:255:26 ??? [62] 100.0% ---------------------------------------------------------------------------------- iterate-egraph!13 [49] 100.0% [56] 1080080(96.7%) 1630(0.1%) one-iter ...bie/master/src/core/simplify.rkt:116:0 for-loop [63] 97.5% for-loop [64] 2.3% ---------------------------------------------------------------------------------- prepare-points [45] 27.8% loop [51] 29.5% loop [44] 42.7% [57] 6896(0.6%) 0(0.0%) make-exacts* ...herbie/master/src/points.rkt:138:0 loop [161] 78.3% eval-prog [127] 21.7% ---------------------------------------------------------------------------------- loop [44] 29.4% prepare-points [45] 33.1% loop [51] 37.4% [58] 5298(0.5%) 0(0.0%) loop ...ghtlies/herbie/master/src/points.rkt:141:4 loop [161] 97.2% ??? [14] 2.8% ---------------------------------------------------------------------------------- iterate-egraph!13 [49] 100.0% [59] 2182(0.2%) 0(0.0%) map-enodes ...bie/master/src/core/egraph.rkt:140:0 loop [161] 88.6% for-loop [65] 11.4% ---------------------------------------------------------------------------------- mk-egraph [53] 47.6% mk-enode-rec! [60] 52.4% [60] 1158(0.1%) 0(0.0%) mk-enode-rec! .../master/src/core/egraph.rkt:122:0 mk-enode-rec! [60] 52.4% mk-enode! [78] 47.6% ---------------------------------------------------------------------------------- return/no-unsupplied [52] 100.0% [61] 518(0.0%) 518(0.0%) filter ...t/collects/racket/private/list.rkt:256:2 ---------------------------------------------------------------------------------- for-loop [55] 100.0% [62] 180(0.0%) 180(0.0%) ??? ...ightlies/herbie/master/src/points.rkt:230:7 ---------------------------------------------------------------------------------- one-iter [56] 100.0% [63] 1053730(94.3%) 534(0.0%) for-loop ...bie/master/src/core/simplify.rkt:166:2 for-loop [66] 97.9% match-e [67] 2.0% update-leader! [79] 0.1% ---------------------------------------------------------------------------------- for-loop [64] 48.1% one-iter [56] 51.9% [64] 24626(2.2%) 8228(0.7%) for-loop ...ie/master/src/core/simplify.rkt:126:12 for-loop [64] 48.1% match-e [67] 33.3% ---------------------------------------------------------------------------------- map-enodes [59] 11.4% loop [161] 88.6% [65] 2182(0.2%) 470(0.0%) for-loop ...bie/master/src/core/simplify.rkt:195:2 setfindf [68] 61.4% eval-const-expr [69] 17.0% ---------------------------------------------------------------------------------- for-loop [63] 100.0% [66] 1031232(92.3%) 568(0.1%) for-loop ...ie/master/src/core/simplify.rkt:148:10 list-member? [70] 85.1% merge-egraph-nodes! [71] 9.4% loop! [85] 2.4% mk-enode! [78] 1.7% substitute-e [73] 1.4% ---------------------------------------------------------------------------------- for-loop [63] 28.3% for-loop [80] 35.7% for-loop [64] 36.0% [67] 37596(3.4%) 7960(0.7%) match-e .../herbie/master/src/core/ematch.rkt:46:0 for-loop [72] 63.7% ??? [102] 7.5% for-loop [80] 4.6% variable? [4] 3.1% list-cartesian-product [82] 3.0% ---------------------------------------------------------------------------------- for-loop [65] 100.0% [68] 1340(0.1%) 0(0.0%) setfindf ...ies/herbie/master/src/common.rkt:186:0 for-loop [74] 100.0% ---------------------------------------------------------------------------------- for-loop [65] 100.0% [69] 372(0.0%) 0(0.0%) eval-const-expr ...e/master/src/programs.rkt:168:0 f6 [132] 59.7% ??? [75] 40.3% ---------------------------------------------------------------------------------- ??? [32] 0.0% for-loop [66] 100.0% [70] 877816(78.6%) 10984(1.0%) list-member? ...llects/racket/private/set.rkt:24:0 loop [76] 98.7% ---------------------------------------------------------------------------------- merge-egraph-nodes! [71] 2.6% for-loop [77] 31.5% for-loop [66] 65.9% [71] 96590(8.6%) 1794(0.2%) merge-egraph-nodes! ...r/src/core/egraph.rkt:153:0 for-loop [77] 32.9% loop! [85] 23.8% for-loop [81] 20.3% update-leader! [79] 17.5% merge-egraph-nodes! [71] 2.6% enode-merge! [83] 1.0% ---------------------------------------------------------------------------------- match-e [67] 100.0% [72] 29106(2.6%) 6810(0.6%) for-loop ...erbie/master/src/core/ematch.rkt:59:11 for-loop [80] 63.2% list-cartesian-product [82] 9.1% loop [161] 8.7% curry* [84] 1.0% ---------------------------------------------------------------------------------- substitute-e [73] 9.3% for-loop [66] 90.7% [73] 14342(1.3%) 2178(0.2%) substitute-e ...ie/master/src/core/ematch.rkt:71:0 mk-enode! [78] 74.1% substitute-e [73] 9.3% ??? [102] 3.0% variable? [4] 2.5% ---------------------------------------------------------------------------------- setfindf [68] 100.0% [74] 1340(0.1%) 1340(0.1%) for-loop ...ies/herbie/master/src/common.rkt:187:2 ---------------------------------------------------------------------------------- eval-const-expr [69] 100.0% [75] 150(0.0%) 150(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 ---------------------------------------------------------------------------------- list-member? [70] 100.0% [76] 866068(77.5%) 866068(77.5%) loop (unknown source) ---------------------------------------------------------------------------------- merge-egraph-nodes! [71] 100.0% [77] 57212(5.1%) 0(0.0%) for-loop ...rbie/master/src/core/egraph.rkt:201:10 merge-egraph-nodes! [71] 97.7% loop! [85] 2.3% ---------------------------------------------------------------------------------- mk-enode-rec! [60] 4.0% substitute-e [73] 36.4% for-loop [66] 59.6% [78] 29192(2.6%) 3326(0.3%) mk-enode! ...rbie/master/src/core/egraph.rkt:102:0 new-enode [86] 87.8% hash-has-key? [106] 0.8% ---------------------------------------------------------------------------------- for-loop [63] 2.2% merge-egraph-nodes! [71] 97.8% [79] 26202(2.3%) 1326(0.1%) update-leader! ...master/src/core/egraph.rkt:218:0 for-loop [87] 89.8% update-en-expr [109] 2.5% hash-ref! [151] 1.7% ---------------------------------------------------------------------------------- match-e [67] 11.5% for-loop [72] 88.5% [80] 25616(2.3%) 2262(0.2%) for-loop ...erbie/master/src/core/ematch.rkt:65:37 match-e [67] 91.7% ??? [91] 0.8% ---------------------------------------------------------------------------------- merge-egraph-nodes! [71] 100.0% [81] 19584(1.8%) 15002(1.3%) for-loop ...erbie/master/src/core/egraph.rkt:233:6 update-en-expr [109] 23.4% ---------------------------------------------------------------------------------- match-e [67] 16.5% list-cartesian-product [82] 36.4% for-loop [72] 47.1% [82] 5446(0.5%) 4126(0.4%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [82] 36.4% for-loop [88] 15.1% ---------------------------------------------------------------------------------- merge-egraph-nodes! [71] 100.0% [83] 918(0.1%) 200(0.0%) enode-merge! ...ie/master/src/core/enode.rkt:129:0 adopt-enode! [89] 78.2% ---------------------------------------------------------------------------------- for-loop [72] 100.0% [84] 460(0.0%) 150(0.0%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [90] 67.4% ---------------------------------------------------------------------------------- for-loop [77] 1.6% for-loop [66] 22.1% loop [161] 29.2% merge-egraph-nodes! [71] 47.1% [85] 72760(6.5%) 14136(1.3%) loop! ...es/herbie/master/src/core/enode.rkt:192:2 custom-set-union [92] 36.3% loop [161] 33.4% set [95] 11.6% update-en-expr [109] 7.7% ---------------------------------------------------------------------------------- mk-enode! [78] 100.0% [86] 25638(2.3%) 0(0.0%) new-enode ...herbie/master/src/core/enode.rkt:97:0 type-of-enode-expr [93] 100.0% ---------------------------------------------------------------------------------- update-leader! [79] 100.0% [87] 23536(2.1%) 200(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:223:6 for-loop [94] 99.2% ---------------------------------------------------------------------------------- list-cartesian-product [82] 100.0% [88] 1320(0.1%) 1320(0.1%) for-loop ...herbie/master/src/core/ematch.rkt:24:8 ---------------------------------------------------------------------------------- enode-merge! [83] 100.0% [89] 718(0.1%) 350(0.0%) adopt-enode! ...ie/master/src/core/enode.rkt:105:0 custom-set-union [92] 51.3% ---------------------------------------------------------------------------------- curry* [84] 100.0% [90] 310(0.0%) 310(0.0%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ---------------------------------------------------------------------------------- for-loop [80] 100.0% [91] 200(0.0%) 0(0.0%) ??? ...lies/herbie/master/src/core/ematch.rkt:50:5 for-loop [96] 100.0% ---------------------------------------------------------------------------------- adopt-enode! [89] 1.3% loop! [85] 98.7% [92] 27942(2.5%) 9790(0.9%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [99] 58.8% for-loop [100] 6.2% ---------------------------------------------------------------------------------- new-enode [86] 100.0% [93] 25638(2.3%) 420(0.0%) type-of-enode-expr ...ster/src/core/enode.rkt:68:0 get-sigs [97] 97.3% parse-loop79 [169] 1.1% ---------------------------------------------------------------------------------- for-loop [87] 100.0% [94] 23336(2.1%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:224:8 hash-update! [98] 100.0% ---------------------------------------------------------------------------------- loop! [85] 100.0% [95] 16726(1.5%) 16726(1.5%) set ...collects/racket/private/set-types.rkt:981:0 ---------------------------------------------------------------------------------- ??? [91] 100.0% [96] 200(0.0%) 200(0.0%) for-loop ...herbie/master/src/core/ematch.rkt:51:7 ---------------------------------------------------------------------------------- type-of-enode-expr [93] 100.0% [97] 24946(2.2%) 0(0.0%) get-sigs ...s/herbie/master/src/type-check.rkt:5:0 ??? [103] 45.0% location-do [43] 30.9% ??? [102] 17.3% ...aster/src/common.rkt:47:2 [40] 6.8% ---------------------------------------------------------------------------------- for-loop [94] 100.0% [98] 23336(2.1%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [101] 100.0% ---------------------------------------------------------------------------------- custom-set-union [92] 100.0% [99] 16422(1.5%) 6976(0.6%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [104] 57.5% ---------------------------------------------------------------------------------- custom-set-union [92] 100.0% [100] 1730(0.2%) 1730(0.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 ---------------------------------------------------------------------------------- hash-update! [98] 100.0% [101] 23336(2.1%) 0(0.0%) ??? ...es/herbie/master/src/core/egraph.rkt:226:24 for-loop [105] 100.0% ---------------------------------------------------------------------------------- debug7 [163] 1.0% ??? [176] 2.2% substitute-e [73] 3.1% variable? [4] 18.1% get-sigs [97] 20.3% finalize-iter! [29] 23.0% match-e [67] 32.2% [102] 21278(1.9%) 9896(0.9%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [106] 29.4% for-loop [108] 23.0% ---------------------------------------------------------------------------------- for-loop [36] 2.0% get-sigs [97] 98.0% [103] 11446(1.0%) 468(0.0%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [107] 47.4% for-loop [119] 42.7% get/build-late-neg-projection [129] 4.5% ---------------------------------------------------------------------------------- for-loop [99] 100.0% [104] 9446(0.8%) 9446(0.8%) for-loop ...cts/racket/private/set-types.rkt:178:5 ---------------------------------------------------------------------------------- ??? [101] 100.0% [105] 23336(2.1%) 18072(1.6%) for-loop ...rbie/master/src/core/egraph.rkt:227:26 update-en-expr [109] 22.6% ---------------------------------------------------------------------------------- mk-enode! [78] 3.5% ??? [102] 96.5% [106] 6572(0.6%) 1730(0.2%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [110] 60.6% ??? [113] 13.1% ---------------------------------------------------------------------------------- ??? [103] 100.0% [107] 5428(0.5%) 316(0.0%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [111] 94.2% ---------------------------------------------------------------------------------- ??? [102] 100.0% [108] 4986(0.4%) 0(0.0%) for-loop ...bie/master/src/core/alt-table.rkt:51:2 atab-add-altn [112] 100.0% ---------------------------------------------------------------------------------- update-leader! [79] 3.0% for-loop [81] 21.2% for-loop [105] 24.3% loop! [85] 51.5% [109] 21638(1.9%) 21638(1.9%) update-en-expr ...master/src/core/egraph.rkt:212:0 ---------------------------------------------------------------------------------- hash-has-key? [106] 32.5% location-do [43] 67.5% [110] 12252(1.1%) 5044(0.5%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [114] 45.7% ??? [122] 7.8% ??? [125] 2.8% arrow-higher-order:lnp [118] 2.5% ---------------------------------------------------------------------------------- ??? [107] 100.0% [111] 5112(0.5%) 544(0.0%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [115] 89.4% ---------------------------------------------------------------------------------- for-loop [108] 100.0% [112] 4986(0.4%) 0(0.0%) atab-add-altn ...ster/src/core/alt-table.rkt:208:0 best-and-tied-at-points [116] 85.7% override-at-pnts [117] 10.2% loop [161] 4.1% ---------------------------------------------------------------------------------- hash-has-key? [106] 100.0% [113] 860(0.1%) 860(0.1%) ??? ...ects/racket/contract/private/hash.rkt:245:7 ---------------------------------------------------------------------------------- ??? [110] 100.0% [114] 5598(0.5%) 1910(0.2%) for-loop ...acket/contract/private/list.rkt:743:12 for-loop [119] 36.2% ??? [122] 18.4% ??? [123] 7.2% ??? [176] 4.0% ---------------------------------------------------------------------------------- ??? [111] 100.0% [115] 4568(0.4%) 274(0.0%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [121] 94.0% ---------------------------------------------------------------------------------- atab-add-altn [112] 100.0% [116] 4274(0.4%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [120] 100.0% ---------------------------------------------------------------------------------- atab-add-altn [112] 100.0% [117] 510(0.0%) 0(0.0%) override-at-pnts ...r/src/core/alt-table.rkt:145:0 errors [120] 100.0% ---------------------------------------------------------------------------------- ??? [110] 100.0% [118] 310(0.0%) 0(0.0%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [124] 100.0% ---------------------------------------------------------------------------------- for-loop [114] 29.3% ??? [103] 70.7% [119] 6914(0.6%) 1526(0.1%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [125] 71.9% ??? [143] 6.1% ---------------------------------------------------------------------------------- loop [161] 3.0% override-at-pnts [117] 9.1% option-on-expr [170] 11.4% best-and-tied-at-points [116] 76.5% [120] 5588(0.5%) 0(0.0%) errors ...tlies/herbie/master/src/points.rkt:271:0 for-loop [126] 78.7% eval-prog [127] 21.3% ---------------------------------------------------------------------------------- ??? [115] 100.0% [121] 4294(0.4%) 922(0.1%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [128] 55.2% get/build-late-neg-projection [129] 23.3% ---------------------------------------------------------------------------------- ??? [110] 48.1% for-loop [114] 51.9% [122] 1990(0.2%) 1680(0.2%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [131] 15.6% ---------------------------------------------------------------------------------- for-loop [114] 100.0% [123] 404(0.0%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [130] 100.0% ---------------------------------------------------------------------------------- arrow-higher-order:lnp [118] 100.0% [124] 310(0.0%) 310(0.0%) ??? ...et/contract/private/arity-checking.rkt:19:2 ---------------------------------------------------------------------------------- ??? [110] 4.8% ??? [48] 25.8% for-loop [119] 69.4% [125] 7160(0.6%) 772(0.1%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [133] 69.4% for-loop [134] 15.1% ??? [143] 4.8% ---------------------------------------------------------------------------------- errors [120] 100.0% [126] 4400(0.4%) 450(0.0%) for-loop ...ies/herbie/master/src/points.rkt:274:4 ??? [14] 70.0% ulp-difference [136] 13.0% ??? [141] 3.4% ??? [140] 3.4% ---------------------------------------------------------------------------------- errors [120] 44.3% make-exacts* [57] 55.7% [127] 2682(0.2%) 168(0.0%) eval-prog .../herbie/master/src/programs.rkt:150:0 hash-ref! [151] 49.5% f6 [132] 38.0% go [139] 6.2% ---------------------------------------------------------------------------------- for-loop [121] 100.0% [128] 2370(0.2%) 2370(0.2%) add-list-context ...ontract/private/list.rkt:752:0 ---------------------------------------------------------------------------------- ??? [137] 9.9% ??? [103] 24.0% for-loop [121] 66.1% [129] 1516(0.1%) 664(0.1%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [135] 56.2% ??? [137] 9.9% ---------------------------------------------------------------------------------- ??? [123] 100.0% [130] 404(0.0%) 150(0.0%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [138] 62.9% ---------------------------------------------------------------------------------- ??? [122] 100.0% [131] 310(0.0%) 310(0.0%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ---------------------------------------------------------------------------------- approximate9 [5] 2.9% map [142] 3.8% eval-const-expr [69] 4.4% eval-prog [127] 4.5% parse-loop79 [169] 7.0% hash-ref! [151] 11.0% simplify [155] 13.8% f6 [132] 19.7% split-table [25] 32.9% [132] 4998(0.4%) 770(0.1%) f6 ...et/collects/racket/match/compiler.rkt:507:40 loop [161] 28.8% map [142] 22.2% f6 [132] 19.7% ??? [141] 4.5% ??? [145] 4.4% option-on-expr [170] 4.1% taylor [10] 1.4% ---------------------------------------------------------------------------------- ??? [125] 100.0% [133] 4968(0.4%) 218(0.0%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [176] 79.3% ??? [143] 16.3% ---------------------------------------------------------------------------------- ??? [125] 100.0% [134] 1078(0.1%) 466(0.0%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [48] 56.8% ---------------------------------------------------------------------------------- get/build-late-neg-projection [129] 100.0% [135] 852(0.1%) 196(0.0%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [144] 77.0% ---------------------------------------------------------------------------------- for-loop [126] 100.0% [136] 572(0.1%) 368(0.0%) ulp-difference ...herbie/master/src/float.rkt:19:0 ??? [168] 35.7% ---------------------------------------------------------------------------------- get/build-late-neg-projection [129] 100.0% [137] 300(0.0%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [129] 100.0% ---------------------------------------------------------------------------------- check-hash/c [130] 100.0% [138] 254(0.0%) 254(0.0%) flat-contract? .../contract/private/guts.rkt:111:0 ---------------------------------------------------------------------------------- eval-prog [127] 100.0% [139] 166(0.0%) 0(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [146] 100.0% ---------------------------------------------------------------------------------- for-loop [126] 100.0% [140] 150(0.0%) 150(0.0%) ??? ...ket/collects/racket/private/for.rkt:1151:14 ---------------------------------------------------------------------------------- for-loop [126] 3.5% map [142] 5.6% ??? [14] 7.0% loop [17] 11.5% loop [161] 12.3% location-do [43] 16.7% for-loop [47] 18.2% f6 [132] 23.8% [141] 4294(0.4%) 320(0.0%) ??? ...tract/private/arrow-higher-order.rkt:342:33 location-do [43] 51.2% approximate9 [5] 16.5% hash-ref! [151] 11.5% ??? [176] 7.8% ??? [147] 3.9% simplify [155] 1.7% ---------------------------------------------------------------------------------- ??? [148] 6.3% parse-loop79 [169] 28.6% f6 [132] 65.1% [142] 1890(0.2%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 loop [161] 39.6% f6 [132] 17.4% parse-loop79 [169] 17.0% ??? [148] 11.7% make-multiplication-node [150] 7.9% ??? [141] 6.3% ---------------------------------------------------------------------------------- ??? [125] 21.7% for-loop [119] 26.7% ??? [133] 51.6% [143] 1574(0.1%) 1574(0.1%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ---------------------------------------------------------------------------------- contract-struct-name [149] 21.2% ??? [135] 78.8% [144] 656(0.1%) 378(0.0%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [149] 42.4% ---------------------------------------------------------------------------------- f6 [132] 100.0% [145] 222(0.0%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:336:46 ??? [176] 100.0% ---------------------------------------------------------------------------------- go [139] 11.1% loop [146] 88.9% [146] 166(0.0%) 166(0.0%) loop ...llects/racket/private/qq-and-or.rkt:101:61 loop [146] 88.9% ---------------------------------------------------------------------------------- ??? [141] 18.7% ??? [14] 81.3% [147] 890(0.1%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [152] 81.3% integer->bigfloat [153] 18.7% ---------------------------------------------------------------------------------- map [142] 48.1% loop [161] 51.9% [148] 462(0.0%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [151] 82.7% map [142] 17.3% ---------------------------------------------------------------------------------- build-compound-type-name [144] 100.0% [149] 278(0.0%) 278(0.0%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [144] 50.0% ---------------------------------------------------------------------------------- map [142] 100.0% [150] 150(0.0%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:230:0 make-multiplication-subnode [154] 100.0% ---------------------------------------------------------------------------------- for-loop [182] 0.7% for-loop [20] 2.7% for-loop [26] 2.9% for-loop [18] 4.9% ??? [148] 5.6% ??? [157] 6.8% update-leader! [79] 8.1% localize-error [33] 8.5% ??? [156] 9.3% ??? [141] 9.3% loop [161] 10.5% eval-prog [127] 13.8% compile [42] 15.6% [151] 5462(0.5%) 1664(0.1%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [157] 17.3% bigfloat-hash [158] 13.8% simplify [155] 9.9% ??? [156] 9.3% f6 [132] 7.1% parse-loop79 [169] 5.6% ??? [6] 5.6% ??? [7] 2.9% ??? [8] 2.7% ??? [159] 1.4% ??? [9] 0.7% ---------------------------------------------------------------------------------- ??? [147] 100.0% [152] 724(0.1%) 558(0.0%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [185] 22.9% ---------------------------------------------------------------------------------- ??? [147] 100.0% [153] 166(0.0%) 166(0.0%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 ---------------------------------------------------------------------------------- make-multiplication-node [150] 100.0% [154] 150(0.0%) 0(0.0%) make-multiplication-subnode ...re/reduce.rkt:240:0 for-loop [160] 100.0% ---------------------------------------------------------------------------------- ??? [141] 8.1% for-loop [18] 12.0% hash-ref! [151] 79.9% [155] 1848(0.2%) 0(0.0%) simplify ...herbie/master/src/core/reduce.rkt:16:0 parse-loop79 [169] 44.2% f6 [132] 43.9% debug7 [163] 11.9% ---------------------------------------------------------------------------------- hash-ref! [151] 100.0% [156] 1478(0.1%) 0(0.0%) ??? ...ies/herbie/master/src/core/taylor.rkt:44:15 hash-ref! [151] 100.0% ---------------------------------------------------------------------------------- hash-ref! [151] 100.0% [157] 1452(0.1%) 0(0.0%) ??? ...htlies/herbie/master/src/programs.rkt:194:5 loop [161] 58.1% hash-ref! [151] 41.9% ---------------------------------------------------------------------------------- hash-ref! [151] 100.0% [158] 1328(0.1%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 sig+exp->bigfloat [162] 87.7% bfcanonicalize [165] 12.3% ---------------------------------------------------------------------------------- hash-ref! [151] 100.0% [159] 222(0.0%) 0(0.0%) ??? ...s/herbie/master/src/core/localize.rkt:22:13 repeat [164] 100.0% ---------------------------------------------------------------------------------- make-multiplication-subnode [154] 100.0% [160] 150(0.0%) 0(0.0%) for-loop ...erbie/master/src/core/reduce.rkt:242:3 make-multiplication-subsubsubnode [166]100.0% ---------------------------------------------------------------------------------- parse-loop79 [169] 0.0% make-exacts* [57] 0.1% atab-add-altn [112] 0.2% map-enodes [59] 0.2% option-on-expr [170] 0.3% map [142] 0.5% loop [58] 0.5% ??? [157] 1.3% f6 [132] 2.0% for-loop [72] 2.7% loop! [85] 5.8% loop [161] 86.5% [161] 64418(5.8%) 4884(0.4%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [161] 86.5% loop! [85] 5.0% option-on-expr [170] 2.0% hash-ref! [151] 1.3% foldl [171] 0.9% ??? [14] 0.6% parse-loop79 [169] 0.5% errors [120] 0.3% for-loop [65] 0.2% loop [174] 0.2% ??? [148] 0.0% ??? [167] 0.0% ??? [141] 0.0% ---------------------------------------------------------------------------------- bigfloat-hash [158] 100.0% [162] 1164(0.1%) 1164(0.1%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 ---------------------------------------------------------------------------------- taylor [10] 22.7% iterate-egraph!13 [49] 23.8% simplify [155] 24.0% location-do [43] 29.5% [163] 916(0.1%) 0(0.0%) debug7 ...htlies/herbie/master/src/debug.rkt:102:0 ??? [168] 46.7% assoc-ref [172] 29.5% ??? [102] 23.8% ---------------------------------------------------------------------------------- ??? [159] 100.0% [164] 222(0.0%) 0(0.0%) repeat ...herbie/master/src/core/localize.rkt:13:0 for-loop [173] 100.0% ---------------------------------------------------------------------------------- bigfloat-hash [158] 100.0% [165] 164(0.0%) 164(0.0%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 ---------------------------------------------------------------------------------- for-loop [160] 100.0% [166] 150(0.0%) 0(0.0%) make-multiplication-subsubsubnode ...uce.rkt:262:0 mterm->expr [175] 100.0% ---------------------------------------------------------------------------------- loop [161] 3.7% ??? [23] 96.3% [167] 8386(0.8%) 5640(0.5%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfsub [178] 22.9% bflog [179] 9.8% ---------------------------------------------------------------------------------- ulp-difference [136] 6.7% debug7 [163] 14.0% ??? [32] 21.9% location-do [43] 26.8% ??? [46] 30.7% [168] 3066(0.3%) 466(0.0%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [177] 71.0% ??? [176] 13.8% ---------------------------------------------------------------------------------- loop [161] 3.9% for-loop [21] 11.0% simplify [155] 12.8% type-of-enode-expr [93] 13.5% map [142] 15.3% parse-loop79 [169] 20.5% hash-ref! [151] 22.9% [169] 2014(0.2%) 738(0.1%) parse-loop79 ...s/racket/match/compiler.rkt:418:15 parse-loop79 [169] 20.5% map [142] 15.0% parse-app [181] 12.0% loop [161] 11.9% for-loop [182] 11.0% f6 [132] 8.5% ---------------------------------------------------------------------------------- f6 [132] 19.3% loop [161] 80.7% [170] 1784(0.2%) 0(0.0%) option-on-expr ...master/src/core/regimes.rkt:83:0 sort-context-on-expr [180] 36.3% errors [120] 35.7% loop [161] 18.8% pick-errors [184] 9.2% ---------------------------------------------------------------------------------- loop [161] 100.0% [171] 918(0.1%) 718(0.1%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [183] 21.8% ---------------------------------------------------------------------------------- debug7 [163] 38.0% ??? [46] 62.0% [172] 710(0.1%) 710(0.1%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ---------------------------------------------------------------------------------- repeat [164] 100.0% [173] 222(0.0%) 222(0.0%) for-loop ...rbie/master/src/core/localize.rkt:14:2 ---------------------------------------------------------------------------------- loop [174] 50.0% loop [161] 50.0% [174] 202(0.0%) 202(0.0%) loop ...ket/collects/racket/private/list.rkt:82:16 loop [174] 50.0% ---------------------------------------------------------------------------------- make-multiplication-subsubsubnode [166]100.0% [175] 150(0.0%) 150(0.0%) mterm->expr ...ie/master/src/core/reduce.rkt:270:0 ---------------------------------------------------------------------------------- ??? [145] 4.0% for-loop [114] 4.0% ??? [141] 6.0% ??? [48] 7.4% ??? [168] 7.6% ??? [133] 70.9% [176] 5554(0.5%) 4586(0.4%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ??? [102] 10.0% contract? [187] 7.4% ---------------------------------------------------------------------------------- ??? [168] 100.0% [177] 2176(0.2%) 2176(0.2%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ---------------------------------------------------------------------------------- ??? [167] 100.0% [178] 1920(0.2%) 1390(0.1%) bfsub ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [185] 27.6% ---------------------------------------------------------------------------------- ??? [167] 100.0% [179] 826(0.1%) 826(0.1%) bflog ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ---------------------------------------------------------------------------------- option-on-expr [170] 100.0% [180] 648(0.1%) 0(0.0%) sort-context-on-expr ...aster/src/points.rkt:115:0 ??? [186] 100.0% ---------------------------------------------------------------------------------- parse-loop79 [169] 100.0% [181] 242(0.0%) 242(0.0%) parse-app .../collects/racket/private/kw.rkt:951:2 ---------------------------------------------------------------------------------- parse-loop79 [169] 100.0% [182] 222(0.0%) 0(0.0%) for-loop ...rbie/master/src/core/taylor.rkt:490:59 hash-ref! [151] 100.0% ---------------------------------------------------------------------------------- foldl [171] 100.0% [183] 200(0.0%) 200(0.0%) merge2 ...s/herbie/master/src/core/ematch.rkt:31:0 ---------------------------------------------------------------------------------- option-on-expr [170] 100.0% [184] 164(0.0%) 0(0.0%) pick-errors ...e/master/src/core/regimes.rkt:201:0 for-loop [188] 100.0% ---------------------------------------------------------------------------------- real->bigfloat [152] 18.6% ??? [54] 22.0% bfsub [178] 59.4% [185] 892(0.1%) 892(0.1%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ---------------------------------------------------------------------------------- sort-context-on-expr [180] 100.0% [186] 648(0.1%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [189] 76.9% loop [192] 23.1% ---------------------------------------------------------------------------------- ??? [176] 100.0% [187] 412(0.0%) 412(0.0%) contract? ...acket/contract/private/guts.rkt:109:0 ---------------------------------------------------------------------------------- pick-errors [184] 100.0% [188] 164(0.0%) 0(0.0%) for-loop ...rbie/master/src/core/regimes.rkt:203:2 ??? [190] 100.0% ---------------------------------------------------------------------------------- ??? [186] 100.0% [189] 498(0.0%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [191] 64.7% loop [192] 35.3% ---------------------------------------------------------------------------------- for-loop [188] 100.0% [190] 164(0.0%) 0(0.0%) ??? ...es/herbie/master/src/core/regimes.rkt:194:2 ??? [14] 100.0% ---------------------------------------------------------------------------------- generic-sort/key [189] 28.9% copying-mergesort [191] 71.1% [191] 322(0.0%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [191] 71.1% loop [192] 15.5% jloop [11] 13.4% ---------------------------------------------------------------------------------- ??? [186] 31.5% copying-mergesort [191] 31.5% generic-sort/key [189] 37.0% [192] 476(0.0%) 0(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [14] 100.0% ----------------------------------------------------------------------------------