Profiling results ----------------- Total cpu time observed: 944134ms (out of 949932ms) Number of samples taken: 3265 (once every 289ms) (Hiding functions with self<1.0% and local<2.0%: 28 of 301 hidden) =============================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =============================================================================== ??? [73] 100.0% [1] 805678(85.3%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [19] 100.0% ------------------------------------------------------------------------------- ??? [73] 100.0% [2] 749338(79.4%) 234(0.0%) run-improve50 ...sion-steps/src/mainloop.rkt:234:0 for-loop [20] 96.4% get-final-combination [28] 3.2% loop [87] 0.3% setup-alt-simplified [35] 0.0% ------------------------------------------------------------------------------- ??? [216] 100.0% [3] 624386(66.1%) 1010(0.1%) iterate-egraph!13 ...s/src/core/simplify.rkt:102:0 one-iter [21] 97.8% map-enodes [30] 2.0% debug-print [79] 0.1% ------------------------------------------------------------------------------- ??? [210] 100.0% [4] 120602(12.8%) 0(0.0%) approximate9 ...ion-steps/src/core/taylor.rkt:12:0 loop [22] 97.4% f45 [182] 2.3% for-loop [36] 0.2% taylor-quotient [37] 0.2% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [5] 110890(11.7%) 224(0.0%) ??? ...s-precision-steps/src/core/taylor.rkt:44:15 ??? [41] 95.2% hash-ref! [217] 3.3% simplify [54] 1.3% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [6] 106886(11.3%) 0(0.0%) ??? ...-precision-steps/src/core/taylor.rkt:285:26 for-loop [23] 100.0% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [7] 96644(10.2%) 0(0.0%) ??? ...-precision-steps/src/core/taylor.rkt:295:23 for-loop [24] 100.0% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [8] 86246(9.1%) 0(0.0%) ??? ...-precision-steps/src/core/taylor.rkt:322:33 for-loop [25] 100.0% ------------------------------------------------------------------------------- ??? [216] 100.0% [9] 63874(6.8%) 0(0.0%) loop ...recision-steps/src/core/simplify.rkt:215:2 pass [26] 100.0% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [10] 53104(5.6%) 0(0.0%) ??? ...-precision-steps/src/core/taylor.rkt:392:23 for-loop [27] 99.4% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [11] 47266(5.0%) 0(0.0%) ??? ...s-precision-steps/src/core/taylor.rkt:67:15 ??? [210] 94.4% hash-ref! [217] 5.6% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [12] 5154(0.5%) 324(0.0%) ??? ...-precision-steps/src/core/taylor.rkt:483:23 for-loop [31] 93.7% ------------------------------------------------------------------------------- f45 [182] 100.0% [13] 4340(0.5%) 1034(0.1%) combine-mterms ...-steps/src/core/reduce.rkt:191:0 for-loop [32] 76.2% ------------------------------------------------------------------------------- f45 [182] 100.0% [14] 4146(0.4%) 0(0.0%) taylor-invert ...n-steps/src/core/taylor.rkt:312:0 first-nonzero-exp [46] 58.5% simplify [54] 41.5% ------------------------------------------------------------------------------- copying-mergesort [228] 100.0% [15] 3084(0.3%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [156] 88.3% ??? [210] 11.7% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [16] 2616(0.3%) 0(0.0%) ??? ...-precision-steps/src/core/taylor.rkt:338:33 hash-ref! [217] 59.5% for-loop [33] 40.5% ------------------------------------------------------------------------------- map [117] 34.9% parse-loop380 [162] 65.1% [17] 1660(0.2%) 278(0.0%) ??? ...ts-precision-steps/src/core/reduce.rkt:61:5 for-loop [34] 83.3% ------------------------------------------------------------------------------- f45 [182] 100.0% [18] 1604(0.2%) 258(0.0%) taylor ...recision-steps/src/core/taylor.rkt:163:0 loop [186] 22.2% variable? [29] 20.8% debug7 [71] 20.7% debug-print [79] 20.2% ------------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [19] 805936(85.4%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [73] 100.0% ------------------------------------------------------------------------------- run-improve50 [2] 100.0% [20] 722104(76.5%) 0(0.0%) for-loop ...recision-steps/src/mainloop.rkt:249:10 run-iter! [38] 100.0% ------------------------------------------------------------------------------- iterate-egraph!13 [3] 100.0% [21] 610416(64.7%) 7004(0.7%) one-iter ...sion-steps/src/core/simplify.rkt:113:0 loop [39] 68.1% for-loop [40] 26.8% apply-match [52] 3.8% ------------------------------------------------------------------------------- approximate9 [4] 100.0% [22] 117408(12.4%) 0(0.0%) loop ...s-precision-steps/src/core/taylor.rkt:86:4 ??? [210] 59.7% hash-ref! [217] 40.3% ------------------------------------------------------------------------------- ??? [6] 100.0% [23] 106886(11.3%) 242(0.0%) for-loop ...ision-steps/src/core/taylor.rkt:285:52 ??? [41] 64.7% hash-ref! [217] 32.0% simplify [54] 3.2% ------------------------------------------------------------------------------- ??? [7] 100.0% [24] 96644(10.2%) 246(0.0%) for-loop ...ision-steps/src/core/taylor.rkt:298:27 hash-ref! [217] 99.9% ------------------------------------------------------------------------------- ??? [8] 100.0% [25] 86246(9.1%) 0(0.0%) for-loop ...ision-steps/src/core/taylor.rkt:324:46 hash-ref! [217] 100.0% ------------------------------------------------------------------------------- loop [9] 100.0% [26] 63874(6.8%) 224(0.0%) pass ...recision-steps/src/core/simplify.rkt:205:2 for-loop [42] 99.6% ------------------------------------------------------------------------------- ??? [10] 100.0% [27] 52778(5.6%) 0(0.0%) for-loop ...ision-steps/src/core/taylor.rkt:396:33 for-loop [43] 100.0% ------------------------------------------------------------------------------- run-improve50 [2] 100.0% [28] 24256(2.6%) 0(0.0%) get-final-combination ...ps/src/mainloop.rkt:264:0 split-table [44] 98.6% extract-alt [48] 1.4% ------------------------------------------------------------------------------- pattern-match [47] 1.7% taylor [18] 1.7% expression->type [188] 3.7% free-variables [187] 7.5% substitute-e [77] 17.9% match-e [65] 67.4% [29] 19462(2.1%) 692(0.1%) variable? ...ion-steps/src/syntax/syntax.rkt:660:0 ??? [121] 96.4% ------------------------------------------------------------------------------- iterate-egraph!13 [3] 100.0% [30] 12382(1.3%) 260(0.0%) map-enodes ...sion-steps/src/core/egraph.rkt:139:0 loop [186] 85.4% for-loop [45] 7.2% set-precompute! [49] 2.7% hash-keys [252] 2.6% ------------------------------------------------------------------------------- ??? [12] 100.0% [31] 4830(0.5%) 0(0.0%) for-loop ...ision-steps/src/core/taylor.rkt:487:35 parse-loop380 [162] 100.0% ------------------------------------------------------------------------------- combine-mterms [13] 100.0% [32] 3306(0.4%) 2130(0.2%) for-loop ...cision-steps/src/core/reduce.rkt:195:5 hash-ref! [217] 35.6% ------------------------------------------------------------------------------- ??? [16] 100.0% [33] 1390(0.1%) 0(0.0%) for-loop ...ision-steps/src/core/taylor.rkt:341:46 hash-ref! [217] 100.0% ------------------------------------------------------------------------------- ??? [17] 100.0% [34] 1382(0.1%) 578(0.1%) for-loop ...ecision-steps/src/core/reduce.rkt:62:7 pattern-match [47] 58.2% ------------------------------------------------------------------------------- run-improve50 [2] 100.0% [35] 332(0.0%) 0(0.0%) setup-alt-simplified ...on-steps/src/glue.rkt:49:0 simplify-alt [50] 100.0% ------------------------------------------------------------------------------- approximate9 [4] 100.0% [36] 222(0.0%) 0(0.0%) for-loop ...ecision-steps/src/core/taylor.rkt:19:8 ??? [232] 100.0% ------------------------------------------------------------------------------- approximate9 [4] 100.0% [37] 220(0.0%) 0(0.0%) taylor-quotient ...steps/src/core/taylor.rkt:328:0 first-nonzero-exp [46] 100.0% ------------------------------------------------------------------------------- for-loop [20] 100.0% [38] 722104(76.5%) 0(0.0%) run-iter! ...recision-steps/src/mainloop.rkt:215:0 simplify! [51] 78.2% gen-series! [53] 16.7% finalize-iter! [56] 4.1% gen-rewrites! [60] 0.7% ------------------------------------------------------------------------------- f45 [182] 0.1% one-iter [21] 99.9% [39] 416018(44.1%) 1144(0.1%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [52] 99.6% f45 [182] 0.1% ------------------------------------------------------------------------------- for-loop [40] 48.6% one-iter [21] 51.4% [40] 163746(17.3%) 39106(4.1%) for-loop ...ion-steps/src/core/simplify.rkt:123:12 for-loop [40] 48.6% match-e [65] 37.7% ??? [101] 0.3% ------------------------------------------------------------------------------- ??? [5] 37.1% for-loop [23] 62.9% [41] 105850(11.2%) 0(0.0%) ??? ...-precision-steps/src/core/taylor.rkt:288:19 hash-ref! [217] 100.0% ------------------------------------------------------------------------------- pass [26] 100.0% [42] 63650(6.7%) 864(0.1%) for-loop ...ion-steps/src/core/simplify.rkt:208:29 argmin [55] 61.7% loop [57] 26.3% for-loop [58] 9.6% make-sequence [134] 1.0% ------------------------------------------------------------------------------- for-loop [27] 100.0% [43] 52778(5.6%) 334(0.0%) for-loop ...ision-steps/src/core/taylor.rkt:398:39 hash-ref! [217] 99.4% ------------------------------------------------------------------------------- get-final-combination [28] 100.0% [44] 23920(2.5%) 0(0.0%) split-table ...-precision-steps/src/glue.rkt:162:0 f45 [182] 100.0% ------------------------------------------------------------------------------- map-enodes [30] 8.0% loop [186] 92.0% [45] 11104(1.2%) 1026(0.1%) for-loop ...sion-steps/src/core/simplify.rkt:173:2 eval-const-expr [59] 46.2% setfindf [61] 32.2% ??? [210] 5.6% compose [179] 5.0% composed [243] 1.7% ------------------------------------------------------------------------------- taylor-quotient [37] 7.4% taylor-sqrt [135] 11.1% taylor-invert [14] 81.5% [46] 2974(0.3%) 0(0.0%) first-nonzero-exp ...eps/src/core/taylor.rkt:260:0 hash-ref! [217] 93.9% simplify [54] 6.1% ------------------------------------------------------------------------------- for-loop [62] 34.6% for-loop [34] 65.4% [47] 804(0.1%) 470(0.0%) pattern-match ...n-steps/src/core/matcher.rkt:48:0 for-loop [62] 34.6% variable? [29] 20.8% ------------------------------------------------------------------------------- get-final-combination [28] 100.0% [48] 336(0.0%) 0(0.0%) extract-alt ...s-precision-steps/src/glue.rkt:55:0 loop [234] 100.0% ------------------------------------------------------------------------------- map-enodes [30] 100.0% [49] 334(0.0%) 0(0.0%) set-precompute! ...eps/src/core/simplify.rkt:172:0 make-sequence [134] 100.0% ------------------------------------------------------------------------------- setup-alt-simplified [35] 100.0% [50] 332(0.0%) 0(0.0%) simplify-alt ...-precision-steps/src/glue.rkt:76:0 ??? [216] 100.0% ------------------------------------------------------------------------------- run-iter! [38] 100.0% [51] 564998(59.8%) 438(0.0%) simplify! ...recision-steps/src/mainloop.rkt:155:0 for-loop [63] 99.9% ------------------------------------------------------------------------------- one-iter [21] 5.3% loop [39] 94.7% [52] 437484(46.3%) 7026(0.7%) apply-match ...n-steps/src/core/simplify.rkt:130:2 for-loop [64] 86.8% match-e [65] 8.2% update-leader! [86] 3.0% reduce-to-single! [72] 0.4% ------------------------------------------------------------------------------- run-iter! [38] 100.0% [53] 120602(12.8%) 0(0.0%) gen-series! ...cision-steps/src/mainloop.rkt:129:0 for-loop [66] 100.0% ------------------------------------------------------------------------------- first-nonzero-exp [46] 0.2% loop [186] 0.3% for-loop [169] 0.8% parse-loop380 [162] 0.8% ??? [5] 1.2% taylor-invert [14] 1.5% for-loop [23] 4.4% hash-ref! [217] 90.1% [54] 117056(12.4%) 1860(0.2%) simplify ...ecision-steps/src/core/reduce.rkt:16:0 f45 [182] 56.1% parse-loop380 [162] 36.0% debug-print [79] 3.3% simplify-node [125] 1.7% debug7 [71] 1.3% ------------------------------------------------------------------------------- for-loop [42] 100.0% [55] 39290(4.2%) 332(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [67] 91.4% expression-cost [69] 7.8% ------------------------------------------------------------------------------- run-iter! [38] 100.0% [56] 29652(3.1%) 0(0.0%) finalize-iter! ...ion-steps/src/mainloop.rkt:169:0 ??? [121] 100.0% ------------------------------------------------------------------------------- for-loop [42] 100.0% [57] 16758(1.8%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [67] 94.5% expression-cost [69] 5.5% ------------------------------------------------------------------------------- for-loop [42] 100.0% [58] 6130(0.6%) 6130(0.6%) for-loop ...ion-steps/src/core/simplify.rkt:195:13 ------------------------------------------------------------------------------- for-loop [45] 100.0% [59] 5130(0.5%) 952(0.1%) eval-const-expr ...on-steps/src/programs.rkt:166:0 f45 [182] 43.7% ??? [250] 17.7% ??? [193] 10.3% parse-loop380 [162] 5.8% bf* [163] 3.9% ------------------------------------------------------------------------------- run-iter! [38] 100.0% [60] 4910(0.5%) 0(0.0%) gen-rewrites! ...sion-steps/src/mainloop.rkt:142:0 for-loop [68] 100.0% ------------------------------------------------------------------------------- for-loop [45] 100.0% [61] 3580(0.4%) 1658(0.2%) setfindf ...s-precision-steps/src/common.rkt:184:0 for-loop [70] 53.7% ------------------------------------------------------------------------------- pattern-match [47] 100.0% [62] 556(0.1%) 0(0.0%) for-loop ...cision-steps/src/core/matcher.rkt:66:9 pattern-match [47] 100.0% ------------------------------------------------------------------------------- simplify! [51] 94.4% [63] 598022(63.3%) 0(0.0%) for-loop ...precision-steps/src/mainloop.rkt:159:6 ??? [73] 99.9% debug-print [79] 0.1% foldl [196] 0.0% ------------------------------------------------------------------------------- apply-match [52] 100.0% [64] 379936(40.2%) 2346(0.2%) for-loop ...ion-steps/src/core/simplify.rkt:145:10 mk-enode! [83] 32.4% merge-egraph-nodes! [76] 25.1% substitute-e [77] 20.2% loop! [191] 17.7% list-member? [78] 4.0% ------------------------------------------------------------------------------- apply-match [52] 15.3% for-loop [85] 23.9% for-loop [40] 60.9% [65] 159238(16.9%) 54016(5.7%) match-e ...recision-steps/src/core/ematch.rkt:46:0 for-loop [75] 50.4% for-loop [85] 8.0% ??? [121] 6.2% variable? [29] 3.2% loop [186] 1.5% list-cartesian-product [88] 0.9% custom-in-set [148] 0.5% curry* [95] 0.2% filter [272] 0.1% ------------------------------------------------------------------------------- gen-series! [53] 100.0% [66] 120602(12.8%) 0(0.0%) for-loop ...precision-steps/src/mainloop.rkt:135:7 taylor-alt [74] 100.0% ------------------------------------------------------------------------------- loop [57] 30.6% argmin [55] 69.4% [67] 51738(5.5%) 1842(0.2%) for-loop ...precision-steps/src/programs.rkt:199:2 ??? [216] 70.8% ...steps/src/common.rkt:47:2 [124] 22.3% ??? [122] 3.3% ------------------------------------------------------------------------------- gen-rewrites! [60] 100.0% [68] 4910(0.5%) 0(0.0%) for-loop ...recision-steps/src/mainloop.rkt:147:11 ??? [80] 100.0% ------------------------------------------------------------------------------- loop [57] 23.1% argmin [55] 76.9% [69] 3978(0.4%) 0(0.0%) expression-cost ...on-steps/src/programs.rkt:198:0 compile [81] 100.0% ------------------------------------------------------------------------------- setfindf [61] 100.0% [70] 1922(0.2%) 1922(0.2%) for-loop ...s-precision-steps/src/common.rkt:185:2 ------------------------------------------------------------------------------- taylor [18] 17.6% simplify [54] 82.4% [71] 1886(0.2%) 1200(0.1%) debug7 ...acts-precision-steps/src/debug.rkt:102:0 ??? [121] 19.1% ??? [227] 17.3% ------------------------------------------------------------------------------- apply-match [52] 100.0% [72] 1864(0.2%) 992(0.1%) reduce-to-single! ...eps/src/core/egraph.rkt:324:0 for-loop [82] 29.3% make-sequence [134] 17.5% ------------------------------------------------------------------------------- for-loop [63] 23.6% run [19] 32.9% [73] 938932(99.4%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 ??? [216] 33.7% profile-thunk16 [1] 32.9% run-improve50 [2] 30.1% loop [87] 3.3% ------------------------------------------------------------------------------- for-loop [66] 100.0% [74] 120602(12.8%) 0(0.0%) taylor-alt ...s-precision-steps/src/glue.rkt:134:0 for-loop [84] 100.0% ------------------------------------------------------------------------------- match-e [65] 100.0% [75] 101688(10.8%) 36560(3.9%) for-loop ...cision-steps/src/core/ematch.rkt:59:11 for-loop [85] 54.0% list-cartesian-product [88] 9.5% loop [186] 2.5% curry* [95] 1.5% foldl [196] 0.2% ------------------------------------------------------------------------------- for-loop [91] 3.8% merge-egraph-nodes! [76] 5.8% for-loop [64] 90.5% [76] 95462(10.1%) 3100(0.3%) merge-egraph-nodes! ...s/src/core/egraph.rkt:152:0 update-leader! [86] 50.4% for-loop [90] 13.7% loop! [191] 13.4% for-loop [91] 6.9% enode-merge! [92] 6.1% merge-egraph-nodes! [76] 5.8% for-loop [247] 0.5% ------------------------------------------------------------------------------- substitute-e [77] 7.6% for-loop [64] 92.4% [77] 76748(8.1%) 2616(0.3%) substitute-e ...ion-steps/src/core/ematch.rkt:71:0 mk-enode! [83] 85.5% substitute-e [77] 7.6% ??? [121] 2.7% variable? [29] 1.7% ------------------------------------------------------------------------------- for-loop [64] 100.0% [78] 15208(1.6%) 558(0.1%) list-member? ...llects/racket/private/set.rkt:24:0 loop [89] 88.2% member [96] 8.1% ------------------------------------------------------------------------------- taylor [18] 6.4% for-loop [63] 7.1% iterate-egraph!13 [3] 11.3% simplify [54] 75.2% [79] 5102(0.5%) 1818(0.2%) debug-print ...precision-steps/src/debug.rkt:107:0 for-loop [94] 64.4% ------------------------------------------------------------------------------- for-loop [68] 100.0% [80] 4910(0.5%) 0(0.0%) ??? ...ts-precision-steps/src/alternative.rkt:88:0 rewriter [93] 100.0% ------------------------------------------------------------------------------- expression-cost [69] 100.0% [81] 3978(0.4%) 244(0.0%) compile ...-precision-steps/src/programs.rkt:175:0 hash-ref! [217] 93.9% ------------------------------------------------------------------------------- reduce-to-single! [72] 100.0% [82] 546(0.1%) 546(0.1%) for-loop ...cision-steps/src/core/egraph.rkt:325:8 ------------------------------------------------------------------------------- mk-egraph [230] 0.3% expr->enode [246] 2.3% substitute-e [77] 33.9% for-loop [64] 63.5% [83] 193666(20.5%) 14910(1.6%) mk-enode! ...ision-steps/src/core/egraph.rkt:101:0 new-enode [97] 90.2% hash-has-key? [129] 1.7% ------------------------------------------------------------------------------- taylor-alt [74] 100.0% [84] 120602(12.8%) 0(0.0%) for-loop ...cts-precision-steps/src/glue.rkt:139:6 ??? [210] 100.0% ------------------------------------------------------------------------------- match-e [65] 26.1% for-loop [75] 73.9% [85] 78862(8.4%) 7466(0.8%) for-loop ...cision-steps/src/core/ematch.rkt:65:37 match-e [65] 87.4% ??? [101] 4.4% ------------------------------------------------------------------------------- apply-match [52] 20.1% merge-egraph-nodes! [76] 79.9% [86] 64670(6.8%) 6414(0.7%) update-leader! ...-steps/src/core/egraph.rkt:217:0 for-loop [98] 84.3% custom-set-union! [106] 2.8% update-en-expr [255] 1.3% make-sequence [134] 0.8% hash-ref! [217] 0.6% ------------------------------------------------------------------------------- run-improve50 [2] 3.8% ??? [73] 96.2% [87] 63314(6.7%) 0(0.0%) loop ...xacts-precision-steps/src/points.rkt:197:2 loop [99] 53.4% make-exacts* [110] 44.9% for-loop [108] 1.7% ------------------------------------------------------------------------------- match-e [65] 11.2% list-cartesian-product [88] 26.7% for-loop [75] 62.0% [88] 13546(1.4%) 10338(1.1%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [88] 26.7% for-loop [103] 19.2% ------------------------------------------------------------------------------- list-member? [78] 100.0% [89] 13418(1.4%) 13418(1.4%) loop (unknown source) ------------------------------------------------------------------------------- merge-egraph-nodes! [76] 100.0% [90] 13154(1.4%) 10758(1.1%) for-loop ...cision-steps/src/core/egraph.rkt:232:6 update-en-expr [255] 18.2% ------------------------------------------------------------------------------- merge-egraph-nodes! [76] 100.0% [91] 10190(1.1%) 0(0.0%) for-loop ...ision-steps/src/core/egraph.rkt:200:10 merge-egraph-nodes! [76] 69.8% loop! [191] 30.2% ------------------------------------------------------------------------------- merge-egraph-nodes! [76] 100.0% [92] 6424(0.7%) 728(0.1%) enode-merge! ...ion-steps/src/core/enode.rkt:129:0 adopt-enode! [104] 47.2% custom-set-intersect! [105] 41.5% ------------------------------------------------------------------------------- ??? [80] 26.3% matcher [112] 73.7% [93] 4910(0.5%) 438(0.0%) rewriter ...ision-steps/src/core/matcher.rkt:131:2 for-loop [100] 76.4% *rules* [102] 17.7% f45 [182] 2.7% expression->type [188] 1.1% ------------------------------------------------------------------------------- debug-print [79] 100.0% [94] 3284(0.3%) 3284(0.3%) for-loop ...ts-precision-steps/src/debug.rkt:113:2 ------------------------------------------------------------------------------- match-e [65] 14.1% for-loop [75] 85.9% [95] 2358(0.2%) 1200(0.1%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [107] 49.1% ------------------------------------------------------------------------------- list-member? [78] 100.0% [96] 1232(0.1%) 1232(0.1%) member (unknown source) ------------------------------------------------------------------------------- mk-enode! [83] 100.0% [97] 174606(18.5%) 902(0.1%) new-enode ...ecision-steps/src/core/enode.rkt:97:0 type-of-enode-expr [109] 99.1% set [199] 0.2% ------------------------------------------------------------------------------- update-leader! [86] 100.0% [98] 54544(5.8%) 1500(0.2%) for-loop ...cision-steps/src/core/egraph.rkt:222:6 for-loop [111] 97.2% ------------------------------------------------------------------------------- loop [87] 100.0% [99] 33836(3.6%) 0(0.0%) loop ...xacts-precision-steps/src/points.rkt:156:2 make-exacts* [110] 100.0% ------------------------------------------------------------------------------- rewriter [93] 100.0% [100] 4910(0.5%) 0(0.0%) for-loop ...sion-steps/src/core/matcher.rkt:134:10 matcher [112] 100.0% ------------------------------------------------------------------------------- for-loop [40] 23.8% for-loop [85] 76.2% [101] 4558(0.5%) 1052(0.1%) ??? ...ts-precision-steps/src/core/ematch.rkt:50:5 for-loop [113] 76.9% ------------------------------------------------------------------------------- rewriter [93] 100.0% [102] 3612(0.4%) 360(0.0%) *rules* ...cision-steps/src/syntax/rules.rkt:512:0 for-loop [247] 90.0% ------------------------------------------------------------------------------- list-cartesian-product [88] 100.0% [103] 3208(0.3%) 3208(0.3%) for-loop ...ecision-steps/src/core/ematch.rkt:24:8 ------------------------------------------------------------------------------- enode-merge! [92] 100.0% [104] 3032(0.3%) 1142(0.1%) adopt-enode! ...ion-steps/src/core/enode.rkt:105:0 custom-set-union [198] 62.3% ------------------------------------------------------------------------------- enode-merge! [92] 100.0% [105] 2664(0.3%) 2664(0.3%) custom-set-intersect! ...ivate/set-types.rkt:269:0 ------------------------------------------------------------------------------- update-leader! [86] 100.0% [106] 1838(0.2%) 1654(0.2%) custom-set-union! ...t/private/set-types.rkt:245:0 for-loop [115] 10.0% ------------------------------------------------------------------------------- curry* [95] 100.0% [107] 1158(0.1%) 1158(0.1%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ------------------------------------------------------------------------------- loop [87] 100.0% [108] 1046(0.1%) 0(0.0%) for-loop ...-precision-steps/src/points.rkt:211:24 for-loop [114] 100.0% ------------------------------------------------------------------------------- new-enode [97] 100.0% [109] 173078(18.3%) 3420(0.4%) type-of-enode-expr ...teps/src/core/enode.rkt:68:0 get-sigs [116] 97.9% f45 [182] 0.2% ------------------------------------------------------------------------------- loop [87] 45.7% loop [99] 54.3% [110] 62268(6.6%) 258(0.0%) make-exacts* ...ecision-steps/src/points.rkt:138:0 loop [186] 46.6% map [117] 43.2% eval-prog [153] 9.8% ------------------------------------------------------------------------------- for-loop [98] 100.0% [111] 53044(5.6%) 666(0.1%) for-loop ...cision-steps/src/core/egraph.rkt:223:8 hash-update! [118] 98.7% ------------------------------------------------------------------------------- matcher [112] 18.3% for-loop [119] 32.7% for-loop [100] 48.9% [112] 4910(0.5%) 0(0.0%) matcher ...cision-steps/src/core/matcher.rkt:167:2 rewriter [93] 47.9% for-loop [119] 32.7% matcher [112] 18.3% for-loop [120] 1.1% ------------------------------------------------------------------------------- ??? [101] 100.0% [113] 3506(0.4%) 1976(0.2%) for-loop ...ecision-steps/src/core/ematch.rkt:51:7 ??? [121] 43.6% ------------------------------------------------------------------------------- for-loop [108] 100.0% [114] 1046(0.1%) 0(0.0%) for-loop ...-precision-steps/src/points.rkt:212:26 ??? [210] 100.0% ------------------------------------------------------------------------------- custom-set-union! [106] 100.0% [115] 184(0.0%) 184(0.0%) for-loop ...cts/racket/private/set-types.rkt:253:4 ------------------------------------------------------------------------------- type-of-enode-expr [109] 100.0% [116] 169378(17.9%) 2110(0.2%) get-sigs ...precision-steps/src/type-check.rkt:5:0 ??? [122] 50.6% ??? [216] 25.6% ??? [121] 11.7% ...steps/src/common.rkt:47:2 [124] 10.8% ------------------------------------------------------------------------------- parse-loop380 [162] 6.3% make-exacts* [110] 26.5% f45 [182] 67.0% [117] 101550(10.8%) 1790(0.2%) map ...acket/collects/racket/private/map.rkt:20:13 f45 [182] 38.4% loop [186] 27.1% parse-loop380 [162] 23.4% simplify-node [125] 5.0% ??? [126] 1.9% simplify* [194] 1.8% make-multiplication-node [173] 0.8% ??? [156] 0.3% ??? [17] 0.1% taylor-sqrt [135] 0.1% ------------------------------------------------------------------------------- for-loop [111] 100.0% [118] 52378(5.5%) 250(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [123] 99.5% ------------------------------------------------------------------------------- matcher [112] 100.0% [119] 4910(0.5%) 0(0.0%) for-loop ...sion-steps/src/core/matcher.rkt:183:21 matcher [112] 100.0% ------------------------------------------------------------------------------- matcher [112] 100.0% [120] 266(0.0%) 0(0.0%) for-loop ...ision-steps/src/core/matcher.rkt:159:6 pattern-substitute [253] 100.0% ------------------------------------------------------------------------------- pattern-substitute [253] 0.3% simplify* [194] 0.3% expression->type [188] 0.3% f45 [182] 0.3% debug7 [71] 0.4% ??? [254] 0.7% for-loop [113] 1.5% free-variables [187] 3.1% substitute-e [77] 5.0% variable? [29] 18.6% match-e [65] 19.5% get-sigs [116] 19.7% finalize-iter! [56] 29.0% [121] 100886(10.7%) 38016(4.0%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [129] 30.6% for-loop [131] 28.5% ??? [254] 1.5% ------------------------------------------------------------------------------- for-loop [67] 1.9% f45 [182] 2.0% get-sigs [116] 96.1% [122] 89154(9.4%) 4822(0.5%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 for-loop [127] 56.8% ??? [130] 32.8% get/build-late-neg-projection [154] 3.9% ??? [258] 0.5% ??? [256] 0.3% coerce-contract [136] 0.2% ------------------------------------------------------------------------------- hash-update! [118] 100.0% [123] 52128(5.5%) 316(0.0%) ??? ...-precision-steps/src/core/egraph.rkt:225:24 for-loop [128] 98.1% make-sequence [134] 1.3% ------------------------------------------------------------------------------- ??? [210] 2.2% for-loop [67] 37.9% get-sigs [116] 59.8% [124] 30492(3.2%) 10916(1.2%) ...steps/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [132] 36.9% ??? [147] 24.6% coerce-contract [136] 2.7% ------------------------------------------------------------------------------- parse-loop380 [162] 3.5% simplify [54] 13.3% map [117] 83.2% [125] 14786(1.6%) 286(0.0%) simplify-node ...on-steps/src/core/reduce.rkt:50:0 append-map [183] 45.2% f45 [182] 29.9% combine-aterms [133] 20.9% partition [137] 2.1% ------------------------------------------------------------------------------- loop [186] 11.1% map [117] 88.9% [126] 3208(0.3%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 f45 [182] 48.2% taylor-sqrt [135] 38.3% hash-ref! [217] 13.5% ------------------------------------------------------------------------------- for-loop [241] 8.5% ??? [122] 91.5% [127] 55320(5.9%) 3116(0.3%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [138] 94.4% ------------------------------------------------------------------------------- ??? [123] 100.0% [128] 51148(5.4%) 43230(4.6%) for-loop ...ision-steps/src/core/egraph.rkt:226:26 update-en-expr [255] 15.5% ------------------------------------------------------------------------------- mk-enode! [83] 9.4% ??? [121] 90.6% [129] 34480(3.7%) 13090(1.4%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [225] 55.9% ??? [233] 6.2% ------------------------------------------------------------------------------- ??? [122] 100.0% [130] 29284(3.1%) 2116(0.2%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [140] 92.8% ------------------------------------------------------------------------------- ??? [121] 100.0% [131] 29182(3.1%) 0(0.0%) for-loop ...sion-steps/src/core/alt-table.rkt:51:2 atab-add-altn [139] 100.0% ------------------------------------------------------------------------------- ...steps/src/common.rkt:47:2 [124] 100.0% [132] 11258(1.2%) 3316(0.4%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [227] 42.8% return/no-unsupplied [268] 18.6% assoc-ref [142] 9.2% ------------------------------------------------------------------------------- simplify-node [125] 100.0% [133] 3086(0.3%) 1126(0.1%) combine-aterms ...-steps/src/core/reduce.rkt:183:0 for-loop [141] 63.5% ------------------------------------------------------------------------------- reduce-to-single! [72] 13.4% set-precompute! [49] 13.7% update-leader! [86] 20.5% for-loop [42] 25.0% ??? [123] 27.3% [134] 2430(0.3%) 1482(0.2%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [143] 39.0% ------------------------------------------------------------------------------- map [117] 20.9% ??? [126] 79.1% [135] 1552(0.2%) 0(0.0%) taylor-sqrt ...ion-steps/src/core/taylor.rkt:346:0 hash-ref! [217] 78.7% first-nonzero-exp [46] 21.3% ------------------------------------------------------------------------------- ??? [122] 20.2% ...steps/src/common.rkt:47:2 [124] 79.8% [136] 1028(0.1%) 1028(0.1%) coerce-contract ...contract/private/guts.rkt:257:0 ------------------------------------------------------------------------------- simplify-node [125] 100.0% [137] 312(0.0%) 312(0.0%) partition ...racket/collects/racket/list.rkt:547:0 ------------------------------------------------------------------------------- unpack245 [259] 0.4% ??? [216] 0.7% ??? [225] 2.6% ??? [147] 10.0% for-loop [127] 86.3% [138] 60524(6.4%) 6378(0.7%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [144] 83.6% ??? [147] 2.9% ??? [257] 1.4% ------------------------------------------------------------------------------- for-loop [131] 98.4% [139] 29652(3.1%) 0(0.0%) atab-add-altn ...teps/src/core/alt-table.rkt:208:0 best-and-tied-at-points [145] 92.8% override-at-pnts [149] 5.4% loop [186] 1.1% ------------------------------------------------------------------------------- ??? [130] 100.0% [140] 27168(2.9%) 1440(0.2%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [146] 94.7% ------------------------------------------------------------------------------- combine-aterms [133] 100.0% [141] 1960(0.2%) 1018(0.1%) for-loop ...cision-steps/src/core/reduce.rkt:185:4 hash-ref! [217] 48.1% ------------------------------------------------------------------------------- ??? [132] 100.0% [142] 1034(0.1%) 1034(0.1%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ------------------------------------------------------------------------------- make-sequence [134] 100.0% [143] 948(0.1%) 0(0.0%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [148] 100.0% ------------------------------------------------------------------------------- ??? [138] 100.0% [144] 50610(5.4%) 724(0.1%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [254] 96.2% ??? [257] 2.4% ------------------------------------------------------------------------------- atab-add-altn [139] 100.0% [145] 27520(2.9%) 212(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [150] 98.3% ------------------------------------------------------------------------------- ??? [140] 100.0% [146] 25728(2.7%) 1038(0.1%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [151] 96.0% ------------------------------------------------------------------------------- ??? [138] 11.5% ...steps/src/common.rkt:47:2 [124] 88.5% [147] 7498(0.8%) 1512(0.2%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [138] 69.6% ??? [258] 10.7% ??? [254] 5.6% ------------------------------------------------------------------------------- match-e [65] 49.8% ??? [143] 50.2% [148] 1890(0.2%) 1890(0.2%) custom-in-set ...acket/private/set-types.rkt:577:0 ------------------------------------------------------------------------------- atab-add-altn [139] 100.0% [149] 1608(0.2%) 0(0.0%) override-at-pnts ...s/src/core/alt-table.rkt:145:0 errors [150] 100.0% ------------------------------------------------------------------------------- override-at-pnts [149] 3.9% composed [243] 5.0% option-on-expr [192] 10.5% loop [186] 14.9% best-and-tied-at-points [145] 65.7% [150] 41166(4.4%) 0(0.0%) errors ...cts-precision-steps/src/points.rkt:232:0 for-loop [152] 85.8% eval-prog [153] 13.8% ------------------------------------------------------------------------------- ??? [146] 100.0% [151] 24690(2.6%) 6424(0.7%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [155] 41.6% get/build-late-neg-projection [154] 32.4% ------------------------------------------------------------------------------- errors [150] 100.0% [152] 35314(3.7%) 2186(0.2%) for-loop ...s-precision-steps/src/points.rkt:235:4 ??? [156] 84.2% ??? [210] 6.9% ulp-difference [159] 1.4% ------------------------------------------------------------------------------- sort-context-on-expr [200] 2.3% sindices->spoints [208] 2.7% errors [150] 45.9% make-exacts* [110] 49.1% [153] 12398(1.3%) 1380(0.1%) eval-prog ...recision-steps/src/programs.rkt:148:0 f45 [182] 40.8% hash-ref! [217] 40.2% ??? [232] 5.2% ??? [250] 2.7% ------------------------------------------------------------------------------- ??? [158] 13.7% ??? [122] 15.1% for-loop [151] 69.8% [154] 11470(1.2%) 884(0.1%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [157] 79.5% ??? [158] 13.7% ------------------------------------------------------------------------------- for-loop [151] 100.0% [155] 10262(1.1%) 10262(1.1%) add-list-context ...ontract/private/list.rkt:752:0 ------------------------------------------------------------------------------- map [117] 0.4% ??? [222] 1.4% jloop [15] 2.9% loop [244] 8.1% for-loop [152] 31.8% loop [186] 55.4% [156] 93382(9.9%) 2458(0.3%) ??? ...acts-precision-steps/src/programs.rkt:154:4 ??? [160] 66.8% ??? [218] 16.5% ??? [210] 7.3% loop [186] 6.7% ------------------------------------------------------------------------------- get/build-late-neg-projection [154] 100.0% [157] 10242(1.1%) 3790(0.4%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [161] 63.0% ------------------------------------------------------------------------------- get/build-late-neg-projection [154] 100.0% [158] 3144(0.3%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [154] 100.0% ------------------------------------------------------------------------------- for-loop [152] 100.0% [159] 504(0.1%) 230(0.0%) ulp-difference ...ecision-steps/src/float.rkt:19:0 ??? [227] 54.4% ------------------------------------------------------------------------------- ??? [156] 100.0% [160] 62394(6.6%) 27584(2.9%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [193] 13.9% bf* [163] 12.0% ??? [164] 11.0% ??? [165] 9.7% for-loop [167] 4.4% parse-loop380 [162] 2.1% ??? [257] 1.6% ------------------------------------------------------------------------------- contract-struct-name [166] 21.6% ??? [157] 78.4% [161] 6452(0.7%) 3362(0.4%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [166] 61.9% ------------------------------------------------------------------------------- eval-const-expr [59] 0.3% hash-ref! [217] 0.5% ??? [160] 1.5% f45 [182] 3.2% append-map [183] 4.6% loop [186] 4.8% for-loop [31] 5.2% simplify [54] 21.5% parse-loop380 [162] 26.4% map [117] 32.0% [162] 89080(9.4%) 49570(5.3%) parse-loop380 .../racket/match/compiler.rkt:418:15 parse-loop380 [162] 26.4% f45 [182] 12.4% loop [186] 10.0% for-loop [169] 3.9% map [117] 3.8% for-loop [168] 3.5% parse-app [184] 2.7% make-multiplication-node [173] 2.6% simplify* [194] 2.2% simplify [54] 1.0% ??? [17] 0.6% simplify-node [125] 0.6% make-keyword-procedure [262] 0.5% foldr [172] 0.4% append-map [183] 0.1% ------------------------------------------------------------------------------- eval-const-expr [59] 2.6% ??? [160] 97.4% [163] 7696(0.8%) 384(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [193] 95.0% ------------------------------------------------------------------------------- ??? [160] 100.0% [164] 6844(0.7%) 4836(0.5%) ??? ...recision-steps/src/syntax/syntax.rkt:153:17 ??? [227] 26.2% return/no-unsupplied [268] 3.2% ------------------------------------------------------------------------------- ??? [160] 100.0% [165] 6076(0.6%) 6076(0.6%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ------------------------------------------------------------------------------- build-compound-type-name [161] 100.0% [166] 4902(0.5%) 3090(0.3%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [161] 47.0% ------------------------------------------------------------------------------- ??? [160] 100.0% [167] 2742(0.3%) 0(0.0%) for-loop ...sion-steps/src/syntax/syntax.rkt:528:2 bf< [170] 87.1% ...higher-order.rkt:342:33 [171] 12.9% ------------------------------------------------------------------------------- parse-loop380 [162] 100.0% [168] 5920(0.6%) 0(0.0%) for-loop ...cision-steps/src/core/reduce.rkt:99:13 make-multiplication-node [173] 51.9% f45 [182] 48.1% ------------------------------------------------------------------------------- parse-loop380 [162] 100.0% [169] 3698(0.4%) 0(0.0%) for-loop ...ision-steps/src/core/taylor.rkt:490:59 hash-ref! [217] 75.1% simplify [54] 24.9% ------------------------------------------------------------------------------- for-loop [167] 100.0% [170] 2388(0.3%) 0(0.0%) bf< ...th/private/bigfloat/bigfloat-mpfr.rkt:127:4 ??? [232] 100.0% ------------------------------------------------------------------------------- for-loop [167] 100.0% [171] 354(0.0%) 354(0.0%) ...higher-order.rkt:342:33 (unknown source) ------------------------------------------------------------------------------- parse-loop380 [162] 100.0% [172] 322(0.0%) 0(0.0%) foldr ...et/collects/racket/private/list.rkt:242:4 cp-2 [174] 100.0% ------------------------------------------------------------------------------- loop [186] 3.3% map [117] 29.5% parse-loop380 [162] 30.4% for-loop [168] 36.7% [173] 8364(0.9%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:230:0 make-multiplication-subnode [175] 100.0% ------------------------------------------------------------------------------- foldr [172] 100.0% [174] 322(0.0%) 322(0.0%) cp-2 ...hare/racket/collects/racket/list.rkt:804:2 ------------------------------------------------------------------------------- make-multiplication-node [173] 100.0% [175] 8364(0.9%) 956(0.1%) make-multiplication-subnode ...re/reduce.rkt:240:0 for-loop [176] 58.0% group-by68 [177] 26.6% compose [179] 3.9% ------------------------------------------------------------------------------- make-multiplication-subnode [175] 100.0% [176] 4854(0.5%) 708(0.1%) for-loop ...cision-steps/src/core/reduce.rkt:242:3 make-multiplication-subsubsubnode [178] 66.6% mterm->expr [181] 14.0% compose [179] 4.9% ------------------------------------------------------------------------------- make-multiplication-subnode [175] 100.0% [177] 2226(0.2%) 1858(0.2%) group-by68 ...acket/collects/racket/list.rkt:749:0 hash-update [180] 16.5% ------------------------------------------------------------------------------- make-multiplication-subsubsubnode [178] 30.4% for-loop [176] 69.6% [178] 3232(0.3%) 0(0.0%) make-multiplication-subsubsubnode ...uce.rkt:262:0 mterm->expr [181] 69.6% make-multiplication-subsubsubnode [178] 30.4% ------------------------------------------------------------------------------- for-loop [176] 21.1% make-multiplication-subnode [175] 29.3% for-loop [45] 49.6% [179] 1120(0.1%) 1120(0.1%) compose ...collects/racket/private/list.rkt:385:12 ------------------------------------------------------------------------------- group-by68 [177] 100.0% [180] 368(0.0%) 368(0.0%) hash-update ...cket/private/more-scheme.rkt:356:13 ------------------------------------------------------------------------------- for-loop [176] 17.3% make-multiplication-subsubsubnode [178] 82.7% [181] 3910(0.4%) 952(0.1%) mterm->expr ...ion-steps/src/core/reduce.rkt:270:0 free-variables [187] 34.5% expression->type [188] 27.0% f45 [182] 8.4% type-of [190] 5.8% ------------------------------------------------------------------------------- loop [39] 0.1% mterm->expr [181] 0.1% ??? [126] 0.2% rewriter [93] 0.2% type-of-enode-expr [109] 0.3% for-loop [195] 0.3% for-loop [168] 0.5% simplify-node [125] 0.6% hash-ref! [217] 0.7% composed [243] 0.7% approximate9 [4] 1.0% eval-prog [153] 1.3% eval-const-expr [59] 2.0% loop [186] 2.8% append-map [183] 4.4% f45 [182] 8.0% parse-loop380 [162] 9.7% simplify [54] 19.5% split-table [44] 20.6% map [117] 27.2% [182] 111380(11.8%) 14682(1.6%) f45 ...t/collects/racket/match/compiler.rkt:507:40 map [117] 50.0% loop [186] 18.7% f45 [182] 8.0% append-map [183] 4.5% option-on-expr [192] 1.9% ??? [210] 1.6% combine-mterms [13] 1.4% composed [243] 1.3% parse-loop380 [162] 1.2% parse-app [184] 1.0% ??? [122] 1.0% ??? [216] 0.7% taylor-invert [14] 0.5% loop [185] 0.3% taylor [18] 0.3% expression->type [188] 0.1% ??? [121] 0.1% loop [39] 0.1% ------------------------------------------------------------------------------- parse-loop380 [162] 1.1% simplify-node [125] 26.5% f45 [182] 72.4% [183] 15646(1.7%) 924(0.1%) append-map ...acket/collects/racket/list.rkt:565:2 f45 [182] 63.8% parse-loop380 [162] 23.0% free-variables [187] 7.0% loop [186] 4.1% ------------------------------------------------------------------------------- f45 [182] 27.8% parse-loop380 [162] 68.5% [184] 5744(0.6%) 4816(0.5%) parse-app .../collects/racket/private/kw.rkt:951:2 loop [189] 16.2% ------------------------------------------------------------------------------- f45 [182] 100.0% [185] 1738(0.2%) 326(0.0%) loop ...s-precision-steps/src/core/reduce.rkt:18:2 expression->type [188] 50.3% free-variables [187] 17.1% type-of [190] 13.8% ------------------------------------------------------------------------------- atab-add-altn [139] 0.1% make-exacts* [110] 0.1% taylor [18] 0.2% append-map [183] 0.4% ??? [156] 0.8% for-loop [75] 1.2% map-enodes [30] 1.4% option-on-expr [192] 1.5% map [117] 1.6% match-e [65] 1.9% ??? [229] 2.2% f45 [182] 7.7% loop! [191] 7.9% parse-loop380 [162] 10.6% loop [186] 62.4% [186] 176688(18.7%) 10530(1.1%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [186] 62.4% option-on-expr [192] 7.7% parse-loop380 [162] 7.3% loop! [191] 6.7% f45 [182] 3.8% hash-ref! [217] 2.2% errors [150] 1.5% for-loop [45] 1.4% foldl [196] 0.8% ??? [156] 0.8% ??? [210] 0.7% simplify [54] 0.2% simplify* [194] 0.2% make-multiplication-node [173] 0.2% ??? [251] 0.1% ??? [126] 0.1% ??? [218] 0.1% loop [207] 0.1% ??? [193] 0.0% ??? [197] 0.0% ------------------------------------------------------------------------------- loop [185] 5.8% mterm->expr [181] 26.3% append-map [183] 67.9% [187] 5130(0.5%) 520(0.1%) free-variables ...ion-steps/src/programs.rkt:100:0 ??? [121] 61.2% variable? [29] 28.6% ------------------------------------------------------------------------------- rewriter [93] 6.3% f45 [182] 6.3% loop [185] 8.5% mterm->expr [181] 23.9% for-loop [195] 55.0% [188] 2584(0.3%) 0(0.0%) expression->type ...-steps/src/type-check.rkt:45:0 for-loop [195] 76.3% variable? [29] 17.4% ??? [121] 6.3% ------------------------------------------------------------------------------- parse-app [184] 100.0% [189] 928(0.1%) 928(0.1%) loop .../collects/racket/private/stxcase.rkt:112:7 ------------------------------------------------------------------------------- mterm->expr [181] 48.5% loop [185] 51.5% [190] 466(0.0%) 466(0.0%) type-of ...precision-steps/src/type-check.rkt:38:0 ------------------------------------------------------------------------------- for-loop [91] 2.6% merge-egraph-nodes! [76] 14.1% loop [186] 27.8% for-loop [64] 55.6% [191] 87666(9.3%) 21262(2.3%) loop! ...-precision-steps/src/core/enode.rkt:192:2 custom-set-union [198] 35.6% loop [186] 33.3% set [199] 11.8% update-en-expr [255] 5.0% ------------------------------------------------------------------------------- f45 [182] 11.3% loop [186] 88.7% [192] 23920(2.5%) 0(0.0%) option-on-expr ...steps/src/core/regimes.rkt:103:0 sort-context-on-expr [200] 45.6% loop [186] 25.6% errors [150] 18.0% pick-errors [204] 5.5% err-lsts->split-indices [206] 3.9% sindices->spoints [208] 1.4% ------------------------------------------------------------------------------- loop [186] 1.4% eval-const-expr [59] 3.2% bf* [163] 43.6% ??? [160] 51.8% [193] 16760(1.8%) 2304(0.2%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfdiv [201] 64.7% bfneg [202] 21.5% ------------------------------------------------------------------------------- loop [186] 3.4% parse-loop380 [162] 34.1% map [117] 62.6% [194] 9712(1.0%) 3028(0.3%) simplify* ...cision-steps/src/core/reduce.rkt:31:0 hash-ref! [217] 29.5% ??? [203] 27.6% return/no-unsupplied [268] 8.6% ??? [121] 3.2% ------------------------------------------------------------------------------- expression->type [188] 100.0% [195] 2224(0.2%) 0(0.0%) for-loop ...recision-steps/src/type-check.rkt:52:5 expression->type [188] 75.2% f45 [182] 17.2% ??? [227] 7.6% ------------------------------------------------------------------------------- for-loop [75] 11.2% for-loop [63] 11.3% loop [186] 77.6% [196] 2078(0.2%) 842(0.1%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [205] 48.2% ??? [209] 11.3% ------------------------------------------------------------------------------- loop [186] 100.0% [197] 194(0.0%) 0(0.0%) ??? ...ecision-steps/src/core/alt-table.rkt:199:30 loop [207] 100.0% ------------------------------------------------------------------------------- adopt-enode! [104] 5.4% loop! [191] 94.6% [198] 35150(3.7%) 9926(1.1%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [211] 61.9% for-loop [213] 9.9% ------------------------------------------------------------------------------- new-enode [97] 1.5% loop! [191] 98.5% [199] 19676(2.1%) 19676(2.1%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------------- option-on-expr [192] 100.0% [200] 10898(1.2%) 0(0.0%) sort-context-on-expr ...steps/src/points.rkt:115:0 ??? [212] 97.4% eval-prog [153] 2.6% ------------------------------------------------------------------------------- ??? [193] 100.0% [201] 10850(1.1%) 9028(1.0%) bfdiv ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [245] 16.8% ------------------------------------------------------------------------------- ??? [193] 100.0% [202] 3606(0.4%) 2488(0.3%) bfneg ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [245] 31.0% ------------------------------------------------------------------------------- simplify* [194] 100.0% [203] 2684(0.3%) 1314(0.1%) ??? ...racket/collects/racket/private/kw.rkt:762:9 ??? [242] 51.0% ------------------------------------------------------------------------------- option-on-expr [192] 100.0% [204] 1314(0.1%) 0(0.0%) pick-errors ...on-steps/src/core/regimes.rkt:184:0 for-loop [214] 100.0% ------------------------------------------------------------------------------- foldl [196] 100.0% [205] 1002(0.1%) 1002(0.1%) merge2 ...precision-steps/src/core/ematch.rkt:31:0 ------------------------------------------------------------------------------- option-on-expr [192] 100.0% [206] 930(0.1%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:222:0 add-splitpoint [215] 100.0% ------------------------------------------------------------------------------- loop [186] 1.7% ??? [197] 37.0% loop [207] 61.3% [207] 524(0.1%) 524(0.1%) loop ...ket/collects/racket/private/list.rkt:82:16 loop [207] 61.3% ------------------------------------------------------------------------------- option-on-expr [192] 100.0% [208] 334(0.0%) 0(0.0%) sindices->spoints ...ps/src/core/regimes.rkt:116:0 eval-prog [153] 100.0% ------------------------------------------------------------------------------- foldl [196] 100.0% [209] 234(0.0%) 0(0.0%) ??? ...ts-precision-steps/src/alternative.rkt:66:9 ??? [210] 100.0% ------------------------------------------------------------------------------- for-loop [224] 0.1% ??? [209] 0.2% jloop [15] 0.2% for-loop [45] 0.4% for-loop [114] 0.7% for-loop [152] 1.7% f45 [182] 3.2% loop [186] 3.7% ??? [156] 4.6% ??? [11] 10.9% loop [22] 16.2% for-loop [84] 28.3% ??? [216] 28.6% [210] 144108(15.3%) 5604(0.6%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [216] 37.6% approximate9 [4] 28.3% hash-ref! [217] 27.2% best-alt [221] 1.1% ??? [218] 1.1% ??? [254] 0.6% ...steps/src/common.rkt:47:2 [124] 0.5% ------------------------------------------------------------------------------- custom-set-union [198] 100.0% [211] 21750(2.3%) 4876(0.5%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [219] 77.6% ------------------------------------------------------------------------------- sort-context-on-expr [200] 98.1% [212] 10812(1.1%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [220] 79.0% loop [244] 19.1% ------------------------------------------------------------------------------- custom-set-union [198] 100.0% [213] 3474(0.4%) 3474(0.4%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------------------- pick-errors [204] 100.0% [214] 1314(0.1%) 0(0.0%) for-loop ...ision-steps/src/core/regimes.rkt:186:2 ??? [222] 100.0% ------------------------------------------------------------------------------- err-lsts->split-indices [206] 100.0% [215] 930(0.1%) 0(0.0%) add-splitpoint ...steps/src/core/regimes.rkt:235:2 for-loop [223] 100.0% ------------------------------------------------------------------------------- simplify-alt [50] 0.0% f45 [182] 0.0% for-loop [67] 1.5% get-sigs [116] 1.7% ??? [216] 6.8% ??? [210] 12.8% for-loop [224] 36.6% ??? [73] 40.2% [216] 829738(87.9%) 28766(3.0%) ??? ...llects/racket/private/norm-define.rkt:53:83 for-loop [224] 36.8% iterate-egraph!13 [3] 36.8% ??? [210] 11.3% ??? [216] 6.8% loop [9] 3.1% ??? [225] 2.1% ??? [227] 0.6% return/no-unsupplied [268] 0.3% mk-egraph [230] 0.3% ??? [236] 0.1% *simplify-rules* [237] 0.1% ??? [233] 0.0% ??? [138] 0.0% extract-smallest [240] 0.0% ??? [232] 0.0% dict? [266] 0.0% ------------------------------------------------------------------------------- for-loop [141] 0.1% for-loop [32] 0.2% for-loop [169] 0.2% for-loop [33] 0.2% ??? [126] 0.2% ??? [16] 0.3% update-leader! [86] 0.3% simplify* [194] 0.3% ??? [5] 0.5% first-nonzero-exp [46] 0.7% taylor-sqrt [135] 0.7% ??? [11] 0.8% ??? [229] 1.3% compile [81] 1.6% eval-prog [153] 1.7% loop [186] 2.1% for-loop [43] 3.4% for-loop [25] 6.6% loop [22] 6.7% for-loop [23] 7.9% ??? [210] 11.9% for-loop [24] 18.1% ??? [41] 33.8% [217] 128686(13.6%) 8390(0.9%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [6] 33.7% ??? [7] 18.1% ??? [5] 10.2% simplify [54] 10.0% ??? [11] 7.5% ??? [8] 6.6% ??? [229] 3.9% ??? [10] 3.4% bigfloat-hash [231] 1.7% f45 [182] 1.7% ??? [16] 0.5% ??? [12] 0.3% parse-loop380 [162] 0.3% ------------------------------------------------------------------------------- ??? [210] 7.6% loop [186] 15.3% ??? [156] 77.0% [218] 20048(2.1%) 466(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [226] 94.8% integer->bigfloat [239] 2.9% ------------------------------------------------------------------------------- for-loop [211] 100.0% [219] 16874(1.8%) 16874(1.8%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------------- ??? [212] 100.0% [220] 8546(0.9%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [228] 87.9% loop [244] 12.1% ------------------------------------------------------------------------------- ??? [210] 100.0% [221] 1720(0.2%) 0(0.0%) best-alt ...acts-precision-steps/src/glue.rkt:71:0 loop [234] 52.8% argmins [235] 47.2% ------------------------------------------------------------------------------- for-loop [214] 100.0% [222] 1314(0.1%) 0(0.0%) ??? ...-precision-steps/src/core/regimes.rkt:177:2 ??? [156] 100.0% ------------------------------------------------------------------------------- add-splitpoint [215] 100.0% [223] 930(0.1%) 296(0.0%) for-loop ...ision-steps/src/core/regimes.rkt:237:4 for-loop [238] 68.2% ------------------------------------------------------------------------------- ??? [216] 100.0% [224] 632616(67.0%) 356(0.0%) for-loop ...sion-steps/src/core/simplify.rkt:63:12 ??? [216] 99.8% ??? [210] 0.1% ??? [251] 0.1% ??? [250] 0.0% ------------------------------------------------------------------------------- hash-has-key? [129] 27.4% ??? [216] 72.6% [225] 70360(7.5%) 28448(3.0%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [241] 41.6% ??? [256] 14.1% ??? [138] 2.3% arrow-higher-order:lnp [270] 0.8% ??? [254] 0.3% ------------------------------------------------------------------------------- ??? [218] 100.0% [226] 19008(2.0%) 15470(1.6%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [245] 18.6% ------------------------------------------------------------------------------- ulp-difference [159] 2.1% debug7 [71] 2.4% for-loop [195] 2.5% ??? [164] 13.4% ??? [132] 36.1% ??? [216] 43.4% [227] 13330(1.4%) 1184(0.1%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [242] 72.0% ??? [254] 19.2% ------------------------------------------------------------------------------- generic-sort/key [220] 45.4% copying-mergesort [228] 54.6% [228] 7508(0.8%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [228] 54.6% loop [244] 35.2% jloop [15] 10.3% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [229] 7182(0.8%) 856(0.1%) ??? ...acts-precision-steps/src/programs.rkt:183:5 loop [186] 59.3% hash-ref! [217] 32.0% ------------------------------------------------------------------------------- ??? [216] 100.0% [230] 5084(0.5%) 0(0.0%) mk-egraph ...ision-steps/src/core/egraph.rkt:123:0 expr->enode [246] 87.3% mk-enode! [83] 12.7% ------------------------------------------------------------------------------- hash-ref! [217] 100.0% [231] 4620(0.5%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 sig+exp->bigfloat [248] 56.8% bfcanonicalize [249] 43.2% ------------------------------------------------------------------------------- for-loop [36] 6.4% ??? [216] 6.7% eval-prog [153] 18.6% bf< [170] 68.4% [232] 3492(0.4%) 2824(0.3%) ??? ...tract/private/arrow-higher-order.rkt:346:33 ??? [257] 12.4% pattern-substitute [253] 6.7% ------------------------------------------------------------------------------- ??? [216] 21.4% hash-has-key? [129] 78.6% [233] 2704(0.3%) 2704(0.3%) ??? ...ects/racket/contract/private/hash.rkt:245:7 ------------------------------------------------------------------------------- extract-alt [48] 27.0% best-alt [221] 73.0% [234] 1244(0.1%) 0(0.0%) loop ...xacts-precision-steps/src/common.rkt:151:2 composed [243] 100.0% ------------------------------------------------------------------------------- best-alt [221] 100.0% [235] 812(0.1%) 0(0.0%) argmins ...ts-precision-steps/src/common.rkt:150:0 composed [243] 100.0% ------------------------------------------------------------------------------- ??? [216] 100.0% [236] 660(0.1%) 364(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:60:15 ??? [245] 44.8% ------------------------------------------------------------------------------- ??? [216] 100.0% [237] 648(0.1%) 358(0.0%) *simplify-rules* ...eps/src/syntax/rules.rkt:516:0 for-loop [247] 44.8% ------------------------------------------------------------------------------- for-loop [223] 100.0% [238] 634(0.1%) 634(0.1%) for-loop ...ision-steps/src/core/regimes.rkt:241:8 ------------------------------------------------------------------------------- ??? [218] 100.0% [239] 574(0.1%) 574(0.1%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 ------------------------------------------------------------------------------- ??? [216] 100.0% [240] 244(0.0%) 0(0.0%) extract-smallest ...ps/src/core/simplify.rkt:191:0 hash-keys [252] 100.0% ------------------------------------------------------------------------------- ??? [225] 100.0% [241] 29304(3.1%) 14506(1.5%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [256] 30.9% for-loop [127] 16.0% ??? [258] 2.5% ??? [254] 1.1% ------------------------------------------------------------------------------- ??? [203] 12.5% ??? [227] 87.5% [242] 10962(1.2%) 10962(1.2%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ------------------------------------------------------------------------------- for-loop [45] 2.0% argmins [235] 8.4% loop [234] 12.9% f45 [182] 76.6% [243] 9624(1.0%) 1618(0.2%) composed ...ollects/racket/private/list.rkt:321:16 f45 [182] 61.8% errors [150] 21.4% ------------------------------------------------------------------------------- generic-sort/key [220] 13.8% ??? [212] 27.4% copying-mergesort [228] 58.8% [244] 7526(0.8%) 0(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [156] 100.0% ------------------------------------------------------------------------------- ??? [236] 4.4% bfneg [202] 16.5% bfdiv [201] 26.9% real->bigfloat [226] 52.2% [245] 6774(0.7%) 6774(0.7%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ------------------------------------------------------------------------------- expr->enode [246] 40.4% mk-egraph [230] 59.6% [246] 4440(0.5%) 0(0.0%) expr->enode ...ion-steps/src/core/egraph.rkt:124:2 mk-enode! [83] 59.6% expr->enode [246] 40.4% ------------------------------------------------------------------------------- *simplify-rules* [237] 6.9% merge-egraph-nodes! [76] 15.2% *rules* [102] 77.8% [247] 4178(0.4%) 1998(0.2%) for-loop ...ts-precision-steps/src/common.rkt:99:9 flag-set? [264] 28.0% ormap [260] 17.7% update-en-expr [255] 6.6% ------------------------------------------------------------------------------- bigfloat-hash [231] 100.0% [248] 2622(0.3%) 2622(0.3%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 ------------------------------------------------------------------------------- bigfloat-hash [231] 100.0% [249] 1998(0.2%) 1998(0.2%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 ------------------------------------------------------------------------------- for-loop [224] 16.3% eval-prog [153] 22.5% eval-const-expr [59] 61.2% [250] 1484(0.2%) 382(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack245 [259] 74.3% ------------------------------------------------------------------------------- for-loop [224] 33.0% loop [186] 67.0% [251] 1006(0.1%) 762(0.1%) ??? ...tract/private/arrow-higher-order.rkt:145:21 ??? [257] 24.3% ------------------------------------------------------------------------------- extract-smallest [240] 42.8% map-enodes [30] 57.2% [252] 570(0.1%) 326(0.0%) hash-keys .../collects/racket/private/hash.rkt:2:2 loop [261] 42.8% ------------------------------------------------------------------------------- for-loop [120] 10.6% ??? [232] 11.7% pattern-substitute [253] 77.7% [253] 500(0.1%) 234(0.0%) pattern-substitute ...ps/src/core/matcher.rkt:73:0 pattern-substitute [253] 77.7% ??? [121] 10.6% ------------------------------------------------------------------------------- ??? [225] 0.4% for-loop [241] 0.6% ??? [210] 1.5% ??? [147] 1.5% ??? [121] 2.7% ??? [227] 4.6% ??? [144] 88.2% [254] 55196(5.8%) 52124(5.5%) ??? ...ects/racket/contract/private/guts.rkt:644:8 dict? [266] 2.4% ??? [121] 2.0% ------------------------------------------------------------------------------- for-loop [247] 1.3% update-leader! [86] 4.3% for-loop [90] 11.7% for-loop [128] 38.8% loop! [191] 43.8% [255] 20396(2.2%) 20396(2.2%) update-en-expr ...-steps/src/core/egraph.rkt:211:0 ------------------------------------------------------------------------------- ??? [122] 1.5% for-loop [241] 47.1% ??? [225] 51.4% [256] 19262(2.0%) 9546(1.0%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [262] 50.4% ------------------------------------------------------------------------------- ??? [251] 6.5% ??? [232] 11.6% ??? [138] 22.2% ??? [160] 27.1% ??? [144] 32.6% [257] 3728(0.4%) 2080(0.2%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [265] 44.2% ------------------------------------------------------------------------------- ??? [122] 22.7% for-loop [241] 36.6% ??? [147] 40.7% [258] 1966(0.2%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [263] 100.0% ------------------------------------------------------------------------------- ??? [250] 100.0% [259] 1102(0.1%) 0(0.0%) unpack245 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [267] 78.0% ??? [138] 22.0% ------------------------------------------------------------------------------- for-loop [247] 100.0% [260] 738(0.1%) 0(0.0%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [264] 100.0% ------------------------------------------------------------------------------- hash-keys [252] 100.0% [261] 244(0.0%) 244(0.0%) loop ...acket/collects/racket/private/hash.rkt:3:4 ------------------------------------------------------------------------------- parse-loop380 [162] 6.1% ??? [256] 93.9% [262] 10350(1.1%) 10350(1.1%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ------------------------------------------------------------------------------- ??? [258] 100.0% [263] 1966(0.2%) 1246(0.1%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [271] 36.6% ------------------------------------------------------------------------------- ormap [260] 38.7% for-loop [247] 61.3% [264] 1906(0.2%) 1242(0.1%) flag-set? ...s-precision-steps/src/config.rkt:34:0 return/no-unsupplied [268] 34.8% ------------------------------------------------------------------------------- ??? [257] 100.0% [265] 1648(0.2%) 0(0.0%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [269] 100.0% ------------------------------------------------------------------------------- ??? [216] 13.1% ??? [254] 86.9% [266] 1552(0.2%) 1552(0.2%) dict? ...ollects/racket/private/generic.rkt:146:11 ------------------------------------------------------------------------------- unpack245 [259] 100.0% [267] 860(0.1%) 652(0.1%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 arrow-higher-order:lnp [270] 24.2% ------------------------------------------------------------------------------- ??? [164] 2.7% flag-set? [264] 8.1% simplify* [194] 10.2% ??? [132] 25.5% ??? [216] 53.6% [268] 8196(0.9%) 5008(0.5%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [272] 38.9% ------------------------------------------------------------------------------- ??? [265] 100.0% [269] 1648(0.2%) 1648(0.2%) ??? ...ects/racket/contract/private/list.rkt:141:5 ------------------------------------------------------------------------------- maybe-cons-kwd [267] 26.3% ??? [225] 73.7% [270] 792(0.1%) 434(0.0%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [273] 45.2% ------------------------------------------------------------------------------- check-hash/c [263] 100.0% [271] 720(0.1%) 720(0.1%) flat-contract? .../contract/private/guts.rkt:111:0 ------------------------------------------------------------------------------- match-e [65] 7.4% return/no-unsupplied [268] 92.6% [272] 3444(0.4%) 3444(0.4%) filter ...t/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------------- arrow-higher-order:lnp [270] 100.0% [273] 358(0.0%) 358(0.0%) ??? ...et/contract/private/arity-checking.rkt:19:2 -------------------------------------------------------------------------------