galaaz 0.4.10 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (391) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/LICENSE +0 -0
  4. data/README.md +3123 -882
  5. data/Rakefile +62 -41
  6. data/bin/galaaz-bootstrap +137 -0
  7. data/bin/galaaz-jruby +14 -0
  8. data/bin/galaaz_jruby_env.inc.sh +6 -0
  9. data/bin/gbookdown +64 -0
  10. data/bin/gknit +223 -6
  11. data/bin/gknit-draft +105 -0
  12. data/bin/gknit-draft.rb +28 -0
  13. data/bin/gknit_Rscript +127 -0
  14. data/bin/grun +27 -1
  15. data/bin/gstudio +49 -4
  16. data/bin/{gstudio.rb → gstudio_irb.rb} +0 -0
  17. data/bin/gstudio_pry.rb +7 -0
  18. data/bin/install-tinytex +6 -0
  19. data/bin/run_all_rspec +43 -0
  20. data/bin/run_example +14 -0
  21. data/bin/run_old_rspec +19 -0
  22. data/bin/run_rspec +23 -0
  23. data/bin/run_rspec_subset +38 -0
  24. data/bin/run_slow_rspec +19 -0
  25. data/blogs/R-on-Rails-Planning-Document.md +940 -0
  26. data/blogs/README.md +100 -0
  27. data/blogs/galaaz_ggplot/galaaz_ggplot.Rmd +38 -66
  28. data/blogs/galaaz_ggplot/galaaz_ggplot.log +754 -0
  29. data/blogs/galaaz_ggplot/galaaz_ggplot.md +364 -0
  30. data/blogs/galaaz_ggplot/galaaz_ggplot.tex +607 -0
  31. data/blogs/galaaz_ggplot/galaaz_ggplot_files/figure-html/midwest_rb.png +0 -0
  32. data/blogs/galaaz_ggplot/galaaz_ggplot_files/figure-html/scatter_plot_rb.png +0 -0
  33. data/blogs/galaaz_ggplot/galaaz_ggplot_files/figure-markdown_github/midwest_rb.png +0 -0
  34. data/blogs/galaaz_ggplot/galaaz_ggplot_files/figure-markdown_github/scatter_plot_rb.png +0 -0
  35. data/blogs/galaaz_ggplot/midwest.Rmd +3 -3
  36. data/blogs/galaaz_ggplot/midwest_external_png +0 -0
  37. data/blogs/gknit/gknit.Rmd +52 -55
  38. data/blogs/gknit/gknit.md +94 -94
  39. data/blogs/gknit/gknit_files/figure-html/bubble-1.png +0 -0
  40. data/blogs/gknit/gknit_files/figure-html/diverging_bar.png +0 -0
  41. data/blogs/gknit/lst.rds +0 -0
  42. data/blogs/gknit/model.rb +1 -1
  43. data/blogs/gknit/stats.bib +0 -0
  44. data/blogs/manual/include_model_local_repro.Rmd +14 -0
  45. data/blogs/manual/include_model_local_repro.md +75 -0
  46. data/blogs/manual/lst.rds +0 -0
  47. data/blogs/manual/manual.Rmd +1582 -196
  48. data/blogs/manual/manual.log +1786 -0
  49. data/blogs/manual/manual.md +3107 -890
  50. data/blogs/manual/manual.tex +3018 -1086
  51. data/blogs/manual/manual_files/figure-html/bubble-1.png +0 -0
  52. data/blogs/manual/manual_files/figure-html/diverging_bar.png +0 -0
  53. data/blogs/manual/manual_files/figure-latex/bubble-1.png +0 -0
  54. data/blogs/manual/model.rb +41 -0
  55. data/blogs/nse_dplyr/nse_dplyr.Rmd +277 -151
  56. data/blogs/nse_dplyr/nse_dplyr.log +928 -0
  57. data/blogs/nse_dplyr/nse_dplyr.md +457 -293
  58. data/blogs/oh_my/not_so.rb +0 -0
  59. data/blogs/oh_my/oh_my.Rmd +1234 -25
  60. data/blogs/oh_my/oh_my.log +804 -0
  61. data/blogs/oh_my/oh_my.md +1808 -228
  62. data/blogs/oh_my/oh_my.tex +821 -0
  63. data/blogs/oh_my/old.Rmd +15 -14
  64. data/blogs/ruby_plot/ruby_plot.Rmd +58 -82
  65. data/blogs/ruby_plot/ruby_plot.log +885 -0
  66. data/blogs/ruby_plot/ruby_plot.md +71 -103
  67. data/blogs/ruby_plot/ruby_plot.tex +940 -0
  68. data/blogs/ruby_plot/ruby_plot_files/figure-html/dose_len.png +0 -0
  69. data/blogs/ruby_plot/ruby_plot_files/figure-html/facet_by_delivery.png +0 -0
  70. data/blogs/ruby_plot/ruby_plot_files/figure-html/facet_by_dose.png +0 -0
  71. data/blogs/ruby_plot/ruby_plot_files/figure-html/facets_by_delivery_color.png +0 -0
  72. data/blogs/ruby_plot/ruby_plot_files/figure-html/facets_by_delivery_color2.png +0 -0
  73. data/blogs/ruby_plot/ruby_plot_files/figure-html/facets_with_decorations.png +0 -0
  74. data/blogs/ruby_plot/ruby_plot_files/figure-html/facets_with_jitter.png +0 -0
  75. data/blogs/ruby_plot/ruby_plot_files/figure-html/facets_with_points.png +0 -0
  76. data/blogs/ruby_plot/ruby_plot_files/figure-html/final_box_plot.png +0 -0
  77. data/blogs/ruby_plot/ruby_plot_files/figure-html/final_violin_plot.png +0 -0
  78. data/blogs/ruby_plot/ruby_plot_files/figure-html/violin_with_jitter.png +0 -0
  79. data/blogs/ruby_plot/ruby_plot_files/figure-latex/dose_len.png +0 -0
  80. data/blogs/ruby_plot/ruby_plot_files/figure-latex/facet_by_delivery.png +0 -0
  81. data/blogs/ruby_plot/ruby_plot_files/figure-latex/facet_by_dose.png +0 -0
  82. data/blogs/ruby_plot/ruby_plot_files/figure-latex/facets_by_delivery_color.png +0 -0
  83. data/blogs/ruby_plot/ruby_plot_files/figure-latex/facets_by_delivery_color2.png +0 -0
  84. data/blogs/ruby_plot/ruby_plot_files/figure-latex/facets_with_decorations.png +0 -0
  85. data/blogs/ruby_plot/ruby_plot_files/figure-latex/facets_with_jitter.png +0 -0
  86. data/blogs/ruby_plot/ruby_plot_files/figure-latex/facets_with_points.png +0 -0
  87. data/blogs/ruby_plot/ruby_plot_files/figure-latex/final_box_plot.png +0 -0
  88. data/blogs/ruby_plot/ruby_plot_files/figure-latex/final_violin_plot.png +0 -0
  89. data/blogs/ruby_plot/ruby_plot_files/figure-latex/violin_with_jitter.png +0 -0
  90. data/blogs/test/test.Rmd +14 -0
  91. data/examples/50Plots_MasterList/Images/midwest-scatterplot.PNG +0 -0
  92. data/examples/50Plots_MasterList/ScatterPlot.rb +0 -0
  93. data/examples/50Plots_MasterList/scatter_plot.rb +0 -0
  94. data/examples/Bibliography/master.bib +50 -0
  95. data/examples/Bibliography/stats.bib +72 -0
  96. data/examples/R/calc.R +0 -0
  97. data/examples/R/java_interop.R +0 -0
  98. data/examples/bioconductor_deseq2_airway/Documentation/DESeq2-airway-walkthrough.md +56 -0
  99. data/examples/bioconductor_deseq2_airway/bench_galaaz_three_same_process.rb +53 -0
  100. data/examples/bioconductor_deseq2_airway/bench_r_three_same_process.R +34 -0
  101. data/examples/bioconductor_deseq2_airway/deseq2_airway_galaaz.rb +33 -0
  102. data/examples/bioconductor_deseq2_airway/deseq2_airway_galaaz_optimized.rb +34 -0
  103. data/examples/bioconductor_deseq2_airway/deseq2_airway_minimal.R +30 -0
  104. data/examples/bioconductor_deseq2_airway/deseq2_airway_pipeline_for_bench.R +36 -0
  105. data/examples/islr/all.rb +13 -0
  106. data/examples/islr/ch2.spec.rb +37 -7
  107. data/examples/islr/ch3.spec.rb +11 -2
  108. data/examples/islr/ch3_boston.rb +27 -0
  109. data/examples/islr/ch3_multiple_regression.rb +0 -0
  110. data/examples/islr/ch6.spec.rb +24 -1
  111. data/examples/islr/x_y_rnorm.jpg +0 -0
  112. data/examples/latex_templates/Test-acm_article/Makefile +16 -0
  113. data/examples/latex_templates/Test-acm_article/Test-acm_article.Rmd +65 -0
  114. data/examples/latex_templates/Test-acm_article/acm_proc_article-sp.cls +1670 -0
  115. data/examples/latex_templates/Test-acm_article/sensys-abstract.cls +703 -0
  116. data/examples/latex_templates/Test-acm_article/sigproc.bib +59 -0
  117. data/examples/latex_templates/Test-acs_article/Test-acs_article.Rmd +260 -0
  118. data/examples/latex_templates/Test-acs_article/acs-Test-acs_article.bib +11 -0
  119. data/examples/latex_templates/Test-acs_article/acs-my_output.bib +11 -0
  120. data/examples/latex_templates/Test-acs_article/acstest.bib +17 -0
  121. data/examples/latex_templates/Test-aea_article/AEA.cls +1414 -0
  122. data/{blogs/gknit/marshal.dump → examples/latex_templates/Test-aea_article/BibFile.bib} +0 -0
  123. data/examples/latex_templates/Test-aea_article/Test-aea_article.Rmd +108 -0
  124. data/examples/latex_templates/Test-aea_article/aea.bst +1269 -0
  125. data/examples/latex_templates/Test-aea_article/multicol.sty +853 -0
  126. data/examples/latex_templates/Test-aea_article/references.bib +0 -0
  127. data/examples/latex_templates/Test-aea_article/setspace.sty +546 -0
  128. data/examples/latex_templates/Test-amq_article/Test-amq_article.Rmd +256 -0
  129. data/examples/latex_templates/Test-amq_article/Test-amq_article.pdfsync +3397 -0
  130. data/examples/latex_templates/Test-ams_article/Test-ams_article.Rmd +215 -0
  131. data/examples/latex_templates/Test-ams_article/amstest.bib +436 -0
  132. data/examples/latex_templates/Test-asa_article/Test-asa_article.Rmd +153 -0
  133. data/examples/latex_templates/Test-asa_article/agsm.bst +1353 -0
  134. data/examples/latex_templates/Test-asa_article/bibliography.bib +233 -0
  135. data/examples/latex_templates/Test-ieee_article/IEEEtran.bst +2409 -0
  136. data/examples/latex_templates/Test-ieee_article/IEEEtran.cls +6346 -0
  137. data/examples/latex_templates/Test-ieee_article/Test-ieee_article.Rmd +175 -0
  138. data/examples/latex_templates/Test-ieee_article/mybibfile.bib +20 -0
  139. data/examples/latex_templates/Test-rjournal_article/RJournal.sty +335 -0
  140. data/examples/latex_templates/Test-rjournal_article/RJreferences.bib +18 -0
  141. data/examples/latex_templates/Test-rjournal_article/Test-rjournal_article.Rmd +52 -0
  142. data/examples/latex_templates/Test-springer_article/Test-springer_article.Rmd +65 -0
  143. data/examples/latex_templates/Test-springer_article/bibliography.bib +26 -0
  144. data/examples/latex_templates/Test-springer_article/spbasic.bst +1658 -0
  145. data/examples/latex_templates/Test-springer_article/spmpsci.bst +1512 -0
  146. data/examples/latex_templates/Test-springer_article/spphys.bst +1443 -0
  147. data/examples/latex_templates/Test-springer_article/svglov3.clo +113 -0
  148. data/examples/latex_templates/Test-springer_article/svjour3.cls +1431 -0
  149. data/examples/misc/baseball.csv +0 -0
  150. data/examples/misc/ggplot.rb +3 -2
  151. data/examples/misc/moneyball.rb +0 -0
  152. data/examples/misc/subsetting.rb +0 -0
  153. data/examples/multithread_shards_to_r/shards_to_r.rb +67 -0
  154. data/examples/rmarkdown/svm-rmarkdown-anon-ms-example/svm-rmarkdown-anon-ms-example.Rmd +73 -0
  155. data/examples/rmarkdown/svm-rmarkdown-article-example/svm-rmarkdown-article-example.Rmd +382 -0
  156. data/examples/rmarkdown/svm-rmarkdown-beamer-example/svm-rmarkdown-beamer-example.Rmd +164 -0
  157. data/examples/rmarkdown/svm-rmarkdown-cv/svm-rmarkdown-cv.Rmd +92 -0
  158. data/examples/rmarkdown/svm-rmarkdown-syllabus-example/attend-grade-relationships.csv +482 -0
  159. data/examples/rmarkdown/svm-rmarkdown-syllabus-example/svm-rmarkdown-syllabus-example.Rmd +280 -0
  160. data/examples/rmarkdown/svm-xaringan-example/svm-xaringan-example.Rmd +386 -0
  161. data/examples/sthda_ggplot/README.md +0 -0
  162. data/examples/sthda_ggplot/RUN.md +41 -0
  163. data/examples/sthda_ggplot/all.rb +0 -0
  164. data/examples/sthda_ggplot/one_variable_continuous/density_gg.rb +0 -0
  165. data/examples/sthda_ggplot/one_variable_continuous/geom_area.rb +0 -0
  166. data/examples/sthda_ggplot/one_variable_continuous/geom_density.rb +2 -0
  167. data/examples/sthda_ggplot/one_variable_continuous/geom_dotplot.rb +0 -0
  168. data/examples/sthda_ggplot/one_variable_continuous/geom_freqpoly.rb +0 -0
  169. data/examples/sthda_ggplot/one_variable_continuous/geom_histogram.rb +0 -0
  170. data/examples/sthda_ggplot/one_variable_continuous/histogram_density.rb +0 -0
  171. data/examples/sthda_ggplot/one_variable_continuous/stat.rb +0 -0
  172. data/examples/sthda_ggplot/one_variable_discrete/bar.rb +0 -0
  173. data/examples/sthda_ggplot/qplots/box_violin_dot.rb +0 -0
  174. data/examples/sthda_ggplot/qplots/scatter_plots.rb +0 -0
  175. data/examples/sthda_ggplot/scatter_gg.rb +0 -0
  176. data/examples/sthda_ggplot/two_variables_cont_bivariate/geom_bin2d.rb +0 -0
  177. data/examples/sthda_ggplot/two_variables_cont_bivariate/geom_density2d.rb +0 -0
  178. data/examples/sthda_ggplot/two_variables_cont_bivariate/geom_hex.rb +0 -0
  179. data/examples/sthda_ggplot/two_variables_cont_cont/geom_point.rb +0 -0
  180. data/examples/sthda_ggplot/two_variables_cont_cont/geom_smooth.rb +0 -0
  181. data/examples/sthda_ggplot/two_variables_cont_cont/misc.rb +0 -0
  182. data/examples/sthda_ggplot/two_variables_cont_function/geom_area.rb +4 -3
  183. data/examples/sthda_ggplot/two_variables_disc_cont/geom_bar.rb +0 -0
  184. data/examples/sthda_ggplot/two_variables_disc_cont/geom_boxplot.rb +0 -0
  185. data/examples/sthda_ggplot/two_variables_disc_cont/geom_dotplot.rb +0 -0
  186. data/examples/sthda_ggplot/two_variables_disc_cont/geom_jitter.rb +0 -0
  187. data/examples/sthda_ggplot/two_variables_disc_cont/geom_line.rb +0 -0
  188. data/examples/sthda_ggplot/two_variables_disc_cont/geom_violin.rb +0 -0
  189. data/examples/sthda_ggplot/two_variables_disc_disc/geom_jitter.rb +0 -0
  190. data/examples/sthda_ggplot/two_variables_error/geom_crossbar.rb +0 -0
  191. data/ext/new_bridge/Makefile +46 -0
  192. data/ext/new_bridge/galaaz_gatekeeper_phase0.cpp +12 -0
  193. data/ext/new_bridge/galaaz_gatekeeper_phase1.cpp +1639 -0
  194. data/lib/R_interface/galaaz_device.R +20 -0
  195. data/lib/R_interface/include_engine.R +109 -0
  196. data/lib/R_interface/new_bridge_adapter.rb +824 -0
  197. data/lib/R_interface/r.rb +177 -25
  198. data/lib/R_interface/r_arrow.rb +113 -0
  199. data/lib/R_interface/r_libs.R +4 -4
  200. data/lib/R_interface/r_methods.rb +13 -116
  201. data/lib/R_interface/r_module_s.rb +0 -0
  202. data/lib/R_interface/rbinary_operators.rb +20 -2
  203. data/lib/R_interface/rclosure.rb +5 -1
  204. data/lib/R_interface/rdata_frame.rb +34 -70
  205. data/lib/R_interface/rdevice.rb +125 -0
  206. data/lib/R_interface/rdevices.R +0 -0
  207. data/lib/R_interface/renvironment.rb +10 -4
  208. data/lib/R_interface/rexpression.rb +5 -1
  209. data/lib/R_interface/rindexed_object.rb +41 -13
  210. data/lib/R_interface/rlanguage.rb +20 -62
  211. data/lib/R_interface/rlist.rb +115 -25
  212. data/lib/R_interface/rlogical_operators.rb +0 -0
  213. data/lib/R_interface/rmatrix.rb +2 -11
  214. data/lib/R_interface/rmd_indexed_object.rb +5 -1
  215. data/lib/R_interface/robject.rb +348 -290
  216. data/lib/R_interface/rpkg.rb +1 -0
  217. data/lib/R_interface/rsupport.rb +610 -331
  218. data/lib/R_interface/rsupport_scope.rb +2 -1
  219. data/lib/R_interface/rsymbol.rb +50 -0
  220. data/lib/R_interface/ruby_callback.rb +2 -3
  221. data/lib/R_interface/ruby_extensions.rb +225 -175
  222. data/lib/R_interface/runary_operators.rb +0 -0
  223. data/lib/R_interface/rvector.rb +147 -31
  224. data/lib/galaaz.rb +0 -0
  225. data/lib/galaaz_jruby.rb +22 -0
  226. data/lib/gknit/diagnostics.rb +50 -0
  227. data/lib/gknit/draft.rb +111 -0
  228. data/lib/gknit/include_engine.rb +15 -7
  229. data/lib/gknit/knitr_engine.rb +223 -107
  230. data/lib/gknit/rb_engine.rb +3 -3
  231. data/lib/gknit/ruby_engine.rb +0 -0
  232. data/lib/gknit.rb +3 -0
  233. data/lib/new_bridge/bootstrap/windows_bootstrap.rb +285 -0
  234. data/lib/new_bridge/envelope.rb +51 -0
  235. data/lib/new_bridge/eval_result.rb +26 -0
  236. data/lib/new_bridge/framing.rb +39 -0
  237. data/lib/new_bridge/instance_pool_client.rb +38 -0
  238. data/lib/new_bridge/r_instance_manager.rb +404 -0
  239. data/lib/new_bridge/session_client.rb +530 -0
  240. data/lib/new_bridge/tcp_framed.rb +44 -0
  241. data/lib/new_bridge.rb +9 -0
  242. data/lib/util/exec_ruby.rb +95 -46
  243. data/lib/util/inline_file.rb +35 -30
  244. data/new_bridge_specs/benchmark_phase5_5_unboxing_spec.rb +96 -0
  245. data/new_bridge_specs/eval_r_async_spec.rb +113 -0
  246. data/new_bridge_specs/integration_phase5_1_concurrent_spec.rb +50 -0
  247. data/new_bridge_specs/integration_phase5_1_eval_spec.rb +16 -0
  248. data/new_bridge_specs/integration_phase5_1_r_api_spec.rb +25 -0
  249. data/new_bridge_specs/integration_phase5_1_smoke_spec.rb +31 -0
  250. data/new_bridge_specs/integration_phase5_2_dataframe_unboxing_spec.rb +19 -0
  251. data/new_bridge_specs/integration_phase5_2_handle_eval_unboxing_spec.rb +25 -0
  252. data/new_bridge_specs/integration_phase5_3_callback_args_spec.rb +28 -0
  253. data/new_bridge_specs/integration_phase5_3_callback_error_spec.rb +22 -0
  254. data/new_bridge_specs/integration_phase5_3_callback_timeout_spec.rb +28 -0
  255. data/new_bridge_specs/integration_phase5_3_callbacks_smoke_spec.rb +22 -0
  256. data/new_bridge_specs/integration_phase5_3_edge_cases_spec.rb +52 -0
  257. data/new_bridge_specs/integration_phase5_3_nested_spec.rb +30 -0
  258. data/new_bridge_specs/integration_phase5_4_concurrent_sessions_spec.rb +53 -0
  259. data/new_bridge_specs/integration_phase5_4_nested_session_callbacks_spec.rb +49 -0
  260. data/new_bridge_specs/integration_phase5_4_session_routing_spec.rb +38 -0
  261. data/new_bridge_specs/integration_phase5_5_stress_concurrency_spec.rb +52 -0
  262. data/new_bridge_specs/integration_phase5_5_unbox_walk_spec.rb +46 -0
  263. data/new_bridge_specs/phase0_protocol_spec.rb +96 -0
  264. data/new_bridge_specs/phase1_req_ret_spec.rb +66 -0
  265. data/new_bridge_specs/phase2_multi_instance_spec.rb +67 -0
  266. data/new_bridge_specs/phase3_callbacks_spec.rb +71 -0
  267. data/new_bridge_specs/phase4_2_hardening_spec.rb +252 -0
  268. data/new_bridge_specs/phase4_3_r_instance_manager_spec.rb +85 -0
  269. data/new_bridge_specs/phase4_nested_callbacks_spec.rb +123 -0
  270. data/r_requires/ggplot.rb +0 -0
  271. data/r_requires/knitr.rb +0 -0
  272. data/specs/all.rb +15 -11
  273. data/specs/arrow_from_ruby_batches_spec.rb +50 -0
  274. data/specs/arrow_semantics_spec.rb +64 -0
  275. data/specs/bridge_concurrent_spec.rb +46 -0
  276. data/specs/bridge_nested_spec.rb +25 -0
  277. data/specs/dataframe_semantics_spec.rb +122 -0
  278. data/specs/dataframe_single_index_logical_filter_spec.rb +21 -0
  279. data/specs/dispatch_probe_cache_spec.rb +38 -0
  280. data/specs/dispatch_probe_error_class_fallback_spec.rb +20 -0
  281. data/specs/dispatch_probe_fallback_spec.rb +18 -0
  282. data/specs/environment_semantics_spec.rb +89 -0
  283. data/specs/field_access_spec.rb +31 -0
  284. data/specs/figures/bg.jpeg +0 -0
  285. data/specs/figures/bg.png +0 -0
  286. data/specs/figures/bg.svg +168 -57
  287. data/specs/figures/dose_len.png +0 -0
  288. data/specs/figures/no_args.jpeg +0 -0
  289. data/specs/figures/no_args.png +0 -0
  290. data/specs/figures/no_args.svg +168 -57
  291. data/specs/figures/width_height.jpeg +0 -0
  292. data/specs/figures/width_height.png +0 -0
  293. data/specs/figures/width_height_units1.jpeg +0 -0
  294. data/specs/figures/width_height_units1.png +0 -0
  295. data/specs/figures/width_height_units2.jpeg +0 -0
  296. data/specs/figures/width_height_units2.png +0 -0
  297. data/specs/formula_semantics_spec.rb +81 -0
  298. data/specs/galaaz_util_exec_ruby_spec.rb +85 -0
  299. data/specs/galaaz_util_inline_file_spec.rb +54 -0
  300. data/specs/gknit_cli_option_permutation_spec.rb +24 -0
  301. data/specs/gknit_include_engine_spec.rb +72 -0
  302. data/specs/gknit_install_timeout_report_spec.rb +69 -0
  303. data/specs/gknit_internal_error_report_spec.rb +57 -0
  304. data/specs/gknit_vector_map_output_spec.rb +59 -0
  305. data/specs/globalenv_guardrail_spec.rb +52 -0
  306. data/specs/language_expression_semantics_spec.rb +145 -0
  307. data/specs/list_semantics_spec.rb +111 -0
  308. data/specs/new_bridge_bulk_dataframe_transfer_spec.rb +44 -0
  309. data/specs/new_bridge_bulk_vector_transfer_spec.rb +73 -0
  310. data/specs/new_bridge_callback_timeout_spec.rb +69 -0
  311. data/specs/new_bridge_eval_r_fallback_spec.rb +55 -0
  312. data/specs/nil_null_spec.rb +42 -0
  313. data/specs/object_build_phase2_spec.rb +53 -0
  314. data/specs/phase1_callback_bridge_spec.rb +84 -0
  315. data/specs/phase2_gknit_generic_rendering_guardrail_spec.rb +46 -0
  316. data/specs/phase2_gknit_no_raw_code_leakage_spec.rb +43 -0
  317. data/specs/phase3_gknit_generic_graphics_capture_spec.rb +71 -0
  318. data/specs/plot_device_semantics_spec.rb +28 -0
  319. data/specs/plot_snapshot_semantics_spec.rb +58 -0
  320. data/specs/protocol_result_spec.rb +236 -0
  321. data/specs/r_batch_fail_fast_spec.rb +47 -0
  322. data/specs/r_bridge_bootstrap_spec.rb +11 -0
  323. data/specs/r_devices.spec.rb +1 -1
  324. data/specs/r_eval.spec.rb +16 -18
  325. data/specs/r_function.spec.rb +1 -1
  326. data/specs/r_instance_manager_spec.rb +285 -0
  327. data/specs/r_list_apply.spec.rb +15 -15
  328. data/specs/r_matrix.spec.rb +0 -0
  329. data/specs/r_nse.spec.rb +5 -5
  330. data/specs/r_object_send_dispatch_spec.rb +13 -0
  331. data/specs/r_vector_comparator_spec.rb +8 -0
  332. data/specs/r_vector_creation.spec.rb +0 -0
  333. data/specs/r_vector_functions.spec.rb +0 -0
  334. data/specs/r_vector_object.spec.rb +0 -0
  335. data/specs/r_vector_operators.spec.rb +0 -0
  336. data/specs/r_vector_structured_scalar_reads_spec.rb +35 -0
  337. data/specs/r_vector_subsetting.spec.rb +0 -0
  338. data/specs/range_helper_spec.rb +21 -0
  339. data/specs/rsupport_scope_spec.rb +28 -0
  340. data/specs/rsupport_var_name_thread_safety_spec.rb +24 -0
  341. data/specs/scalar_character_spec.rb +44 -0
  342. data/specs/scoped_symbol_dsl_refinement_spec.rb +40 -0
  343. data/specs/session_env_bridge_spec.rb +25 -0
  344. data/specs/simplecov_bootstrap_spec.rb +10 -0
  345. data/specs/spec_helper.rb +10 -0
  346. data/specs/tmp.rb +41 -20
  347. data/specs/unboxing_recursion_regression_spec.rb +30 -0
  348. data/specs/unboxing_spec.rb +49 -0
  349. data/specs/verify_callbacks.rb +42 -0
  350. data/sty/galaaz.sty +0 -0
  351. data/version.rb +1 -1
  352. metadata +239 -71
  353. data/blogs/galaaz_ggplot/galaaz_ggplot.aux +0 -41
  354. data/blogs/galaaz_ggplot/galaaz_ggplot.html +0 -705
  355. data/blogs/galaaz_ggplot/galaaz_ggplot.out +0 -10
  356. data/blogs/galaaz_ggplot/galaaz_ggplot.pdf +0 -0
  357. data/blogs/galaaz_ggplot/galaaz_ggplot_files/figure-latex/midwest_rb.pdf +0 -0
  358. data/blogs/galaaz_ggplot/galaaz_ggplot_files/figure-latex/scatter_plot_rb.pdf +0 -0
  359. data/blogs/galaaz_ggplot/midwest.html +0 -188
  360. data/blogs/gknit/gknit.html +0 -2266
  361. data/blogs/gknit/gknit.pdf +0 -0
  362. data/blogs/gknit/gknit.tex +0 -1358
  363. data/blogs/manual/graph.rb +0 -29
  364. data/blogs/manual/manual.html +0 -2995
  365. data/blogs/manual/manual.pdf +0 -0
  366. data/blogs/manual/manual_files/figure-latex/diverging_bar.pdf +0 -0
  367. data/blogs/nse_dplyr/nse_dplyr.html +0 -960
  368. data/blogs/nse_dplyr/nse_dplyr.pdf +0 -0
  369. data/blogs/nse_dplyr/nse_dplyr.tex +0 -1373
  370. data/blogs/oh_my/oh_my.html +0 -680
  371. data/blogs/ruby_plot/ruby_plot.Rmd_external_figs +0 -662
  372. data/blogs/ruby_plot/ruby_plot.html +0 -729
  373. data/blogs/ruby_plot/ruby_plot.pdf +0 -0
  374. data/blogs/ruby_plot/ruby_plot_files/figure-html/dose_len.svg +0 -57
  375. data/blogs/ruby_plot/ruby_plot_files/figure-html/facet_by_delivery.svg +0 -106
  376. data/blogs/ruby_plot/ruby_plot_files/figure-html/facet_by_dose.svg +0 -110
  377. data/blogs/ruby_plot/ruby_plot_files/figure-html/facets_by_delivery_color.svg +0 -174
  378. data/blogs/ruby_plot/ruby_plot_files/figure-html/facets_by_delivery_color2.svg +0 -236
  379. data/blogs/ruby_plot/ruby_plot_files/figure-html/facets_with_jitter.svg +0 -296
  380. data/blogs/ruby_plot/ruby_plot_files/figure-html/facets_with_points.svg +0 -236
  381. data/blogs/ruby_plot/ruby_plot_files/figure-html/final_box_plot.svg +0 -218
  382. data/blogs/ruby_plot/ruby_plot_files/figure-html/final_violin_plot.svg +0 -128
  383. data/blogs/ruby_plot/ruby_plot_files/figure-html/violin_with_jitter.svg +0 -150
  384. data/examples/paper/paper.rb +0 -36
  385. data/specs/r_dataframe.spec.rb +0 -379
  386. data/specs/r_environment.spec.rb +0 -140
  387. data/specs/r_formula.spec.rb +0 -232
  388. data/specs/r_language.spec.rb +0 -112
  389. data/specs/r_list.spec.rb +0 -293
  390. data/specs/r_plots.spec.rb +0 -72
  391. data/specs/ruby_expression.spec.rb +0 -315
@@ -1,236 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
- <svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 506 506' style='fill:transparent'>
4
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
5
- <rect x='0' y='0' width='506' height='506' style='stroke:#FFFFFF;fill:#FFFFFF'/>
6
- <rect x='31' y='20' width='199' height='458' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#EBEBEB'/>
7
- </g><g style='stroke-width:0.7113188976377953;stroke-linejoin:round;stroke-linecap:butt'>
8
- <polyline points='31,447 230,447' style='stroke:#FFFFFF'/>
9
- <polyline points='31,306 230,306' style='stroke:#FFFFFF'/>
10
- <polyline points='31,166 230,166' style='stroke:#FFFFFF'/>
11
- <polyline points='31,26 230,26' style='stroke:#FFFFFF'/>
12
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
13
- <polyline points='31,377 230,377' style='stroke:#FFFFFF'/>
14
- <polyline points='31,236 230,236' style='stroke:#FFFFFF'/>
15
- <polyline points='31,96 230,96' style='stroke:#FFFFFF'/>
16
- <polyline points='69,479 69,20' style='stroke:#FFFFFF'/>
17
- <polyline points='131,479 131,20' style='stroke:#FFFFFF'/>
18
- <polyline points='193,479 193,20' style='stroke:#FFFFFF'/>
19
- <polyline points='69,290 69,215' style='stroke:#333333'/>
20
- <polyline points='69,381 69,402' style='stroke:#333333'/>
21
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
22
- <polyline points='45,290 45,381 92,381 92,290 45,290 45,290' style='stroke:#333333;fill:#FFFFFF'/>
23
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
24
- <polyline points='45,345 92,345' style='stroke:#333333'/>
25
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
26
- <polyline points='131,157 131,134' style='stroke:#333333'/>
27
- <polyline points='131,232 131,313' style='stroke:#333333'/>
28
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
29
- <polyline points='107,157 107,232 154,232 154,157 107,157 107,157' style='stroke:#333333;fill:#FFFFFF'/>
30
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
31
- <polyline points='107,188 154,188' style='stroke:#333333'/>
32
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
33
- <circle cx='193' cy='83' r='2' style='stroke:#333333;fill:#333333'/>
34
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
35
- <polyline points='193,137 193,104' style='stroke:#333333'/>
36
- <polyline points='193,172 193,203' style='stroke:#333333'/>
37
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
38
- <polyline points='169,137 169,172 216,172 216,137 169,137 169,137' style='stroke:#333333;fill:#FFFFFF'/>
39
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
40
- <polyline points='169,153 216,153' style='stroke:#333333'/>
41
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
42
- <polyline points='69,290 69,215' style='stroke:#333333'/>
43
- <polyline points='69,381 69,402' style='stroke:#333333'/>
44
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
45
- <polyline points='45,290 45,381 92,381 92,290 45,290 45,290' style='stroke:#333333;fill:#00FFFF'/>
46
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
47
- <polyline points='45,345 92,345' style='stroke:#333333'/>
48
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
49
- <polyline points='131,157 131,134' style='stroke:#333333'/>
50
- <polyline points='131,232 131,313' style='stroke:#333333'/>
51
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
52
- <polyline points='107,157 107,232 154,232 154,157 107,157 107,157' style='stroke:#333333;fill:#00BFFF'/>
53
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
54
- <polyline points='107,188 154,188' style='stroke:#333333'/>
55
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
56
- <circle cx='193' cy='83' r='2' style='stroke:#333333;fill:#333333'/>
57
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
58
- <polyline points='193,137 193,104' style='stroke:#333333'/>
59
- <polyline points='193,172 193,203' style='stroke:#333333'/>
60
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
61
- <polyline points='169,137 169,172 216,172 216,137 169,137 169,137' style='stroke:#333333;fill:#00688B'/>
62
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
63
- <polyline points='169,153 216,153' style='stroke:#333333'/>
64
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
65
- <circle cx='69' cy='304' r='2' style='stroke:#000000;fill:#000000'/>
66
- <circle cx='69' cy='215' r='2' style='stroke:#000000;fill:#000000'/>
67
- <circle cx='69' cy='270' r='2' style='stroke:#000000;fill:#000000'/>
68
- <circle cx='69' cy='381' r='2' style='stroke:#000000;fill:#000000'/>
69
- <circle cx='69' cy='313' r='2' style='stroke:#000000;fill:#000000'/>
70
- <circle cx='69' cy='377' r='2' style='stroke:#000000;fill:#000000'/>
71
- <circle cx='69' cy='402' r='2' style='stroke:#000000;fill:#000000'/>
72
- <circle cx='69' cy='385' r='2' style='stroke:#000000;fill:#000000'/>
73
- <circle cx='69' cy='285' r='2' style='stroke:#000000;fill:#000000'/>
74
- <circle cx='69' cy='381' r='2' style='stroke:#000000;fill:#000000'/>
75
- <circle cx='131' cy='241' r='2' style='stroke:#000000;fill:#000000'/>
76
- <circle cx='131' cy='190' r='2' style='stroke:#000000;fill:#000000'/>
77
- <circle cx='131' cy='186' r='2' style='stroke:#000000;fill:#000000'/>
78
- <circle cx='131' cy='147' r='2' style='stroke:#000000;fill:#000000'/>
79
- <circle cx='131' cy='236' r='2' style='stroke:#000000;fill:#000000'/>
80
- <circle cx='131' cy='163' r='2' style='stroke:#000000;fill:#000000'/>
81
- <circle cx='131' cy='155' r='2' style='stroke:#000000;fill:#000000'/>
82
- <circle cx='131' cy='219' r='2' style='stroke:#000000;fill:#000000'/>
83
- <circle cx='131' cy='313' r='2' style='stroke:#000000;fill:#000000'/>
84
- <circle cx='131' cy='134' r='2' style='stroke:#000000;fill:#000000'/>
85
- <circle cx='193' cy='159' r='2' style='stroke:#000000;fill:#000000'/>
86
- <circle cx='193' cy='147' r='2' style='stroke:#000000;fill:#000000'/>
87
- <circle cx='193' cy='203' r='2' style='stroke:#000000;fill:#000000'/>
88
- <circle cx='193' cy='173' r='2' style='stroke:#000000;fill:#000000'/>
89
- <circle cx='193' cy='169' r='2' style='stroke:#000000;fill:#000000'/>
90
- <circle cx='193' cy='83' r='2' style='stroke:#000000;fill:#000000'/>
91
- <circle cx='193' cy='147' r='2' style='stroke:#000000;fill:#000000'/>
92
- <circle cx='193' cy='134' r='2' style='stroke:#000000;fill:#000000'/>
93
- <circle cx='193' cy='104' r='2' style='stroke:#000000;fill:#000000'/>
94
- <circle cx='193' cy='194' r='2' style='stroke:#000000;fill:#000000'/>
95
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
96
- <rect x='235' y='20' width='199' height='458' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#EBEBEB'/>
97
- </g><g style='stroke-width:0.7113188976377953;stroke-linejoin:round;stroke-linecap:butt'>
98
- <polyline points='235,447 434,447' style='stroke:#FFFFFF'/>
99
- <polyline points='235,306 434,306' style='stroke:#FFFFFF'/>
100
- <polyline points='235,166 434,166' style='stroke:#FFFFFF'/>
101
- <polyline points='235,26 434,26' style='stroke:#FFFFFF'/>
102
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
103
- <polyline points='235,377 434,377' style='stroke:#FFFFFF'/>
104
- <polyline points='235,236 434,236' style='stroke:#FFFFFF'/>
105
- <polyline points='235,96 434,96' style='stroke:#FFFFFF'/>
106
- <polyline points='273,479 273,20' style='stroke:#FFFFFF'/>
107
- <polyline points='335,479 335,20' style='stroke:#FFFFFF'/>
108
- <polyline points='397,479 397,20' style='stroke:#FFFFFF'/>
109
- <polyline points='273,364 273,356' style='stroke:#333333'/>
110
- <polyline points='273,433 273,458' style='stroke:#333333'/>
111
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
112
- <polyline points='249,364 249,433 296,433 296,364 249,364 249,364' style='stroke:#333333;fill:#FFFFFF'/>
113
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
114
- <polyline points='249,417 296,417' style='stroke:#333333'/>
115
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
116
- <circle cx='335' cy='201' r='2' style='stroke:#333333;fill:#333333'/>
117
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
118
- <polyline points='335,274 335,253' style='stroke:#333333'/>
119
- <polyline points='335,303 335,326' style='stroke:#333333'/>
120
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
121
- <polyline points='311,274 311,303 358,303 358,274 311,274 311,274' style='stroke:#333333;fill:#FFFFFF'/>
122
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
123
- <polyline points='311,285 358,285' style='stroke:#333333'/>
124
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
125
- <polyline points='397,113 397,41' style='stroke:#333333'/>
126
- <polyline points='397,189 397,257' style='stroke:#333333'/>
127
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
128
- <polyline points='374,113 374,189 420,189 420,113 374,113 374,113' style='stroke:#333333;fill:#FFFFFF'/>
129
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
130
- <polyline points='374,153 420,153' style='stroke:#333333'/>
131
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
132
- <polyline points='273,364 273,356' style='stroke:#333333'/>
133
- <polyline points='273,433 273,458' style='stroke:#333333'/>
134
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
135
- <polyline points='249,364 249,433 296,433 296,364 249,364 249,364' style='stroke:#333333;fill:#00FFFF'/>
136
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
137
- <polyline points='249,417 296,417' style='stroke:#333333'/>
138
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
139
- <circle cx='335' cy='201' r='2' style='stroke:#333333;fill:#333333'/>
140
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
141
- <polyline points='335,274 335,253' style='stroke:#333333'/>
142
- <polyline points='335,303 335,326' style='stroke:#333333'/>
143
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
144
- <polyline points='311,274 311,303 358,303 358,274 311,274 311,274' style='stroke:#333333;fill:#00BFFF'/>
145
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
146
- <polyline points='311,285 358,285' style='stroke:#333333'/>
147
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
148
- <polyline points='397,113 397,41' style='stroke:#333333'/>
149
- <polyline points='397,189 397,257' style='stroke:#333333'/>
150
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
151
- <polyline points='374,113 374,189 420,189 420,113 374,113 374,113' style='stroke:#333333;fill:#00688B'/>
152
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
153
- <polyline points='374,153 420,153' style='stroke:#333333'/>
154
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
155
- <circle cx='273' cy='458' r='2' style='stroke:#000000;fill:#000000'/>
156
- <circle cx='273' cy='356' r='2' style='stroke:#000000;fill:#000000'/>
157
- <circle cx='273' cy='415' r='2' style='stroke:#000000;fill:#000000'/>
158
- <circle cx='273' cy='436' r='2' style='stroke:#000000;fill:#000000'/>
159
- <circle cx='273' cy='427' r='2' style='stroke:#000000;fill:#000000'/>
160
- <circle cx='273' cy='377' r='2' style='stroke:#000000;fill:#000000'/>
161
- <circle cx='273' cy='360' r='2' style='stroke:#000000;fill:#000000'/>
162
- <circle cx='273' cy='360' r='2' style='stroke:#000000;fill:#000000'/>
163
- <circle cx='273' cy='444' r='2' style='stroke:#000000;fill:#000000'/>
164
- <circle cx='273' cy='419' r='2' style='stroke:#000000;fill:#000000'/>
165
- <circle cx='335' cy='285' r='2' style='stroke:#000000;fill:#000000'/>
166
- <circle cx='335' cy='285' r='2' style='stroke:#000000;fill:#000000'/>
167
- <circle cx='335' cy='304' r='2' style='stroke:#000000;fill:#000000'/>
168
- <circle cx='335' cy='274' r='2' style='stroke:#000000;fill:#000000'/>
169
- <circle cx='335' cy='201' r='2' style='stroke:#000000;fill:#000000'/>
170
- <circle cx='335' cy='274' r='2' style='stroke:#000000;fill:#000000'/>
171
- <circle cx='335' cy='326' r='2' style='stroke:#000000;fill:#000000'/>
172
- <circle cx='335' cy='313' r='2' style='stroke:#000000;fill:#000000'/>
173
- <circle cx='335' cy='253' r='2' style='stroke:#000000;fill:#000000'/>
174
- <circle cx='335' cy='299' r='2' style='stroke:#000000;fill:#000000'/>
175
- <circle cx='397' cy='186' r='2' style='stroke:#000000;fill:#000000'/>
176
- <circle cx='397' cy='257' r='2' style='stroke:#000000;fill:#000000'/>
177
- <circle cx='397' cy='41' r='2' style='stroke:#000000;fill:#000000'/>
178
- <circle cx='397' cy='159' r='2' style='stroke:#000000;fill:#000000'/>
179
- <circle cx='397' cy='147' r='2' style='stroke:#000000;fill:#000000'/>
180
- <circle cx='397' cy='61' r='2' style='stroke:#000000;fill:#000000'/>
181
- <circle cx='397' cy='142' r='2' style='stroke:#000000;fill:#000000'/>
182
- <circle cx='397' cy='215' r='2' style='stroke:#000000;fill:#000000'/>
183
- <circle cx='397' cy='190' r='2' style='stroke:#000000;fill:#000000'/>
184
- <circle cx='397' cy='103' r='2' style='stroke:#000000;fill:#000000'/>
185
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
186
- <rect x='31' y='5' width='199' height='15' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#D9D9D9'/>
187
- </g><text x='125' y='16' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#1A1A1A'>OJ</text>
188
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
189
- <rect x='235' y='5' width='199' height='15' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#D9D9D9'/>
190
- </g><text x='329' y='16' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#1A1A1A'>VC</text>
191
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
192
- <polyline points='69,482 69,479' style='stroke:#333333'/>
193
- <polyline points='131,482 131,479' style='stroke:#333333'/>
194
- <polyline points='193,482 193,479' style='stroke:#333333'/>
195
- </g><text x='61' y='490' lengthAdjust='spacingAndGlyphs' textLength='16px' style='font-size:8.8px;fill:#4D4D4D'>0.5</text>
196
- <text x='128' y='490' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#4D4D4D'>1</text>
197
- <text x='190' y='490' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#4D4D4D'>2</text>
198
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
199
- <polyline points='273,482 273,479' style='stroke:#333333'/>
200
- <polyline points='335,482 335,479' style='stroke:#333333'/>
201
- <polyline points='397,482 397,479' style='stroke:#333333'/>
202
- </g><text x='265' y='490' lengthAdjust='spacingAndGlyphs' textLength='16px' style='font-size:8.8px;fill:#4D4D4D'>0.5</text>
203
- <text x='332' y='490' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#4D4D4D'>1</text>
204
- <text x='394' y='490' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#4D4D4D'>2</text>
205
- <text x='16' y='380' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#4D4D4D'>10</text>
206
- <text x='16' y='239' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#4D4D4D'>20</text>
207
- <text x='16' y='99' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#4D4D4D'>30</text>
208
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
209
- <polyline points='29,377 31,377' style='stroke:#333333'/>
210
- <polyline points='29,236 31,236' style='stroke:#333333'/>
211
- <polyline points='29,96 31,96' style='stroke:#333333'/>
212
- </g><text x='220' y='500' lengthAdjust='spacingAndGlyphs' textLength='26px' style='font-size:11.0px;fill:#000000'>dose</text>
213
- <text x='13' y='260' lengthAdjust='spacingAndGlyphs' textLength='20px' style='font-size:11.0px;fill:#000000' transform='rotate(-90,13,260)'>len</text>
214
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
215
- <rect x='445' y='203' width='55' height='93' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#FFFFFF'/>
216
- </g><text x='451' y='216' lengthAdjust='spacingAndGlyphs' textLength='26px' style='font-size:11.0px;fill:#000000'>dose</text>
217
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
218
- <rect x='451' y='222' width='23' height='23' style='stroke:#FFFFFF;fill:#F2F2F2'/>
219
- <polyline points='462,242 462,239' style='stroke:#333333'/>
220
- <polyline points='462,227 462,224' style='stroke:#333333'/>
221
- <rect x='453' y='227' width='17' height='12' style='stroke:#333333;fill:#00688B'/>
222
- <polyline points='453,233 471,233' style='stroke:#333333'/>
223
- <rect x='451' y='245' width='23' height='23' style='stroke:#FFFFFF;fill:#F2F2F2'/>
224
- <polyline points='462,265 462,262' style='stroke:#333333'/>
225
- <polyline points='462,250 462,247' style='stroke:#333333'/>
226
- <rect x='453' y='250' width='17' height='12' style='stroke:#333333;fill:#00BFFF'/>
227
- <polyline points='453,256 471,256' style='stroke:#333333'/>
228
- <rect x='451' y='268' width='23' height='23' style='stroke:#FFFFFF;fill:#F2F2F2'/>
229
- <polyline points='462,289 462,285' style='stroke:#333333'/>
230
- <polyline points='462,274 462,270' style='stroke:#333333'/>
231
- <rect x='453' y='274' width='17' height='12' style='stroke:#333333;fill:#00FFFF'/>
232
- <polyline points='453,279 471,279' style='stroke:#333333'/>
233
- </g><text x='479' y='236' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#000000'>2</text>
234
- <text x='479' y='259' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#000000'>1</text>
235
- <text x='479' y='282' lengthAdjust='spacingAndGlyphs' textLength='16px' style='font-size:8.8px;fill:#000000'>0.5</text>
236
- </svg>
@@ -1,296 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
- <svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 506 506' style='fill:transparent'>
4
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
5
- <rect x='0' y='0' width='506' height='506' style='stroke:#FFFFFF;fill:#FFFFFF'/>
6
- <rect x='31' y='20' width='199' height='458' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#EBEBEB'/>
7
- </g><g style='stroke-width:0.7113188976377953;stroke-linejoin:round;stroke-linecap:butt'>
8
- <polyline points='31,446 230,446' style='stroke:#FFFFFF'/>
9
- <polyline points='31,306 230,306' style='stroke:#FFFFFF'/>
10
- <polyline points='31,166 230,166' style='stroke:#FFFFFF'/>
11
- <polyline points='31,26 230,26' style='stroke:#FFFFFF'/>
12
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
13
- <polyline points='31,376 230,376' style='stroke:#FFFFFF'/>
14
- <polyline points='31,236 230,236' style='stroke:#FFFFFF'/>
15
- <polyline points='31,96 230,96' style='stroke:#FFFFFF'/>
16
- <polyline points='69,479 69,20' style='stroke:#FFFFFF'/>
17
- <polyline points='131,479 131,20' style='stroke:#FFFFFF'/>
18
- <polyline points='193,479 193,20' style='stroke:#FFFFFF'/>
19
- <polyline points='69,290 69,215' style='stroke:#333333'/>
20
- <polyline points='69,380 69,401' style='stroke:#333333'/>
21
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
22
- <polyline points='45,290 45,380 92,380 92,290 45,290 45,290' style='stroke:#333333;fill:#FFFFFF'/>
23
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
24
- <polyline points='45,345 92,345' style='stroke:#333333'/>
25
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
26
- <polyline points='131,157 131,134' style='stroke:#333333'/>
27
- <polyline points='131,232 131,313' style='stroke:#333333'/>
28
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
29
- <polyline points='107,157 107,232 154,232 154,157 107,157 107,157' style='stroke:#333333;fill:#FFFFFF'/>
30
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
31
- <polyline points='107,188 154,188' style='stroke:#333333'/>
32
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
33
- <circle cx='193' cy='83' r='2' style='stroke:#333333;fill:#333333'/>
34
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
35
- <polyline points='193,137 193,104' style='stroke:#333333'/>
36
- <polyline points='193,172 193,202' style='stroke:#333333'/>
37
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
38
- <polyline points='169,137 169,172 216,172 216,137 169,137 169,137' style='stroke:#333333;fill:#FFFFFF'/>
39
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
40
- <polyline points='169,153 216,153' style='stroke:#333333'/>
41
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
42
- <polyline points='69,290 69,215' style='stroke:#333333'/>
43
- <polyline points='69,380 69,401' style='stroke:#333333'/>
44
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
45
- <polyline points='45,290 45,380 92,380 92,290 45,290 45,290' style='stroke:#333333;fill:#F8766D'/>
46
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
47
- <polyline points='45,345 92,345' style='stroke:#333333'/>
48
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
49
- <polyline points='131,157 131,134' style='stroke:#333333'/>
50
- <polyline points='131,232 131,313' style='stroke:#333333'/>
51
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
52
- <polyline points='107,157 107,232 154,232 154,157 107,157 107,157' style='stroke:#333333;fill:#00BA38'/>
53
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
54
- <polyline points='107,188 154,188' style='stroke:#333333'/>
55
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
56
- <circle cx='193' cy='83' r='2' style='stroke:#333333;fill:#333333'/>
57
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
58
- <polyline points='193,137 193,104' style='stroke:#333333'/>
59
- <polyline points='193,172 193,202' style='stroke:#333333'/>
60
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
61
- <polyline points='169,137 169,172 216,172 216,137 169,137 169,137' style='stroke:#333333;fill:#619CFF'/>
62
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
63
- <polyline points='169,153 216,153' style='stroke:#333333'/>
64
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
65
- <circle cx='69' cy='303' r='2' style='stroke:#000000;fill:#000000'/>
66
- <circle cx='69' cy='215' r='2' style='stroke:#000000;fill:#000000'/>
67
- <circle cx='69' cy='270' r='2' style='stroke:#000000;fill:#000000'/>
68
- <circle cx='69' cy='380' r='2' style='stroke:#000000;fill:#000000'/>
69
- <circle cx='69' cy='313' r='2' style='stroke:#000000;fill:#000000'/>
70
- <circle cx='69' cy='376' r='2' style='stroke:#000000;fill:#000000'/>
71
- <circle cx='69' cy='401' r='2' style='stroke:#000000;fill:#000000'/>
72
- <circle cx='69' cy='385' r='2' style='stroke:#000000;fill:#000000'/>
73
- <circle cx='69' cy='285' r='2' style='stroke:#000000;fill:#000000'/>
74
- <circle cx='69' cy='380' r='2' style='stroke:#000000;fill:#000000'/>
75
- <circle cx='131' cy='240' r='2' style='stroke:#000000;fill:#000000'/>
76
- <circle cx='131' cy='190' r='2' style='stroke:#000000;fill:#000000'/>
77
- <circle cx='131' cy='186' r='2' style='stroke:#000000;fill:#000000'/>
78
- <circle cx='131' cy='146' r='2' style='stroke:#000000;fill:#000000'/>
79
- <circle cx='131' cy='236' r='2' style='stroke:#000000;fill:#000000'/>
80
- <circle cx='131' cy='163' r='2' style='stroke:#000000;fill:#000000'/>
81
- <circle cx='131' cy='155' r='2' style='stroke:#000000;fill:#000000'/>
82
- <circle cx='131' cy='219' r='2' style='stroke:#000000;fill:#000000'/>
83
- <circle cx='131' cy='313' r='2' style='stroke:#000000;fill:#000000'/>
84
- <circle cx='131' cy='134' r='2' style='stroke:#000000;fill:#000000'/>
85
- <circle cx='193' cy='159' r='2' style='stroke:#000000;fill:#000000'/>
86
- <circle cx='193' cy='146' r='2' style='stroke:#000000;fill:#000000'/>
87
- <circle cx='193' cy='202' r='2' style='stroke:#000000;fill:#000000'/>
88
- <circle cx='193' cy='173' r='2' style='stroke:#000000;fill:#000000'/>
89
- <circle cx='193' cy='169' r='2' style='stroke:#000000;fill:#000000'/>
90
- <circle cx='193' cy='83' r='2' style='stroke:#000000;fill:#000000'/>
91
- <circle cx='193' cy='146' r='2' style='stroke:#000000;fill:#000000'/>
92
- <circle cx='193' cy='134' r='2' style='stroke:#000000;fill:#000000'/>
93
- <circle cx='193' cy='104' r='2' style='stroke:#000000;fill:#000000'/>
94
- <circle cx='193' cy='194' r='2' style='stroke:#000000;fill:#000000'/>
95
- <rect x='52' y='302' width='3' height='3' transform='rotate(-315,53,304)' style='stroke:#00CDCD;fill:#00CDCD'/>
96
- <rect x='62' y='214' width='3' height='3' transform='rotate(-315,64,215)' style='stroke:#00CDCD;fill:#00CDCD'/>
97
- <rect x='63' y='268' width='3' height='3' transform='rotate(-315,64,270)' style='stroke:#00CDCD;fill:#00CDCD'/>
98
- <rect x='57' y='379' width='3' height='3' transform='rotate(-315,58,380)' style='stroke:#00CDCD;fill:#00CDCD'/>
99
- <rect x='48' y='312' width='3' height='3' transform='rotate(-315,50,313)' style='stroke:#00CDCD;fill:#00CDCD'/>
100
- <rect x='87' y='374' width='3' height='3' transform='rotate(-315,88,376)' style='stroke:#00CDCD;fill:#00CDCD'/>
101
- <rect x='78' y='400' width='3' height='3' transform='rotate(-315,79,401)' style='stroke:#00CDCD;fill:#00CDCD'/>
102
- <rect x='46' y='384' width='3' height='3' transform='rotate(-315,47,385)' style='stroke:#00CDCD;fill:#00CDCD'/>
103
- <rect x='66' y='283' width='3' height='3' transform='rotate(-315,67,285)' style='stroke:#00CDCD;fill:#00CDCD'/>
104
- <rect x='55' y='379' width='3' height='3' transform='rotate(-315,57,381)' style='stroke:#00CDCD;fill:#00CDCD'/>
105
- <rect x='131' y='239' width='3' height='3' transform='rotate(-315,133,240)' style='stroke:#00CDCD;fill:#00CDCD'/>
106
- <rect x='135' y='188' width='3' height='3' transform='rotate(-315,137,189)' style='stroke:#00CDCD;fill:#00CDCD'/>
107
- <rect x='134' y='184' width='3' height='3' transform='rotate(-315,135,185)' style='stroke:#00CDCD;fill:#00CDCD'/>
108
- <rect x='140' y='145' width='3' height='3' transform='rotate(-315,142,147)' style='stroke:#00CDCD;fill:#00CDCD'/>
109
- <rect x='106' y='235' width='3' height='3' transform='rotate(-315,108,236)' style='stroke:#00CDCD;fill:#00CDCD'/>
110
- <rect x='145' y='162' width='3' height='3' transform='rotate(-315,146,163)' style='stroke:#00CDCD;fill:#00CDCD'/>
111
- <rect x='131' y='153' width='3' height='3' transform='rotate(-315,132,155)' style='stroke:#00CDCD;fill:#00CDCD'/>
112
- <rect x='138' y='218' width='3' height='3' transform='rotate(-315,140,220)' style='stroke:#00CDCD;fill:#00CDCD'/>
113
- <rect x='124' y='311' width='3' height='3' transform='rotate(-315,125,313)' style='stroke:#00CDCD;fill:#00CDCD'/>
114
- <rect x='144' y='132' width='3' height='3' transform='rotate(-315,145,133)' style='stroke:#00CDCD;fill:#00CDCD'/>
115
- <rect x='172' y='158' width='3' height='3' transform='rotate(-315,173,159)' style='stroke:#00CDCD;fill:#00CDCD'/>
116
- <rect x='183' y='145' width='3' height='3' transform='rotate(-315,185,146)' style='stroke:#00CDCD;fill:#00CDCD'/>
117
- <rect x='170' y='201' width='3' height='3' transform='rotate(-315,171,202)' style='stroke:#00CDCD;fill:#00CDCD'/>
118
- <rect x='187' y='171' width='3' height='3' transform='rotate(-315,188,173)' style='stroke:#00CDCD;fill:#00CDCD'/>
119
- <rect x='190' y='168' width='3' height='3' transform='rotate(-315,192,169)' style='stroke:#00CDCD;fill:#00CDCD'/>
120
- <rect x='176' y='82' width='3' height='3' transform='rotate(-315,177,83)' style='stroke:#00CDCD;fill:#00CDCD'/>
121
- <rect x='194' y='145' width='3' height='3' transform='rotate(-315,195,146)' style='stroke:#00CDCD;fill:#00CDCD'/>
122
- <rect x='201' y='133' width='3' height='3' transform='rotate(-315,203,134)' style='stroke:#00CDCD;fill:#00CDCD'/>
123
- <rect x='169' y='103' width='3' height='3' transform='rotate(-315,170,104)' style='stroke:#00CDCD;fill:#00CDCD'/>
124
- <rect x='209' y='193' width='3' height='3' transform='rotate(-315,210,194)' style='stroke:#00CDCD;fill:#00CDCD'/>
125
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
126
- <rect x='235' y='20' width='199' height='458' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#EBEBEB'/>
127
- </g><g style='stroke-width:0.7113188976377953;stroke-linejoin:round;stroke-linecap:butt'>
128
- <polyline points='235,446 434,446' style='stroke:#FFFFFF'/>
129
- <polyline points='235,306 434,306' style='stroke:#FFFFFF'/>
130
- <polyline points='235,166 434,166' style='stroke:#FFFFFF'/>
131
- <polyline points='235,26 434,26' style='stroke:#FFFFFF'/>
132
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
133
- <polyline points='235,376 434,376' style='stroke:#FFFFFF'/>
134
- <polyline points='235,236 434,236' style='stroke:#FFFFFF'/>
135
- <polyline points='235,96 434,96' style='stroke:#FFFFFF'/>
136
- <polyline points='273,479 273,20' style='stroke:#FFFFFF'/>
137
- <polyline points='335,479 335,20' style='stroke:#FFFFFF'/>
138
- <polyline points='397,479 397,20' style='stroke:#FFFFFF'/>
139
- <polyline points='273,364 273,355' style='stroke:#333333'/>
140
- <polyline points='273,433 273,457' style='stroke:#333333'/>
141
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
142
- <polyline points='249,364 249,433 296,433 296,364 249,364 249,364' style='stroke:#333333;fill:#FFFFFF'/>
143
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
144
- <polyline points='249,416 296,416' style='stroke:#333333'/>
145
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
146
- <circle cx='335' cy='201' r='2' style='stroke:#333333;fill:#333333'/>
147
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
148
- <polyline points='335,274 335,253' style='stroke:#333333'/>
149
- <polyline points='335,302 335,326' style='stroke:#333333'/>
150
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
151
- <polyline points='311,274 311,302 358,302 358,274 311,274 311,274' style='stroke:#333333;fill:#FFFFFF'/>
152
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
153
- <polyline points='311,285 358,285' style='stroke:#333333'/>
154
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
155
- <polyline points='397,113 397,41' style='stroke:#333333'/>
156
- <polyline points='397,189 397,257' style='stroke:#333333'/>
157
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
158
- <polyline points='374,113 374,189 420,189 420,113 374,113 374,113' style='stroke:#333333;fill:#FFFFFF'/>
159
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
160
- <polyline points='374,153 420,153' style='stroke:#333333'/>
161
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
162
- <polyline points='273,364 273,355' style='stroke:#333333'/>
163
- <polyline points='273,433 273,457' style='stroke:#333333'/>
164
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
165
- <polyline points='249,364 249,433 296,433 296,364 249,364 249,364' style='stroke:#333333;fill:#F8766D'/>
166
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
167
- <polyline points='249,416 296,416' style='stroke:#333333'/>
168
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
169
- <circle cx='335' cy='201' r='2' style='stroke:#333333;fill:#333333'/>
170
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
171
- <polyline points='335,274 335,253' style='stroke:#333333'/>
172
- <polyline points='335,302 335,326' style='stroke:#333333'/>
173
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
174
- <polyline points='311,274 311,302 358,302 358,274 311,274 311,274' style='stroke:#333333;fill:#00BA38'/>
175
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
176
- <polyline points='311,285 358,285' style='stroke:#333333'/>
177
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
178
- <polyline points='397,113 397,41' style='stroke:#333333'/>
179
- <polyline points='397,189 397,257' style='stroke:#333333'/>
180
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
181
- <polyline points='374,113 374,189 420,189 420,113 374,113 374,113' style='stroke:#333333;fill:#619CFF'/>
182
- </g><g style='stroke-width:2.8452755905511813;stroke-linejoin:round;stroke-linecap:butt'>
183
- <polyline points='374,153 420,153' style='stroke:#333333'/>
184
- </g><g style='stroke-width:0.9448818897637796;stroke-linejoin:round;stroke-linecap:round'>
185
- <circle cx='273' cy='457' r='2' style='stroke:#000000;fill:#000000'/>
186
- <circle cx='273' cy='355' r='2' style='stroke:#000000;fill:#000000'/>
187
- <circle cx='273' cy='414' r='2' style='stroke:#000000;fill:#000000'/>
188
- <circle cx='273' cy='435' r='2' style='stroke:#000000;fill:#000000'/>
189
- <circle cx='273' cy='427' r='2' style='stroke:#000000;fill:#000000'/>
190
- <circle cx='273' cy='376' r='2' style='stroke:#000000;fill:#000000'/>
191
- <circle cx='273' cy='359' r='2' style='stroke:#000000;fill:#000000'/>
192
- <circle cx='273' cy='359' r='2' style='stroke:#000000;fill:#000000'/>
193
- <circle cx='273' cy='443' r='2' style='stroke:#000000;fill:#000000'/>
194
- <circle cx='273' cy='418' r='2' style='stroke:#000000;fill:#000000'/>
195
- <circle cx='335' cy='285' r='2' style='stroke:#000000;fill:#000000'/>
196
- <circle cx='335' cy='285' r='2' style='stroke:#000000;fill:#000000'/>
197
- <circle cx='335' cy='303' r='2' style='stroke:#000000;fill:#000000'/>
198
- <circle cx='335' cy='274' r='2' style='stroke:#000000;fill:#000000'/>
199
- <circle cx='335' cy='201' r='2' style='stroke:#000000;fill:#000000'/>
200
- <circle cx='335' cy='274' r='2' style='stroke:#000000;fill:#000000'/>
201
- <circle cx='335' cy='326' r='2' style='stroke:#000000;fill:#000000'/>
202
- <circle cx='335' cy='313' r='2' style='stroke:#000000;fill:#000000'/>
203
- <circle cx='335' cy='253' r='2' style='stroke:#000000;fill:#000000'/>
204
- <circle cx='335' cy='299' r='2' style='stroke:#000000;fill:#000000'/>
205
- <circle cx='397' cy='186' r='2' style='stroke:#000000;fill:#000000'/>
206
- <circle cx='397' cy='257' r='2' style='stroke:#000000;fill:#000000'/>
207
- <circle cx='397' cy='41' r='2' style='stroke:#000000;fill:#000000'/>
208
- <circle cx='397' cy='159' r='2' style='stroke:#000000;fill:#000000'/>
209
- <circle cx='397' cy='146' r='2' style='stroke:#000000;fill:#000000'/>
210
- <circle cx='397' cy='61' r='2' style='stroke:#000000;fill:#000000'/>
211
- <circle cx='397' cy='142' r='2' style='stroke:#000000;fill:#000000'/>
212
- <circle cx='397' cy='215' r='2' style='stroke:#000000;fill:#000000'/>
213
- <circle cx='397' cy='190' r='2' style='stroke:#000000;fill:#000000'/>
214
- <circle cx='397' cy='103' r='2' style='stroke:#000000;fill:#000000'/>
215
- <rect x='285' y='457' width='3' height='3' transform='rotate(-315,286,458)' style='stroke:#00CDCD;fill:#00CDCD'/>
216
- <rect x='284' y='353' width='3' height='3' transform='rotate(-315,286,355)' style='stroke:#00CDCD;fill:#00CDCD'/>
217
- <rect x='293' y='413' width='3' height='3' transform='rotate(-315,295,414)' style='stroke:#00CDCD;fill:#00CDCD'/>
218
- <rect x='263' y='433' width='3' height='3' transform='rotate(-315,265,435)' style='stroke:#00CDCD;fill:#00CDCD'/>
219
- <rect x='287' y='425' width='3' height='3' transform='rotate(-315,288,426)' style='stroke:#00CDCD;fill:#00CDCD'/>
220
- <rect x='273' y='375' width='3' height='3' transform='rotate(-315,275,376)' style='stroke:#00CDCD;fill:#00CDCD'/>
221
- <rect x='272' y='358' width='3' height='3' transform='rotate(-315,274,359)' style='stroke:#00CDCD;fill:#00CDCD'/>
222
- <rect x='276' y='358' width='3' height='3' transform='rotate(-315,277,359)' style='stroke:#00CDCD;fill:#00CDCD'/>
223
- <rect x='254' y='442' width='3' height='3' transform='rotate(-315,255,443)' style='stroke:#00CDCD;fill:#00CDCD'/>
224
- <rect x='296' y='416' width='3' height='3' transform='rotate(-315,297,418)' style='stroke:#00CDCD;fill:#00CDCD'/>
225
- <rect x='309' y='283' width='3' height='3' transform='rotate(-315,311,285)' style='stroke:#00CDCD;fill:#00CDCD'/>
226
- <rect x='338' y='284' width='3' height='3' transform='rotate(-315,339,285)' style='stroke:#00CDCD;fill:#00CDCD'/>
227
- <rect x='324' y='301' width='3' height='3' transform='rotate(-315,325,303)' style='stroke:#00CDCD;fill:#00CDCD'/>
228
- <rect x='309' y='272' width='3' height='3' transform='rotate(-315,311,274)' style='stroke:#00CDCD;fill:#00CDCD'/>
229
- <rect x='350' y='200' width='3' height='3' transform='rotate(-315,352,202)' style='stroke:#00CDCD;fill:#00CDCD'/>
230
- <rect x='334' y='273' width='3' height='3' transform='rotate(-315,335,274)' style='stroke:#00CDCD;fill:#00CDCD'/>
231
- <rect x='335' y='324' width='3' height='3' transform='rotate(-315,336,325)' style='stroke:#00CDCD;fill:#00CDCD'/>
232
- <rect x='312' y='311' width='3' height='3' transform='rotate(-315,313,313)' style='stroke:#00CDCD;fill:#00CDCD'/>
233
- <rect x='316' y='251' width='3' height='3' transform='rotate(-315,318,253)' style='stroke:#00CDCD;fill:#00CDCD'/>
234
- <rect x='313' y='297' width='3' height='3' transform='rotate(-315,315,299)' style='stroke:#00CDCD;fill:#00CDCD'/>
235
- <rect x='377' y='184' width='3' height='3' transform='rotate(-315,378,186)' style='stroke:#00CDCD;fill:#00CDCD'/>
236
- <rect x='414' y='255' width='3' height='3' transform='rotate(-315,415,257)' style='stroke:#00CDCD;fill:#00CDCD'/>
237
- <rect x='372' y='40' width='3' height='3' transform='rotate(-315,373,41)' style='stroke:#00CDCD;fill:#00CDCD'/>
238
- <rect x='381' y='158' width='3' height='3' transform='rotate(-315,383,159)' style='stroke:#00CDCD;fill:#00CDCD'/>
239
- <rect x='410' y='145' width='3' height='3' transform='rotate(-315,411,147)' style='stroke:#00CDCD;fill:#00CDCD'/>
240
- <rect x='376' y='60' width='3' height='3' transform='rotate(-315,378,61)' style='stroke:#00CDCD;fill:#00CDCD'/>
241
- <rect x='416' y='141' width='3' height='3' transform='rotate(-315,417,142)' style='stroke:#00CDCD;fill:#00CDCD'/>
242
- <rect x='380' y='213' width='3' height='3' transform='rotate(-315,382,215)' style='stroke:#00CDCD;fill:#00CDCD'/>
243
- <rect x='379' y='188' width='3' height='3' transform='rotate(-315,380,189)' style='stroke:#00CDCD;fill:#00CDCD'/>
244
- <rect x='400' y='102' width='3' height='3' transform='rotate(-315,401,103)' style='stroke:#00CDCD;fill:#00CDCD'/>
245
- </g><g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
246
- <rect x='31' y='5' width='199' height='15' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#D9D9D9'/>
247
- </g><text x='125' y='16' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#1A1A1A'>OJ</text>
248
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
249
- <rect x='235' y='5' width='199' height='15' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#D9D9D9'/>
250
- </g><text x='329' y='16' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#1A1A1A'>VC</text>
251
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
252
- <polyline points='69,482 69,479' style='stroke:#333333'/>
253
- <polyline points='131,482 131,479' style='stroke:#333333'/>
254
- <polyline points='193,482 193,479' style='stroke:#333333'/>
255
- </g><text x='61' y='490' lengthAdjust='spacingAndGlyphs' textLength='16px' style='font-size:8.8px;fill:#4D4D4D'>0.5</text>
256
- <text x='128' y='490' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#4D4D4D'>1</text>
257
- <text x='190' y='490' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#4D4D4D'>2</text>
258
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
259
- <polyline points='273,482 273,479' style='stroke:#333333'/>
260
- <polyline points='335,482 335,479' style='stroke:#333333'/>
261
- <polyline points='397,482 397,479' style='stroke:#333333'/>
262
- </g><text x='265' y='490' lengthAdjust='spacingAndGlyphs' textLength='16px' style='font-size:8.8px;fill:#4D4D4D'>0.5</text>
263
- <text x='332' y='490' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#4D4D4D'>1</text>
264
- <text x='394' y='490' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#4D4D4D'>2</text>
265
- <text x='16' y='379' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#4D4D4D'>10</text>
266
- <text x='16' y='239' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#4D4D4D'>20</text>
267
- <text x='16' y='99' lengthAdjust='spacingAndGlyphs' textLength='11px' style='font-size:8.8px;fill:#4D4D4D'>30</text>
268
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:butt'>
269
- <polyline points='29,376 31,376' style='stroke:#333333'/>
270
- <polyline points='29,236 31,236' style='stroke:#333333'/>
271
- <polyline points='29,96 31,96' style='stroke:#333333'/>
272
- </g><text x='220' y='500' lengthAdjust='spacingAndGlyphs' textLength='26px' style='font-size:11.0px;fill:#000000'>dose</text>
273
- <text x='13' y='260' lengthAdjust='spacingAndGlyphs' textLength='20px' style='font-size:11.0px;fill:#000000' transform='rotate(-90,13,260)'>len</text>
274
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
275
- <rect x='445' y='203' width='55' height='93' style='stroke:rgb(0,0,0);stroke-opacity:0,000;fill:#FFFFFF'/>
276
- </g><text x='451' y='216' lengthAdjust='spacingAndGlyphs' textLength='26px' style='font-size:11.0px;fill:#000000'>dose</text>
277
- <g style='stroke-width:1.4226377952755906;stroke-linejoin:round;stroke-linecap:round'>
278
- <rect x='451' y='222' width='23' height='23' style='stroke:#FFFFFF;fill:#F2F2F2'/>
279
- <polyline points='462,242 462,239' style='stroke:#333333'/>
280
- <polyline points='462,227 462,224' style='stroke:#333333'/>
281
- <rect x='453' y='227' width='17' height='12' style='stroke:#333333;fill:#F8766D'/>
282
- <polyline points='453,233 471,233' style='stroke:#333333'/>
283
- <rect x='451' y='245' width='23' height='23' style='stroke:#FFFFFF;fill:#F2F2F2'/>
284
- <polyline points='462,265 462,262' style='stroke:#333333'/>
285
- <polyline points='462,250 462,247' style='stroke:#333333'/>
286
- <rect x='453' y='250' width='17' height='12' style='stroke:#333333;fill:#00BA38'/>
287
- <polyline points='453,256 471,256' style='stroke:#333333'/>
288
- <rect x='451' y='268' width='23' height='23' style='stroke:#FFFFFF;fill:#F2F2F2'/>
289
- <polyline points='462,289 462,285' style='stroke:#333333'/>
290
- <polyline points='462,274 462,270' style='stroke:#333333'/>
291
- <rect x='453' y='274' width='17' height='12' style='stroke:#333333;fill:#619CFF'/>
292
- <polyline points='453,279 471,279' style='stroke:#333333'/>
293
- </g><text x='479' y='236' lengthAdjust='spacingAndGlyphs' textLength='16px' style='font-size:8.8px;fill:#000000'>0.5</text>
294
- <text x='479' y='259' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#000000'>1</text>
295
- <text x='479' y='282' lengthAdjust='spacingAndGlyphs' textLength='5px' style='font-size:8.8px;fill:#000000'>2</text>
296
- </svg>