diff options
author | Aria Shrimpton <me@aria.rip> | 2024-03-29 22:22:28 +0000 |
---|---|---|
committer | Aria Shrimpton <me@aria.rip> | 2024-03-29 22:22:28 +0000 |
commit | e091c37926281dbd5bf58b249d2d8d1b370897f2 (patch) | |
tree | eed9e8ce82e59aa7b414d4bafd8845c78ffbf0bf | |
parent | 7924e466d32cf93b7e455d1360bc22fa86340100 (diff) |
introduction, conclusion, and minor cleanup
-rw-r--r-- | analysis/vis.livemd | 15 | ||||
-rw-r--r-- | thesis/assets/insert_small_n.json | 2 | ||||
-rw-r--r-- | thesis/parts/conclusion.tex | 16 | ||||
-rw-r--r-- | thesis/parts/design.tex | 5 | ||||
-rw-r--r-- | thesis/parts/introduction.tex | 13 | ||||
-rw-r--r-- | thesis/parts/results.tex | 4 |
6 files changed, 27 insertions, 28 deletions
diff --git a/analysis/vis.livemd b/analysis/vis.livemd index 6a0a7c5..0ef8597 100644 --- a/analysis/vis.livemd +++ b/analysis/vis.livemd @@ -245,21 +245,6 @@ graph ```elixir graph = - CostModel.plot( - cost_models, - cost_model_points, - ["HashSet", "BTreeSet"], - "insert", - ns: 1..500//10, - # y_domain: [0, 4000], - draw_points: true - ) - -graph -``` - -```elixir -graph = CostModel.split_plot( cost_models, cost_model_points, diff --git a/thesis/assets/insert_small_n.json b/thesis/assets/insert_small_n.json index abf4de8..e17b175 100644 --- a/thesis/assets/insert_small_n.json +++ b/thesis/assets/insert_small_n.json @@ -1 +1 @@ -{"$schema":"https://vega.github.io/schema/vega-lite/v5.json","height":250,"layer":[{"data":{"values":[{"impl":"LinkedList","n":1,"op":"remove","t":15441.040258897787},{"impl":"LinkedList","n":11,"op":"remove","t":5696.89433322902},{"impl":"LinkedList","n":21,"op":"remove","t":3105.377607707722},{"impl":"LinkedList","n":31,"op":"remove","t":1564.170949020905},{"impl":"LinkedList","n":41,"op":"remove","t":471.7340692337093},{"impl":"LinkedList","n":51,"op":"remove","t":0.0},{"impl":"LinkedList","n":61,"op":"remove","t":0.0},{"impl":"LinkedList","n":71,"op":"remove","t":0.0},{"impl":"LinkedList","n":81,"op":"remove","t":0.0},{"impl":"LinkedList","n":91,"op":"remove","t":0.0},{"impl":"LinkedList","n":101,"op":"remove","t":0.0},{"impl":"LinkedList","n":111,"op":"remove","t":0.0},{"impl":"LinkedList","n":121,"op":"remove","t":0.0},{"impl":"LinkedList","n":131,"op":"remove","t":0.0},{"impl":"LinkedList","n":141,"op":"remove","t":0.0},{"impl":"LinkedList","n":151,"op":"remove","t":0.0},{"impl":"LinkedList","n":161,"op":"remove","t":0.0},{"impl":"LinkedList","n":171,"op":"remove","t":0.0},{"impl":"LinkedList","n":181,"op":"remove","t":0.0},{"impl":"LinkedList","n":191,"op":"remove","t":0.0},{"impl":"LinkedList","n":201,"op":"remove","t":0.0},{"impl":"LinkedList","n":211,"op":"remove","t":0.0},{"impl":"LinkedList","n":221,"op":"remove","t":0.0},{"impl":"LinkedList","n":231,"op":"remove","t":0.0},{"impl":"LinkedList","n":241,"op":"remove","t":0.0},{"impl":"LinkedList","n":251,"op":"remove","t":0.0},{"impl":"LinkedList","n":261,"op":"remove","t":0.0},{"impl":"LinkedList","n":271,"op":"remove","t":0.0},{"impl":"LinkedList","n":281,"op":"remove","t":0.0},{"impl":"LinkedList","n":291,"op":"remove","t":0.0},{"impl":"LinkedList","n":301,"op":"remove","t":0.0},{"impl":"LinkedList","n":311,"op":"remove","t":0.0},{"impl":"LinkedList","n":321,"op":"remove","t":0.0},{"impl":"LinkedList","n":331,"op":"remove","t":0.0},{"impl":"LinkedList","n":341,"op":"remove","t":0.0},{"impl":"LinkedList","n":351,"op":"remove","t":0.0},{"impl":"LinkedList","n":361,"op":"remove","t":0.0},{"impl":"LinkedList","n":371,"op":"remove","t":0.0},{"impl":"LinkedList","n":381,"op":"remove","t":0.0},{"impl":"LinkedList","n":391,"op":"remove","t":0.0},{"impl":"LinkedList","n":401,"op":"remove","t":0.0},{"impl":"LinkedList","n":411,"op":"remove","t":0.0},{"impl":"LinkedList","n":421,"op":"remove","t":0.0},{"impl":"LinkedList","n":431,"op":"remove","t":0.0},{"impl":"LinkedList","n":441,"op":"remove","t":0.0},{"impl":"LinkedList","n":451,"op":"remove","t":0.0},{"impl":"LinkedList","n":461,"op":"remove","t":0.0},{"impl":"LinkedList","n":471,"op":"remove","t":0.0},{"impl":"LinkedList","n":481,"op":"remove","t":0.0},{"impl":"LinkedList","n":491,"op":"remove","t":0.0},{"impl":"LinkedList","n":501,"op":"remove","t":0.0},{"impl":"LinkedList","n":511,"op":"remove","t":0.0},{"impl":"LinkedList","n":521,"op":"remove","t":0.0},{"impl":"LinkedList","n":531,"op":"remove","t":0.0},{"impl":"LinkedList","n":541,"op":"remove","t":0.0},{"impl":"LinkedList","n":551,"op":"remove","t":0.0},{"impl":"LinkedList","n":561,"op":"remove","t":0.0},{"impl":"LinkedList","n":571,"op":"remove","t":0.0},{"impl":"LinkedList","n":581,"op":"remove","t":0.0},{"impl":"LinkedList","n":591,"op":"remove","t":0.0},{"impl":"LinkedList","n":601,"op":"remove","t":0.0},{"impl":"LinkedList","n":611,"op":"remove","t":0.0},{"impl":"LinkedList","n":621,"op":"remove","t":0.0},{"impl":"LinkedList","n":631,"op":"remove","t":0.0},{"impl":"LinkedList","n":641,"op":"remove","t":0.0},{"impl":"LinkedList","n":651,"op":"remove","t":0.0},{"impl":"LinkedList","n":661,"op":"remove","t":0.0},{"impl":"LinkedList","n":671,"op":"remove","t":0.0},{"impl":"LinkedList","n":681,"op":"remove","t":0.0},{"impl":"LinkedList","n":691,"op":"remove","t":0.0},{"impl":"LinkedList","n":701,"op":"remove","t":0.0},{"impl":"LinkedList","n":711,"op":"remove","t":0.0},{"impl":"LinkedList","n":721,"op":"remove","t":0.0},{"impl":"LinkedList","n":731,"op":"remove","t":0.0},{"impl":"LinkedList","n":741,"op":"remove","t":0.0},{"impl":"LinkedList","n":751,"op":"remove","t":0.0},{"impl":"LinkedList","n":761,"op":"remove","t":0.0},{"impl":"LinkedList","n":771,"op":"remove","t":0.0},{"impl":"LinkedList","n":781,"op":"remove","t":0.0},{"impl":"LinkedList","n":791,"op":"remove","t":0.0},{"impl":"LinkedList","n":801,"op":"remove","t":0.0},{"impl":"LinkedList","n":811,"op":"remove","t":0.0},{"impl":"LinkedList","n":821,"op":"remove","t":0.0},{"impl":"LinkedList","n":831,"op":"remove","t":0.0},{"impl":"LinkedList","n":841,"op":"remove","t":0.0},{"impl":"LinkedList","n":851,"op":"remove","t":0.0},{"impl":"LinkedList","n":861,"op":"remove","t":0.0},{"impl":"LinkedList","n":871,"op":"remove","t":0.0},{"impl":"LinkedList","n":881,"op":"remove","t":0.0},{"impl":"LinkedList","n":891,"op":"remove","t":0.0},{"impl":"LinkedList","n":901,"op":"remove","t":0.0},{"impl":"LinkedList","n":911,"op":"remove","t":0.0},{"impl":"LinkedList","n":921,"op":"remove","t":0.0},{"impl":"LinkedList","n":931,"op":"remove","t":0.0},{"impl":"LinkedList","n":941,"op":"remove","t":0.0},{"impl":"LinkedList","n":951,"op":"remove","t":0.0},{"impl":"LinkedList","n":961,"op":"remove","t":0.0},{"impl":"LinkedList","n":971,"op":"remove","t":0.0},{"impl":"LinkedList","n":981,"op":"remove","t":0.0},{"impl":"LinkedList","n":991,"op":"remove","t":0.0},{"impl":"LinkedList","n":1001,"op":"remove","t":0.0},{"impl":"LinkedList","n":1011,"op":"remove","t":0.0},{"impl":"LinkedList","n":1021,"op":"remove","t":0.0},{"impl":"LinkedList","n":1031,"op":"remove","t":0.0},{"impl":"LinkedList","n":1041,"op":"remove","t":0.0},{"impl":"LinkedList","n":1051,"op":"remove","t":0.0},{"impl":"LinkedList","n":1061,"op":"remove","t":0.0},{"impl":"LinkedList","n":1071,"op":"remove","t":0.0},{"impl":"LinkedList","n":1081,"op":"remove","t":0.0},{"impl":"LinkedList","n":1091,"op":"remove","t":0.0},{"impl":"LinkedList","n":1101,"op":"remove","t":0.0},{"impl":"LinkedList","n":1111,"op":"remove","t":0.0},{"impl":"LinkedList","n":1121,"op":"remove","t":0.0},{"impl":"LinkedList","n":1131,"op":"remove","t":0.0},{"impl":"LinkedList","n":1141,"op":"remove","t":0.0},{"impl":"LinkedList","n":1151,"op":"remove","t":0.0},{"impl":"LinkedList","n":1161,"op":"remove","t":0.0},{"impl":"LinkedList","n":1171,"op":"remove","t":0.0},{"impl":"LinkedList","n":1181,"op":"remove","t":0.0},{"impl":"LinkedList","n":1191,"op":"remove","t":0.0},{"impl":"LinkedList","n":1201,"op":"remove","t":0.0},{"impl":"LinkedList","n":1211,"op":"remove","t":0.0},{"impl":"LinkedList","n":1221,"op":"remove","t":0.0},{"impl":"LinkedList","n":1231,"op":"remove","t":0.0},{"impl":"LinkedList","n":1241,"op":"remove","t":0.0},{"impl":"LinkedList","n":1251,"op":"remove","t":0.0},{"impl":"LinkedList","n":1261,"op":"remove","t":0.0},{"impl":"LinkedList","n":1271,"op":"remove","t":0.0},{"impl":"LinkedList","n":1281,"op":"remove","t":0.0},{"impl":"LinkedList","n":1291,"op":"remove","t":0.0},{"impl":"LinkedList","n":1301,"op":"remove","t":0.0},{"impl":"LinkedList","n":1311,"op":"remove","t":0.0},{"impl":"LinkedList","n":1321,"op":"remove","t":0.0},{"impl":"LinkedList","n":1331,"op":"remove","t":0.0},{"impl":"LinkedList","n":1341,"op":"remove","t":0.0},{"impl":"LinkedList","n":1351,"op":"remove","t":0.0},{"impl":"LinkedList","n":1361,"op":"remove","t":0.0},{"impl":"LinkedList","n":1371,"op":"remove","t":0.0},{"impl":"LinkedList","n":1381,"op":"remove","t":0.0},{"impl":"LinkedList","n":1391,"op":"remove","t":0.0},{"impl":"LinkedList","n":1401,"op":"remove","t":0.0},{"impl":"LinkedList","n":1411,"op":"remove","t":0.0},{"impl":"LinkedList","n":1421,"op":"remove","t":0.0},{"impl":"LinkedList","n":1431,"op":"remove","t":0.0},{"impl":"LinkedList","n":1441,"op":"remove","t":0.0},{"impl":"LinkedList","n":1451,"op":"remove","t":0.0},{"impl":"LinkedList","n":1461,"op":"remove","t":0.0},{"impl":"LinkedList","n":1471,"op":"remove","t":0.0},{"impl":"LinkedList","n":1481,"op":"remove","t":0.0},{"impl":"LinkedList","n":1491,"op":"remove","t":0.0},{"impl":"LinkedList","n":1501,"op":"remove","t":0.0},{"impl":"LinkedList","n":1511,"op":"remove","t":0.0},{"impl":"LinkedList","n":1521,"op":"remove","t":0.0},{"impl":"LinkedList","n":1531,"op":"remove","t":0.0},{"impl":"LinkedList","n":1541,"op":"remove","t":0.0},{"impl":"LinkedList","n":1551,"op":"remove","t":0.0},{"impl":"LinkedList","n":1561,"op":"remove","t":0.0},{"impl":"LinkedList","n":1571,"op":"remove","t":0.0},{"impl":"LinkedList","n":1581,"op":"remove","t":0.0},{"impl":"LinkedList","n":1591,"op":"remove","t":0.0},{"impl":"LinkedList","n":1601,"op":"remove","t":0.0},{"impl":"LinkedList","n":1611,"op":"remove","t":0.0},{"impl":"LinkedList","n":1621,"op":"remove","t":0.0},{"impl":"LinkedList","n":1631,"op":"remove","t":0.0},{"impl":"LinkedList","n":1641,"op":"remove","t":0.0},{"impl":"LinkedList","n":1651,"op":"remove","t":0.0},{"impl":"LinkedList","n":1661,"op":"remove","t":0.0},{"impl":"LinkedList","n":1671,"op":"remove","t":0.0},{"impl":"LinkedList","n":1681,"op":"remove","t":0.0},{"impl":"LinkedList","n":1691,"op":"remove","t":0.0},{"impl":"LinkedList","n":1701,"op":"remove","t":0.0},{"impl":"LinkedList","n":1711,"op":"remove","t":0.0},{"impl":"LinkedList","n":1721,"op":"remove","t":0.0},{"impl":"LinkedList","n":1731,"op":"remove","t":0.0},{"impl":"LinkedList","n":1741,"op":"remove","t":0.0},{"impl":"LinkedList","n":1751,"op":"remove","t":0.0},{"impl":"LinkedList","n":1761,"op":"remove","t":0.0},{"impl":"LinkedList","n":1771,"op":"remove","t":0.0},{"impl":"LinkedList","n":1781,"op":"remove","t":0.0},{"impl":"LinkedList","n":1791,"op":"remove","t":0.0},{"impl":"LinkedList","n":1801,"op":"remove","t":0.0},{"impl":"LinkedList","n":1811,"op":"remove","t":0.0},{"impl":"LinkedList","n":1821,"op":"remove","t":0.0},{"impl":"LinkedList","n":1831,"op":"remove","t":0.0},{"impl":"LinkedList","n":1841,"op":"remove","t":0.0},{"impl":"LinkedList","n":1851,"op":"remove","t":0.0},{"impl":"LinkedList","n":1861,"op":"remove","t":0.0},{"impl":"LinkedList","n":1871,"op":"remove","t":0.0},{"impl":"LinkedList","n":1881,"op":"remove","t":0.0},{"impl":"LinkedList","n":1891,"op":"remove","t":0.0},{"impl":"LinkedList","n":1901,"op":"remove","t":0.0},{"impl":"LinkedList","n":1911,"op":"remove","t":0.0},{"impl":"LinkedList","n":1921,"op":"remove","t":0.0},{"impl":"LinkedList","n":1931,"op":"remove","t":0.0},{"impl":"LinkedList","n":1941,"op":"remove","t":0.0},{"impl":"LinkedList","n":1951,"op":"remove","t":0.0},{"impl":"LinkedList","n":1961,"op":"remove","t":0.0},{"impl":"LinkedList","n":1971,"op":"remove","t":0.0},{"impl":"LinkedList","n":1981,"op":"remove","t":0.0},{"impl":"LinkedList","n":1991,"op":"remove","t":0.0},{"impl":"LinkedList","n":2001,"op":"remove","t":0.0},{"impl":"LinkedList","n":2011,"op":"remove","t":0.0},{"impl":"LinkedList","n":2021,"op":"remove","t":0.0},{"impl":"LinkedList","n":2031,"op":"remove","t":0.0},{"impl":"LinkedList","n":2041,"op":"remove","t":0.0},{"impl":"LinkedList","n":2051,"op":"remove","t":0.0},{"impl":"LinkedList","n":2061,"op":"remove","t":0.0},{"impl":"LinkedList","n":2071,"op":"remove","t":0.0},{"impl":"LinkedList","n":2081,"op":"remove","t":0.0},{"impl":"LinkedList","n":2091,"op":"remove","t":0.0},{"impl":"LinkedList","n":2101,"op":"remove","t":0.0},{"impl":"LinkedList","n":2111,"op":"remove","t":0.0},{"impl":"LinkedList","n":2121,"op":"remove","t":0.0},{"impl":"LinkedList","n":2131,"op":"remove","t":0.0},{"impl":"LinkedList","n":2141,"op":"remove","t":0.0},{"impl":"LinkedList","n":2151,"op":"remove","t":0.0},{"impl":"LinkedList","n":2161,"op":"remove","t":0.0},{"impl":"LinkedList","n":2171,"op":"remove","t":0.0},{"impl":"LinkedList","n":2181,"op":"remove","t":0.0},{"impl":"LinkedList","n":2191,"op":"remove","t":0.0},{"impl":"LinkedList","n":2201,"op":"remove","t":0.0},{"impl":"LinkedList","n":2211,"op":"remove","t":0.0},{"impl":"LinkedList","n":2221,"op":"remove","t":0.0},{"impl":"LinkedList","n":2231,"op":"remove","t":0.0},{"impl":"LinkedList","n":2241,"op":"remove","t":0.0},{"impl":"LinkedList","n":2251,"op":"remove","t":0.0},{"impl":"LinkedList","n":2261,"op":"remove","t":0.0},{"impl":"LinkedList","n":2271,"op":"remove","t":0.0},{"impl":"LinkedList","n":2281,"op":"remove","t":0.0},{"impl":"LinkedList","n":2291,"op":"remove","t":0.0},{"impl":"LinkedList","n":2301,"op":"remove","t":0.0},{"impl":"LinkedList","n":2311,"op":"remove","t":0.0},{"impl":"LinkedList","n":2321,"op":"remove","t":0.0},{"impl":"LinkedList","n":2331,"op":"remove","t":0.0},{"impl":"LinkedList","n":2341,"op":"remove","t":0.0},{"impl":"LinkedList","n":2351,"op":"remove","t":0.0},{"impl":"LinkedList","n":2361,"op":"remove","t":0.0},{"impl":"LinkedList","n":2371,"op":"remove","t":0.0},{"impl":"LinkedList","n":2381,"op":"remove","t":0.0},{"impl":"LinkedList","n":2391,"op":"remove","t":0.0},{"impl":"LinkedList","n":2401,"op":"remove","t":0.0},{"impl":"LinkedList","n":2411,"op":"remove","t":0.0},{"impl":"LinkedList","n":2421,"op":"remove","t":0.0},{"impl":"LinkedList","n":2431,"op":"remove","t":0.0},{"impl":"LinkedList","n":2441,"op":"remove","t":0.0},{"impl":"LinkedList","n":2451,"op":"remove","t":0.0},{"impl":"LinkedList","n":2461,"op":"remove","t":0.0},{"impl":"LinkedList","n":2471,"op":"remove","t":0.0},{"impl":"LinkedList","n":2481,"op":"remove","t":0.0},{"impl":"LinkedList","n":2491,"op":"remove","t":0.0},{"impl":"LinkedList","n":2501,"op":"remove","t":0.0},{"impl":"LinkedList","n":2511,"op":"remove","t":0.0},{"impl":"LinkedList","n":2521,"op":"remove","t":0.0},{"impl":"LinkedList","n":2531,"op":"remove","t":0.0},{"impl":"LinkedList","n":2541,"op":"remove","t":0.0},{"impl":"LinkedList","n":2551,"op":"remove","t":0.0},{"impl":"LinkedList","n":2561,"op":"remove","t":0.0},{"impl":"LinkedList","n":2571,"op":"remove","t":0.0},{"impl":"LinkedList","n":2581,"op":"remove","t":0.0},{"impl":"LinkedList","n":2591,"op":"remove","t":0.0},{"impl":"LinkedList","n":2601,"op":"remove","t":0.0},{"impl":"LinkedList","n":2611,"op":"remove","t":0.0},{"impl":"LinkedList","n":2621,"op":"remove","t":0.0},{"impl":"LinkedList","n":2631,"op":"remove","t":0.0},{"impl":"LinkedList","n":2641,"op":"remove","t":0.0},{"impl":"LinkedList","n":2651,"op":"remove","t":0.0},{"impl":"LinkedList","n":2661,"op":"remove","t":0.0},{"impl":"LinkedList","n":2671,"op":"remove","t":0.0},{"impl":"LinkedList","n":2681,"op":"remove","t":0.0},{"impl":"LinkedList","n":2691,"op":"remove","t":0.0},{"impl":"LinkedList","n":2701,"op":"remove","t":0.0},{"impl":"LinkedList","n":2711,"op":"remove","t":0.0},{"impl":"LinkedList","n":2721,"op":"remove","t":0.0},{"impl":"LinkedList","n":2731,"op":"remove","t":0.0},{"impl":"LinkedList","n":2741,"op":"remove","t":0.0},{"impl":"LinkedList","n":2751,"op":"remove","t":0.0},{"impl":"LinkedList","n":2761,"op":"remove","t":0.0},{"impl":"LinkedList","n":2771,"op":"remove","t":0.0},{"impl":"LinkedList","n":2781,"op":"remove","t":0.0},{"impl":"LinkedList","n":2791,"op":"remove","t":0.0},{"impl":"LinkedList","n":2801,"op":"remove","t":0.0},{"impl":"LinkedList","n":2811,"op":"remove","t":0.0},{"impl":"LinkedList","n":2821,"op":"remove","t":0.0},{"impl":"LinkedList","n":2831,"op":"remove","t":0.0},{"impl":"LinkedList","n":2841,"op":"remove","t":0.0},{"impl":"LinkedList","n":2851,"op":"remove","t":0.0},{"impl":"LinkedList","n":2861,"op":"remove","t":0.0},{"impl":"LinkedList","n":2871,"op":"remove","t":0.0},{"impl":"LinkedList","n":2881,"op":"remove","t":0.0},{"impl":"LinkedList","n":2891,"op":"remove","t":0.0},{"impl":"LinkedList","n":2901,"op":"remove","t":0.0},{"impl":"LinkedList","n":2911,"op":"remove","t":0.0},{"impl":"LinkedList","n":2921,"op":"remove","t":0.0},{"impl":"LinkedList","n":2931,"op":"remove","t":0.0},{"impl":"LinkedList","n":2941,"op":"remove","t":0.0},{"impl":"LinkedList","n":2951,"op":"remove","t":0.0},{"impl":"LinkedList","n":2961,"op":"remove","t":0.0},{"impl":"LinkedList","n":2971,"op":"remove","t":0.0},{"impl":"LinkedList","n":2981,"op":"remove","t":0.0},{"impl":"LinkedList","n":2991,"op":"remove","t":0.0},{"impl":"Vec","n":1,"op":"remove","t":0.0},{"impl":"Vec","n":11,"op":"remove","t":0.0},{"impl":"Vec","n":21,"op":"remove","t":0.0},{"impl":"Vec","n":31,"op":"remove","t":0.0},{"impl":"Vec","n":41,"op":"remove","t":16.78839464605562},{"impl":"Vec","n":51,"op":"remove","t":185.5156708216391},{"impl":"Vec","n":61,"op":"remove","t":323.3250453346377},{"impl":"Vec","n":71,"op":"remove","t":439.65172057663176},{"impl":"Vec","n":81,"op":"remove","t":540.1785966998305},{"impl":"Vec","n":91,"op":"remove","t":628.5950201043124},{"impl":"Vec","n":101,"op":"remove","t":707.4323611432887},{"impl":"Vec","n":111,"op":"remove","t":778.5030441827903},{"impl":"Vec","n":121,"op":"remove","t":843.1494100682903},{"impl":"Vec","n":131,"op":"remove","t":902.3934237543431},{"impl":"Vec","n":141,"op":"remove","t":957.0311554735222},{"impl":"Vec","n":151,"op":"remove","t":1007.6948118298096},{"impl":"Vec","n":161,"op":"remove","t":1054.8948356147466},{"impl":"Vec","n":171,"op":"remove","t":1099.0492974492317},{"impl":"Vec","n":181,"op":"remove","t":1140.504921606483},{"impl":"Vec","n":191,"op":"remove","t":1179.5524501834907},{"impl":"Vec","n":201,"op":"remove","t":1216.4380819327712},{"impl":"Vec","n":211,"op":"remove","t":1251.3721309207926},{"impl":"Vec","n":221,"op":"remove","t":1284.5356784178925},{"impl":"Vec","n":231,"op":"remove","t":1316.0857514990576},{"impl":"Vec","n":241,"op":"remove","t":1346.1594033743231},{"impl":"Vec","n":251,"op":"remove","t":1374.8769636162328},{"impl":"Vec","n":261,"op":"remove","t":1402.3446530374476},{"impl":"Vec","n":271,"op":"remove","t":1428.6567066646276},{"impl":"Vec","n":281,"op":"remove","t":1453.897111836678},{"impl":"Vec","n":291,"op":"remove","t":1478.1410422352078},{"impl":"Vec","n":301,"op":"remove","t":1501.4560495285173},{"impl":"Vec","n":311,"op":"remove","t":1523.903060188833},{"impl":"Vec","n":321,"op":"remove","t":1545.537214499242},{"impl":"Vec","n":331,"op":"remove","t":1566.4085768127902},{"impl":"Vec","n":341,"op":"remove","t":1586.562740067523},{"impl":"Vec","n":351,"op":"remove","t":1606.041342904422},{"impl":"Vec","n":361,"op":"remove","t":1624.8825141255197},{"impl":"Vec","n":371,"op":"remove","t":1643.1212564092943},{"impl":"Vec","n":381,"op":"remove","t":1660.7897789807057},{"impl":"Vec","n":391,"op":"remove","t":1677.9177871737638},{"impl":"Vec","n":401,"op":"remove","t":1694.5327354206875},{"impl":"Vec","n":411,"op":"remove","t":1710.6600490746828},{"impl":"Vec","n":421,"op":"remove","t":1726.3233195631037},{"impl":"Vec","n":431,"op":"remove","t":1741.5444766286105},{"impl":"Vec","n":441,"op":"remove","t":1756.3439408123609},{"impl":"Vec","n":451,"op":"remove","t":1770.740758838138},{"impl":"Vec","n":461,"op":"remove","t":1784.7527241479247},{"impl":"Vec","n":471,"op":"remove","t":1798.3964845013274},{"impl":"Vec","n":481,"op":"remove","t":1811.687638269916},{"impl":"Vec","n":491,"op":"remove","t":1824.6408208225102},{"impl":"Vec","n":501,"op":"remove","t":1837.2697822004106},{"impl":"Vec","n":511,"op":"remove","t":1849.5874571156364},{"impl":"Vec","n":521,"op":"remove","t":1861.6060281650402},{"impl":"Vec","n":531,"op":"remove","t":1873.3369830343422},{"impl":"Vec","n":541,"op":"remove","t":1884.7911663649916},{"impl":"Vec","n":551,"op":"remove","t":1895.9788268704683},{"impl":"Vec","n":561,"op":"remove","t":1906.909660214807},{"impl":"Vec","n":571,"op":"remove","t":1917.5928481026326},{"impl":"Vec","n":581,"op":"remove","t":1928.0370939754316},{"impl":"Vec","n":591,"op":"remove","t":1938.2506556616095},{"impl":"Vec","n":601,"op":"remove","t":1948.241375287038},{"impl":"Vec","n":611,"op":"remove","t":1958.0167067173807},{"impl":"Vec","n":621,"op":"remove","t":1967.5837407726726},{"impl":"Vec","n":631,"op":"remove","t":1976.9492284276625},{"impl":"Vec","n":641,"op":"remove","t":1986.1196021880069},{"impl":"Vec","n":651,"op":"remove","t":1995.1009958117534},{"impl":"Vec","n":661,"op":"remove","t":2003.8992625274805},{"impl":"Vec","n":671,"op":"remove","t":2012.519991884537},{"impl":"Vec","n":681,"op":"remove","t":2020.9685253568437},{"impl":"Vec","n":691,"op":"remove","t":2029.249970809241},{"impl":"Vec","n":701,"op":"remove","t":2037.369215924498},{"impl":"Vec","n":711,"op":"remove","t":2045.3309406792823},{"impl":"Vec","n":721,"op":"remove","t":2053.1396289488252},{"impl":"Vec","n":731,"op":"remove","t":2060.799579312294},{"impl":"Vec","n":741,"op":"remove","t":2068.3149151240195},{"impl":"Vec","n":751,"op":"remove","t":2075.689593909654},{"impl":"Vec","n":761,"op":"remove","t":2082.9274161408366},{"impl":"Vec","n":771,"op":"remove","t":2090.03203343704},{"impl":"Vec","n":781,"op":"remove","t":2097.0069562389103},{"impl":"Vec","n":791,"op":"remove","t":2103.855560993442},{"impl":"Vec","n":801,"op":"remove","t":2110.581096887773},{"impl":"Vec","n":811,"op":"remove","t":2117.186692165231},{"impl":"Vec","n":821,"op":"remove","t":2123.6753600543325},{"impl":"Vec","n":831,"op":"remove","t":2130.050004338853},{"impl":"Vec","n":841,"op":"remove","t":2136.31342459474},{"impl":"Vec","n":851,"op":"remove","t":2142.4683211174906},{"impl":"Vec","n":861,"op":"remove","t":2148.5172995616936},{"impl":"Vec","n":871,"op":"remove","t":2154.462875312685},{"impl":"Vec","n":881,"op":"remove","t":2160.307477608658},{"impl":"Vec","n":891,"op":"remove","t":2166.053453430138},{"impl":"Vec","n":901,"op":"remove","t":2171.7030711723937},{"impl":"Vec","n":911,"op":"remove","t":2177.258524115169},{"impl":"Vec","n":921,"op":"remove","t":2182.721933702993},{"impl":"Vec","n":931,"op":"remove","t":2188.0953526483804},{"impl":"Vec","n":941,"op":"remove","t":2193.380767869231},{"impl":"Vec","n":951,"op":"remove","t":2198.5801032709783},{"impl":"Vec","n":961,"op":"remove","t":2203.6952223832172},{"impl":"Vec","n":971,"op":"remove","t":2208.727930859852},{"impl":"Vec","n":981,"op":"remove","t":2213.6799788511607},{"impl":"Vec","n":991,"op":"remove","t":2218.553063255551},{"impl":"Vec","n":1001,"op":"remove","t":2223.3488298582947},{"impl":"Vec","n":1011,"op":"remove","t":2228.0688753639392},{"impl":"Vec","n":1021,"op":"remove","t":2232.7147493286957},{"impl":"Vec","n":1031,"op":"remove","t":2237.2879559986577},{"impl":"Vec","n":1041,"op":"remove","t":2241.7899560592996},{"impl":"Vec","n":1051,"op":"remove","t":2246.2221683013313},{"impl":"Vec","n":1061,"op":"remove","t":2250.5859712076917},{"impl":"Vec","n":1071,"op":"remove","t":2254.8827044660807},{"impl":"Vec","n":1081,"op":"remove","t":2259.1136704112214},{"impl":"Vec","n":1091,"op":"remove","t":2263.2801354007115},{"impl":"Vec","n":1101,"op":"remove","t":2267.383331128098},{"impl":"Vec","n":1111,"op":"remove","t":2271.424455876595},{"impl":"Vec","n":1121,"op":"remove","t":2275.4046757166293},{"impl":"Vec","n":1131,"op":"remove","t":2279.325125650206},{"impl":"Vec","n":1141,"op":"remove","t":2283.186910704896},{"impl":"Vec","n":1151,"op":"remove","t":2286.9911069801096},{"impl":"Vec","n":1161,"op":"remove","t":2290.7387626480895},{"impl":"Vec","n":1171,"op":"remove","t":2294.430898912002},{"impl":"Vec","n":1181,"op":"remove","t":2298.068510923272},{"impl":"Vec","n":1191,"op":"remove","t":2301.652568660261},{"impl":"Vec","n":1201,"op":"remove","t":2305.1840177701915},{"impl":"Vec","n":1211,"op":"remove","t":2308.663780376178},{"impl":"Vec","n":1221,"op":"remove","t":2312.092755851068},{"impl":"Vec","n":1231,"op":"remove","t":2315.471821559723},{"impl":"Vec","n":1241,"op":"remove","t":2318.801833571271},{"impl":"Vec","n":1251,"op":"remove","t":2322.0836273427744},{"impl":"Vec","n":1261,"op":"remove","t":2325.318018375684},{"impl":"Vec","n":1271,"op":"remove","t":2328.5058028463673},{"impl":"Vec","n":1281,"op":"remove","t":2331.6477582119223},{"impl":"Vec","n":1291,"op":"remove","t":2334.74464379244},{"impl":"Vec","n":1301,"op":"remove","t":2337.797201330809},{"impl":"Vec","n":1311,"op":"remove","t":2340.8061555310715},{"impl":"Vec","n":1321,"op":"remove","t":2343.772214576343},{"impl":"Vec","n":1331,"op":"remove","t":2346.696070627187},{"impl":"Vec","n":1341,"op":"remove","t":2349.578400301349},{"impl":"Vec","n":1351,"op":"remove","t":2352.4198651356564},{"impl":"Vec","n":1361,"op":"remove","t":2355.221112030899},{"impl":"Vec","n":1371,"op":"remove","t":2357.982773680423},{"impl":"Vec","n":1381,"op":"remove","t":2360.705468983135},{"impl":"Vec","n":1391,"op":"remove","t":2363.3898034416325},{"impl":"Vec","n":1401,"op":"remove","t":2366.0363695460514},{"impl":"Vec","n":1411,"op":"remove","t":2368.645747144277},{"impl":"Vec","n":1421,"op":"remove","t":2371.2185037990726},{"impl":"Vec","n":1431,"op":"remove","t":2373.755195132696},{"impl":"Vec","n":1441,"op":"remove","t":2376.256365159507},{"impl":"Vec","n":1451,"op":"remove","t":2378.7225466070768},{"impl":"Vec","n":1461,"op":"remove","t":2381.1542612262765},{"impl":"Vec","n":1471,"op":"remove","t":2383.5520200907768},{"impl":"Vec","n":1481,"op":"remove","t":2385.9163238864107},{"impl":"Vec","n":1491,"op":"remove","t":2388.247663190802},{"impl":"Vec","n":1501,"op":"remove","t":2390.5465187436375},{"impl":"Vec","n":1511,"op":"remove","t":2392.813361707973},{"impl":"Vec","n":1521,"op":"remove","t":2395.048653922925},{"impl":"Vec","n":1531,"op":"remove","t":2397.252848148067},{"impl":"Vec","n":1541,"op":"remove","t":2399.4263882998903},{"impl":"Vec","n":1551,"op":"remove","t":2401.5697096806007},{"impl":"Vec","n":1561,"op":"remove","t":2403.6832391995713},{"impl":"Vec","n":1571,"op":"remove","t":2405.767395587724},{"impl":"Vec","n":1581,"op":"remove","t":2407.822589605104},{"impl":"Vec","n":1591,"op":"remove","t":2409.8492242419193},{"impl":"Vec","n":1601,"op":"remove","t":2411.847694913272},{"impl":"Vec","n":1611,"op":"remove","t":2413.818389647832},{"impl":"Vec","n":1621,"op":"remove","t":2415.7616892706787},{"impl":"Vec","n":1631,"op":"remove","t":2417.677967580503},{"impl":"Vec","n":1641,"op":"remove","t":2419.5675915214156},{"impl":"Vec","n":1651,"op":"remove","t":2421.430921349518},{"impl":"Vec","n":1661,"op":"remove","t":2423.2683107944517},{"impl":"Vec","n":1671,"op":"remove","t":2425.0801072161},{"impl":"Vec","n":1681,"op":"remove","t":2426.866651756615},{"impl":"Vec","n":1691,"op":"remove","t":2428.6282794879303},{"impl":"Vec","n":1701,"op":"remove","t":2430.36531955493},{"impl":"Vec","n":1711,"op":"remove","t":2432.0780953144204},{"impl":"Vec","n":1721,"op":"remove","t":2433.766924470053},{"impl":"Vec","n":1731,"op":"remove","t":2435.4321192033353},{"impl":"Vec","n":1741,"op":"remove","t":2437.073986300877},{"impl":"Vec","n":1751,"op":"remove","t":2438.6928272779774},{"impl":"Vec","n":1761,"op":"remove","t":2440.288938498711},{"impl":"Vec","n":1771,"op":"remove","t":2441.8626112925986},{"impl":"Vec","n":1781,"op":"remove","t":2443.414132068},{"impl":"Vec","n":1791,"op":"remove","t":2444.9437824223387},{"impl":"Vec","n":1801,"op":"remove","t":2446.4518392492414},{"impl":"Vec","n":1811,"op":"remove","t":2447.9385748427267},{"impl":"Vec","n":1821,"op":"remove","t":2449.4042569985195},{"impl":"Vec","n":1831,"op":"remove","t":2450.849149112588},{"impl":"Vec","n":1841,"op":"remove","t":2452.273510277003},{"impl":"Vec","n":1851,"op":"remove","t":2453.6775953731963},{"impl":"Vec","n":1861,"op":"remove","t":2455.061655162709},{"impl":"Vec","n":1871,"op":"remove","t":2456.4259363755064},{"impl":"Vec","n":1881,"op":"remove","t":2457.770681795943},{"impl":"Vec","n":1891,"op":"remove","t":2459.096130346439},{"impl":"Vec","n":1901,"op":"remove","t":2460.4025171689673},{"impl":"Vec","n":1911,"op":"remove","t":2461.6900737043816},{"impl":"Vec","n":1921,"op":"remove","t":2462.959027769692},{"impl":"Vec","n":1931,"op":"remove","t":2464.209603633325},{"impl":"Vec","n":1941,"op":"remove","t":2465.44202208844},{"impl":"Vec","n":1951,"op":"remove","t":2466.6565005243665},{"impl":"Vec","n":1961,"op":"remove","t":2467.853252996216},{"impl":"Vec","n":1971,"op":"remove","t":2469.0324902927105},{"impl":"Vec","n":1981,"op":"remove","t":2470.1944200023186},{"impl":"Vec","n":1991,"op":"remove","t":2471.3392465776988},{"impl":"Vec","n":2001,"op":"remove","t":2472.46717139855},{"impl":"Vec","n":2011,"op":"remove","t":2473.578392832885},{"impl":"Vec","n":2021,"op":"remove","t":2474.67310629679},{"impl":"Vec","n":2031,"op":"remove","t":2475.7515043126978},{"impl":"Vec","n":2041,"op":"remove","t":2476.8137765662486},{"impl":"Vec","n":2051,"op":"remove","t":2477.8601099617445},{"impl":"Vec","n":2061,"op":"remove","t":2478.8906886762616},{"impl":"Vec","n":2071,"op":"remove","t":2479.905694212456},{"impl":"Vec","n":2081,"op":"remove","t":2480.905305450092},{"impl":"Vec","n":2091,"op":"remove","t":2481.8896986963364},{"impl":"Vec","n":2101,"op":"remove","t":2482.859047734861},{"impl":"Vec","n":2111,"op":"remove","t":2483.8135238737636},{"impl":"Vec","n":2121,"op":"remove","t":2484.7532959923697},{"impl":"Vec","n":2131,"op":"remove","t":2485.678530586935},{"impl":"Vec","n":2141,"op":"remove","t":2486.5893918152606},{"impl":"Vec","n":2151,"op":"remove","t":2487.4860415402936},{"impl":"Vec","n":2161,"op":"remove","t":2488.3686393726935},{"impl":"Vec","n":2171,"op":"remove","t":2489.2373427124303},{"impl":"Vec","n":2181,"op":"remove","t":2490.092306789425},{"impl":"Vec","n":2191,"op":"remove","t":2490.933684703253},{"impl":"Vec","n":2201,"op":"remove","t":2491.761627461952},{"impl":"Vec","n":2211,"op":"remove","t":2492.576284019943},{"impl":"Vec","n":2221,"op":"remove","t":2493.3778013151077},{"impl":"Vec","n":2231,"op":"remove","t":2494.1663243050125},{"impl":"Vec","n":2241,"op":"remove","t":2494.9419960023492},{"impl":"Vec","n":2251,"op":"remove","t":2495.7049575095593},{"impl":"Vec","n":2261,"op":"remove","t":2496.455348052713},{"impl":"Vec","n":2271,"op":"remove","t":2497.1933050146263},{"impl":"Vec","n":2281,"op":"remove","t":2497.9189639672577},{"impl":"Vec","n":2291,"op":"remove","t":2498.6324587033964},{"impl":"Vec","n":2301,"op":"remove","t":2499.3339212676574},{"impl":"Vec","n":2311,"op":"remove","t":2500.0234819868033},{"impl":"Vec","n":2321,"op":"remove","t":2500.701269499415},{"impl":"Vec","n":2331,"op":"remove","t":2501.367410784927},{"impl":"Vec","n":2341,"op":"remove","t":2502.0220311920307},{"impl":"Vec","n":2351,"op":"remove","t":2502.6652544664894},{"impl":"Vec","n":2361,"op":"remove","t":2503.2972027783385},{"impl":"Vec","n":2371,"op":"remove","t":2503.9179967485416},{"impl":"Vec","n":2381,"op":"remove","t":2504.527755475056},{"impl":"Vec","n":2391,"op":"remove","t":2505.1265965583734},{"impl":"Vec","n":2401,"op":"remove","t":2505.714636126513},{"impl":"Vec","n":2411,"op":"remove","t":2506.2919888595115},{"impl":"Vec","n":2421,"op":"remove","t":2506.8587680133837},{"impl":"Vec","n":2431,"op":"remove","t":2507.415085443612},{"impl":"Vec","n":2441,"op":"remove","t":2507.9610516281414},{"impl":"Vec","n":2451,"op":"remove","t":2508.4967756899046},{"impl":"Vec","n":2461,"op":"remove","t":2509.0223654188903},{"impl":"Vec","n":2471,"op":"remove","t":2509.537927293768},{"impl":"Vec","n":2481,"op":"remove","t":2510.043566503072},{"impl":"Vec","n":2491,"op":"remove","t":2510.539386965956},{"impl":"Vec","n":2501,"op":"remove","t":2511.0254913525428},{"impl":"Vec","n":2511,"op":"remove","t":2511.501981103852},{"impl":"Vec","n":2521,"op":"remove","t":2511.9689564513496},{"impl":"Vec","n":2531,"op":"remove","t":2512.4265164360954},{"impl":"Vec","n":2541,"op":"remove","t":2512.874758927523},{"impl":"Vec","n":2551,"op":"remove","t":2513.3137806418463},{"impl":"Vec","n":2561,"op":"remove","t":2513.7436771601056},{"impl":"Vec","n":2571,"op":"remove","t":2514.1645429458645},{"impl":"Vec","n":2581,"op":"remove","t":2514.5764713625613},{"impl":"Vec","n":2591,"op":"remove","t":2514.9795546905284},{"impl":"Vec","n":2601,"op":"remove","t":2515.3738841436766},{"impl":"Vec","n":2611,"op":"remove","t":2515.7595498858705},{"impl":"Vec","n":2621,"op":"remove","t":2516.136641046973},{"impl":"Vec","n":2631,"op":"remove","t":2516.5052457386123},{"impl":"Vec","n":2641,"op":"remove","t":2516.865451069615},{"impl":"Vec","n":2651,"op":"remove","t":2517.217343161182},{"impl":"Vec","n":2661,"op":"remove","t":2517.561007161749},{"impl":"Vec","n":2671,"op":"remove","t":2517.8965272615933},{"impl":"Vec","n":2681,"op":"remove","t":2518.2239867071453},{"impl":"Vec","n":2691,"op":"remove","t":2518.5434678150527},{"impl":"Vec","n":2701,"op":"remove","t":2518.8550519859728},{"impl":"Vec","n":2711,"op":"remove","t":2519.158819718112},{"impl":"Vec","n":2721,"op":"remove","t":2519.454850620516},{"impl":"Vec","n":2731,"op":"remove","t":2519.7432234261178},{"impl":"Vec","n":2741,"op":"remove","t":2520.0240160045496},{"impl":"Vec","n":2751,"op":"remove","t":2520.2973053747137},{"impl":"Vec","n":2761,"op":"remove","t":2520.563167717132},{"impl":"Vec","n":2771,"op":"remove","t":2520.82167838607},{"impl":"Vec","n":2781,"op":"remove","t":2521.072911921442},{"impl":"Vec","n":2791,"op":"remove","t":2521.3169420605027},{"impl":"Vec","n":2801,"op":"remove","t":2521.553841749334},{"impl":"Vec","n":2811,"op":"remove","t":2521.7836831541176},{"impl":"Vec","n":2821,"op":"remove","t":2522.006537672218},{"impl":"Vec","n":2831,"op":"remove","t":2522.2224759430615},{"impl":"Vec","n":2841,"op":"remove","t":2522.431567858828},{"impl":"Vec","n":2851,"op":"remove","t":2522.6338825749535},{"impl":"Vec","n":2861,"op":"remove","t":2522.829488520448},{"impl":"Vec","n":2871,"op":"remove","t":2523.0184534080354},{"impl":"Vec","n":2881,"op":"remove","t":2523.2008442441143},{"impl":"Vec","n":2891,"op":"remove","t":2523.376727338548},{"impl":"Vec","n":2901,"op":"remove","t":2523.546168314284},{"impl":"Vec","n":2911,"op":"remove","t":2523.7092321168134},{"impl":"Vec","n":2921,"op":"remove","t":2523.8659830234615},{"impl":"Vec","n":2931,"op":"remove","t":2524.016484652517},{"impl":"Vec","n":2941,"op":"remove","t":2524.160799972223},{"impl":"Vec","n":2951,"op":"remove","t":2524.298991309587},{"impl":"Vec","n":2961,"op":"remove","t":2524.4311203590737},{"impl":"Vec","n":2971,"op":"remove","t":2524.5572481911263},{"impl":"Vec","n":2981,"op":"remove","t":2524.677435260553},{"impl":"Vec","n":2991,"op":"remove","t":2524.7917414147823}]},"encoding":{"color":{"field":"impl","legend":{"title":"Implementation"}},"x":{"axis":{"title":"Size of container (n)"},"field":"n","scale":{"domain":[1,3000]},"type":"quantitative"},"y":{"axis":{"title":"Estimated cost"},"field":"t","scale":{"domain":[0,200]},"type":"quantitative"}},"mark":{"clip":true,"fillOpacity":1,"type":"line"}}],"width":500}
\ No newline at end of file +{"$schema":"https://vega.github.io/schema/vega-lite/v5.json","height":250,"layer":[{"data":{"values":[{"impl":"BTreeSet","n":1,"op":"insert","t":18.076851637320825},{"impl":"BTreeSet","n":11,"op":"insert","t":33.665771829276444},{"impl":"BTreeSet","n":21,"op":"insert","t":37.87193340568318},{"impl":"BTreeSet","n":31,"op":"insert","t":40.40661054191706},{"impl":"BTreeSet","n":41,"op":"insert","t":42.22709874089264},{"impl":"BTreeSet","n":51,"op":"insert","t":43.64895053908166},{"impl":"BTreeSet","n":61,"op":"insert","t":44.8159785719409},{"impl":"BTreeSet","n":71,"op":"insert","t":45.8059397870653},{"impl":"BTreeSet","n":81,"op":"insert","t":46.66566783475544},{"impl":"BTreeSet","n":91,"op":"insert","t":47.42556718359447},{"impl":"BTreeSet","n":101,"op":"insert","t":48.10649924425795},{"impl":"BTreeSet","n":111,"op":"insert","t":48.72340048345857},{"impl":"BTreeSet","n":121,"op":"insert","t":49.287333337638515},{"impl":"BTreeSet","n":131,"op":"insert","t":49.80671997646803},{"impl":"BTreeSet","n":141,"op":"insert","t":50.28812093662533},{"impl":"BTreeSet","n":151,"op":"insert","t":50.73674632953512},{"impl":"BTreeSet","n":161,"op":"insert","t":51.15680279239976},{"impl":"BTreeSet","n":171,"op":"insert","t":51.551735709219614},{"impl":"BTreeSet","n":181,"op":"insert","t":51.924402487819485},{"impl":"BTreeSet","n":191,"op":"insert","t":52.27719917833814},{"impl":"BTreeSet","n":201,"op":"insert","t":52.61215474239215},{"impl":"BTreeSet","n":211,"op":"insert","t":52.93100241040586},{"impl":"BTreeSet","n":221,"op":"insert","t":53.23523450085467},{"impl":"BTreeSet","n":231,"op":"insert","t":53.526145097906976},{"impl":"BTreeSet","n":241,"op":"insert","t":53.80486367805183},{"impl":"BTreeSet","n":251,"op":"insert","t":54.07238189572098},{"impl":"BTreeSet","n":261,"op":"insert","t":54.32957513289575},{"impl":"BTreeSet","n":271,"op":"insert","t":54.57721999485979},{"impl":"BTreeSet","n":281,"op":"insert","t":54.81600863413287},{"impl":"BTreeSet","n":291,"op":"insert","t":55.04656056853548},{"impl":"BTreeSet","n":301,"op":"insert","t":55.269432501709346},{"impl":"BTreeSet","n":311,"op":"insert","t":55.485126538040944},{"impl":"BTreeSet","n":321,"op":"insert","t":55.69409709704608},{"impl":"BTreeSet","n":331,"op":"insert","t":55.89675676672391},{"impl":"BTreeSet","n":341,"op":"insert","t":56.09348128545787},{"impl":"BTreeSet","n":351,"op":"insert","t":56.28461380366389},{"impl":"BTreeSet","n":361,"op":"insert","t":56.47046854663763},{"impl":"BTreeSet","n":371,"op":"insert","t":56.651333976811955},{"impl":"BTreeSet","n":381,"op":"insert","t":56.82747553534151},{"impl":"BTreeSet","n":391,"op":"insert","t":56.999138028432256},{"impl":"BTreeSet","n":401,"op":"insert","t":57.166547712263835},{"impl":"BTreeSet","n":411,"op":"insert","t":57.32991412106506},{"impl":"BTreeSet","n":421,"op":"insert","t":57.48943167540099},{"impl":"BTreeSet","n":431,"op":"insert","t":57.64528110163869},{"impl":"BTreeSet","n":441,"op":"insert","t":57.79763068858459},{"impl":"BTreeSet","n":451,"op":"insert","t":57.946637403205735},{"impl":"BTreeSet","n":461,"op":"insert","t":58.092447883981976},{"impl":"BTreeSet","n":471,"op":"insert","t":58.23519932764929},{"impl":"BTreeSet","n":481,"op":"insert","t":58.37502028277615},{"impl":"BTreeSet","n":491,"op":"insert","t":58.5120313616779},{"impl":"BTreeSet","n":501,"op":"insert","t":58.646345880550285},{"impl":"BTreeSet","n":511,"op":"insert","t":58.77807043633554},{"impl":"BTreeSet","n":521,"op":"insert","t":58.90730542767972},{"impl":"BTreeSet","n":531,"op":"insert","t":59.03414552635978},{"impl":"BTreeSet","n":541,"op":"insert","t":59.1586801047264},{"impl":"BTreeSet","n":551,"op":"insert","t":59.28099362399662},{"impl":"BTreeSet","n":561,"op":"insert","t":59.40116598762232},{"impl":"BTreeSet","n":571,"op":"insert","t":59.51927286343717},{"impl":"BTreeSet","n":581,"op":"insert","t":59.63538597783513},{"impl":"BTreeSet","n":591,"op":"insert","t":59.74957338484447},{"impl":"BTreeSet","n":601,"op":"insert","t":59.86189971262526},{"impl":"BTreeSet","n":611,"op":"insert","t":59.97242638962576},{"impl":"BTreeSet","n":621,"op":"insert","t":60.0812118523796},{"impl":"BTreeSet","n":631,"op":"insert","t":60.188311736703355},{"impl":"BTreeSet","n":641,"op":"insert","t":60.29377905386108},{"impl":"BTreeSet","n":651,"op":"insert","t":60.397664353092026},{"impl":"BTreeSet","n":661,"op":"insert","t":60.50001587174911},{"impl":"BTreeSet","n":671,"op":"insert","t":60.6008796741644},{"impl":"BTreeSet","n":681,"op":"insert","t":60.70029978024233},{"impl":"BTreeSet","n":691,"op":"insert","t":60.798318284679155},{"impl":"BTreeSet","n":701,"op":"insert","t":60.894975467616945},{"impl":"BTreeSet","n":711,"op":"insert","t":60.99030989746001},{"impl":"BTreeSet","n":721,"op":"insert","t":61.08435852651069},{"impl":"BTreeSet","n":731,"op":"insert","t":61.17715678001809},{"impl":"BTreeSet","n":741,"op":"insert","t":61.26873863917659},{"impl":"BTreeSet","n":751,"op":"insert","t":61.35913671856106},{"impl":"BTreeSet","n":761,"op":"insert","t":61.4483823384402},{"impl":"BTreeSet","n":771,"op":"insert","t":61.53650559236918},{"impl":"BTreeSet","n":781,"op":"insert","t":61.623535410426925},{"impl":"BTreeSet","n":791,"op":"insert","t":61.70949961843006},{"impl":"BTreeSet","n":801,"op":"insert","t":61.7944249934273},{"impl":"BTreeSet","n":811,"op":"insert","t":61.87833731575092},{"impl":"BTreeSet","n":821,"op":"insert","t":61.96126141787846},{"impl":"BTreeSet","n":831,"op":"insert","t":62.04322123033667},{"impl":"BTreeSet","n":841,"op":"insert","t":62.12423982485957},{"impl":"BTreeSet","n":851,"op":"insert","t":62.204339454995825},{"impl":"BTreeSet","n":861,"op":"insert","t":62.28354159434386},{"impl":"BTreeSet","n":871,"op":"insert","t":62.36186697257938},{"impl":"BTreeSet","n":881,"op":"insert","t":62.4393356094263},{"impl":"BTreeSet","n":891,"op":"insert","t":62.51596684671048},{"impl":"BTreeSet","n":901,"op":"insert","t":62.59177937862466},{"impl":"BTreeSet","n":911,"op":"insert","t":62.666791280323025},{"impl":"BTreeSet","n":921,"op":"insert","t":62.741020034954815},{"impl":"BTreeSet","n":931,"op":"insert","t":62.81448255923811},{"impl":"BTreeSet","n":941,"op":"insert","t":62.887195227667576},{"impl":"BTreeSet","n":951,"op":"insert","t":62.95917389544249},{"impl":"BTreeSet","n":961,"op":"insert","t":63.030433920195556},{"impl":"BTreeSet","n":971,"op":"insert","t":63.10099018259709},{"impl":"BTreeSet","n":981,"op":"insert","t":63.170857105903494},{"impl":"BTreeSet","n":991,"op":"insert","t":63.24004867451437},{"impl":"BTreeSet","n":1001,"op":"insert","t":63.30857845159817},{"impl":"BTreeSet","n":1011,"op":"insert","t":63.376459595841524},{"impl":"BTreeSet","n":1021,"op":"insert","t":63.44370487737442},{"impl":"BTreeSet","n":1031,"op":"insert","t":63.51032669291928},{"impl":"BTreeSet","n":1041,"op":"insert","t":63.57633708020871},{"impl":"BTreeSet","n":1051,"op":"insert","t":63.641747731714226},{"impl":"BTreeSet","n":1061,"op":"insert","t":63.706570007724764},{"impl":"BTreeSet","n":1071,"op":"insert","t":63.77081494881182},{"impl":"BTreeSet","n":1081,"op":"insert","t":63.83449328771523},{"impl":"BTreeSet","n":1091,"op":"insert","t":63.89761546068188},{"impl":"BTreeSet","n":1101,"op":"insert","t":63.96019161828685},{"impl":"BTreeSet","n":1111,"op":"insert","t":64.02223163576562},{"impl":"BTreeSet","n":1121,"op":"insert","t":64.0837451228831},{"impl":"BTreeSet","n":1131,"op":"insert","t":64.14474143336462},{"impl":"BTreeSet","n":1141,"op":"insert","t":64.20522967391156},{"impl":"BTreeSet","n":1151,"op":"insert","t":64.26521871282395},{"impl":"BTreeSet","n":1161,"op":"insert","t":64.32471718824975},{"impl":"BTreeSet","n":1171,"op":"insert","t":64.38373351608058},{"impl":"BTreeSet","n":1181,"op":"insert","t":64.44227589751175},{"impl":"BTreeSet","n":1191,"op":"insert","t":64.5003523262834},{"impl":"BTreeSet","n":1201,"op":"insert","t":64.55797059561914},{"impl":"BTreeSet","n":1211,"op":"insert","t":64.61513830487672},{"impl":"BTreeSet","n":1221,"op":"insert","t":64.67186286592549},{"impl":"BTreeSet","n":1231,"op":"insert","t":64.72815150926361},{"impl":"BTreeSet","n":1241,"op":"insert","t":64.78401128988784},{"impl":"BTreeSet","n":1251,"op":"insert","t":64.83944909292778},{"impl":"BTreeSet","n":1261,"op":"insert","t":64.89447163905572},{"impl":"BTreeSet","n":1271,"op":"insert","t":64.94908548968303},{"impl":"BTreeSet","n":1281,"op":"insert","t":65.00329705195269},{"impl":"BTreeSet","n":1291,"op":"insert","t":65.05711258353783},{"impl":"BTreeSet","n":1301,"op":"insert","t":65.11053819725518},{"impl":"BTreeSet","n":1311,"op":"insert","t":65.1635798655017},{"impl":"BTreeSet","n":1321,"op":"insert","t":65.2162434245229},{"impl":"BTreeSet","n":1331,"op":"insert","t":65.26853457851995},{"impl":"BTreeSet","n":1341,"op":"insert","t":65.3204589036033},{"impl":"BTreeSet","n":1351,"op":"insert","t":65.37202185159923},{"impl":"BTreeSet","n":1361,"op":"insert","t":65.4232287537162},{"impl":"BTreeSet","n":1371,"op":"insert","t":65.47408482407695},{"impl":"BTreeSet","n":1381,"op":"insert","t":65.52459516312214},{"impl":"BTreeSet","n":1391,"op":"insert","t":65.57476476089141},{"impl":"BTreeSet","n":1401,"op":"insert","t":65.62459850018664},{"impl":"BTreeSet","n":1411,"op":"insert","t":65.67410115962306},{"impl":"BTreeSet","n":1421,"op":"insert","t":65.72327741657233},{"impl":"BTreeSet","n":1431,"op":"insert","t":65.77213185000252},{"impl":"BTreeSet","n":1441,"op":"insert","t":65.82066894321927},{"impl":"BTreeSet","n":1451,"op":"insert","t":65.86889308651209},{"impl":"BTreeSet","n":1461,"op":"insert","t":65.91680857970977},{"impl":"BTreeSet","n":1471,"op":"insert","t":65.96441963464869},{"impl":"BTreeSet","n":1481,"op":"insert","t":66.01173037755746},{"impl":"BTreeSet","n":1491,"op":"insert","t":66.05874485136141},{"impl":"BTreeSet","n":1501,"op":"insert","t":66.10546701790989},{"impl":"BTreeSet","n":1511,"op":"insert","t":66.15190076012979},{"impl":"BTreeSet","n":1521,"op":"insert","t":66.19804988410799},{"impl":"BTreeSet","n":1531,"op":"insert","t":66.24391812110547},{"impl":"BTreeSet","n":1541,"op":"insert","t":66.28950912950597},{"impl":"BTreeSet","n":1551,"op":"insert","t":66.33482649670165},{"impl":"BTreeSet","n":1561,"op":"insert","t":66.37987374091803},{"impl":"BTreeSet","n":1571,"op":"insert","t":66.42465431298072},{"impl":"BTreeSet","n":1581,"op":"insert","t":66.46917159802616},{"impl":"BTreeSet","n":1591,"op":"insert","t":66.51342891715836},{"impl":"BTreeSet","n":1601,"op":"insert","t":66.55742952905373},{"impl":"BTreeSet","n":1611,"op":"insert","t":66.60117663151595},{"impl":"BTreeSet","n":1621,"op":"insert","t":66.6446733629828},{"impl":"BTreeSet","n":1631,"op":"insert","t":66.68792280398652},{"impl":"BTreeSet","n":1641,"op":"insert","t":66.73092797856974},{"impl":"BTreeSet","n":1651,"op":"insert","t":66.77369185565811},{"impl":"BTreeSet","n":1661,"op":"insert","t":66.81621735039181},{"impl":"BTreeSet","n":1671,"op":"insert","t":66.85850732541681},{"impl":"BTreeSet","n":1681,"op":"insert","t":66.90056459213781},{"impl":"BTreeSet","n":1691,"op":"insert","t":66.94239191193394},{"impl":"BTreeSet","n":1701,"op":"insert","t":66.98399199733856},{"impl":"BTreeSet","n":1711,"op":"insert","t":67.02536751318465},{"impl":"BTreeSet","n":1721,"op":"insert","t":67.06652107771663},{"impl":"BTreeSet","n":1731,"op":"insert","t":67.10745526367012},{"impl":"BTreeSet","n":1741,"op":"insert","t":67.1481725993205},{"impl":"BTreeSet","n":1751,"op":"insert","t":67.1886755695016},{"impl":"BTreeSet","n":1761,"op":"insert","t":67.22896661659506},{"impl":"BTreeSet","n":1771,"op":"insert","t":67.26904814149208},{"impl":"BTreeSet","n":1781,"op":"insert","t":67.30892250452784},{"impl":"BTreeSet","n":1791,"op":"insert","t":67.34859202638981},{"impl":"BTreeSet","n":1801,"op":"insert","t":67.38805898900077},{"impl":"BTreeSet","n":1811,"op":"insert","t":67.42732563637739},{"impl":"BTreeSet","n":1821,"op":"insert","t":67.46639417546528},{"impl":"BTreeSet","n":1831,"op":"insert","t":67.50526677695093},{"impl":"BTreeSet","n":1841,"op":"insert","t":67.54394557605177},{"impl":"BTreeSet","n":1851,"op":"insert","t":67.58243267328469},{"impl":"BTreeSet","n":1861,"op":"insert","t":67.62073013521396},{"impl":"BTreeSet","n":1871,"op":"insert","t":67.65883999517901},{"impl":"BTreeSet","n":1881,"op":"insert","t":67.69676425400284},{"impl":"BTreeSet","n":1891,"op":"insert","t":67.73450488068177},{"impl":"BTreeSet","n":1901,"op":"insert","t":67.77206381305675},{"impl":"BTreeSet","n":1911,"op":"insert","t":67.80944295846729},{"impl":"BTreeSet","n":1921,"op":"insert","t":67.84664419438826},{"impl":"BTreeSet","n":1931,"op":"insert","t":67.88366936905012},{"impl":"BTreeSet","n":1941,"op":"insert","t":67.9205203020431},{"impl":"BTreeSet","n":1951,"op":"insert","t":67.95719878490594},{"impl":"BTreeSet","n":1961,"op":"insert","t":67.99370658169958},{"impl":"BTreeSet","n":1971,"op":"insert","t":68.03004542956617},{"impl":"BTreeSet","n":1981,"op":"insert","t":68.06621703927406},{"impl":"BTreeSet","n":1991,"op":"insert","t":68.10222309574893},{"impl":"BTreeSet","n":2001,"op":"insert","t":68.13806525859167},{"impl":"BTreeSet","n":2011,"op":"insert","t":68.1737451625835},{"impl":"BTreeSet","n":2021,"op":"insert","t":68.20926441817826},{"impl":"BTreeSet","n":2031,"op":"insert","t":68.24462461198283},{"impl":"BTreeSet","n":2041,"op":"insert","t":68.27982730722559},{"impl":"BTreeSet","n":2051,"op":"insert","t":68.31487404421354},{"impl":"BTreeSet","n":2061,"op":"insert","t":68.34976634077815},{"impl":"BTreeSet","n":2071,"op":"insert","t":68.38450569271059},{"impl":"BTreeSet","n":2081,"op":"insert","t":68.4190935741864},{"impl":"BTreeSet","n":2091,"op":"insert","t":68.45353143817995},{"impl":"BTreeSet","n":2101,"op":"insert","t":68.48782071686905},{"impl":"BTreeSet","n":2111,"op":"insert","t":68.52196282202999},{"impl":"BTreeSet","n":2121,"op":"insert","t":68.55595914542316},{"impl":"BTreeSet","n":2131,"op":"insert","t":68.58981105916968},{"impl":"BTreeSet","n":2141,"op":"insert","t":68.62351991611912},{"impl":"BTreeSet","n":2151,"op":"insert","t":68.65708705020882},{"impl":"BTreeSet","n":2161,"op":"insert","t":68.69051377681467},{"impl":"BTreeSet","n":2171,"op":"insert","t":68.72380139309391},{"impl":"BTreeSet","n":2181,"op":"insert","t":68.75695117832008},{"impl":"BTreeSet","n":2191,"op":"insert","t":68.78996439421024},{"impl":"BTreeSet","n":2201,"op":"insert","t":68.82284228524476},{"impl":"BTreeSet","n":2211,"op":"insert","t":68.85558607897981},{"impl":"BTreeSet","n":2221,"op":"insert","t":68.88819698635298},{"impl":"BTreeSet","n":2231,"op":"insert","t":68.92067620198178},{"impl":"BTreeSet","n":2241,"op":"insert","t":68.95302490445567},{"impl":"BTreeSet","n":2251,"op":"insert","t":68.98524425662151},{"impl":"BTreeSet","n":2261,"op":"insert","t":69.01733540586264},{"impl":"BTreeSet","n":2271,"op":"insert","t":69.04929948437187},{"impl":"BTreeSet","n":2281,"op":"insert","t":69.08113760941852},{"impl":"BTreeSet","n":2291,"op":"insert","t":69.11285088360941},{"impl":"BTreeSet","n":2301,"op":"insert","t":69.14444039514443},{"impl":"BTreeSet","n":2311,"op":"insert","t":69.1759072180664},{"impl":"BTreeSet","n":2321,"op":"insert","t":69.20725241250557},{"impl":"BTreeSet","n":2331,"op":"insert","t":69.23847702491888},{"impl":"BTreeSet","n":2341,"op":"insert","t":69.2695820883241},{"impl":"BTreeSet","n":2351,"op":"insert","t":69.300568622529},{"impl":"BTreeSet","n":2361,"op":"insert","t":69.33143763435558},{"impl":"BTreeSet","n":2371,"op":"insert","t":69.36219011785965},{"impl":"BTreeSet","n":2381,"op":"insert","t":69.3928270545457},{"impl":"BTreeSet","n":2391,"op":"insert","t":69.4233494135774},{"impl":"BTreeSet","n":2401,"op":"insert","t":69.45375815198355},{"impl":"BTreeSet","n":2411,"op":"insert","t":69.48405421485987},{"impl":"BTreeSet","n":2421,"op":"insert","t":69.51423853556652},{"impl":"BTreeSet","n":2431,"op":"insert","t":69.54431203592169},{"impl":"BTreeSet","n":2441,"op":"insert","t":69.574275626391},{"impl":"BTreeSet","n":2451,"op":"insert","t":69.60413020627327},{"impl":"BTreeSet","n":2461,"op":"insert","t":69.63387666388229},{"impl":"BTreeSet","n":2471,"op":"insert","t":69.66351587672509},{"impl":"BTreeSet","n":2481,"op":"insert","t":69.69304871167648},{"impl":"BTreeSet","n":2491,"op":"insert","t":69.72247602515013},{"impl":"BTreeSet","n":2501,"op":"insert","t":69.75179866326621},{"impl":"BTreeSet","n":2511,"op":"insert","t":69.78101746201573},{"impl":"BTreeSet","n":2521,"op":"insert","t":69.81013324742153},{"impl":"BTreeSet","n":2531,"op":"insert","t":69.83914683569617},{"impl":"BTreeSet","n":2541,"op":"insert","t":69.8680590333966},{"impl":"BTreeSet","n":2551,"op":"insert","t":69.89687063757597},{"impl":"BTreeSet","n":2561,"op":"insert","t":69.92558243593227},{"impl":"BTreeSet","n":2571,"op":"insert","t":69.9541952069542},{"impl":"BTreeSet","n":2581,"op":"insert","t":69.98270972006412},{"impl":"BTreeSet","n":2591,"op":"insert","t":70.01112673575841},{"impl":"BTreeSet","n":2601,"op":"insert","t":70.03944700574488},{"impl":"BTreeSet","n":2611,"op":"insert","t":70.06767127307769},{"impl":"BTreeSet","n":2621,"op":"insert","t":70.09580027228975},{"impl":"BTreeSet","n":2631,"op":"insert","t":70.12383472952246},{"impl":"BTreeSet","n":2641,"op":"insert","t":70.15177536265298},{"impl":"BTreeSet","n":2651,"op":"insert","t":70.17962288141932},{"impl":"BTreeSet","n":2661,"op":"insert","t":70.20737798754278},{"impl":"BTreeSet","n":2671,"op":"insert","t":70.23504137484834},{"impl":"BTreeSet","n":2681,"op":"insert","t":70.26261372938255},{"impl":"BTreeSet","n":2691,"op":"insert","t":70.29009572952954},{"impl":"BTreeSet","n":2701,"op":"insert","t":70.31748804612457},{"impl":"BTreeSet","n":2711,"op":"insert","t":70.34479134256568},{"impl":"BTreeSet","n":2721,"op":"insert","t":70.37200627492322},{"impl":"BTreeSet","n":2731,"op":"insert","t":70.39913349204734},{"impl":"BTreeSet","n":2741,"op":"insert","t":70.4261736356736},{"impl":"BTreeSet","n":2751,"op":"insert","t":70.45312734052659},{"impl":"BTreeSet","n":2761,"op":"insert","t":70.47999523442162},{"impl":"BTreeSet","n":2771,"op":"insert","t":70.50677793836475},{"impl":"BTreeSet","n":2781,"op":"insert","t":70.53347606665082},{"impl":"BTreeSet","n":2791,"op":"insert","t":70.56009022695983},{"impl":"BTreeSet","n":2801,"op":"insert","t":70.58662102045162},{"impl":"BTreeSet","n":2811,"op":"insert","t":70.61306904185875},{"impl":"BTreeSet","n":2821,"op":"insert","t":70.63943487957782},{"impl":"BTreeSet","n":2831,"op":"insert","t":70.66571911575916},{"impl":"BTreeSet","n":2841,"op":"insert","t":70.69192232639493},{"impl":"BTreeSet","n":2851,"op":"insert","t":70.71804508140566},{"impl":"BTreeSet","n":2861,"op":"insert","t":70.74408794472532},{"impl":"BTreeSet","n":2871,"op":"insert","t":70.77005147438483},{"impl":"BTreeSet","n":2881,"op":"insert","t":70.79593622259415},{"impl":"BTreeSet","n":2891,"op":"insert","t":70.82174273582304},{"impl":"BTreeSet","n":2901,"op":"insert","t":70.84747155488026},{"impl":"BTreeSet","n":2911,"op":"insert","t":70.87312321499155},{"impl":"BTreeSet","n":2921,"op":"insert","t":70.89869824587618},{"impl":"BTreeSet","n":2931,"op":"insert","t":70.9241971718222},{"impl":"BTreeSet","n":2941,"op":"insert","t":70.94962051176056},{"impl":"BTreeSet","n":2951,"op":"insert","t":70.97496877933767},{"impl":"BTreeSet","n":2961,"op":"insert","t":71.00024248298705},{"impl":"BTreeSet","n":2971,"op":"insert","t":71.02544212599958},{"impl":"BTreeSet","n":2981,"op":"insert","t":71.05056820659259},{"impl":"BTreeSet","n":2991,"op":"insert","t":71.0756212179779},{"impl":"HashSet","n":1,"op":"insert","t":42.36046627462573},{"impl":"HashSet","n":11,"op":"insert","t":41.594022761659076},{"impl":"HashSet","n":21,"op":"insert","t":41.3877463759026},{"impl":"HashSet","n":31,"op":"insert","t":41.2637275126149},{"impl":"HashSet","n":41,"op":"insert","t":41.17485590519688},{"impl":"HashSet","n":51,"op":"insert","t":41.105602634862315},{"impl":"HashSet","n":61,"op":"insert","t":41.04889041818507},{"impl":"HashSet","n":71,"op":"insert","t":41.000892693231044},{"impl":"HashSet","n":81,"op":"insert","t":40.959304690214175},{"impl":"HashSet","n":91,"op":"insert","t":40.92263014949843},{"impl":"HashSet","n":101,"op":"insert","t":40.88984244282164},{"impl":"HashSet","n":111,"op":"insert","t":40.86020651927552},{"impl":"HashSet","n":121,"op":"insert","t":40.83317797608328},{"impl":"HashSet","n":131,"op":"insert","t":40.80834234283602},{"impl":"HashSet","n":141,"op":"insert","t":40.78537676349713},{"impl":"HashSet","n":151,"op":"insert","t":40.7640248389323},{"impl":"HashSet","n":161,"op":"insert","t":40.74407955281326},{"impl":"HashSet","n":171,"op":"insert","t":40.72537135147731},{"impl":"HashSet","n":181,"op":"insert","t":40.70775961664723},{"impl":"HashSet","n":191,"op":"insert","t":40.69112643430331},{"impl":"HashSet","n":201,"op":"insert","t":40.6753719555249},{"impl":"HashSet","n":211,"op":"insert","t":40.66041088486551},{"impl":"HashSet","n":221,"op":"insert","t":40.64616978259725},{"impl":"HashSet","n":231,"op":"insert","t":40.63258496446592},{"impl":"HashSet","n":241,"op":"insert","t":40.61960084686293},{"impl":"HashSet","n":251,"op":"insert","t":40.60716862865582},{"impl":"HashSet","n":261,"op":"insert","t":40.59524523069254},{"impl":"HashSet","n":271,"op":"insert","t":40.583792434803435},{"impl":"HashSet","n":281,"op":"insert","t":40.57277617889415},{"impl":"HashSet","n":291,"op":"insert","t":40.56216597535706},{"impl":"HashSet","n":301,"op":"insert","t":40.5519344277854},{"impl":"HashSet","n":311,"op":"insert","t":40.54205682670186},{"impl":"HashSet","n":321,"op":"insert","t":40.53251080928906},{"impl":"HashSet","n":331,"op":"insert","t":40.523276071335175},{"impl":"HashSet","n":341,"op":"insert","t":40.51433412206557},{"impl":"HashSet","n":351,"op":"insert","t":40.505668074419226},{"impl":"HashSet","n":361,"op":"insert","t":40.497262464793316},{"impl":"HashSet","n":371,"op":"insert","t":40.48910309742268},{"impl":"HashSet","n":381,"op":"insert","t":40.48117690946153},{"impl":"HashSet","n":391,"op":"insert","t":40.47347185354769},{"impl":"HashSet","n":401,"op":"insert","t":40.465976795199786},{"impl":"HashSet","n":411,"op":"insert","t":40.45868142285428},{"impl":"HashSet","n":421,"op":"insert","t":40.451576168718795},{"impl":"HashSet","n":431,"op":"insert","t":40.44465213891748},{"impl":"HashSet","n":441,"op":"insert","t":40.43790105164968},{"impl":"HashSet","n":451,"op":"insert","t":40.43131518228317},{"impl":"HashSet","n":461,"op":"insert","t":40.42488731446957},{"impl":"HashSet","n":471,"op":"insert","t":40.41861069650598},{"impl":"HashSet","n":481,"op":"insert","t":40.4124790022817},{"impl":"HashSet","n":491,"op":"insert","t":40.40648629624357},{"impl":"HashSet","n":501,"op":"insert","t":40.400627001893895},{"impl":"HashSet","n":511,"op":"insert","t":40.394895873401715},{"impl":"HashSet","n":521,"op":"insert","t":40.389287969965615},{"impl":"HashSet","n":531,"op":"insert","t":40.3837986326139},{"impl":"HashSet","n":541,"op":"insert","t":40.378423463169355},{"impl":"HashSet","n":551,"op":"insert","t":40.37315830514066},{"impl":"HashSet","n":561,"op":"insert","t":40.36799922633247},{"impl":"HashSet","n":571,"op":"insert","t":40.36294250299197},{"impl":"HashSet","n":581,"op":"insert","t":40.357984605331836},{"impl":"HashSet","n":591,"op":"insert","t":40.35312218428858},{"impl":"HashSet","n":601,"op":"insert","t":40.34835205939196},{"impl":"HashSet","n":611,"op":"insert","t":40.343671207635424},{"impl":"HashSet","n":621,"op":"insert","t":40.33907675325004},{"impl":"HashSet","n":631,"op":"insert","t":40.33456595829529},{"impl":"HashSet","n":641,"op":"insert","t":40.33013621398966},{"impl":"HashSet","n":651,"op":"insert","t":40.32578503271245},{"impl":"HashSet","n":661,"op":"insert","t":40.32151004061509},{"impl":"HashSet","n":671,"op":"insert","t":40.317308970787344},{"impl":"HashSet","n":681,"op":"insert","t":40.31317965692902},{"impl":"HashSet","n":691,"op":"insert","t":40.309120027482955},{"impl":"HashSet","n":701,"op":"insert","t":40.30512810018951},{"impl":"HashSet","n":711,"op":"insert","t":40.30120197702681},{"impl":"HashSet","n":721,"op":"insert","t":40.29733983950432},{"impl":"HashSet","n":731,"op":"insert","t":40.29353994428058},{"impl":"HashSet","n":741,"op":"insert","t":40.289800619078726},{"impl":"HashSet","n":751,"op":"insert","t":40.28612025887574},{"impl":"HashSet","n":761,"op":"insert","t":40.28249732234379},{"impl":"HashSet","n":771,"op":"insert","t":40.27893032852384},{"impl":"HashSet","n":781,"op":"insert","t":40.275417853713705},{"impl":"HashSet","n":791,"op":"insert","t":40.271958528553895},{"impl":"HashSet","n":801,"op":"insert","t":40.268551035296795},{"impl":"HashSet","n":811,"op":"insert","t":40.26519410524497},{"impl":"HashSet","n":821,"op":"insert","t":40.261886516346685},{"impl":"HashSet","n":831,"op":"insert","t":40.258627090936855},{"impl":"HashSet","n":841,"op":"insert","t":40.25541469361315},{"impl":"HashSet","n":851,"op":"insert","t":40.252248229237644},{"impl":"HashSet","n":861,"op":"insert","t":40.249126641055184},{"impl":"HashSet","n":871,"op":"insert","t":40.24604890892044},{"impl":"HashSet","n":881,"op":"insert","t":40.243014047626104},{"impl":"HashSet","n":891,"op":"insert","t":40.240021105325454},{"impl":"HashSet","n":901,"op":"insert","t":40.237069162043},{"impl":"HashSet","n":911,"op":"insert","t":40.23415732826728},{"impl":"HashSet","n":921,"op":"insert","t":40.23128474362044},{"impl":"HashSet","n":931,"op":"insert","t":40.228450575599815},{"impl":"HashSet","n":941,"op":"insert","t":40.225654018386464},{"impl":"HashSet","n":951,"op":"insert","t":40.22289429171698},{"impl":"HashSet","n":961,"op":"insert","t":40.22017063981413},{"impl":"HashSet","n":971,"op":"insert","t":40.21748233037281},{"impl":"HashSet","n":981,"op":"insert","t":40.21482865359815},{"impl":"HashSet","n":991,"op":"insert","t":40.21220892129221},{"impl":"HashSet","n":1001,"op":"insert","t":40.2096224659866},{"impl":"HashSet","n":1011,"op":"insert","t":40.20706864011823},{"impl":"HashSet","n":1021,"op":"insert","t":40.2045468152456},{"impl":"HashSet","n":1031,"op":"insert","t":40.20205638130328},{"impl":"HashSet","n":1041,"op":"insert","t":40.19959674589236},{"impl":"HashSet","n":1051,"op":"insert","t":40.19716733360489},{"impl":"HashSet","n":1061,"op":"insert","t":40.194767585380234},{"impl":"HashSet","n":1071,"op":"insert","t":40.19239695789163},{"impl":"HashSet","n":1081,"op":"insert","t":40.190054922961274},{"impl":"HashSet","n":1091,"op":"insert","t":40.1877409670023},{"impl":"HashSet","n":1101,"op":"insert","t":40.18545459048634},{"impl":"HashSet","n":1111,"op":"insert","t":40.18319530743493},{"impl":"HashSet","n":1121,"op":"insert","t":40.180962644933935},{"impl":"HashSet","n":1131,"op":"insert","t":40.17875614266936},{"impl":"HashSet","n":1141,"op":"insert","t":40.17657535248376},{"impl":"HashSet","n":1151,"op":"insert","t":40.17441983795183},{"impl":"HashSet","n":1161,"op":"insert","t":40.172289173974455},{"impl":"HashSet","n":1171,"op":"insert","t":40.17018294639021},{"impl":"HashSet","n":1181,"op":"insert","t":40.16810075160322},{"impl":"HashSet","n":1191,"op":"insert","t":40.16604219622688},{"impl":"HashSet","n":1201,"op":"insert","t":40.16400689674237},{"impl":"HashSet","n":1211,"op":"insert","t":40.161994479171376},{"impl":"HashSet","n":1221,"op":"insert","t":40.160004578762205},{"impl":"HashSet","n":1231,"op":"insert","t":40.1580368396888},{"impl":"HashSet","n":1241,"op":"insert","t":40.15609091476181},{"impl":"HashSet","n":1251,"op":"insert","t":40.15416646515143},{"impl":"HashSet","n":1261,"op":"insert","t":40.15226316012102},{"impl":"HashSet","n":1271,"op":"insert","t":40.15038067677151},{"impl":"HashSet","n":1281,"op":"insert","t":40.14851869979565},{"impl":"HashSet","n":1291,"op":"insert","t":40.14667692124188},{"impl":"HashSet","n":1301,"op":"insert","t":40.14485504028727},{"impl":"HashSet","n":1311,"op":"insert","t":40.14305276301922},{"impl":"HashSet","n":1321,"op":"insert","t":40.141269802225395},{"impl":"HashSet","n":1331,"op":"insert","t":40.1395058771916},{"impl":"HashSet","n":1341,"op":"insert","t":40.13776071350721},{"impl":"HashSet","n":1351,"op":"insert","t":40.13603404287786},{"impl":"HashSet","n":1361,"op":"insert","t":40.13432560294502},{"impl":"HashSet","n":1371,"op":"insert","t":40.13263513711214},{"impl":"HashSet","n":1381,"op":"insert","t":40.130962394377185},{"impl":"HashSet","n":1391,"op":"insert","t":40.12930712917116},{"impl":"HashSet","n":1401,"op":"insert","t":40.127669101202436},{"impl":"HashSet","n":1411,"op":"insert","t":40.12604807530659},{"impl":"HashSet","n":1421,"op":"insert","t":40.124443821301604},{"impl":"HashSet","n":1431,"op":"insert","t":40.12285611384804},{"impl":"HashSet","n":1441,"op":"insert","t":40.12128473231424},{"impl":"HashSet","n":1451,"op":"insert","t":40.11972946064597},{"impl":"HashSet","n":1461,"op":"insert","t":40.118190087240805},{"impl":"HashSet","n":1471,"op":"insert","t":40.11666640482655},{"impl":"HashSet","n":1481,"op":"insert","t":40.11515821034393},{"impl":"HashSet","n":1491,"op":"insert","t":40.11366530483317},{"impl":"HashSet","n":1501,"op":"insert","t":40.1121874933244},{"impl":"HashSet","n":1511,"op":"insert","t":40.11072458473168},{"impl":"HashSet","n":1521,"op":"insert","t":40.109276391750484},{"impl":"HashSet","n":1531,"op":"insert","t":40.107842730758634},{"impl":"HashSet","n":1541,"op":"insert","t":40.10642342172035},{"impl":"HashSet","n":1551,"op":"insert","t":40.10501828809349},{"impl":"HashSet","n":1561,"op":"insert","t":40.10362715673973},{"impl":"HashSet","n":1571,"op":"insert","t":40.10224985783761},{"impl":"HashSet","n":1581,"op":"insert","t":40.100886224798366},{"impl":"HashSet","n":1591,"op":"insert","t":40.09953609418438},{"impl":"HashSet","n":1601,"op":"insert","t":40.0981993056302},{"impl":"HashSet","n":1611,"op":"insert","t":40.09687570176607},{"impl":"HashSet","n":1621,"op":"insert","t":40.09556512814368},{"impl":"HashSet","n":1631,"op":"insert","t":40.09426743316443},{"impl":"HashSet","n":1641,"op":"insert","t":40.09298246800961},{"impl":"HashSet","n":1651,"op":"insert","t":40.091710086572945},{"impl":"HashSet","n":1661,"op":"insert","t":40.09045014539507},{"impl":"HashSet","n":1671,"op":"insert","t":40.08920250359989},{"impl":"HashSet","n":1681,"op":"insert","t":40.08796702283307},{"impl":"HashSet","n":1691,"op":"insert","t":40.08674356720204},{"impl":"HashSet","n":1701,"op":"insert","t":40.08553200321809},{"impl":"HashSet","n":1711,"op":"insert","t":40.08433219973989},{"impl":"HashSet","n":1721,"op":"insert","t":40.083144027918834},{"impl":"HashSet","n":1731,"op":"insert","t":40.081967361145885},{"impl":"HashSet","n":1741,"op":"insert","t":40.08080207499998},{"impl":"HashSet","n":1751,"op":"insert","t":40.07964804719789},{"impl":"HashSet","n":1761,"op":"insert","t":40.07850515754555},{"impl":"HashSet","n":1771,"op":"insert","t":40.07737328789067},{"impl":"HashSet","n":1781,"op":"insert","t":40.076252322076854},{"impl":"HashSet","n":1791,"op":"insert","t":40.07514214589882},{"impl":"HashSet","n":1801,"op":"insert","t":40.074042647058945},{"impl":"HashSet","n":1811,"op":"insert","t":40.07295371512508},{"impl":"HashSet","n":1821,"op":"insert","t":40.071875241489366},{"impl":"HashSet","n":1831,"op":"insert","t":40.07080711932835},{"impl":"HashSet","n":1841,"op":"insert","t":40.06974924356406},{"impl":"HashSet","n":1851,"op":"insert","t":40.06870151082622},{"impl":"HashSet","n":1861,"op":"insert","t":40.067663819415415},{"impl":"HashSet","n":1871,"op":"insert","t":40.066636069267275},{"impl":"HashSet","n":1881,"op":"insert","t":40.06561816191763},{"impl":"HashSet","n":1891,"op":"insert","t":40.06461000046856},{"impl":"HashSet","n":1901,"op":"insert","t":40.063611489555385},{"impl":"HashSet","n":1911,"op":"insert","t":40.06262253531441},{"impl":"HashSet","n":1921,"op":"insert","t":40.061643045351644},{"impl":"HashSet","n":1931,"op":"insert","t":40.0606729287123},{"impl":"HashSet","n":1941,"op":"insert","t":40.059712095851005},{"impl":"HashSet","n":1951,"op":"insert","t":40.05876045860283},{"impl":"HashSet","n":1961,"op":"insert","t":40.05781793015514},{"impl":"HashSet","n":1971,"op":"insert","t":40.05688442501995},{"impl":"HashSet","n":1981,"op":"insert","t":40.055959859007245},{"impl":"HashSet","n":1991,"op":"insert","t":40.05504414919871},{"impl":"HashSet","n":2001,"op":"insert","t":40.05413721392236},{"impl":"HashSet","n":2011,"op":"insert","t":40.05323897272763},{"impl":"HashSet","n":2021,"op":"insert","t":40.0523493463611},{"impl":"HashSet","n":2031,"op":"insert","t":40.051468256742965},{"impl":"HashSet","n":2041,"op":"insert","t":40.050595626943874},{"impl":"HashSet","n":2051,"op":"insert","t":40.04973138116251},{"impl":"HashSet","n":2061,"op":"insert","t":40.0488754447036},{"impl":"HashSet","n":2071,"op":"insert","t":40.048027743956496},{"impl":"HashSet","n":2081,"op":"insert","t":40.04718820637435},{"impl":"HashSet","n":2091,"op":"insert","t":40.04635676045361},{"impl":"HashSet","n":2101,"op":"insert","t":40.04553333571418},{"impl":"HashSet","n":2111,"op":"insert","t":40.04471786267999},{"impl":"HashSet","n":2121,"op":"insert","t":40.04391027285992},{"impl":"HashSet","n":2131,"op":"insert","t":40.0431104987294},{"impl":"HashSet","n":2141,"op":"insert","t":40.0423184737122},{"impl":"HashSet","n":2151,"op":"insert","t":40.041534132162845},{"impl":"HashSet","n":2161,"op":"insert","t":40.040757409349254},{"impl":"HashSet","n":2171,"op":"insert","t":40.039988241435964},{"impl":"HashSet","n":2181,"op":"insert","t":40.03922656546755},{"impl":"HashSet","n":2191,"op":"insert","t":40.03847231935263},{"impl":"HashSet","n":2201,"op":"insert","t":40.037725441848025},{"impl":"HashSet","n":2211,"op":"insert","t":40.036985872543454},{"impl":"HashSet","n":2221,"op":"insert","t":40.03625355184645},{"impl":"HashSet","n":2231,"op":"insert","t":40.03552842096771},{"impl":"HashSet","n":2241,"op":"insert","t":40.03481042190668},{"impl":"HashSet","n":2251,"op":"insert","t":40.03409949743752},{"impl":"HashSet","n":2261,"op":"insert","t":40.03339559109541},{"impl":"HashSet","n":2271,"op":"insert","t":40.032698647163066},{"impl":"HashSet","n":2281,"op":"insert","t":40.03200861065761},{"impl":"HashSet","n":2291,"op":"insert","t":40.03132542731773},{"impl":"HashSet","n":2301,"op":"insert","t":40.03064904359114},{"impl":"HashSet","n":2311,"op":"insert","t":40.0299794066222},{"impl":"HashSet","n":2321,"op":"insert","t":40.029316464239976},{"impl":"HashSet","n":2331,"op":"insert","t":40.02866016494638},{"impl":"HashSet","n":2341,"op":"insert","t":40.02801045790474},{"impl":"HashSet","n":2351,"op":"insert","t":40.02736729292843},{"impl":"HashSet","n":2361,"op":"insert","t":40.0267306204699},{"impl":"HashSet","n":2371,"op":"insert","t":40.02610039160983},{"impl":"HashSet","n":2381,"op":"insert","t":40.02547655804659},{"impl":"HashSet","n":2391,"op":"insert","t":40.02485907208588},{"impl":"HashSet","n":2401,"op":"insert","t":40.024247886630526},{"impl":"HashSet","n":2411,"op":"insert","t":40.02364295517065},{"impl":"HashSet","n":2421,"op":"insert","t":40.023044231773895},{"impl":"HashSet","n":2431,"op":"insert","t":40.0224516710759},{"impl":"HashSet","n":2441,"op":"insert","t":40.02186522827095},{"impl":"HashSet","n":2451,"op":"insert","t":40.02128485910294},{"impl":"HashSet","n":2461,"op":"insert","t":40.0207105198563},{"impl":"HashSet","n":2471,"op":"insert","t":40.02014216734731},{"impl":"HashSet","n":2481,"op":"insert","t":40.019579758915455},{"impl":"HashSet","n":2491,"op":"insert","t":40.01902325241507},{"impl":"HashSet","n":2501,"op":"insert","t":40.01847260620702},{"impl":"HashSet","n":2511,"op":"insert","t":40.017927779150654},{"impl":"HashSet","n":2521,"op":"insert","t":40.017388730595876},{"impl":"HashSet","n":2531,"op":"insert","t":40.016855420375364},{"impl":"HashSet","n":2541,"op":"insert","t":40.01632780879698},{"impl":"HashSet","n":2551,"op":"insert","t":40.01580585663628},{"impl":"HashSet","n":2561,"op":"insert","t":40.01528952512918},{"impl":"HashSet","n":2571,"op":"insert","t":40.01477877596485},{"impl":"HashSet","n":2581,"op":"insert","t":40.01427357127859},{"impl":"HashSet","n":2591,"op":"insert","t":40.013773873644986},{"impl":"HashSet","n":2601,"op":"insert","t":40.01327964607112},{"impl":"HashSet","n":2611,"op":"insert","t":40.01279085198993},{"impl":"HashSet","n":2621,"op":"insert","t":40.012307455253705},{"impl":"HashSet","n":2631,"op":"insert","t":40.0118294201277},{"impl":"HashSet","n":2641,"op":"insert","t":40.01135671128385},{"impl":"HashSet","n":2651,"op":"insert","t":40.01088929379467},{"impl":"HashSet","n":2661,"op":"insert","t":40.010427133127145},{"impl":"HashSet","n":2671,"op":"insert","t":40.00997019513689},{"impl":"HashSet","n":2681,"op":"insert","t":40.009518446062295},{"impl":"HashSet","n":2691,"op":"insert","t":40.00907185251884},{"impl":"HashSet","n":2701,"op":"insert","t":40.00863038149347},{"impl":"HashSet","n":2711,"op":"insert","t":40.00819400033917},{"impl":"HashSet","n":2721,"op":"insert","t":40.00776267676951},{"impl":"HashSet","n":2731,"op":"insert","t":40.00733637885338},{"impl":"HashSet","n":2741,"op":"insert","t":40.0069150750098},{"impl":"HashSet","n":2751,"op":"insert","t":40.00649873400282},{"impl":"HashSet","n":2761,"op":"insert","t":40.00608732493649},{"impl":"HashSet","n":2771,"op":"insert","t":40.00568081724995},{"impl":"HashSet","n":2781,"op":"insert","t":40.00527918071264},{"impl":"HashSet","n":2791,"op":"insert","t":40.00488238541951},{"impl":"HashSet","n":2801,"op":"insert","t":40.0044904017864},{"impl":"HashSet","n":2811,"op":"insert","t":40.00410320054539},{"impl":"HashSet","n":2821,"op":"insert","t":40.00372075274043},{"impl":"HashSet","n":2831,"op":"insert","t":40.00334302972284},{"impl":"HashSet","n":2841,"op":"insert","t":40.002970003146984},{"impl":"HashSet","n":2851,"op":"insert","t":40.00260164496603},{"impl":"HashSet","n":2861,"op":"insert","t":40.00223792742773},{"impl":"HashSet","n":2871,"op":"insert","t":40.00187882307039},{"impl":"HashSet","n":2881,"op":"insert","t":40.00152430471874},{"impl":"HashSet","n":2891,"op":"insert","t":40.00117434547999},{"impl":"HashSet","n":2901,"op":"insert","t":40.000828918739955},{"impl":"HashSet","n":2911,"op":"insert","t":40.0004879981592},{"impl":"HashSet","n":2921,"op":"insert","t":40.00015155766926},{"impl":"HashSet","n":2931,"op":"insert","t":39.99981957146897},{"impl":"HashSet","n":2941,"op":"insert","t":39.99949201402077},{"impl":"HashSet","n":2951,"op":"insert","t":39.9991688600472},{"impl":"HashSet","n":2961,"op":"insert","t":39.9988500845273},{"impl":"HashSet","n":2971,"op":"insert","t":39.9985356626932},{"impl":"HashSet","n":2981,"op":"insert","t":39.99822557002672},{"impl":"HashSet","n":2991,"op":"insert","t":39.997919782256005},{"impl":"SortedVecSet","n":1,"op":"insert","t":140.63478147706036},{"impl":"SortedVecSet","n":11,"op":"insert","t":73.60540067231153},{"impl":"SortedVecSet","n":21,"op":"insert","t":55.961778987197064},{"impl":"SortedVecSet","n":31,"op":"insert","t":45.57018654908772},{"impl":"SortedVecSet","n":41,"op":"insert","t":38.277262079155975},{"impl":"SortedVecSet","n":51,"op":"insert","t":32.713936483869816},{"impl":"SortedVecSet","n":61,"op":"insert","t":28.256258402657863},{"impl":"SortedVecSet","n":71,"op":"insert","t":24.56686837408178},{"impl":"SortedVecSet","n":81,"op":"insert","t":21.442572014471764},{"impl":"SortedVecSet","n":91,"op":"insert","t":18.751455257448},{"impl":"SortedVecSet","n":101,"op":"insert","t":16.403007936549074},{"impl":"SortedVecSet","n":111,"op":"insert","t":14.33242608863273},{"impl":"SortedVecSet","n":121,"op":"insert","t":12.491713776155677},{"impl":"SortedVecSet","n":131,"op":"insert","t":10.844330230582415},{"impl":"SortedVecSet","n":141,"op":"insert","t":9.361811640138285},{"impl":"SortedVecSet","n":151,"op":"insert","t":8.021553203083585},{"impl":"SortedVecSet","n":161,"op":"insert","t":6.805303831831225},{"impl":"SortedVecSet","n":171,"op":"insert","t":5.698115242957556},{"impl":"SortedVecSet","n":181,"op":"insert","t":4.68759017043422},{"impl":"SortedVecSet","n":191,"op":"insert","t":3.7633330134899268},{"impl":"SortedVecSet","n":201,"op":"insert","t":2.9165408365745407},{"impl":"SortedVecSet","n":211,"op":"insert","t":2.1396937755398255},{"impl":"SortedVecSet","n":221,"op":"insert","t":1.4263171966362052},{"impl":"SortedVecSet","n":231,"op":"insert","t":0.77079653355662},{"impl":"SortedVecSet","n":241,"op":"insert","t":0.1682313935795321},{"impl":"SortedVecSet","n":251,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":261,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":271,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":281,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":291,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":301,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":311,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":321,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":331,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":341,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":351,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":361,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":371,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":381,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":391,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":401,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":411,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":421,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":431,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":441,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":451,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":461,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":471,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":481,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":491,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":501,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":511,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":521,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":531,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":541,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":551,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":561,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":571,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":581,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":591,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":601,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":611,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":621,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":631,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":641,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":651,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":661,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":671,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":681,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":691,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":701,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":711,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":721,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":731,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":741,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":751,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":761,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":771,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":781,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":791,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":801,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":811,"op":"insert","t":0.0},{"impl":"SortedVecSet","n":821,"op":"insert","t":0.0693485512948655},{"impl":"SortedVecSet","n":831,"op":"insert","t":0.32391478033218846},{"impl":"SortedVecSet","n":841,"op":"insert","t":0.5826233575802462},{"impl":"SortedVecSet","n":851,"op":"insert","t":0.8453777328859076},{"impl":"SortedVecSet","n":861,"op":"insert","t":1.1120847400201228},{"impl":"SortedVecSet","n":871,"op":"insert","t":1.3826544403670198},{"impl":"SortedVecSet","n":881,"op":"insert","t":1.656999975536678},{"impl":"SortedVecSet","n":891,"op":"insert","t":1.93503742829526},{"impl":"SortedVecSet","n":901,"op":"insert","t":2.2166856912562594},{"impl":"SortedVecSet","n":911,"op":"insert","t":2.5018663428192554},{"impl":"SortedVecSet","n":921,"op":"insert","t":2.790503529880567},{"impl":"SortedVecSet","n":931,"op":"insert","t":3.0825238568775717},{"impl":"SortedVecSet","n":941,"op":"insert","t":3.377856280760625},{"impl":"SortedVecSet","n":951,"op":"insert","t":3.676432011515999},{"impl":"SortedVecSet","n":961,"op":"insert","t":3.9781844178926065},{"impl":"SortedVecSet","n":971,"op":"insert","t":4.283048938007823},{"impl":"SortedVecSet","n":981,"op":"insert","t":4.590962994533754},{"impl":"SortedVecSet","n":991,"op":"insert","t":4.901865914184214},{"impl":"SortedVecSet","n":1001,"op":"insert","t":5.2156988512440705},{"impl":"SortedVecSet","n":1011,"op":"insert","t":5.532404714899229},{"impl":"SortedVecSet","n":1021,"op":"insert","t":5.851928100143283},{"impl":"SortedVecSet","n":1031,"op":"insert","t":6.174215222051231},{"impl":"SortedVecSet","n":1041,"op":"insert","t":6.499213853225825},{"impl":"SortedVecSet","n":1051,"op":"insert","t":6.826873264233683},{"impl":"SortedVecSet","n":1061,"op":"insert","t":7.157144166862224},{"impl":"SortedVecSet","n":1071,"op":"insert","t":7.4899786600382185},{"impl":"SortedVecSet","n":1081,"op":"insert","t":7.825330178259065},{"impl":"SortedVecSet","n":1091,"op":"insert","t":8.16315344239888},{"impl":"SortedVecSet","n":1101,"op":"insert","t":8.50340441275884},{"impl":"SortedVecSet","n":1111,"op":"insert","t":8.846040244240072},{"impl":"SortedVecSet","n":1121,"op":"insert","t":9.191019243524806},{"impl":"SortedVecSet","n":1131,"op":"insert","t":9.538300828159208},{"impl":"SortedVecSet","n":1141,"op":"insert","t":9.887845487437488},{"impl":"SortedVecSet","n":1151,"op":"insert","t":10.239614744991826},{"impl":"SortedVecSet","n":1161,"op":"insert","t":10.593571123001595},{"impl":"SortedVecSet","n":1171,"op":"insert","t":10.949678107936194},{"impl":"SortedVecSet","n":1181,"op":"insert","t":11.307900117755736},{"impl":"SortedVecSet","n":1191,"op":"insert","t":11.668202470493213},{"impl":"SortedVecSet","n":1201,"op":"insert","t":12.030551354151328},{"impl":"SortedVecSet","n":1211,"op":"insert","t":12.394913797846812},{"impl":"SortedVecSet","n":1221,"op":"insert","t":12.761257644141182},{"impl":"SortedVecSet","n":1231,"op":"insert","t":13.129551522500577},{"impl":"SortedVecSet","n":1241,"op":"insert","t":13.499764823828485},{"impl":"SortedVecSet","n":1251,"op":"insert","t":13.871867676021168},{"impl":"SortedVecSet","n":1261,"op":"insert","t":14.245830920495848},{"impl":"SortedVecSet","n":1271,"op":"insert","t":14.621626089645844},{"impl":"SortedVecSet","n":1281,"op":"insert","t":14.999225385179557},{"impl":"SortedVecSet","n":1291,"op":"insert","t":15.378601657301147},{"impl":"SortedVecSet","n":1301,"op":"insert","t":15.759728384695137},{"impl":"SortedVecSet","n":1311,"op":"insert","t":16.14257965527642},{"impl":"SortedVecSet","n":1321,"op":"insert","t":16.527130147672665},{"impl":"SortedVecSet","n":1331,"op":"insert","t":16.913355113404066},{"impl":"SortedVecSet","n":1341,"op":"insert","t":17.301230359730653},{"impl":"SortedVecSet","n":1351,"op":"insert","t":17.690732233136742},{"impl":"SortedVecSet","n":1361,"op":"insert","t":18.081837603423992},{"impl":"SortedVecSet","n":1371,"op":"insert","t":18.47452384838718},{"impl":"SortedVecSet","n":1381,"op":"insert","t":18.868768839046425},{"impl":"SortedVecSet","n":1391,"op":"insert","t":19.264550925412664},{"impl":"SortedVecSet","n":1401,"op":"insert","t":19.661848922762374},{"impl":"SortedVecSet","n":1411,"op":"insert","t":20.060642098400905},{"impl":"SortedVecSet","n":1421,"op":"insert","t":20.460910158893086},{"impl":"SortedVecSet","n":1431,"op":"insert","t":20.862633237741335},{"impl":"SortedVecSet","n":1441,"op":"insert","t":21.26579188349308},{"impl":"SortedVecSet","n":1451,"op":"insert","t":21.670367048259465},{"impl":"SortedVecSet","n":1461,"op":"insert","t":22.076340076628043},{"impl":"SortedVecSet","n":1471,"op":"insert","t":22.48369269495379},{"impl":"SortedVecSet","n":1481,"op":"insert","t":22.89240700101317},{"impl":"SortedVecSet","n":1491,"op":"insert","t":23.30246545400564},{"impl":"SortedVecSet","n":1501,"op":"insert","t":23.713850864890077},{"impl":"SortedVecSet","n":1511,"op":"insert","t":24.126546387041685},{"impl":"SortedVecSet","n":1521,"op":"insert","t":24.540535507216816},{"impl":"SortedVecSet","n":1531,"op":"insert","t":24.955802036814674},{"impl":"SortedVecSet","n":1541,"op":"insert","t":25.372330103422144},{"impl":"SortedVecSet","n":1551,"op":"insert","t":25.790104142633766},{"impl":"SortedVecSet","n":1561,"op":"insert","t":26.209108890132796},{"impl":"SortedVecSet","n":1571,"op":"insert","t":26.62932937402661},{"impl":"SortedVecSet","n":1581,"op":"insert","t":27.05075090742423},{"impl":"SortedVecSet","n":1591,"op":"insert","t":27.47335908124859},{"impl":"SortedVecSet","n":1601,"op":"insert","t":27.897139757273465},{"impl":"SortedVecSet","n":1611,"op":"insert","t":28.32207906137731},{"impl":"SortedVecSet","n":1621,"op":"insert","t":28.74816337700628},{"impl":"SortedVecSet","n":1631,"op":"insert","t":29.175379338837473},{"impl":"SortedVecSet","n":1641,"op":"insert","t":29.603713826636493},{"impl":"SortedVecSet","n":1651,"op":"insert","t":30.03315395930136},{"impl":"SortedVecSet","n":1661,"op":"insert","t":30.46368708908622},{"impl":"SortedVecSet","n":1671,"op":"insert","t":30.895300795998594},{"impl":"SortedVecSet","n":1681,"op":"insert","t":31.327982882363415},{"impl":"SortedVecSet","n":1691,"op":"insert","t":31.761721367548773},{"impl":"SortedVecSet","n":1701,"op":"insert","t":32.19650448284676},{"impl":"SortedVecSet","n":1711,"op":"insert","t":32.6323206665046},{"impl":"SortedVecSet","n":1721,"op":"insert","t":33.06915855890017},{"impl":"SortedVecSet","n":1731,"op":"insert","t":33.507006997858014},{"impl":"SortedVecSet","n":1741,"op":"insert","t":33.94585501409935},{"impl":"SortedVecSet","n":1751,"op":"insert","t":34.38569182682315},{"impl":"SortedVecSet","n":1761,"op":"insert","t":34.82650683941273},{"impl":"SortedVecSet","n":1771,"op":"insert","t":35.268289635263585},{"impl":"SortedVecSet","n":1781,"op":"insert","t":35.711029973729524},{"impl":"SortedVecSet","n":1791,"op":"insert","t":36.15471778618121},{"impl":"SortedVecSet","n":1801,"op":"insert","t":36.59934317217562},{"impl":"SortedVecSet","n":1811,"op":"insert","t":37.04489639573035},{"impl":"SortedVecSet","n":1821,"op":"insert","t":37.49136788170145},{"impl":"SortedVecSet","n":1831,"op":"insert","t":37.938748212259924},{"impl":"SortedVecSet","n":1841,"op":"insert","t":38.387028123464574},{"impl":"SortedVecSet","n":1851,"op":"insert","t":38.83619850192704},{"impl":"SortedVecSet","n":1861,"op":"insert","t":39.28625038156744},{"impl":"SortedVecSet","n":1871,"op":"insert","t":39.73717494045658},{"impl":"SortedVecSet","n":1881,"op":"insert","t":40.18896349774204},{"impl":"SortedVecSet","n":1891,"op":"insert","t":40.6416075106564},{"impl":"SortedVecSet","n":1901,"op":"insert","t":41.09509857160376},{"impl":"SortedVecSet","n":1911,"op":"insert","t":41.5494284053232},{"impl":"SortedVecSet","n":1921,"op":"insert","t":42.00458886612577},{"impl":"SortedVecSet","n":1931,"op":"insert","t":42.460571935203546},{"impl":"SortedVecSet","n":1941,"op":"insert","t":42.917369718008246},{"impl":"SortedVecSet","n":1951,"op":"insert","t":43.37497444169671},{"impl":"SortedVecSet","n":1961,"op":"insert","t":43.83337845264242},{"impl":"SortedVecSet","n":1971,"op":"insert","t":44.292574214009505},{"impl":"SortedVecSet","n":1981,"op":"insert","t":44.75255430338888},{"impl":"SortedVecSet","n":1991,"op":"insert","t":45.213311410493276},{"impl":"SortedVecSet","n":2001,"op":"insert","t":45.67483833491042},{"impl":"SortedVecSet","n":2011,"op":"insert","t":46.13712798391214},{"impl":"SortedVecSet","n":2021,"op":"insert","t":46.60017337031766},{"impl":"SortedVecSet","n":2031,"op":"insert","t":47.06396761040986},{"impl":"SortedVecSet","n":2041,"op":"insert","t":47.528503921902114},{"impl":"SortedVecSet","n":2051,"op":"insert","t":47.99377562195605},{"impl":"SortedVecSet","n":2061,"op":"insert","t":48.45977612524598},{"impl":"SortedVecSet","n":2071,"op":"insert","t":48.92649894207136},{"impl":"SortedVecSet","n":2081,"op":"insert","t":49.39393767651424},{"impl":"SortedVecSet","n":2091,"op":"insert","t":49.8620860246408},{"impl":"SortedVecSet","n":2101,"op":"insert","t":50.330937772745926},{"impl":"SortedVecSet","n":2111,"op":"insert","t":50.8004867956395},{"impl":"SortedVecSet","n":2121,"op":"insert","t":51.27072705497335},{"impl":"SortedVecSet","n":2131,"op":"insert","t":51.74165259760673},{"impl":"SortedVecSet","n":2141,"op":"insert","t":52.21325755401122},{"impl":"SortedVecSet","n":2151,"op":"insert","t":52.68553613671213},{"impl":"SortedVecSet","n":2161,"op":"insert","t":53.15848263876609},{"impl":"SortedVecSet","n":2171,"op":"insert","t":53.632091432273626},{"impl":"SortedVecSet","n":2181,"op":"insert","t":54.106356966926455},{"impl":"SortedVecSet","n":2191,"op":"insert","t":54.581273768587664},{"impl":"SortedVecSet","n":2201,"op":"insert","t":55.056836437903996},{"impl":"SortedVecSet","n":2211,"op":"insert","t":55.53303964895005},{"impl":"SortedVecSet","n":2221,"op":"insert","t":56.009878147902754},{"impl":"SortedVecSet","n":2231,"op":"insert","t":56.487346751746},{"impl":"SortedVecSet","n":2241,"op":"insert","t":56.96544034700344},{"impl":"SortedVecSet","n":2251,"op":"insert","t":57.44415388850024},{"impl":"SortedVecSet","n":2261,"op":"insert","t":57.9234823981524},{"impl":"SortedVecSet","n":2271,"op":"insert","t":58.40342096378191},{"impl":"SortedVecSet","n":2281,"op":"insert","t":58.88396473795876},{"impl":"SortedVecSet","n":2291,"op":"insert","t":59.3651089368679},{"impl":"SortedVecSet","n":2301,"op":"insert","t":59.84684883920107},{"impl":"SortedVecSet","n":2311,"op":"insert","t":60.329179785072256},{"impl":"SortedVecSet","n":2321,"op":"insert","t":60.81209717495713},{"impl":"SortedVecSet","n":2331,"op":"insert","t":61.29559646865505},{"impl":"SortedVecSet","n":2341,"op":"insert","t":61.77967318427301},{"impl":"SortedVecSet","n":2351,"op":"insert","t":62.264322897231324},{"impl":"SortedVecSet","n":2361,"op":"insert","t":62.749541239291176},{"impl":"SortedVecSet","n":2371,"op":"insert","t":63.235323897601575},{"impl":"SortedVecSet","n":2381,"op":"insert","t":63.72166661376701},{"impl":"SortedVecSet","n":2391,"op":"insert","t":64.2085651829345},{"impl":"SortedVecSet","n":2401,"op":"insert","t":64.69601545289993},{"impl":"SortedVecSet","n":2411,"op":"insert","t":65.18401332323256},{"impl":"SortedVecSet","n":2421,"op":"insert","t":65.67255474441782},{"impl":"SortedVecSet","n":2431,"op":"insert","t":66.16163571701787},{"impl":"SortedVecSet","n":2441,"op":"insert","t":66.65125229084944},{"impl":"SortedVecSet","n":2451,"op":"insert","t":67.14140056417807},{"impl":"SortedVecSet","n":2461,"op":"insert","t":67.63207668292912},{"impl":"SortedVecSet","n":2471,"op":"insert","t":68.12327683991509},{"impl":"SortedVecSet","n":2481,"op":"insert","t":68.61499727407758},{"impl":"SortedVecSet","n":2491,"op":"insert","t":69.10723426974525},{"impl":"SortedVecSet","n":2501,"op":"insert","t":69.59998415590664},{"impl":"SortedVecSet","n":2511,"op":"insert","t":70.09324330549717},{"impl":"SortedVecSet","n":2521,"op":"insert","t":70.58700813470043},{"impl":"SortedVecSet","n":2531,"op":"insert","t":71.08127510226342},{"impl":"SortedVecSet","n":2541,"op":"insert","t":71.57604070882508},{"impl":"SortedVecSet","n":2551,"op":"insert","t":72.07130149625834},{"impl":"SortedVecSet","n":2561,"op":"insert","t":72.56705404702461},{"impl":"SortedVecSet","n":2571,"op":"insert","t":73.063294983541},{"impl":"SortedVecSet","n":2581,"op":"insert","t":73.56002096756029},{"impl":"SortedVecSet","n":2591,"op":"insert","t":74.05722869956199},{"impl":"SortedVecSet","n":2601,"op":"insert","t":74.55491491815593},{"impl":"SortedVecSet","n":2611,"op":"insert","t":75.05307639949692},{"impl":"SortedVecSet","n":2621,"op":"insert","t":75.55170995671077},{"impl":"SortedVecSet","n":2631,"op":"insert","t":76.05081243933077},{"impl":"SortedVecSet","n":2641,"op":"insert","t":76.55038073274562},{"impl":"SortedVecSet","n":2651,"op":"insert","t":77.0504117576572},{"impl":"SortedVecSet","n":2661,"op":"insert","t":77.55090246954893},{"impl":"SortedVecSet","n":2671,"op":"insert","t":78.05184985816342},{"impl":"SortedVecSet","n":2681,"op":"insert","t":78.55325094699106},{"impl":"SortedVecSet","n":2691,"op":"insert","t":79.05510279276706},{"impl":"SortedVecSet","n":2701,"op":"insert","t":79.5574024849781},{"impl":"SortedVecSet","n":2711,"op":"insert","t":80.06014714537824},{"impl":"SortedVecSet","n":2721,"op":"insert","t":80.56333392751412},{"impl":"SortedVecSet","n":2731,"op":"insert","t":81.0669600162581},{"impl":"SortedVecSet","n":2741,"op":"insert","t":81.57102262734992},{"impl":"SortedVecSet","n":2751,"op":"insert","t":82.07551900694779},{"impl":"SortedVecSet","n":2761,"op":"insert","t":82.58044643118657},{"impl":"SortedVecSet","n":2771,"op":"insert","t":83.08580220574405},{"impl":"SortedVecSet","n":2781,"op":"insert","t":83.5915836654155},{"impl":"SortedVecSet","n":2791,"op":"insert","t":84.09778817369576},{"impl":"SortedVecSet","n":2801,"op":"insert","t":84.60441312236838},{"impl":"SortedVecSet","n":2811,"op":"insert","t":85.11145593110237},{"impl":"SortedVecSet","n":2821,"op":"insert","t":85.6189140470562},{"impl":"SortedVecSet","n":2831,"op":"insert","t":86.1267849444888},{"impl":"SortedVecSet","n":2841,"op":"insert","t":86.63506612437712},{"impl":"SortedVecSet","n":2851,"op":"insert","t":87.14375511404052},{"impl":"SortedVecSet","n":2861,"op":"insert","t":87.65284946677238},{"impl":"SortedVecSet","n":2871,"op":"insert","t":88.16234676147701},{"impl":"SortedVecSet","n":2881,"op":"insert","t":88.67224460231355},{"impl":"SortedVecSet","n":2891,"op":"insert","t":89.18254061834614},{"impl":"SortedVecSet","n":2901,"op":"insert","t":89.69323246319993},{"impl":"SortedVecSet","n":2911,"op":"insert","t":90.2043178147226},{"impl":"SortedVecSet","n":2921,"op":"insert","t":90.7157943746526},{"impl":"SortedVecSet","n":2931,"op":"insert","t":91.2276598682923},{"impl":"SortedVecSet","n":2941,"op":"insert","t":91.73991204418695},{"impl":"SortedVecSet","n":2951,"op":"insert","t":92.25254867380929},{"impl":"SortedVecSet","n":2961,"op":"insert","t":92.76556755124867},{"impl":"SortedVecSet","n":2971,"op":"insert","t":93.27896649290699},{"impl":"SortedVecSet","n":2981,"op":"insert","t":93.79274333719829},{"impl":"SortedVecSet","n":2991,"op":"insert","t":94.30689594425351},{"impl":"VecSet","n":1,"op":"insert","t":0.0},{"impl":"VecSet","n":11,"op":"insert","t":0.0},{"impl":"VecSet","n":21,"op":"insert","t":0.0},{"impl":"VecSet","n":31,"op":"insert","t":0.0},{"impl":"VecSet","n":41,"op":"insert","t":4.620092681631547},{"impl":"VecSet","n":51,"op":"insert","t":15.572381629769382},{"impl":"VecSet","n":61,"op":"insert","t":24.931466353925913},{"impl":"VecSet","n":71,"op":"insert","t":33.18354382562444},{"impl":"VecSet","n":81,"op":"insert","t":40.62145448736979},{"impl":"VecSet","n":91,"op":"insert","t":47.43531074716071},{"impl":"VecSet","n":101,"op":"insert","t":53.75555438551828},{"impl":"VecSet","n":111,"op":"insert","t":59.67557982063394},{"impl":"VecSet","n":121,"op":"insert","t":65.26455801744669},{"impl":"VecSet","n":131,"op":"insert","t":70.57515093754313},{"impl":"VecSet","n":141,"op":"insert","t":75.64838016372927},{"impl":"VecSet","n":151,"op":"insert","t":80.51682336879638},{"impl":"VecSet","n":161,"op":"insert","t":85.20678372347511},{"impl":"VecSet","n":171,"op":"insert","t":89.73980445082813},{"impl":"VecSet","n":181,"op":"insert","t":94.13375228911875},{"impl":"VecSet","n":191,"op":"insert","t":98.4036092091819},{"impl":"VecSet","n":201,"op":"insert","t":102.56206185862696},{"impl":"VecSet","n":211,"op":"insert","t":106.61994774341746},{"impl":"VecSet","n":221,"op":"insert","t":110.58659800045794},{"impl":"VecSet","n":231,"op":"insert","t":114.47010425143675},{"impl":"VecSet","n":241,"op":"insert","t":118.27752886268067},{"impl":"VecSet","n":251,"op":"insert","t":122.0150724297177},{"impl":"VecSet","n":261,"op":"insert","t":125.68820852219541},{"impl":"VecSet","n":271,"op":"insert","t":129.30179308094807},{"impl":"VecSet","n":281,"op":"insert","t":132.8601539823823},{"impl":"VecSet","n":291,"op":"insert","t":136.36716493421733},{"impl":"VecSet","n":301,"op":"insert","t":139.826306881025},{"impl":"VecSet","n":311,"op":"insert","t":143.24071937032664},{"impl":"VecSet","n":321,"op":"insert","t":146.61324378670872},{"impl":"VecSet","n":331,"op":"insert","t":149.9464599515489},{"impl":"VecSet","n":341,"op":"insert","t":153.24271727373963},{"impl":"VecSet","n":351,"op":"insert","t":156.50416139682974},{"impl":"VecSet","n":361,"op":"insert","t":159.7327571019979},{"impl":"VecSet","n":371,"op":"insert","t":162.93030808094727},{"impl":"VecSet","n":381,"op":"insert","t":166.09847407842744},{"impl":"VecSet","n":391,"op":"insert","t":169.238785813424},{"impl":"VecSet","n":401,"op":"insert","t":172.35265801571651},{"impl":"VecSet","n":411,"op":"insert","t":175.44140085642965},{"impl":"VecSet","n":421,"op":"insert","t":178.50623000429607},{"impl":"VecSet","n":431,"op":"insert","t":181.5482755012612},{"impl":"VecSet","n":441,"op":"insert","t":184.56858961995871},{"impl":"VecSet","n":451,"op":"insert","t":187.56815384006816},{"impl":"VecSet","n":461,"op":"insert","t":190.54788505952624},{"impl":"VecSet","n":471,"op":"insert","t":193.50864113913633},{"impl":"VecSet","n":481,"op":"insert","t":196.45122586462577},{"impl":"VecSet","n":491,"op":"insert","t":199.37639339808908},{"impl":"VecSet","n":501,"op":"insert","t":202.28485228060063},{"impl":"VecSet","n":511,"op":"insert","t":205.17726903923096},{"impl":"VecSet","n":521,"op":"insert","t":208.0542714444772},{"impl":"VecSet","n":531,"op":"insert","t":210.91645145799265},{"impl":"VecSet","n":541,"op":"insert","t":213.7643679052916},{"impl":"VecSet","n":551,"op":"insert","t":216.59854890365762},{"impl":"VecSet","n":561,"op":"insert","t":219.41949407167812},{"impl":"VecSet","n":571,"op":"insert","t":222.2276765435579},{"impl":"VecSet","n":581,"op":"insert","t":225.02354480855223},{"impl":"VecSet","n":591,"op":"insert","t":227.80752439342723},{"impl":"VecSet","n":601,"op":"insert","t":230.58001940375377},{"impl":"VecSet","n":611,"op":"insert","t":233.34141393801355},{"impl":"VecSet","n":621,"op":"insert","t":236.09207338690862},{"impl":"VecSet","n":631,"op":"insert","t":238.83234562887768},{"impl":"VecSet","n":641,"op":"insert","t":241.56256213161396},{"impl":"VecSet","n":651,"op":"insert","t":244.2830389683145},{"impl":"VecSet","n":661,"op":"insert","t":246.99407775646355},{"impl":"VecSet","n":671,"op":"insert","t":249.69596652612697},{"impl":"VecSet","n":681,"op":"insert","t":252.38898052401765},{"impl":"VecSet","n":691,"op":"insert","t":255.07338295894806},{"impl":"VecSet","n":701,"op":"insert","t":257.74942569372513},{"impl":"VecSet","n":711,"op":"insert","t":260.41734988803887},{"impl":"VecSet","n":721,"op":"insert","t":263.07738659645145},{"impl":"VecSet","n":731,"op":"insert","t":265.72975732519956},{"impl":"VecSet","n":741,"op":"insert","t":268.37467455116536},{"impl":"VecSet","n":751,"op":"insert","t":271.012342206062},{"impl":"VecSet","n":761,"op":"insert","t":273.64295612859263},{"impl":"VecSet","n":771,"op":"insert","t":276.26670448709285},{"impl":"VecSet","n":781,"op":"insert","t":278.8837681749383},{"impl":"VecSet","n":791,"op":"insert","t":281.49432118079767},{"impl":"VecSet","n":801,"op":"insert","t":284.09853093562594},{"impl":"VecSet","n":811,"op":"insert","t":286.6965586381307},{"impl":"VecSet","n":821,"op":"insert","t":289.28855956029435},{"impl":"VecSet","n":831,"op":"insert","t":291.87468333440023},{"impl":"VecSet","n":841,"op":"insert","t":294.4550742228913},{"impl":"VecSet","n":851,"op":"insert","t":297.02987137227865},{"impl":"VecSet","n":861,"op":"insert","t":299.5992090522171},{"impl":"VecSet","n":871,"op":"insert","t":302.16321688077767},{"impl":"VecSet","n":881,"op":"insert","t":304.7220200368599},{"impl":"VecSet","n":891,"op":"insert","t":307.27573946061693},{"impl":"VecSet","n":901,"op":"insert","t":309.8244920426958},{"impl":"VecSet","n":911,"op":"insert","t":312.3683908030322},{"impl":"VecSet","n":921,"op":"insert","t":314.9075450598859},{"impl":"VecSet","n":931,"op":"insert","t":317.4420605897486},{"impl":"VecSet","n":941,"op":"insert","t":319.9720397787086},{"impl":"VecSet","n":951,"op":"insert","t":322.4975817658155},{"impl":"VecSet","n":961,"op":"insert","t":325.018782578945},{"impl":"VecSet","n":971,"op":"insert","t":327.5357352636328},{"impl":"VecSet","n":981,"op":"insert","t":330.04853000530665},{"impl":"VecSet","n":991,"op":"insert","t":332.5572542453201},{"impl":"VecSet","n":1001,"op":"insert","t":335.06199279116146},{"impl":"VecSet","n":1011,"op":"insert","t":337.56282792118367},{"impl":"VecSet","n":1021,"op":"insert","t":340.0598394841814},{"impl":"VecSet","n":1031,"op":"insert","t":342.55310499411405},{"impl":"VecSet","n":1041,"op":"insert","t":345.04269972025764},{"impl":"VecSet","n":1051,"op":"insert","t":347.5286967730468},{"impl":"VecSet","n":1061,"op":"insert","t":350.0111671858523},{"impl":"VecSet","n":1071,"op":"insert","t":352.4901799929221},{"impl":"VecSet","n":1081,"op":"insert","t":354.9658023037016},{"impl":"VecSet","n":1091,"op":"insert","t":357.4380993737309},{"impl":"VecSet","n":1101,"op":"insert","t":359.9071346723081},{"impl":"VecSet","n":1111,"op":"insert","t":362.37296994709305},{"impl":"VecSet","n":1121,"op":"insert","t":364.83566528581775},{"impl":"VecSet","n":1131,"op":"insert","t":367.2952791752546},{"impl":"VecSet","n":1141,"op":"insert","t":369.7518685575909},{"impl":"VecSet","n":1151,"op":"insert","t":372.205488884342},{"impl":"VecSet","n":1161,"op":"insert","t":374.65619416793413},{"impl":"VecSet","n":1171,"op":"insert","t":377.10403703107374},{"impl":"VecSet","n":1181,"op":"insert","t":379.54906875401844},{"impl":"VecSet","n":1191,"op":"insert","t":381.9913393198551},{"impl":"VecSet","n":1201,"op":"insert","t":384.4308974578847},{"impl":"VecSet","n":1211,"op":"insert","t":386.86779068520826},{"impl":"VecSet","n":1221,"op":"insert","t":389.3020653466031},{"impl":"VecSet","n":1231,"op":"insert","t":391.733766652773},{"impl":"VecSet","n":1241,"op":"insert","t":394.16293871705},{"impl":"VecSet","n":1251,"op":"insert","t":396.58962459062434},{"impl":"VecSet","n":1261,"op":"insert","t":399.0138662963717},{"impl":"VecSet","n":1271,"op":"insert","t":401.435704861344},{"impl":"VecSet","n":1281,"op":"insert","t":403.85518034798713},{"impl":"VecSet","n":1291,"op":"insert","t":406.2723318841454},{"impl":"VecSet","n":1301,"op":"insert","t":408.6871976919078},{"impl":"VecSet","n":1311,"op":"insert","t":411.09981511534977},{"impl":"VecSet","n":1321,"op":"insert","t":413.51022064722184},{"impl":"VecSet","n":1331,"op":"insert","t":415.91844995463066},{"impl":"VecSet","n":1341,"op":"insert","t":418.32453790375973},{"impl":"VecSet","n":1351,"op":"insert","t":420.7285185836714},{"impl":"VecSet","n":1361,"op":"insert","t":423.13042532923134},{"impl":"VecSet","n":1371,"op":"insert","t":425.53029074319414},{"impl":"VecSet","n":1381,"op":"insert","t":427.9281467174858},{"impl":"VecSet","n":1391,"op":"insert","t":430.32402445371866},{"impl":"VecSet","n":1401,"op":"insert","t":432.7179544829717},{"impl":"VecSet","n":1411,"op":"insert","t":435.1099666848676},{"impl":"VecSet","n":1421,"op":"insert","t":437.50009030597516},{"impl":"VecSet","n":1431,"op":"insert","t":439.8883539775676},{"impl":"VecSet","n":1441,"op":"insert","t":442.27478573276244},{"impl":"VecSet","n":1451,"op":"insert","t":444.65941302306715},{"impl":"VecSet","n":1461,"op":"insert","t":447.0422627343589},{"impl":"VecSet","n":1471,"op":"insert","t":449.42336120231823},{"impl":"VecSet","n":1481,"op":"insert","t":451.8027342273382},{"impl":"VecSet","n":1491,"op":"insert","t":454.1804070889357},{"impl":"VecSet","n":1501,"op":"insert","t":456.5564045596771},{"impl":"VecSet","n":1511,"op":"insert","t":458.93075091864443},{"impl":"VecSet","n":1521,"op":"insert","t":461.30346996445576},{"impl":"VecSet","n":1531,"op":"insert","t":463.67458502785973},{"impl":"VecSet","n":1541,"op":"insert","t":466.0441189839197},{"impl":"VecSet","n":1551,"op":"insert","t":468.412094263804},{"impl":"VecSet","n":1561,"op":"insert","t":470.7785328661978},{"impl":"VecSet","n":1571,"op":"insert","t":473.1434563683493},{"impl":"VecSet","n":1581,"op":"insert","t":475.50688593676705},{"impl":"VecSet","n":1591,"op":"insert","t":477.86884233757854},{"impl":"VecSet","n":1601,"op":"insert","t":480.22934594656584},{"impl":"VecSet","n":1611,"op":"insert","t":482.58841675888704},{"impl":"VecSet","n":1621,"op":"insert","t":484.94607439849847},{"impl":"VecSet","n":1631,"op":"insert","t":487.302338127286},{"impl":"VecSet","n":1641,"op":"insert","t":489.65722685391836},{"impl":"VecSet","n":1651,"op":"insert","t":492.0107591424302},{"impl":"VecSet","n":1661,"op":"insert","t":494.3629532205472},{"impl":"VecSet","n":1671,"op":"insert","t":496.71382698776074},{"impl":"VecSet","n":1681,"op":"insert","t":499.06339802316177},{"impl":"VecSet","n":1691,"op":"insert","t":501.4116835930422},{"impl":"VecSet","n":1701,"op":"insert","t":503.7587006582725},{"impl":"VecSet","n":1711,"op":"insert","t":506.10446588146294},{"impl":"VecSet","n":1721,"op":"insert","t":508.4489956339163},{"impl":"VecSet","n":1731,"op":"insert","t":510.79230600237827},{"impl":"VecSet","n":1741,"op":"insert","t":513.1344127955952},{"impl":"VecSet","n":1751,"op":"insert","t":515.475331550682},{"impl":"VecSet","n":1761,"op":"insert","t":517.8150775393108},{"impl":"VecSet","n":1771,"op":"insert","t":520.1536657737222},{"impl":"VecSet","n":1781,"op":"insert","t":522.4911110125695},{"impl":"VecSet","n":1791,"op":"insert","t":524.8274277665973},{"impl":"VecSet","n":1801,"op":"insert","t":527.1626303041633},{"impl":"VecSet","n":1811,"op":"insert","t":529.4967326566069},{"impl":"VecSet","n":1821,"op":"insert","t":531.82974862347},{"impl":"VecSet","n":1831,"op":"insert","t":534.1616917775747},{"impl":"VecSet","n":1841,"op":"insert","t":536.4925754699623},{"impl":"VecSet","n":1851,"op":"insert","t":538.8224128347002},{"impl":"VecSet","n":1861,"op":"insert","t":541.1512167935566},{"impl":"VecSet","n":1871,"op":"insert","t":543.4790000605528},{"impl":"VecSet","n":1881,"op":"insert","t":545.8057751463921},{"impl":"VecSet","n":1891,"op":"insert","t":548.1315543627719},{"impl":"VecSet","n":1901,"op":"insert","t":550.4563498265828},{"impl":"VecSet","n":1911,"op":"insert","t":552.7801734639963},{"impl":"VecSet","n":1921,"op":"insert","t":555.103037014447},{"impl":"VecSet","n":1931,"op":"insert","t":557.4249520345103},{"impl":"VecSet","n":1941,"op":"insert","t":559.745929901681},{"impl":"VecSet","n":1951,"op":"insert","t":562.0659818180543},{"impl":"VecSet","n":1961,"op":"insert","t":564.3851188139124},{"impl":"VecSet","n":1971,"op":"insert","t":566.7033517512205},{"impl":"VecSet","n":1981,"op":"insert","t":569.0206913270339},{"impl":"VecSet","n":1991,"op":"insert","t":571.3371480768199},{"impl":"VecSet","n":2001,"op":"insert","t":573.6527323776954},{"impl":"VecSet","n":2011,"op":"insert","t":575.9674544515851},{"impl":"VecSet","n":2021,"op":"insert","t":578.2813243683003},{"impl":"VecSet","n":2031,"op":"insert","t":580.5943520485423},{"impl":"VecSet","n":2041,"op":"insert","t":582.9065472668321},{"impl":"VecSet","n":2051,"op":"insert","t":585.2179196543681},{"impl":"VecSet","n":2061,"op":"insert","t":587.5284787018143},{"impl":"VecSet","n":2071,"op":"insert","t":589.8382337620216},{"impl":"VecSet","n":2081,"op":"insert","t":592.1471940526833},{"impl":"VecSet","n":2091,"op":"insert","t":594.4553686589259},{"impl":"VecSet","n":2101,"op":"insert","t":596.7627665358407},{"impl":"VecSet","n":2111,"op":"insert","t":599.0693965109515},{"impl":"VecSet","n":2121,"op":"insert","t":601.3752672866283},{"impl":"VecSet","n":2131,"op":"insert","t":603.6803874424402},{"impl":"VecSet","n":2141,"op":"insert","t":605.9847654374562},{"impl":"VecSet","n":2151,"op":"insert","t":608.2884096124908},{"impl":"VecSet","n":2161,"op":"insert","t":610.5913281922981},{"impl":"VecSet","n":2171,"op":"insert","t":612.8935292877153},{"impl":"VecSet","n":2181,"op":"insert","t":615.1950208977563},{"impl":"VecSet","n":2191,"op":"insert","t":617.4958109116585},{"impl":"VecSet","n":2201,"op":"insert","t":619.7959071108819},{"impl":"VecSet","n":2211,"op":"insert","t":622.0953171710637},{"impl":"VecSet","n":2221,"op":"insert","t":624.394048663928},{"impl":"VecSet","n":2231,"op":"insert","t":626.6921090591536},{"impl":"VecSet","n":2241,"op":"insert","t":628.9895057261997},{"impl":"VecSet","n":2251,"op":"insert","t":631.2862459360897},{"impl":"VecSet","n":2261,"op":"insert","t":633.5823368631578},{"impl":"VecSet","n":2271,"op":"insert","t":635.877785586755},{"impl":"VecSet","n":2281,"op":"insert","t":638.1725990929184},{"impl":"VecSet","n":2291,"op":"insert","t":640.4667842760045},{"impl":"VecSet","n":2301,"op":"insert","t":642.7603479402867},{"impl":"VecSet","n":2311,"op":"insert","t":645.0532968015161},{"impl":"VecSet","n":2321,"op":"insert","t":647.3456374884526},{"impl":"VecSet","n":2331,"op":"insert","t":649.6373765443598},{"impl":"VecSet","n":2341,"op":"insert","t":651.928520428469},{"impl":"VecSet","n":2351,"op":"insert","t":654.2190755174123},{"impl":"VecSet","n":2361,"op":"insert","t":656.5090481066245},{"impl":"VecSet","n":2371,"op":"insert","t":658.7984444117167},{"impl":"VecSet","n":2381,"op":"insert","t":661.0872705698189},{"impl":"VecSet","n":2391,"op":"insert","t":663.375532640897},{"impl":"VecSet","n":2401,"op":"insert","t":665.6632366090398},{"impl":"VecSet","n":2411,"op":"insert","t":667.9503883837219},{"impl":"VecSet","n":2421,"op":"insert","t":670.2369938010377},{"impl":"VecSet","n":2431,"op":"insert","t":672.5230586249118},{"impl":"VecSet","n":2441,"op":"insert","t":674.8085885482844},{"impl":"VecSet","n":2451,"op":"insert","t":677.0935891942715},{"impl":"VecSet","n":2461,"op":"insert","t":679.378066117303},{"impl":"VecSet","n":2471,"op":"insert","t":681.6620248042354},{"impl":"VecSet","n":2481,"op":"insert","t":683.9454706754454},{"impl":"VecSet","n":2491,"op":"insert","t":686.2284090858975},{"impl":"VecSet","n":2501,"op":"insert","t":688.5108453261944},{"impl":"VecSet","n":2511,"op":"insert","t":690.7927846236021},{"impl":"VecSet","n":2521,"op":"insert","t":693.0742321430587},{"impl":"VecSet","n":2531,"op":"insert","t":695.3551929881605},{"impl":"VecSet","n":2541,"op":"insert","t":697.6356722021299},{"impl":"VecSet","n":2551,"op":"insert","t":699.915674768763},{"impl":"VecSet","n":2561,"op":"insert","t":702.1952056133614},{"impl":"VecSet","n":2571,"op":"insert","t":704.4742696036421},{"impl":"VecSet","n":2581,"op":"insert","t":706.7528715506332},{"impl":"VecSet","n":2591,"op":"insert","t":709.0310162095499},{"impl":"VecSet","n":2601,"op":"insert","t":711.3087082806544},{"impl":"VecSet","n":2611,"op":"insert","t":713.5859524101002},{"impl":"VecSet","n":2621,"op":"insert","t":715.8627531907584},{"impl":"VecSet","n":2631,"op":"insert","t":718.139115163031},{"impl":"VecSet","n":2641,"op":"insert","t":720.4150428156444},{"impl":"VecSet","n":2651,"op":"insert","t":722.6905405864331},{"impl":"VecSet","n":2661,"op":"insert","t":724.9656128631055},{"impl":"VecSet","n":2671,"op":"insert","t":727.2402639839952},{"impl":"VecSet","n":2681,"op":"insert","t":729.5144982387994},{"impl":"VecSet","n":2691,"op":"insert","t":731.7883198693036},{"impl":"VecSet","n":2701,"op":"insert","t":734.0617330700923},{"impl":"VecSet","n":2711,"op":"insert","t":736.3347419892465},{"impl":"VecSet","n":2721,"op":"insert","t":738.6073507290289},{"impl":"VecSet","n":2731,"op":"insert","t":740.8795633465554},{"impl":"VecSet","n":2741,"op":"insert","t":743.1513838544568},{"impl":"VecSet","n":2751,"op":"insert","t":745.422816221525},{"impl":"VecSet","n":2761,"op":"insert","t":747.6938643733502},{"impl":"VecSet","n":2771,"op":"insert","t":749.964532192946},{"impl":"VecSet","n":2781,"op":"insert","t":752.2348235213615},{"impl":"VecSet","n":2791,"op":"insert","t":754.5047421582856},{"impl":"VecSet","n":2801,"op":"insert","t":756.7742918626375},{"impl":"VecSet","n":2811,"op":"insert","t":759.043476353148},{"impl":"VecSet","n":2821,"op":"insert","t":761.312299308931},{"impl":"VecSet","n":2831,"op":"insert","t":763.5807643700432},{"impl":"VecSet","n":2841,"op":"insert","t":765.8488751380364},{"impl":"VecSet","n":2851,"op":"insert","t":768.1166351764973},{"impl":"VecSet","n":2861,"op":"insert","t":770.38404801158},{"impl":"VecSet","n":2871,"op":"insert","t":772.6511171325283},{"impl":"VecSet","n":2881,"op":"insert","t":774.9178459921889},{"impl":"VecSet","n":2891,"op":"insert","t":777.184238007516},{"impl":"VecSet","n":2901,"op":"insert","t":779.4502965600673},{"impl":"VecSet","n":2911,"op":"insert","t":781.7160249964903},{"impl":"VecSet","n":2921,"op":"insert","t":783.9814266290027},{"impl":"VecSet","n":2931,"op":"insert","t":786.2465047358614},{"impl":"VecSet","n":2941,"op":"insert","t":788.5112625618267},{"impl":"VecSet","n":2951,"op":"insert","t":790.775703318616},{"impl":"VecSet","n":2961,"op":"insert","t":793.0398301853513},{"impl":"VecSet","n":2971,"op":"insert","t":795.303646308999},{"impl":"VecSet","n":2981,"op":"insert","t":797.5671548048017},{"impl":"VecSet","n":2991,"op":"insert","t":799.8303587567038}]},"encoding":{"color":{"field":"impl","legend":{"title":"Implementation"}},"x":{"axis":{"title":"Size of container (n)"},"field":"n","scale":{"domain":[1,3000]},"type":"quantitative"},"y":{"axis":{"title":"Estimated cost"},"field":"t","scale":{"domain":[0,200]},"type":"quantitative"}},"mark":{"clip":true,"fillOpacity":1,"type":"line"}}],"width":500}
\ No newline at end of file diff --git a/thesis/parts/conclusion.tex b/thesis/parts/conclusion.tex index a00234d..e018efa 100644 --- a/thesis/parts/conclusion.tex +++ b/thesis/parts/conclusion.tex @@ -1 +1,15 @@ -\todo{Summarise, etc.} +%% Presented a system accounting for functional and non-functional requirements +We have presented an integrated system for container implementation selection, which can take into account the functional and non-functional requirements of the program it is working on. + +%% Ease of extending / flexibility +Our system is extremely flexible, and can be easily extended with new container types and new functionality on those types, as we showed by adding associative collections and several new data types. + +%% Demonstrated predictive power of profiling and benchmarking, although limited testing +We demonstrated that benchmarking of container implementations and profiling of target applications can be done separately and then combined to suggest the fastest container implementation for a particular program. +We prove that this approach has merit, although our testing had notable limitations that future work should improve on. +We also found that while linear regression is powerful enough for many cases, more research is required on how best to gather and preprocess data in order to best capture an implementation's performance characteristics. + +%% Researched feasibility of adaptive containers, found issues with overhead and threshold detection +We test the effectiveness of switching container implementation as the n value changes, and in doing so find several important factors to consider. +%% Future work should focus on minimising overhead and finding the ideal threshold +Future work should focus on minimising the overhead applied to every operation, as well as finding the correct threshold at which to switch implementation. diff --git a/thesis/parts/design.tex b/thesis/parts/design.tex index fba4437..84643b1 100644 --- a/thesis/parts/design.tex +++ b/thesis/parts/design.tex @@ -138,11 +138,12 @@ We then perform regression, using the collection size $n$ to predict $t$. In the case of \code{Vec::contains}, we would expect the resulting polynomial to be roughly linear. In our implementation, we fit a function of the form $x_0 + x_1 n + x_2 n^2 + x_3 \log_2 n$, using regular least-squares fitting. +Before fitting, we discard all observations that are more than one standard deviation out from the mean for a given $n$ value. + Whilst we could use a more complex technique, in practice this is good enough: Most common operations are polynomial at worst, and more complex models risk overfitting. -\todo{mention discarding outliers} + %% Limitations This method works well for many operations and structures, although has notable limitations. - In particular, implementations which defer work from one function to another will be extremely inconsistent. For example, \code{LazySortedVec} (provided by Primrose) inserts new elements at the end by default, and waits to sort the list until the contents of the list are read from (such as by using \code{contains}). diff --git a/thesis/parts/introduction.tex b/thesis/parts/introduction.tex index 068b1a5..aae5474 100644 --- a/thesis/parts/introduction.tex +++ b/thesis/parts/introduction.tex @@ -7,7 +7,7 @@ A common requirement when programming is the need to keep a collection of data t Often, programmers will have some requirements they want to impose on this collection, such as not storing duplicate elements, or storing the items in sorted order. %% **** Functionally identical implementations -However, implementing these collection types manually is usually a waste of time, as is fine-tuning their implementation to perform better. +However, implementing these collection types manually is usually a waste of time, as is fine-tuning a custom implementation to perform better. Most programmers will simply use one or two collection types provided by their language. %% **** Large difference in performance @@ -16,18 +16,17 @@ The underlying implementation of container types which function the same can hav %% *** Motivate w/ effectiveness claims We propose a system, Candelabra, for the automatic selection of container implementations, based on both user-specified requirements and inferred requirements for performance. -From our testing, we are able to select the best performing containers for a program, in significantly less time than brute force. +In our testing, we are able to accurately select the best performing containers for a program in significantly less time than brute force. %% *** Overview of aims & approach %% **** Ease of adding new container types -We have designed our system with flexibility in mind --- adding new container implementations requires little effort. +We have designed our system with flexibility in mind: adding new container implementations requires little effort. %% **** Ease of integration into existing projects It is easy to adopt our system incrementally, and we integrate with existing tools to making doing so easy. %% **** Scalability to larger projects The time it takes to select containers scales roughly linearly, even in complex cases, allowing our tool to be used even on larger projects. %% **** Flexibility of selection -Our system is also able to suggest adaptive containers --- containers which switch underlying implementation as they grow. - -%% *** Overview of results -\todo{Overview of results} +Our system is also able to suggest adaptive containers: containers which switch underlying implementation as they grow. +%% **** Overview of results +Whilst we saw reasonable suggestions in our test cases, we found the overhead of switching and of checking the current implementation to be more of a problem than expected, which future work could improve on. diff --git a/thesis/parts/results.tex b/thesis/parts/results.tex index 6562d38..944ecd8 100644 --- a/thesis/parts/results.tex +++ b/thesis/parts/results.tex @@ -116,8 +116,8 @@ As the spread of points also appears to increase at larger $n$ values, its possi \code{HashSet} appears roughly linear as expected, with only a slow logarithmic rise, probably due to an increasing amount of collisions. \code{BTreeSet} is consistently above it, with a slightly higher logarithmic rise. -\code{BTreeMap} and \code{HashMap} both mimic their set counterparts, but with a slightly lower overall cost this time. -\todo{It's unclear why this is.} +\code{BTreeMap} and \code{HashMap} both mimic their set counterparts, but with a slightly lower cost and growth rate. +It's unclear why this is, however it could be related to the larger spread in observations for both implementations. \subsection{Evaluation} |