Profiling results ----------------- Total cpu time observed: 6774ms (out of 6844ms) Number of samples taken: 32 (once every 212ms) ====================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ====================================================================== [1] 6774(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [8] 100.0% ---------------------------------------------------------------------- ??? [75] 100.0% [2] 698(10.3%) 0(0.0%) approximate9 ...and-minor/src/core/taylor.rkt:11:0 loop [9] 100.0% ---------------------------------------------------------------------- loop [100] 50.0% for-loop [110] 50.0% [3] 400(5.9%) 0(0.0%) dispatch-transformer41 (unknown source) apply-transformer52 [10] 100.0% ---------------------------------------------------------------------- matcher [85] 100.0% [4] 224(3.3%) 0(0.0%) ??? ...actor-and-minor/src/core/matcher.rkt:127:11 for-loop [11] 100.0% ---------------------------------------------------------------------- hash-ref! [13] 100.0% [5] 224(3.3%) 0(0.0%) f40 (unknown source) map [32] 100.0% ---------------------------------------------------------------------- taylor [6] 50.0% hash-ref! [13] 50.0% [6] 202(3.0%) 0(0.0%) taylor ...ctor-and-minor/src/core/taylor.rkt:169:0 taylor [6] 50.0% loop [100] 50.0% ---------------------------------------------------------------------- for-loop [110] 100.0% [7] 202(3.0%) 0(0.0%) syntax-e (unknown source) syntax-e/no-taint [98] 100.0% ---------------------------------------------------------------------- ??? [1] 100.0% [8] 6774(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [12] 100.0% ---------------------------------------------------------------------- approximate9 [2] 100.0% [9] 698(10.3%) 0(0.0%) loop ...efactor-and-minor/src/core/taylor.rkt:86:4 hash-ref! [13] 61.0% ??? [75] 39.0% ---------------------------------------------------------------------- dispatch-transformer41 [3] 100.0% [10] 400(5.9%) 0(0.0%) apply-transformer52 (unknown source) loop [100] 50.0% apply-transformer-in-context [14] 50.0% ---------------------------------------------------------------------- ??? [4] 100.0% [11] 224(3.3%) 0(0.0%) for-loop ...-and-minor/src/core/matcher.rkt:129:15 matcher [85] 100.0% ---------------------------------------------------------------------- profile-thunk16 [8] 100.0% [12] 6774(100.0%) 0(0.0%) run ...et-7.5/share/pkgs/profile-lib/main.rkt:39:2 .../more-scheme.rkt:261:28 [15] 100.0% ---------------------------------------------------------------------- ??? [18] 8.0% loop [9] 22.5% ??? [16] 27.5% ??? [75] 42.0% [13] 698(10.3%) 0(0.0%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [16] 27.5% ??? [17] 22.5% parse-loop74 [40] 19.5% taylor [6] 14.5% ??? [18] 8.0% f40 [5] 8.0% ---------------------------------------------------------------------- apply-transformer52 [10] 100.0% [14] 200(3.0%) 200(3.0%) apply-transformer-in-context (unknown source) ---------------------------------------------------------------------- for-loop [88] 9.4% run [12] 90.6% [15] 6774(100.0%) 230(3.4%) .../more-scheme.rkt:261:28 (unknown source) run-improve47 [19] 42.4% prepare-points-intervals [20] 21.1% get-final-combination [21] 11.9% oracle-error [22] 9.1% errors [81] 6.2% ??? [101] 3.2% ulp-difference [23] 3.1% ??? [24] 1.5% ---------------------------------------------------------------------- hash-ref! [13] 100.0% [16] 496(7.3%) 0(0.0%) ??? ...efactor-and-minor/src/core/taylor.rkt:44:15 hash-ref! [13] 100.0% ---------------------------------------------------------------------- hash-ref! [13] 100.0% [17] 426(6.3%) 0(0.0%) ??? ...efactor-and-minor/src/core/taylor.rkt:67:15 ??? [75] 100.0% ---------------------------------------------------------------------- hash-ref! [13] 100.0% [18] 224(3.3%) 0(0.0%) ??? ...factor-and-minor/src/core/taylor.rkt:343:33 hash-ref! [13] 100.0% ---------------------------------------------------------------------- .../more-scheme.rkt:261:28 [15] 100.0% [19] 3300(48.7%) 0(0.0%) run-improve47 ...-and-minor/src/mainloop.rkt:345:0 for-loop [25] 100.0% ---------------------------------------------------------------------- .../more-scheme.rkt:261:28 [15] 100.0% [20] 1428(21.1%) 0(0.0%) prepare-points-intervals ...r/src/points.rkt:122:0 loop [26] 100.0% ---------------------------------------------------------------------- .../more-scheme.rkt:261:28 [15] 100.0% [21] 804(11.9%) 0(0.0%) get-final-combination ...or/src/mainloop.rkt:370:0 infer-splitpoints [27] 100.0% ---------------------------------------------------------------------- .../more-scheme.rkt:261:28 [15] 100.0% [22] 616(9.1%) 0(0.0%) oracle-error ...tor-and-minor/src/points.rkt:179:0 for-loop [28] 100.0% ---------------------------------------------------------------------- .../more-scheme.rkt:261:28 [15] 100.0% [23] 414(6.1%) 414(6.1%) ulp-difference ...tor-and-minor/src/float.rkt:19:0 ---------------------------------------------------------------------- .../more-scheme.rkt:261:28 [15] 100.0% [24] 200(3.0%) 200(3.0%) ??? ...ctor-and-minor/src/syntax/syntax.rkt:214:17 ---------------------------------------------------------------------- run-improve47 [19] 100.0% [25] 3300(48.7%) 0(0.0%) for-loop ...actor-and-minor/src/mainloop.rkt:364:4 run-iter! [29] 100.0% ---------------------------------------------------------------------- prepare-points-intervals [20] 100.0% [26] 1428(21.1%) 0(0.0%) loop ...ie/refactor-and-minor/src/points.rkt:134:4 ??? [30] 58.4% loop [33] 28.3% do-curry [34] 13.3% ---------------------------------------------------------------------- get-final-combination [21] 100.0% [27] 804(11.9%) 0(0.0%) infer-splitpoints ...nor/src/core/regimes.rkt:33:0 for-loop [31] 100.0% ---------------------------------------------------------------------- oracle-error [22] 100.0% [28] 616(9.1%) 0(0.0%) for-loop ...efactor-and-minor/src/points.rkt:180:2 loop [100] 67.5% map [32] 32.5% ---------------------------------------------------------------------- for-loop [25] 100.0% [29] 3300(48.7%) 0(0.0%) run-iter! ...ctor-and-minor/src/mainloop.rkt:326:0 finalize-iter! [35] 44.5% gen-series! [37] 21.2% simplify! [38] 20.7% gen-rewrites! [42] 6.8% choose-best-alt! [43] 6.8% ---------------------------------------------------------------------- loop [26] 100.0% [30] 834(12.3%) 0(0.0%) ??? ...bie/refactor-and-minor/src/points.rkt:115:6 sample-multi-bounded [39] 76.7% ??? [41] 23.3% ---------------------------------------------------------------------- infer-splitpoints [27] 100.0% [31] 804(11.9%) 0(0.0%) for-loop ...or-and-minor/src/core/regimes.rkt:45:6 option-on-expr [36] 100.0% ---------------------------------------------------------------------- for-loop [28] 47.2% f40 [5] 52.8% [32] 424(6.3%) 0(0.0%) map ...t-7.5/collects/racket/private/map.rkt:35:13 parse-loop74 [40] 52.8% loop [45] 47.2% ---------------------------------------------------------------------- loop [26] 100.0% [33] 404(6.0%) 0(0.0%) loop ...bie/refactor-and-minor/src/points.rkt:79:2 real->precision [44] 50.0% ??? [41] 50.0% ---------------------------------------------------------------------- loop [26] 100.0% [34] 190(2.8%) 190(2.8%) do-curry ...-7.5/collects/racket/function.rkt:71:2 ---------------------------------------------------------------------- run-iter! [29] 100.0% [35] 1470(21.7%) 0(0.0%) finalize-iter! ...and-minor/src/mainloop.rkt:277:0 ??? [46] 100.0% ---------------------------------------------------------------------- for-loop [31] 100.0% [36] 804(11.9%) 0(0.0%) option-on-expr ...minor/src/core/regimes.rkt:124:0 for-loop [51] 49.8% debug-print [54] 25.6% err-lsts->split-indices [57] 24.6% ---------------------------------------------------------------------- run-iter! [29] 100.0% [37] 698(10.3%) 0(0.0%) gen-series! ...or-and-minor/src/mainloop.rkt:159:0 for-loop [47] 100.0% ---------------------------------------------------------------------- run-iter! [29] 100.0% [38] 684(10.1%) 0(0.0%) simplify! ...ctor-and-minor/src/mainloop.rkt:223:0 ??? [48] 100.0% ---------------------------------------------------------------------- ??? [30] 100.0% [39] 640(9.4%) 224(3.3%) sample-multi-bounded ...-minor/src/points.rkt:14:0 random-ranges [50] 65.0% ---------------------------------------------------------------------- map [32] 45.2% hash-ref! [13] 54.8% [40] 496(7.3%) 0(0.0%) parse-loop74 (unknown source) eval-const-expr [49] 100.0% ---------------------------------------------------------------------- ??? [30] 49.0% loop [33] 51.0% [41] 396(5.8%) 194(2.9%) ??? ...tract/private/arrow-higher-order.rkt:379:33 ival-div [55] 51.0% ---------------------------------------------------------------------- run-iter! [29] 100.0% [42] 224(3.3%) 0(0.0%) gen-rewrites! ...-and-minor/src/mainloop.rkt:182:0 for-loop [52] 100.0% ---------------------------------------------------------------------- run-iter! [29] 100.0% [43] 224(3.3%) 0(0.0%) choose-best-alt! ...d-minor/src/mainloop.rkt:116:0 ...ow-val-first.rkt:486:18 [53] 100.0% ---------------------------------------------------------------------- loop [33] 100.0% [44] 202(3.0%) 0(0.0%) real->precision ...d-minor/src/programs.rkt:118:11 ??? [75] 100.0% ---------------------------------------------------------------------- map [32] 100.0% [45] 200(3.0%) 0(0.0%) loop ...-7.5/collects/racket/private/map.rkt:40:19 ??? [56] 100.0% ---------------------------------------------------------------------- finalize-iter! [35] 100.0% [46] 1470(21.7%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:486:18 for-loop [58] 100.0% ---------------------------------------------------------------------- gen-series! [37] 100.0% [47] 698(10.3%) 0(0.0%) for-loop ...actor-and-minor/src/mainloop.rkt:166:7 taylor-alt [59] 100.0% ---------------------------------------------------------------------- simplify! [38] 100.0% [48] 684(10.1%) 0(0.0%) ??? ...factor-and-minor/src/core/simplify.rkt:42:0 egraph-run [60] 100.0% ---------------------------------------------------------------------- parse-loop74 [40] 100.0% [49] 496(7.3%) 0(0.0%) eval-const-expr ...nd-minor/src/programs.rkt:144:0 temp85_0 [89] 100.0% ---------------------------------------------------------------------- sample-multi-bounded [39] 100.0% [50] 416(6.1%) 0(0.0%) random-ranges ...or-and-minor/src/common.rkt:164:0 cons/c [61] 100.0% ---------------------------------------------------------------------- option-on-expr [36] 100.0% [51] 400(5.9%) 0(0.0%) for-loop ...r-and-minor/src/core/regimes.rkt:135:4 errors [81] 100.0% ---------------------------------------------------------------------- gen-rewrites! [42] 100.0% [52] 224(3.3%) 0(0.0%) for-loop ...ctor-and-minor/src/mainloop.rkt:190:11 rewrite-expression-head24 [62] 100.0% ---------------------------------------------------------------------- choose-best-alt! [43] 100.0% [53] 224(3.3%) 0(0.0%) ...ow-val-first.rkt:486:18 (unknown source) ??? [63] 100.0% ---------------------------------------------------------------------- option-on-expr [36] 100.0% [54] 206(3.0%) 0(0.0%) debug-print ...actor-and-minor/src/debug.rkt:110:0 for-loop [64] 100.0% ---------------------------------------------------------------------- ??? [41] 100.0% [55] 202(3.0%) 0(0.0%) ival-div ...or-and-minor/src/biginterval.rkt:156:0 bfdiv [65] 100.0% ---------------------------------------------------------------------- loop [45] 100.0% [56] 200(3.0%) 200(3.0%) ??? ...ie/refactor-and-minor/src/points.rkt:181:26 ---------------------------------------------------------------------- option-on-expr [36] 100.0% [57] 198(2.9%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:263:0 loop [66] 100.0% ---------------------------------------------------------------------- ??? [46] 100.0% [58] 1470(21.7%) 0(0.0%) for-loop ...and-minor/src/core/alt-table.rkt:192:2 atab-add-altn [67] 85.3% errors [81] 14.7% ---------------------------------------------------------------------- for-loop [47] 100.0% [59] 698(10.3%) 0(0.0%) taylor-alt ...tor-and-minor/src/mainloop.rkt:145:0 for-loop [68] 100.0% ---------------------------------------------------------------------- ??? [48] 100.0% [60] 684(10.1%) 0(0.0%) egraph-run .../pkgs/egg-herbie-linux/main.rkt:49:0 egraph-add-exprs [69] 100.0% ---------------------------------------------------------------------- random-ranges [50] 100.0% [61] 416(6.1%) 0(0.0%) cons/c .../racket/contract/private/guts.rkt:500:15 coerce-contract [70] 100.0% ---------------------------------------------------------------------- for-loop [52] 100.0% [62] 224(3.3%) 0(0.0%) rewrite-expression-head24 ...core/matcher.rkt:85:0 rewriter [71] 100.0% ---------------------------------------------------------------------- ...ow-val-first.rkt:486:18 [53] 100.0% [63] 224(3.3%) 0(0.0%) ??? ...actor-and-minor/src/core/alt-table.rkt:40:0 loop [72] 100.0% ---------------------------------------------------------------------- debug-print [54] 100.0% [64] 206(3.0%) 206(3.0%) for-loop ...refactor-and-minor/src/debug.rkt:116:2 ---------------------------------------------------------------------- ival-div [55] 100.0% [65] 202(3.0%) 0(0.0%) bfdiv ...-lib/math/private/bigfloat/mpfr.rkt:835:4 new-mpfr [73] 100.0% ---------------------------------------------------------------------- err-lsts->split-indices [57] 100.0% [66] 198(2.9%) 0(0.0%) loop ...actor-and-minor/src/core/regimes.rkt:314:4 for-loop [74] 100.0% ---------------------------------------------------------------------- for-loop [58] 100.0% [67] 1254(18.5%) 0(0.0%) atab-add-altn ...inor/src/core/alt-table.rkt:195:0 errors [81] 100.0% ---------------------------------------------------------------------- taylor-alt [59] 100.0% [68] 698(10.3%) 0(0.0%) for-loop ...actor-and-minor/src/mainloop.rkt:151:6 ??? [75] 100.0% ---------------------------------------------------------------------- egraph-run [60] 100.0% [69] 684(10.1%) 0(0.0%) egraph-add-exprs ...gg-herbie-linux/main.rkt:111:0 ??? [76] 100.0% ---------------------------------------------------------------------- cons/c [61] 100.0% [70] 416(6.1%) 0(0.0%) coerce-contract ...contract/private/guts.rkt:307:0 coerce-contract/f [77] 100.0% ---------------------------------------------------------------------- rewrite-expression-head24 [62] 100.0% [71] 224(3.3%) 0(0.0%) rewriter ...or-and-minor/src/core/matcher.rkt:87:2 for-loop [78] 100.0% ---------------------------------------------------------------------- ??? [63] 100.0% [72] 224(3.3%) 0(0.0%) loop .../racket-7.5/collects/racket/list.rkt:751:4 ??? [79] 100.0% ---------------------------------------------------------------------- bfdiv [65] 100.0% [73] 202(3.0%) 202(3.0%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:348:0 ---------------------------------------------------------------------- loop [66] 100.0% [74] 198(2.9%) 0(0.0%) for-loop ...r-and-minor/src/core/regimes.rkt:279:4 for-loop [80] 100.0% ---------------------------------------------------------------------- loop [9] 10.1% ??? [17] 15.8% real->precision [44] 22.4% location-do [82] 25.9% for-loop [68] 25.9% [75] 900(13.3%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:375:33 location-do [82] 25.9% approximate9 [2] 25.9% hash-ref! [13] 25.9% bf [87] 22.4% ---------------------------------------------------------------------- egraph-add-exprs [69] 100.0% [76] 684(10.1%) 0(0.0%) ??? ...actor-and-minor/src/core/simplify.rkt:102:6 for-loop [83] 67.8% egg-run-rules [86] 32.2% ---------------------------------------------------------------------- coerce-contract [70] 100.0% [77] 416(6.1%) 0(0.0%) coerce-contract/f ...ntract/private/guts.rkt:372:0 coerce-simple-value [84] 100.0% ---------------------------------------------------------------------- rewriter [71] 100.0% [78] 224(3.3%) 0(0.0%) for-loop ...or-and-minor/src/core/matcher.rkt:89:4 matcher [85] 100.0% ---------------------------------------------------------------------- loop [72] 100.0% [79] 224(3.3%) 0(0.0%) ??? .../refactor-and-minor/src/mainloop.rkt:113:10 errors [81] 100.0% ---------------------------------------------------------------------- for-loop [74] 100.0% [80] 198(2.9%) 198(2.9%) for-loop ...r-and-minor/src/core/regimes.rkt:283:8 ---------------------------------------------------------------------- for-loop [58] 7.9% ??? [79] 8.2% for-loop [51] 14.7% .../more-scheme.rkt:261:28 [15] 23.0% atab-add-altn [67] 46.1% [81] 2720(40.2%) 214(3.2%) errors .../refactor-and-minor/src/points.rkt:192:0 for-loop [88] 62.1% temp85_0 [89] 30.1% ---------------------------------------------------------------------- ??? [75] 100.0% [82] 698(10.3%) 0(0.0%) location-do ...tor-and-minor/src/programs.rkt:87:0 ??? [75] 100.0% ---------------------------------------------------------------------- ??? [76] 100.0% [83] 464(6.8%) 464(6.8%) for-loop ...-and-minor/src/core/simplify.rkt:121:2 ---------------------------------------------------------------------- coerce-contract/f [77] 100.0% [84] 416(6.1%) 416(6.1%) coerce-simple-value ...ract/private/guts.rkt:385:0 ---------------------------------------------------------------------- for-loop [11] 50.0% for-loop [78] 50.0% [85] 224(3.3%) 224(3.3%) matcher ...or-and-minor/src/core/matcher.rkt:115:2 ??? [4] 50.0% ---------------------------------------------------------------------- ??? [76] 100.0% [86] 220(3.2%) 220(3.2%) egg-run-rules ...minor/src/core/simplify.rkt:108:0 ---------------------------------------------------------------------- ??? [75] 100.0% [87] 202(3.0%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:615:2 ??? [90] 100.0% ---------------------------------------------------------------------- errors [81] 100.0% [88] 1688(24.9%) 416(6.1%) for-loop ...efactor-and-minor/src/points.rkt:194:2 .../more-scheme.rkt:261:28 [15] 75.4% ---------------------------------------------------------------------- eval-const-expr [49] 37.7% errors [81] 62.3% [89] 1314(19.4%) 0(0.0%) temp85_0 (unknown source) compile15 [91] 100.0% ---------------------------------------------------------------------- bf [87] 100.0% [90] 202(3.0%) 202(3.0%) ??? /opt/racket-7.5/collects/ffi/unsafe.rkt:938:4 ---------------------------------------------------------------------- temp85_0 [89] 100.0% [91] 1314(19.4%) 0(0.0%) compile15 (unknown source) temp91_0 [92] 83.0% loop [100] 17.0% ---------------------------------------------------------------------- compile15 [91] 100.0% [92] 1090(16.1%) 0(0.0%) temp91_0 (unknown source) temp118_0 [93] 80.2% loop [100] 19.8% ---------------------------------------------------------------------- temp91_0 [92] 100.0% [93] 874(12.9%) 0(0.0%) temp118_0 (unknown source) expand-capturing-lifts [94] 100.0% ---------------------------------------------------------------------- loop [100] 19.8% temp118_0 [93] 80.2% [94] 1090(16.1%) 0(0.0%) expand-capturing-lifts (unknown source) lambda-clause-expander [95] 80.2% expand-id-application-form17 [96] 19.8% ---------------------------------------------------------------------- expand-capturing-lifts [94] 100.0% [95] 874(12.9%) 0(0.0%) lambda-clause-expander (unknown source) finish-bodys [97] 77.1% loop [100] 22.9% ---------------------------------------------------------------------- expand-capturing-lifts [94] 44.3% loop [100] 55.7% [96] 488(7.2%) 0(0.0%) expand-id-application-form17 (unknown source) syntax-e/no-taint [98] 55.7% binding-lookup52 [99] 44.3% ---------------------------------------------------------------------- lambda-clause-expander [95] 14.5% for-loop [110] 85.5% [97] 674(9.9%) 0(0.0%) finish-bodys (unknown source) for-loop [110] 100.0% ---------------------------------------------------------------------- syntax-e [7] 42.6% expand-id-application-form17 [96] 57.4% [98] 474(7.0%) 0(0.0%) syntax-e/no-taint (unknown source) loop [100] 100.0% ---------------------------------------------------------------------- expand-id-application-form17 [96]100.0% [99] 216(3.2%) 216(3.2%) binding-lookup52 (unknown source) ---------------------------------------------------------------------- for-loop [110] 7.0% loop [100] 7.5% lambda-clause-expander [95] 10.4% apply-transformer52 [10] 10.4% taylor [6] 10.5% temp91_0 [92] 11.2% compile15 [91] 11.6% for-loop [28] 14.1% syntax-e/no-taint [98] 17.5% [100] 1932(28.5%) 224(3.3%) loop (unknown source) gf [102] 17.5% expand-capturing-lifts [94] 11.2% simplify* [104] 10.5% ??? [101] 10.4% core-form-sym [105] 10.4% dispatch-transformer41 [3] 10.4% loop [100] 7.5% expand-id-application-form17 [96] 7.0% ordinary-value? [103] 3.7% ---------------------------------------------------------------------- loop [100] 31.8% .../more-scheme.rkt:261:28 [15] 68.2% [101] 628(9.3%) 628(9.3%) ??? ...cket-7.5/collects/racket/function.rkt:93:12 ---------------------------------------------------------------------- loop [100] 100.0% [102] 474(7.0%) 0(0.0%) gf (unknown source) propagation-apply-shifted [106] 57.4% propagation-merge [107] 42.6% ---------------------------------------------------------------------- loop [100] 100.0% [103] 216(3.2%) 216(3.2%) ordinary-value? ...or-and-minor/src/float.rkt:51:0 ---------------------------------------------------------------------- loop [100] 100.0% [104] 202(3.0%) 202(3.0%) simplify* ...or-and-minor/src/core/reduce.rkt:28:0 ---------------------------------------------------------------------- loop [100] 100.0% [105] 200(3.0%) 0(0.0%) core-form-sym (unknown source) resolve+shift28 [108] 100.0% ---------------------------------------------------------------------- gf [102] 100.0% [106] 272(4.0%) 272(4.0%) propagation-apply-shifted (unknown source) ---------------------------------------------------------------------- gf [102] 100.0% [107] 202(3.0%) 202(3.0%) propagation-merge (unknown source) ---------------------------------------------------------------------- core-form-sym [105] 100.0% [108] 200(3.0%) 0(0.0%) resolve+shift28 (unknown source) fallback-loop [109] 100.0% ---------------------------------------------------------------------- resolve+shift28 [108] 100.0% [109] 200(3.0%) 0(0.0%) fallback-loop (unknown source) for-loop [110] 100.0% ---------------------------------------------------------------------- fallback-loop [109] 2.7% for-loop [110] 17.9% finish-bodys [97] 79.4% [110] 674(9.9%) 200(3.0%) for-loop (unknown source) finish-bodys [97] 67.9% for-loop [110] 17.9% loop [100] 5.0% syntax-e [7] 3.7% dispatch-transformer41 [3] 2.7% ----------------------------------------------------------------------