Profiling results ----------------- Total cpu time observed: 48786ms (out of 48868ms) Number of samples taken: 236 (once every 207ms) (Hiding functions with self<1.0% and local<2.0%: 5 of 214 hidden) ========================================================================= Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ========================================================================= [1] 48786(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [12] 100.0% ------------------------------------------------------------------------- ??? [165] 100.0% [2] 9040(18.5%) 0(0.0%) approximate9 ...stversion/src/core/taylor.rkt:12:0 loop [13] 93.3% for-loop [23] 6.7% ------------------------------------------------------------------------- ??? [165] 2.3% taylor-quotient [69] 2.3% taylor-invert [201] 4.5% hash-ref! [172] 90.9% [3] 8840(18.1%) 0(0.0%) simplify ...h-testversion/src/core/reduce.rkt:16:0 parse-loop80 [14] 51.4% f46 [20] 19.1% f67 [21] 14.5% debug-print [22] 6.9% simplify* [64] 3.6% f16 [26] 2.3% simplify-node [28] 2.2% ------------------------------------------------------------------------- hash-ref! [172] 100.0% [4] 4256(8.7%) 0(0.0%) ??? ...gmath-testversion/src/core/taylor.rkt:68:15 ??? [165] 68.6% hash-ref! [172] 31.4% ------------------------------------------------------------------------- hash-ref! [172] 100.0% [5] 3982(8.2%) 0(0.0%) ??? ...math-testversion/src/core/taylor.rkt:291:26 for-loop [15] 100.0% ------------------------------------------------------------------------- hash-ref! [172] 100.0% [6] 3710(7.6%) 0(0.0%) ??? ...math-testversion/src/core/taylor.rkt:301:23 for-loop [16] 100.0% ------------------------------------------------------------------------- matcher [109] 100.0% [7] 3262(6.7%) 0(0.0%) ??? ...ath-testversion/src/core/matcher.rkt:130:11 for-loop [17] 98.0% foldl [27] 2.0% ------------------------------------------------------------------------- hash-ref! [172] 100.0% [8] 2256(4.6%) 0(0.0%) ??? ...math-testversion/src/core/taylor.rkt:407:23 for-loop [19] 91.6% for-loop [31] 8.4% ------------------------------------------------------------------------- loop [150] 17.7% for-loop [171] 82.3% [9] 2234(4.6%) 0(0.0%) syntax-e (unknown source) syntax-e/no-taint [18] 100.0% ------------------------------------------------------------------------- for-loop [171] 100.0% [10] 714(1.5%) 0(0.0%) expand-implicit (unknown source) resolve+shift28 [158] 69.7% binding-lookup52 [25] 30.3% ------------------------------------------------------------------------- hash-ref! [172] 100.0% [11] 390(0.8%) 0(0.0%) ??? ...math-testversion/src/core/taylor.rkt:510:23 for-loop [24] 100.0% ------------------------------------------------------------------------- ??? [1] 100.0% [12] 48786(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [29] 100.0% ------------------------------------------------------------------------- approximate9 [2] 100.0% [13] 8434(17.3%) 0(0.0%) loop ...gmath-testversion/src/core/taylor.rkt:87:4 hash-ref! [172] 50.5% ??? [165] 49.5% ------------------------------------------------------------------------- parse-loop80 [14] 9.0% map [53] 20.3% simplify [3] 70.7% [14] 5836(12.0%) 0(0.0%) parse-loop80 (unknown source) eval-const-expr [30] 89.3% parse-loop80 [14] 9.0% f67 [21] 1.8% ------------------------------------------------------------------------- ??? [5] 100.0% [15] 3982(8.2%) 0(0.0%) for-loop ...testversion/src/core/taylor.rkt:291:52 hash-ref! [172] 77.7% ??? [43] 22.3% ------------------------------------------------------------------------- ??? [6] 100.0% [16] 3710(7.6%) 0(0.0%) for-loop ...testversion/src/core/taylor.rkt:304:27 hash-ref! [172] 100.0% ------------------------------------------------------------------------- ??? [7] 100.0% [17] 3262(6.7%) 0(0.0%) for-loop ...estversion/src/core/matcher.rkt:132:15 matcher [109] 100.0% ------------------------------------------------------------------------- expand-id-application-form17 [154] 15.2% syntax-e [9] 84.8% [18] 2634(5.4%) 0(0.0%) syntax-e/no-taint (unknown source) loop [150] 100.0% ------------------------------------------------------------------------- ??? [8] 100.0% [19] 2066(4.2%) 0(0.0%) for-loop ...testversion/src/core/taylor.rkt:411:33 for-loop [31] 90.3% hash-ref! [172] 9.7% ------------------------------------------------------------------------- map [53] 23.5% simplify [3] 76.5% [20] 1690(3.5%) 0(0.0%) f46 (unknown source) map [53] 100.0% ------------------------------------------------------------------------- parse-loop80 [14] 14.0% simplify [3] 86.0% [21] 1488(3.1%) 0(0.0%) f67 (unknown source) eval-const-expr [30] 86.4% composed [35] 13.6% ------------------------------------------------------------------------- simplify [3] 100.0% [22] 608(1.2%) 0(0.0%) debug-print ...ath-testversion/src/debug.rkt:110:0 ??? [33] 33.9% for-loop [34] 33.2% build-list [36] 32.9% ------------------------------------------------------------------------- approximate9 [2] 100.0% [23] 606(1.2%) 0(0.0%) for-loop ...-testversion/src/core/taylor.rkt:30:18 taylor [186] 100.0% ------------------------------------------------------------------------- ??? [11] 100.0% [24] 390(0.8%) 0(0.0%) for-loop ...testversion/src/core/taylor.rkt:514:35 parse-loop402 [32] 100.0% ------------------------------------------------------------------------- expand-implicit [10] 100.0% [25] 216(0.4%) 216(0.4%) binding-lookup52 (unknown source) ------------------------------------------------------------------------- simplify [3] 100.0% [26] 206(0.4%) 206(0.4%) f16 (unknown source) ------------------------------------------------------------------------- ??? [7] 100.0% [27] 200(0.4%) 0(0.0%) foldl ....5/collects/racket/private/list.rkt:229:4 ??? [125] 100.0% ------------------------------------------------------------------------- simplify [3] 100.0% [28] 196(0.4%) 0(0.0%) simplify-node ...tversion/src/core/reduce.rkt:48:0 append-map [87] 100.0% ------------------------------------------------------------------------- profile-thunk16 [12] 100.0% [29] 48786(100.0%) 0(0.0%) run ...et-7.5/share/pkgs/profile-lib/main.rkt:39:2 .../more-scheme.rkt:261:28 [37] 100.0% ------------------------------------------------------------------------- f67 [21] 18.6% parse-loop80 [14] 81.4% [30] 6914(14.2%) 206(0.4%) eval-const-expr ...tversion/src/programs.rkt:118:0 temp85_0 [119] 78.2% loop [150] 10.1% eval [38] 5.9% inductor [156] 2.9% ------------------------------------------------------------------------- ??? [8] 9.2% for-loop [19] 90.8% [31] 2056(4.2%) 0(0.0%) for-loop ...testversion/src/core/taylor.rkt:413:39 hash-ref! [172] 100.0% ------------------------------------------------------------------------- for-loop [24] 100.0% [32] 390(0.8%) 0(0.0%) parse-loop402 (unknown source) for-loop [39] 100.0% ------------------------------------------------------------------------- debug-print [22] 100.0% [33] 206(0.4%) 206(0.4%) ??? .../contract/private/arrow-val-first.rkt:555:3 ------------------------------------------------------------------------- debug-print [22] 100.0% [34] 202(0.4%) 202(0.4%) for-loop ...ggmath-testversion/src/debug.rkt:116:2 ------------------------------------------------------------------------- f67 [21] 100.0% [35] 202(0.4%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 free-variables [81] 100.0% ------------------------------------------------------------------------- debug-print [22] 100.0% [36] 200(0.4%) 200(0.4%) build-list ...llects/racket/private/list.rkt:296:2 ------------------------------------------------------------------------- for-loop [114] 3.7% run [29] 96.3% [37] 48786(100.0%) 0(0.0%) .../more-scheme.rkt:261:28 (unknown source) prepare-points-intervals [46] 45.2% run-improve47 [40] 41.2% get-final-combination [41] 4.5% oracle-error [42] 4.3% ??? [157] 3.7% errors [108] 0.4% eval-errors [66] 0.4% baseline-error [45] 0.4% ------------------------------------------------------------------------- eval-const-expr [30] 100.0% [38] 406(0.8%) 200(0.4%) eval (unknown source) namespace-syntax-introduce3 [44] 50.7% ------------------------------------------------------------------------- parse-loop402 [32] 100.0% [39] 390(0.8%) 0(0.0%) for-loop ...testversion/src/core/taylor.rkt:517:59 ??? [43] 51.3% hash-ref! [172] 48.7% ------------------------------------------------------------------------- .../more-scheme.rkt:261:28 [37] 100.0% [40] 21262(43.6%) 0(0.0%) run-improve47 ...estversion/src/mainloop.rkt:346:0 for-loop [47] 96.2% prepare-points-intervals [46] 2.9% simplify! [63] 0.9% ------------------------------------------------------------------------- .../more-scheme.rkt:261:28 [37] 100.0% [41] 2616(5.4%) 0(0.0%) get-final-combination ...on/src/mainloop.rkt:371:0 infer-splitpoints [48] 100.0% ------------------------------------------------------------------------- .../more-scheme.rkt:261:28 [37] 100.0% [42] 2078(4.3%) 0(0.0%) oracle-error ...h-testversion/src/points.rkt:188:0 for-loop [49] 100.0% ------------------------------------------------------------------------- for-loop [39] 11.6% ??? [180] 11.6% for-loop [15] 76.8% [43] 1724(3.5%) 0(0.0%) ??? ...math-testversion/src/core/taylor.rkt:294:19 hash-ref! [172] 100.0% ------------------------------------------------------------------------- eval [38] 100.0% [44] 206(0.4%) 0(0.0%) namespace-syntax-introduce3 (unknown source) for-loop [171] 100.0% ------------------------------------------------------------------------- .../more-scheme.rkt:261:28 [37] 100.0% [45] 200(0.4%) 0(0.0%) baseline-error ...testversion/src/points.rkt:192:0 loop [50] 100.0% ------------------------------------------------------------------------- run-improve47 [40] 2.7% .../more-scheme.rkt:261:28 [37] 97.3% [46] 22634(46.4%) 0(0.0%) prepare-points-intervals ...n/src/points.rkt:110:0 loop [51] 100.0% ------------------------------------------------------------------------- run-improve47 [40] 100.0% [47] 20456(41.9%) 0(0.0%) for-loop ...ath-testversion/src/mainloop.rkt:365:4 run-iter! [52] 100.0% ------------------------------------------------------------------------- get-final-combination [41] 100.0% [48] 2616(5.4%) 0(0.0%) infer-splitpoints ...ion/src/core/regimes.rkt:34:0 for-loop [54] 91.1% exprs-to-branch-on [55] 8.9% ------------------------------------------------------------------------- oracle-error [42] 100.0% [49] 2078(4.3%) 0(0.0%) for-loop ...gmath-testversion/src/points.rkt:189:2 loop [150] 69.2% map [53] 30.8% ------------------------------------------------------------------------- baseline-error [45] 100.0% [50] 200(0.4%) 0(0.0%) loop .../racket-7.5/collects/racket/list.rkt:751:4 ??? [56] 100.0% ------------------------------------------------------------------------- prepare-points-intervals [46] 100.0% [51] 22634(46.4%) 800(1.6%) loop ...e/eggmath-testversion/src/points.rkt:123:4 loop [57] 61.8% ??? [59] 33.8% andmap [70] 0.9% ------------------------------------------------------------------------- for-loop [47] 100.0% [52] 20456(41.9%) 0(0.0%) run-iter! ...th-testversion/src/mainloop.rkt:327:0 gen-series! [58] 45.2% finalize-iter! [60] 30.5% gen-rewrites! [61] 15.9% simplify! [63] 5.4% localize! [67] 2.0% choose-best-alt! [68] 1.0% ------------------------------------------------------------------------- parse-loop30 [192] 11.3% for-loop [49] 18.1% taylor [186] 22.8% f46 [20] 47.8% [53] 3536(7.2%) 0(0.0%) map ...t-7.5/collects/racket/private/map.rkt:35:13 parse-loop80 [14] 29.5% loop [65] 11.3% hash-ref! [172] 11.3% taylor [186] 11.3% f46 [20] 11.2% simplify* [64] 7.1% ??? [152] 6.8% taylor-quotient [69] 5.8% taylor-invert [201] 5.7% ------------------------------------------------------------------------- infer-splitpoints [48] 100.0% [54] 2382(4.9%) 0(0.0%) for-loop ...-testversion/src/core/regimes.rkt:47:6 option-on-expr [62] 100.0% ------------------------------------------------------------------------- infer-splitpoints [48] 100.0% [55] 234(0.5%) 0(0.0%) exprs-to-branch-on ...on/src/core/regimes.rkt:59:0 loop [150] 100.0% ------------------------------------------------------------------------- loop [50] 100.0% [56] 200(0.4%) 0(0.0%) ??? ...e/eggmath-testversion/src/points.rkt:193:27 eval-errors [66] 100.0% ------------------------------------------------------------------------- loop [51] 100.0% [57] 13978(28.7%) 600(1.2%) loop ...ie/eggmath-testversion/src/points.rkt:81:2 ??? [157] 95.7% ------------------------------------------------------------------------- run-iter! [52] 100.0% [58] 9240(18.9%) 0(0.0%) gen-series! ...-testversion/src/mainloop.rkt:160:0 for-loop [71] 100.0% ------------------------------------------------------------------------- loop [51] 100.0% [59] 7656(15.7%) 600(1.2%) ??? ...ie/eggmath-testversion/src/points.rkt:106:2 ??? [165] 55.4% loop [150] 36.7% ------------------------------------------------------------------------- run-iter! [52] 100.0% [60] 6244(12.8%) 0(0.0%) finalize-iter! ...stversion/src/mainloop.rkt:278:0 ??? [72] 100.0% ------------------------------------------------------------------------- run-iter! [52] 100.0% [61] 3262(6.7%) 0(0.0%) gen-rewrites! ...estversion/src/mainloop.rkt:183:0 for-loop [73] 100.0% ------------------------------------------------------------------------- for-loop [54] 100.0% [62] 2382(4.9%) 0(0.0%) option-on-expr ...rsion/src/core/regimes.rkt:126:0 for-loop [74] 62.7% err-lsts->split-indices [76] 27.2% sort-context-on-expr [79] 10.1% ------------------------------------------------------------------------- run-improve47 [40] 15.4% run-iter! [52] 84.6% [63] 1302(2.7%) 0(0.0%) simplify! ...th-testversion/src/mainloop.rkt:224:0 ??? [75] 100.0% ------------------------------------------------------------------------- simplify [3] 44.0% map [53] 56.0% [64] 714(1.5%) 200(0.4%) simplify* ...-testversion/src/core/reduce.rkt:31:0 hash-ref! [172] 44.0% constant? [118] 28.0% ------------------------------------------------------------------------- append-map [87] 11.2% loop [65] 22.4% map [53] 66.4% [65] 602(1.2%) 0(0.0%) loop ...-7.5/collects/racket/private/map.rkt:40:19 ??? [152] 66.4% loop [65] 22.4% free-variables [81] 11.2% ------------------------------------------------------------------------- ??? [56] 50.0% .../more-scheme.rkt:261:28 [37] 50.0% [66] 400(0.8%) 0(0.0%) eval-errors ...th-testversion/src/points.rkt:179:0 for-loop [77] 100.0% ------------------------------------------------------------------------- run-iter! [52] 100.0% [67] 400(0.8%) 0(0.0%) localize! ...th-testversion/src/mainloop.rkt:127:0 localize-error [78] 100.0% ------------------------------------------------------------------------- run-iter! [52] 100.0% [68] 208(0.4%) 0(0.0%) choose-best-alt! ...version/src/mainloop.rkt:117:0 ...ow-val-first.rkt:486:18 [80] 100.0% ------------------------------------------------------------------------- map [53] 100.0% [69] 206(0.4%) 0(0.0%) taylor-quotient ...rsion/src/core/taylor.rkt:334:0 simplify [3] 100.0% ------------------------------------------------------------------------- loop [51] 100.0% [70] 200(0.4%) 0(0.0%) andmap ...5/collects/racket/private/map.rkt:102:13 ordinary-value? [161] 100.0% ------------------------------------------------------------------------- gen-series! [58] 100.0% [71] 9240(18.9%) 0(0.0%) for-loop ...ath-testversion/src/mainloop.rkt:167:7 taylor-alt [82] 100.0% ------------------------------------------------------------------------- finalize-iter! [60] 100.0% [72] 6244(12.8%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:486:18 for-loop [83] 100.0% ------------------------------------------------------------------------- gen-rewrites! [61] 100.0% [73] 3262(6.7%) 0(0.0%) for-loop ...th-testversion/src/mainloop.rkt:191:11 rewrite-expression-head20 [84] 100.0% ------------------------------------------------------------------------- option-on-expr [62] 100.0% [74] 1494(3.1%) 0(0.0%) for-loop ...testversion/src/core/regimes.rkt:136:4 errors [108] 100.0% ------------------------------------------------------------------------- simplify! [63] 100.0% [75] 1302(2.7%) 0(0.0%) ??? ...math-testversion/src/core/simplify.rkt:60:0 egraph-run [85] 100.0% ------------------------------------------------------------------------- option-on-expr [62] 100.0% [76] 648(1.3%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:262:0 loop [86] 100.0% ------------------------------------------------------------------------- eval-errors [66] 100.0% [77] 400(0.8%) 0(0.0%) for-loop ...gmath-testversion/src/points.rkt:181:2 ??? [157] 100.0% ------------------------------------------------------------------------- localize! [67] 100.0% [78] 400(0.8%) 0(0.0%) localize-error ...rsion/src/core/localize.rkt:66:0 hash-ref! [172] 100.0% ------------------------------------------------------------------------- option-on-expr [62] 100.0% [79] 240(0.5%) 0(0.0%) sort-context-on-expr ...src/core/regimes.rkt:119:0 ??? [88] 100.0% ------------------------------------------------------------------------- choose-best-alt! [68] 100.0% [80] 208(0.4%) 0(0.0%) ...ow-val-first.rkt:486:18 (unknown source) ??? [89] 100.0% ------------------------------------------------------------------------- append-map [87] 33.3% loop [65] 33.3% composed [35] 33.3% [81] 202(0.4%) 0(0.0%) free-variables ...estversion/src/programs.rkt:57:0 append-map [87] 66.7% constant? [118] 33.3% ------------------------------------------------------------------------- for-loop [71] 100.0% [82] 9240(18.9%) 0(0.0%) taylor-alt ...h-testversion/src/mainloop.rkt:146:0 for-loop [90] 100.0% ------------------------------------------------------------------------- ??? [72] 100.0% [83] 6244(12.8%) 0(0.0%) for-loop ...estversion/src/core/alt-table.rkt:55:2 atab-add-altn [91] 66.5% errors [108] 26.4% override-at-pnts [104] 3.8% loop [97] 3.2% ------------------------------------------------------------------------- for-loop [73] 100.0% [84] 3262(6.7%) 0(0.0%) rewrite-expression-head20 ...core/matcher.rkt:87:0 rewriter [92] 100.0% ------------------------------------------------------------------------- ??? [75] 100.0% [85] 1302(2.7%) 0(0.0%) egraph-run ...estversion/src/core/eggmath.rkt:51:0 egraph-add-exprs [93] 100.0% ------------------------------------------------------------------------- err-lsts->split-indices [76] 100.0% [86] 648(1.3%) 0(0.0%) loop ...ath-testversion/src/core/regimes.rkt:313:4 for-loop [94] 100.0% ------------------------------------------------------------------------- parse-loop130 [98] 16.9% free-variables [81] 33.8% simplify-node [28] 49.2% [87] 398(0.8%) 0(0.0%) append-map ...t-7.5/collects/racket/list.rkt:586:2 parse-loop374 [99] 49.2% parse-loop130 [98] 16.9% loop [65] 16.9% free-variables [81] 16.9% ------------------------------------------------------------------------- sort-context-on-expr [79] 100.0% [88] 240(0.5%) 0(0.0%) ??? ...-7.5/collects/racket/private/sort.rkt:369:3 generic-sort/key [95] 100.0% ------------------------------------------------------------------------- ...ow-val-first.rkt:486:18 [80] 100.0% [89] 208(0.4%) 0(0.0%) ??? ...ath-testversion/src/core/alt-table.rkt:58:0 argmin [96] 100.0% ------------------------------------------------------------------------- taylor-alt [82] 100.0% [90] 9240(18.9%) 0(0.0%) for-loop ...ath-testversion/src/mainloop.rkt:152:6 ??? [165] 100.0% ------------------------------------------------------------------------- for-loop [83] 100.0% [91] 4152(8.5%) 0(0.0%) atab-add-altn ...sion/src/core/alt-table.rkt:203:0 errors [108] 94.8% override-at-pnts [104] 5.2% ------------------------------------------------------------------------- rewrite-expression-head20 [84] 30.9% matcher [109] 69.1% [92] 3262(6.7%) 0(0.0%) rewriter ...-testversion/src/core/matcher.rkt:90:2 for-loop [100] 84.9% *rules* [101] 15.1% ------------------------------------------------------------------------- egraph-run [85] 100.0% [93] 1302(2.7%) 0(0.0%) egraph-add-exprs ...ion/src/core/eggmath.rkt:111:0 ??? [102] 100.0% ------------------------------------------------------------------------- loop [86] 100.0% [94] 648(1.3%) 0(0.0%) for-loop ...testversion/src/core/regimes.rkt:278:4 for-loop [103] 100.0% ------------------------------------------------------------------------- ??? [88] 100.0% [95] 240(0.5%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:156:2 copying-mergesort [105] 100.0% ------------------------------------------------------------------------- ??? [89] 100.0% [96] 208(0.4%) 0(0.0%) argmin ...acket-7.5/collects/racket/list.rkt:765:0 ??? [106] 100.0% ------------------------------------------------------------------------- for-loop [83] 100.0% [97] 202(0.4%) 0(0.0%) loop ...h-testversion/src/core/alt-table.rkt:177:2 loop [107] 100.0% ------------------------------------------------------------------------- append-map [87] 100.0% [98] 202(0.4%) 0(0.0%) parse-loop130 (unknown source) append-map [87] 100.0% ------------------------------------------------------------------------- append-map [87] 100.0% [99] 196(0.4%) 196(0.4%) parse-loop374 (unknown source) ------------------------------------------------------------------------- rewriter [92] 100.0% [100] 3262(6.7%) 0(0.0%) for-loop ...-testversion/src/core/matcher.rkt:92:4 matcher [109] 87.3% for-loop [110] 12.7% ------------------------------------------------------------------------- rewriter [92] 100.0% [101] 1412(2.9%) 0(0.0%) *rules* ...-testversion/src/syntax/rules.rkt:666:0 for-loop [171] 100.0% ------------------------------------------------------------------------- egraph-add-exprs [93] 100.0% [102] 1302(2.7%) 0(0.0%) ??? ...math-testversion/src/core/simplify.rkt:73:8 egg-run-rules [111] 100.0% ------------------------------------------------------------------------- for-loop [94] 100.0% [103] 648(1.3%) 648(1.3%) for-loop ...testversion/src/core/regimes.rkt:282:8 ------------------------------------------------------------------------- atab-add-altn [91] 47.4% for-loop [83] 52.6% [104] 456(0.9%) 0(0.0%) override-at-pnts ...n/src/core/alt-table.rkt:138:0 for-loop [112] 100.0% ------------------------------------------------------------------------- generic-sort/key [95] 100.0% [105] 240(0.5%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:129:8 loop [113] 100.0% ------------------------------------------------------------------------- argmin [96] 100.0% [106] 208(0.4%) 0(0.0%) ??? ...eggmath-testversion/src/mainloop.rkt:114:10 errors [108] 100.0% ------------------------------------------------------------------------- loop [97] 100.0% [107] 202(0.4%) 202(0.4%) loop ...h-testversion/src/core/alt-table.rkt:101:2 ------------------------------------------------------------------------- ??? [106] 2.7% .../more-scheme.rkt:261:28 [37] 5.2% for-loop [74] 19.4% for-loop [83] 21.5% atab-add-altn [91] 51.2% [108] 7690(15.8%) 0(0.0%) errors ...eggmath-testversion/src/points.rkt:201:0 for-loop [114] 51.5% eval-prog [115] 48.5% ------------------------------------------------------------------------- for-loop [17] 49.1% for-loop [100] 50.9% [109] 3262(6.7%) 0(0.0%) matcher ...-testversion/src/core/matcher.rkt:118:2 ??? [7] 50.3% rewriter [92] 49.1% constant? [118] 0.6% ------------------------------------------------------------------------- for-loop [100] 100.0% [110] 1450(3.0%) 0(0.0%) for-loop ...-testversion/src/core/matcher.rkt:99:8 fix-up-variables [116] 100.0% ------------------------------------------------------------------------- ??? [102] 100.0% [111] 1302(2.7%) 0(0.0%) egg-run-rules ...ersion/src/core/simplify.rkt:80:0 for-loop [117] 100.0% ------------------------------------------------------------------------- override-at-pnts [104] 100.0% [112] 456(0.9%) 456(0.9%) for-loop ...tversion/src/core/alt-table.rkt:139:22 ------------------------------------------------------------------------- copying-mergesort [105] 100.0% [113] 240(0.5%) 0(0.0%) loop ...7.5/collects/racket/private/sort.rkt:96:12 ??? [157] 100.0% ------------------------------------------------------------------------- errors [108] 100.0% [114] 3962(8.1%) 400(0.8%) for-loop ...gmath-testversion/src/points.rkt:203:2 .../more-scheme.rkt:261:28 [37] 89.9% ------------------------------------------------------------------------- errors [108] 100.0% [115] 3728(7.6%) 0(0.0%) eval-prog ...ath-testversion/src/programs.rkt:83:0 temp85_0 [119] 93.6% hash-ref! [172] 6.4% ------------------------------------------------------------------------- for-loop [110] 100.0% [116] 1450(3.0%) 0(0.0%) fix-up-variables ...ion/src/core/matcher.rkt:111:2 pattern-match [120] 72.1% for-loop [121] 27.9% ------------------------------------------------------------------------- egg-run-rules [111] 100.0% [117] 1302(2.7%) 1302(2.7%) for-loop ...testversion/src/core/simplify.rkt:85:2 ------------------------------------------------------------------------- matcher [109] 33.2% simplify* [64] 33.2% free-variables [81] 33.6% [118] 602(1.2%) 200(0.4%) constant? ...stversion/src/syntax/syntax.rkt:726:0 value? [122] 66.8% ------------------------------------------------------------------------- eval-prog [115] 39.2% eval-const-expr [30] 60.8% [119] 8894(18.2%) 0(0.0%) temp85_0 (unknown source) compile15 [123] 100.0% ------------------------------------------------------------------------- fix-up-variables [116] 100.0% [120] 1046(2.1%) 0(0.0%) pattern-match ...version/src/core/matcher.rkt:30:0 for-loop [124] 80.3% ??? [125] 19.7% ------------------------------------------------------------------------- fix-up-variables [116] 100.0% [121] 404(0.8%) 0(0.0%) for-loop ...-testversion/src/core/matcher.rkt:42:9 for-loop [124] 100.0% ------------------------------------------------------------------------- constant? [118] 100.0% [122] 402(0.8%) 402(0.8%) value? ...th-testversion/src/syntax/types.rkt:18:0 ------------------------------------------------------------------------- temp85_0 [119] 100.0% [123] 8894(18.2%) 0(0.0%) compile15 (unknown source) temp91_0 [126] 100.0% ------------------------------------------------------------------------- for-loop [121] 32.5% pattern-match [120] 67.5% [124] 1244(2.5%) 200(0.4%) for-loop ...-testversion/src/core/matcher.rkt:27:9 core457 [127] 49.7% ??? [189] 18.0% fallback-update [128] 16.2% ------------------------------------------------------------------------- foldl [27] 49.3% pattern-match [120] 50.7% [125] 406(0.8%) 206(0.4%) ??? ...gmath-testversion/src/core/matcher.rkt:26:7 core457 [127] 49.3% ------------------------------------------------------------------------- compile15 [123] 100.0% [126] 8894(18.2%) 0(0.0%) temp91_0 (unknown source) temp118_0 [129] 90.6% compile-top9 [130] 9.4% ------------------------------------------------------------------------- ??? [125] 24.4% for-loop [124] 75.6% [127] 818(1.7%) 202(0.4%) core457 ...acket/contract/private/arr-i.rkt:976:19 un-dep/maybe-chaperone [131] 26.4% or/c [133] 24.4% ??? [132] 24.4% ------------------------------------------------------------------------- for-loop [124] 100.0% [128] 202(0.4%) 202(0.4%) fallback-update ...s/racket/private/dict.rkt:115:2 ------------------------------------------------------------------------- temp91_0 [126] 100.0% [129] 8054(16.5%) 0(0.0%) temp118_0 (unknown source) expand-capturing-lifts [134] 100.0% ------------------------------------------------------------------------- temp91_0 [126] 100.0% [130] 840(1.7%) 0(0.0%) compile-top9 (unknown source) compile-forms33 [135] 100.0% ------------------------------------------------------------------------- core457 [127] 100.0% [131] 216(0.4%) 216(0.4%) un-dep/maybe-chaperone ...private/arr-i.rkt:1137:2 ------------------------------------------------------------------------- core457 [127] 100.0% [132] 200(0.4%) 200(0.4%) ??? ...llects/racket/contract/private/orc.rkt:90:4 ------------------------------------------------------------------------- core457 [127] 100.0% [133] 200(0.4%) 0(0.0%) or/c ...lects/racket/contract/private/orc.rkt:16:2 build-compound-type-name [136] 100.0% ------------------------------------------------------------------------- loop [150] 8.0% temp118_0 [129] 92.0% [134] 8752(17.9%) 0(0.0%) expand-capturing-lifts (unknown source) lambda-clause-expander [137] 87.5% dispatch-transformer41 [138] 7.0% loop [150] 3.3% expand-id-application-form17 [154] 2.3% ------------------------------------------------------------------------- compile-top9 [130] 100.0% [135] 840(1.7%) 0(0.0%) compile-forms33 (unknown source) for-loop [171] 75.5% loop! [139] 24.5% ------------------------------------------------------------------------- or/c [133] 100.0% [136] 200(0.4%) 200(0.4%) build-compound-type-name ...private/guts.rkt:537:0 ------------------------------------------------------------------------- expand-capturing-lifts [134] 100.0% [137] 7654(15.7%) 0(0.0%) lambda-clause-expander (unknown source) finish-bodys [140] 81.7% loop [150] 18.3% ------------------------------------------------------------------------- expand-capturing-lifts [134] 21.5% for-loop [171] 28.9% loop [150] 49.6% [138] 2832(5.8%) 0(0.0%) dispatch-transformer41 (unknown source) apply-transformer52 [141] 100.0% ------------------------------------------------------------------------- compile-forms33 [135] 100.0% [139] 206(0.4%) 0(0.0%) loop! (unknown source) for-loop [171] 100.0% ------------------------------------------------------------------------- lambda-clause-expander [137] 17.0% for-loop [171] 83.0% [140] 6250(12.8%) 0(0.0%) finish-bodys (unknown source) for-loop [171] 100.0% ------------------------------------------------------------------------- dispatch-transformer41 [138] 100.0% [141] 2832(5.8%) 0(0.0%) apply-transformer52 (unknown source) loop [150] 50.6% apply-transformer-in-context [142] 49.4% ------------------------------------------------------------------------- apply-transformer52 [141] 100.0% [142] 1398(2.9%) 0(0.0%) apply-transformer-in-context (unknown source) go [143] 42.8% datum->syntax6 [148] 29.3% parse-lambda [144] 14.3% ??? [145] 13.6% ------------------------------------------------------------------------- apply-transformer-in-context [142]100.0% [143] 598(1.2%) 0(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [146] 100.0% ------------------------------------------------------------------------- apply-transformer-in-context [142]100.0% [144] 200(0.4%) 0(0.0%) parse-lambda ...llects/racket/private/kw.rkt:619:2 datum->syntax6 [148] 100.0% ------------------------------------------------------------------------- apply-transformer-in-context [142]100.0% [145] 190(0.4%) 0(0.0%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [147] 100.0% ------------------------------------------------------------------------- loop [146] 48.3% go [143] 51.7% [146] 598(1.2%) 0(0.0%) loop ...llects/racket/private/qq-and-or.rkt:101:61 datum->syntax6 [148] 51.7% loop [146] 48.3% ------------------------------------------------------------------------- ??? [145] 100.0% [147] 190(0.4%) 0(0.0%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 syntax->list [149] 100.0% ------------------------------------------------------------------------- parse-lambda [144] 16.6% apply-transformer-in-context [142] 33.9% loop [146] 49.5% [148] 1208(2.5%) 592(1.2%) datum->syntax6 (unknown source) loop [150] 51.0% ------------------------------------------------------------------------- ??? [147] 100.0% [149] 190(0.4%) 0(0.0%) syntax->list (unknown source) loop [150] 100.0% ------------------------------------------------------------------------- syntax->list [149] 0.5% datum->syntax6 [148] 1.0% expand-capturing-lifts [134] 1.2% inductor [156] 1.3% taylor [186] 1.6% exprs-to-branch-on [55] 1.9% ??? [193] 1.9% eval-const-expr [30] 2.8% lambda-clause-expander [137] 5.2% for-loop [171] 5.9% for-loop [49] 6.4% apply-transformer52 [141] 8.8% ??? [157] 10.5% loop [150] 10.6% syntax-e/no-taint [18] 17.6% ??? [59] 22.8% [150] 12346(25.3%) 1700(3.5%) loop (unknown source) ??? [165] 31.3% gf [151] 17.6% loop [150] 10.6% core-form-sym [153] 6.7% ??? [152] 6.4% expand-id-application-form17 [154] 5.9% dispatch-transformer41 [138] 5.2% expand-capturing-lifts [134] 2.8% hash-ref! [172] 1.9% all-critical-subexpressions [155] 1.9% inductor [156] 1.3% syntax-e [9] 1.1% ------------------------------------------------------------------------- loop [150] 100.0% [151] 2634(5.4%) 200(0.4%) gf (unknown source) propagation-apply [159] 47.3% propagation-merge [160] 29.9% propagation-apply-shifted [162] 15.2% ------------------------------------------------------------------------- map [53] 11.5% loop [65] 19.2% loop [150] 69.2% [152] 2078(4.3%) 0(0.0%) ??? ...e/eggmath-testversion/src/points.rkt:190:26 ??? [157] 90.3% ordinary-value? [161] 9.7% ------------------------------------------------------------------------- loop [150] 100.0% [153] 1032(2.1%) 0(0.0%) core-form-sym (unknown source) resolve+shift28 [158] 100.0% ------------------------------------------------------------------------- expand-capturing-lifts [134] 19.5% loop [150] 80.5% [154] 1024(2.1%) 0(0.0%) expand-id-application-form17 (unknown source) resolve+shift28 [158] 60.9% syntax-e/no-taint [18] 39.1% ------------------------------------------------------------------------- loop [150] 100.0% [155] 234(0.5%) 0(0.0%) all-critical-subexpressions ...re/regimes.rkt:76:0 for-loop [163] 100.0% ------------------------------------------------------------------------- eval-const-expr [30] 20.0% loop [150] 80.0% [156] 200(0.4%) 0(0.0%) inductor ...ath-testversion/src/programs.rkt:104:4 loop [150] 80.0% table-ref [164] 20.0% ------------------------------------------------------------------------- loop [113] 1.2% for-loop [77] 2.1% ??? [152] 9.6% .../more-scheme.rkt:261:28 [37] 18.3% loop [57] 68.8% [157] 19456(39.9%) 864(1.8%) ??? .../eggmath-testversion/src/programs.rkt:115:2 ??? [166] 47.9% ??? [167] 22.4% ??? [165] 16.7% loop [150] 7.4% ------------------------------------------------------------------------- expand-implicit [10] 23.1% expand-id-application-form17 [154] 29.0% core-form-sym [153] 47.9% [158] 2154(4.4%) 224(0.5%) resolve+shift28 (unknown source) fallback-loop [168] 89.6% ------------------------------------------------------------------------- gf [151] 100.0% [159] 1246(2.6%) 1246(2.6%) propagation-apply (unknown source) ------------------------------------------------------------------------- gf [151] 100.0% [160] 788(1.6%) 788(1.6%) propagation-merge (unknown source) ------------------------------------------------------------------------- andmap [70] 49.8% ??? [152] 50.2% [161] 402(0.8%) 200(0.4%) ordinary-value? ...-testversion/src/float.rkt:52:0 list-member? [169] 50.2% ------------------------------------------------------------------------- gf [151] 100.0% [162] 400(0.8%) 400(0.8%) propagation-apply-shifted (unknown source) ------------------------------------------------------------------------- all-critical-subexpressions [155] 100.0% [163] 234(0.5%) 0(0.0%) for-loop ...-testversion/src/core/regimes.rkt:83:2 ??? [166] 100.0% ------------------------------------------------------------------------- inductor [156] 100.0% [164] 200(0.4%) 200(0.4%) table-ref ...gmath-testversion/src/common.rkt:33:0 ------------------------------------------------------------------------- loop [13] 6.7% ??? [4] 6.8% location-do [170] 15.5% for-loop [90] 15.5% ??? [157] 15.6% loop [150] 19.5% ??? [59] 20.4% [165] 20788(42.6%) 2054(4.2%) ??? ...tract/private/arrow-higher-order.rkt:375:33 sample-multi-bounded [173] 27.2% location-do [170] 15.5% approximate9 [2] 15.0% hash-ref! [172] 13.5% ival-mult [175] 10.7% mk-ival [177] 7.9% simplify [3] 0.5% ------------------------------------------------------------------------- for-loop [163] 2.4% ??? [157] 97.6% [166] 9560(19.6%) 2640(5.4%) ??? ...tract/private/arrow-higher-order.rkt:379:33 ival-log [174] 40.2% ival-add [176] 19.2% ival-sub [178] 10.5% f215 [179] 2.4% ------------------------------------------------------------------------- ??? [157] 100.0% [167] 4350(8.9%) 2922(6.0%) ??? ...th-testversion/src/syntax/syntax.rkt:214:17 return/no-unsupplied [184] 28.1% ??? [189] 4.7% ------------------------------------------------------------------------- resolve+shift28 [158] 100.0% [168] 1930(4.0%) 698(1.4%) fallback-loop (unknown source) for-loop [171] 63.8% ------------------------------------------------------------------------- ordinary-value? [161] 100.0% [169] 202(0.4%) 202(0.4%) list-member? ...llects/racket/private/set.rkt:24:0 ------------------------------------------------------------------------- location-do [170] 47.7% ??? [165] 52.3% [170] 9240(18.9%) 0(0.0%) location-do ...h-testversion/src/programs.rkt:64:0 ??? [165] 52.3% location-do [170] 47.7% ------------------------------------------------------------------------- compile-let13 [203] 1.1% loop! [139] 1.1% namespace-syntax-introduce3 [44] 2.3% fallback-loop [168] 5.3% for-loop [171] 5.3% compile-forms33 [135] 7.0% *rules* [101] 15.5% finish-bodys [140] 62.5% [171] 9118(18.7%) 3278(6.7%) for-loop (unknown source) finish-bodys [140] 51.9% compile-module-linklet57 [187] 7.0% ormap [190] 6.6% for-loop [171] 5.3% syntax-e [9] 2.1% loop [150] 1.2% compile5 [194] 1.1% dispatch-transformer41 [138] 1.1% expand-implicit [10] 0.7% dispatch-variable [188] 0.3% ------------------------------------------------------------------------- simplify* [64] 0.4% for-loop [39] 0.4% eval-prog [115] 0.5% for-loop [19] 0.6% localize-error [78] 0.7% loop [150] 2.1% ??? [43] 3.0% map [53] 3.7% for-loop [31] 5.5% ??? [4] 6.4% for-loop [16] 10.4% for-loop [15] 10.5% loop [13] 10.6% ??? [180] 21.3% ??? [165] 23.9% [172] 9072(18.6%) 552(1.1%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [180] 21.7% simplify [3] 21.7% ??? [4] 17.0% ??? [5] 12.8% ??? [6] 10.4% ??? [8] 6.1% parse-loop30 [192] 4.2% taylor [186] 2.2% ??? [193] 2.1% ??? [11] 0.6% ------------------------------------------------------------------------- ??? [165] 100.0% [173] 5644(11.6%) 1418(2.9%) sample-multi-bounded ...ersion/src/points.rkt:15:0 random-ranges [181] 60.7% for-loop [191] 7.1% return/no-unsupplied [184] 3.5% ??? [189] 3.5% ------------------------------------------------------------------------- ??? [166] 100.0% [174] 3844(7.9%) 2638(5.4%) ival-log ...-testversion/src/biginterval.rkt:201:0 bflog [185] 31.4% ------------------------------------------------------------------------- ??? [165] 100.0% [175] 2214(4.5%) 1612(3.3%) ival-mult ...testversion/src/biginterval.rkt:119:0 bfadd [182] 27.2% ------------------------------------------------------------------------- ??? [166] 100.0% [176] 1838(3.8%) 602(1.2%) ival-add ...-testversion/src/biginterval.rkt:101:0 bfadd [182] 67.2% ------------------------------------------------------------------------- ??? [165] 100.0% [177] 1636(3.4%) 0(0.0%) mk-ival ...th-testversion/src/biginterval.rkt:65:0 bf [183] 100.0% ------------------------------------------------------------------------- ??? [166] 100.0% [178] 1004(2.1%) 202(0.4%) ival-sub ...-testversion/src/biginterval.rkt:107:0 bfadd [182] 79.9% ------------------------------------------------------------------------- ??? [166] 33.3% f215 [179] 66.7% [179] 234(0.5%) 234(0.5%) f215 (unknown source) f215 [179] 66.7% ------------------------------------------------------------------------- hash-ref! [172] 100.0% [180] 8034(16.5%) 0(0.0%) ??? ...gmath-testversion/src/core/taylor.rkt:45:15 hash-ref! [172] 97.5% ??? [43] 2.5% ------------------------------------------------------------------------- sample-multi-bounded [173] 100.0% [181] 3426(7.0%) 804(1.6%) random-ranges ...-testversion/src/common.rkt:171:0 build--> [196] 41.4% cons/c [197] 35.1% ------------------------------------------------------------------------- ival-mult [175] 22.8% ival-sub [178] 30.4% ival-add [176] 46.8% [182] 2640(5.4%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:835:4 ??? [207] 53.4% new-mpfr [195] 46.6% ------------------------------------------------------------------------- mk-ival [177] 100.0% [183] 1636(3.4%) 206(0.4%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:615:2 new-mpfr [195] 75.2% ??? [207] 12.2% ------------------------------------------------------------------------- sample-multi-bounded [173] 14.1% ??? [167] 85.9% [184] 1422(2.9%) 822(1.7%) return/no-unsupplied ...ct/private/arr-i.rkt:566:0 filter [199] 42.2% ------------------------------------------------------------------------- ival-log [174] 100.0% [185] 1206(2.5%) 0(0.0%) bflog ...-lib/math/private/bigfloat/mpfr.rkt:632:4 new-mpfr [195] 83.3% ??? [207] 16.7% ------------------------------------------------------------------------- map [53] 12.9% hash-ref! [172] 24.9% taylor [186] 28.1% for-loop [23] 34.1% [186] 1006(2.1%) 200(0.4%) taylor ...th-testversion/src/core/taylor.rkt:170:0 map [53] 43.0% taylor [186] 28.1% taylor-invert [201] 19.9% loop [150] 4.0% ------------------------------------------------------------------------- for-loop [171] 100.0% [187] 634(1.3%) 634(1.3%) compile-module-linklet57 (unknown source) ------------------------------------------------------------------------- for-loop [171] 100.0% [188] 632(1.3%) 0(0.0%) dispatch-variable (unknown source) substitute-variable6 [198] 100.0% ------------------------------------------------------------------------- sample-multi-bounded [173] 31.7% ??? [167] 32.7% for-loop [124] 35.6% [189] 630(1.3%) 406(0.8%) ??? ...ects/racket/contract/private/guts.rkt:770:8 dict? [202] 35.6% ------------------------------------------------------------------------- for-loop [171] 100.0% [190] 600(1.2%) 0(0.0%) ormap ....5/collects/racket/private/map.rkt:141:13 flag-set? [200] 100.0% ------------------------------------------------------------------------- sample-multi-bounded [173] 100.0% [191] 400(0.8%) 400(0.8%) for-loop ...ggmath-testversion/src/points.rkt:23:4 ------------------------------------------------------------------------- hash-ref! [172] 100.0% [192] 400(0.8%) 0(0.0%) parse-loop30 (unknown source) map [53] 90.0% for-loop [204] 10.0% ------------------------------------------------------------------------- hash-ref! [172] 100.0% [193] 238(0.5%) 0(0.0%) ??? .../eggmath-testversion/src/programs.rkt:161:5 loop [150] 100.0% ------------------------------------------------------------------------- for-loop [171] 100.0% [194] 206(0.4%) 0(0.0%) compile5 (unknown source) compile-let13 [203] 100.0% ------------------------------------------------------------------------- bflog [185] 29.0% bf [183] 35.5% bfadd [182] 35.5% [195] 3464(7.1%) 3464(7.1%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:348:0 ------------------------------------------------------------------------- random-ranges [181] 100.0% [196] 1420(2.9%) 1214(2.5%) build--> ...act/private/arrow-val-first.rkt:1214:0 coerce-contract [205] 14.5% ------------------------------------------------------------------------- random-ranges [181] 100.0% [197] 1202(2.5%) 0(0.0%) cons/c .../racket/contract/private/guts.rkt:500:15 coerce-contract [205] 100.0% ------------------------------------------------------------------------- dispatch-variable [188] 100.0% [198] 632(1.3%) 632(1.3%) substitute-variable6 (unknown source) ------------------------------------------------------------------------- return/no-unsupplied [184] 100.0% [199] 600(1.2%) 600(1.2%) filter ...5/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------- ormap [190] 100.0% [200] 600(1.2%) 600(1.2%) flag-set? ...gmath-testversion/src/config.rkt:28:0 ------------------------------------------------------------------------- taylor [186] 50.0% map [53] 50.0% [201] 400(0.8%) 0(0.0%) taylor-invert ...version/src/core/taylor.rkt:318:0 simplify [3] 100.0% ------------------------------------------------------------------------- ??? [189] 100.0% [202] 224(0.5%) 224(0.5%) dict? ...ollects/racket/private/generic.rkt:146:11 ------------------------------------------------------------------------- compile5 [194] 12.5% compile-let13 [203] 87.5% [203] 206(0.4%) 0(0.0%) compile-let13 (unknown source) compile-let13 [203] 87.5% for-loop [171] 12.5% ------------------------------------------------------------------------- parse-loop30 [192] 100.0% [204] 200(0.4%) 0(0.0%) for-loop ...estversion/src/core/localize.rkt:53:21 for-loop [206] 100.0% ------------------------------------------------------------------------- build--> [196] 14.6% cons/c [197] 85.4% [205] 1408(2.9%) 0(0.0%) coerce-contract ...contract/private/guts.rkt:307:0 coerce-contract/f [208] 100.0% ------------------------------------------------------------------------- for-loop [204] 100.0% [206] 200(0.4%) 0(0.0%) for-loop ...estversion/src/core/localize.rkt:54:23 ??? [207] 100.0% ------------------------------------------------------------------------- for-loop [206] 9.9% bf [183] 9.9% bflog [185] 10.0% bfadd [182] 70.1% [207] 2012(4.1%) 2012(4.1%) ??? /opt/racket-7.5/collects/ffi/unsafe.rkt:938:4 ------------------------------------------------------------------------- coerce-contract [205] 100.0% [208] 1408(2.9%) 0(0.0%) coerce-contract/f ...ntract/private/guts.rkt:372:0 coerce-simple-value [209] 100.0% ------------------------------------------------------------------------- coerce-contract/f [208] 100.0% [209] 1408(2.9%) 1408(2.9%) coerce-simple-value ...ract/private/guts.rkt:385:0 -------------------------------------------------------------------------