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
@@ -0,0 +1,1431 @@
1
+ % SVJour3 DOCUMENT CLASS -- version 3.2 for LaTeX2e
2
+ %
3
+ % LaTeX document class for Springer journals
4
+ %
5
+ %%
6
+ %%
7
+ %% \CharacterTable
8
+ %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
9
+ %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
10
+ %% Digits \0\1\2\3\4\5\6\7\8\9
11
+ %% Exclamation \! Double quote \" Hash (number) \#
12
+ %% Dollar \$ Percent \% Ampersand \&
13
+ %% Acute accent \' Left paren \( Right paren \)
14
+ %% Asterisk \* Plus \+ Comma \,
15
+ %% Minus \- Point \. Solidus \/
16
+ %% Colon \: Semicolon \; Less than \<
17
+ %% Equals \= Greater than \> Question mark \?
18
+ %% Commercial at \@ Left bracket \[ Backslash \\
19
+ %% Right bracket \] Circumflex \^ Underscore \_
20
+ %% Grave accent \` Left brace \{ Vertical bar \|
21
+ %% Right brace \} Tilde \~}
22
+ \NeedsTeXFormat{LaTeX2e}[1995/12/01]
23
+ \ProvidesClass{svjour3}[2007/05/08 v3.2
24
+ ^^JLaTeX document class for Springer journals]
25
+ \newcommand\@ptsize{}
26
+ \newif\if@restonecol
27
+ \newif\if@titlepage
28
+ \@titlepagefalse
29
+ \DeclareOption{a4paper}
30
+ {\setlength\paperheight {297mm}%
31
+ \setlength\paperwidth {210mm}}
32
+ \DeclareOption{10pt}{\renewcommand\@ptsize{0}}
33
+ \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
34
+ \DeclareOption{draft}{\setlength\overfullrule{5pt}}
35
+ \DeclareOption{final}{\setlength\overfullrule{0pt}}
36
+ \DeclareOption{fleqn}{\input{fleqn.clo}\AtBeginDocument{\mathindent\z@}%
37
+ \AtBeginDocument{\@ifpackageloaded{amsmath}{\@mathmargin\z@}{}}%
38
+ \PassOptionsToPackage{fleqn}{amsmath}}
39
+ %%%
40
+ \DeclareOption{onecolumn}{}
41
+ \DeclareOption{smallcondensed}{}
42
+ \DeclareOption{twocolumn}{\@twocolumntrue\ExecuteOptions{fleqn}}
43
+ \newif\if@smallext\@smallextfalse
44
+ \DeclareOption{smallextended}{\@smallexttrue}
45
+ \let\if@mathematic\iftrue
46
+ \let\if@numbook\iffalse
47
+ \DeclareOption{numbook}{\let\if@envcntsect\iftrue
48
+ \AtEndOfPackage{%
49
+ \renewcommand\thefigure{\thesection.\@arabic\c@figure}%
50
+ \renewcommand\thetable{\thesection.\@arabic\c@table}%
51
+ \renewcommand\theequation{\thesection.\@arabic\c@equation}%
52
+ \@addtoreset{figure}{section}%
53
+ \@addtoreset{table}{section}%
54
+ \@addtoreset{equation}{section}%
55
+ }%
56
+ }
57
+ \DeclareOption{openbib}{%
58
+ \AtEndOfPackage{%
59
+ \renewcommand\@openbib@code{%
60
+ \advance\leftmargin\bibindent
61
+ \itemindent -\bibindent
62
+ \listparindent \itemindent
63
+ \parsep \z@
64
+ }%
65
+ \renewcommand\newblock{\par}}%
66
+ }
67
+ \DeclareOption{natbib}{%
68
+ \AtEndOfClass{\RequirePackage{natbib}%
69
+ % Changing some parameters of NATBIB
70
+ \setlength{\bibhang}{\parindent}%
71
+ %\setlength{\bibsep}{0mm}%
72
+ \let\bibfont=\small
73
+ \def\@biblabel#1{#1.}%
74
+ \newcommand{\etal}{et al.}%
75
+ \bibpunct{(}{)}{;}{a}{}{,}}}
76
+ %
77
+ \let\if@runhead\iffalse
78
+ \DeclareOption{runningheads}{\let\if@runhead\iftrue}
79
+ \let\if@smartrunh\iffalse
80
+ \DeclareOption{smartrunhead}{\let\if@smartrunh\iftrue}
81
+ \DeclareOption{nosmartrunhead}{\let\if@smartrunh\iffalse}
82
+ \let\if@envcntreset\iffalse
83
+ \DeclareOption{envcountreset}{\let\if@envcntreset\iftrue}
84
+ \let\if@envcntsame\iffalse
85
+ \DeclareOption{envcountsame}{\let\if@envcntsame\iftrue}
86
+ \let\if@envcntsect\iffalse
87
+ \DeclareOption{envcountsect}{\let\if@envcntsect\iftrue}
88
+ \let\if@referee\iffalse
89
+ \DeclareOption{referee}{\let\if@referee\iftrue}
90
+ \def\makereferee{\def\baselinestretch{2}}
91
+ \let\if@instindent\iffalse
92
+ \DeclareOption{instindent}{\let\if@instindent\iftrue}
93
+ \let\if@smartand\iffalse
94
+ \DeclareOption{smartand}{\let\if@smartand\iftrue}
95
+ \let\if@spthms\iftrue
96
+ \DeclareOption{nospthms}{\let\if@spthms\iffalse}
97
+ %
98
+ % language and babel dependencies
99
+ \DeclareOption{deutsch}{\def\switcht@@therlang{\switcht@deutsch}%
100
+ \gdef\svlanginfo{\typeout{Man spricht deutsch.}\global\let\svlanginfo\relax}}
101
+ \DeclareOption{francais}{\def\switcht@@therlang{\switcht@francais}%
102
+ \gdef\svlanginfo{\typeout{On parle francais.}\global\let\svlanginfo\relax}}
103
+ \let\switcht@@therlang\relax
104
+ \let\svlanginfo\relax
105
+ %
106
+ \AtBeginDocument{\@ifpackageloaded{babel}{%
107
+ \@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}%
108
+ \@ifundefined{extrasUKenglish}{}{\addto\extrasUKenglish{\switcht@albion}}%
109
+ \@ifundefined{extrasfrenchb}{}{\addto\extrasfrenchb{\switcht@francais}}%
110
+ \@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}%
111
+ \@ifundefined{extrasngerman}{}{\addto\extrasngerman{\switcht@deutsch}}%
112
+ }{\switcht@@therlang}%
113
+ }
114
+ %
115
+ \def\ClassInfoNoLine#1#2{%
116
+ \ClassInfo{#1}{#2\@gobble}%
117
+ }
118
+ \let\journalopt\@empty
119
+ \DeclareOption*{%
120
+ \InputIfFileExists{sv\CurrentOption.clo}{%
121
+ \global\let\journalopt\CurrentOption}{%
122
+ \ClassWarning{Springer-SVJour3}{Specified option or subpackage
123
+ "\CurrentOption" not found -}\OptionNotUsed}}
124
+ \ExecuteOptions{a4paper,twoside,10pt,instindent}
125
+ \ProcessOptions
126
+ %
127
+ \ifx\journalopt\@empty\relax
128
+ \ClassInfoNoLine{Springer-SVJour3}{extra/valid Springer sub-package (-> *.clo)
129
+ \MessageBreak not found in option list of \string\documentclass
130
+ \MessageBreak - autoactivating "global" style}{}
131
+ \input{svglov3.clo}
132
+ \else
133
+ \@ifundefined{validfor}{%
134
+ \ClassError{Springer-SVJour3}{Possible option clash for sub-package
135
+ \MessageBreak "sv\journalopt.clo" - option file not valid
136
+ \MessageBreak for this class}{Perhaps you used an option of the old
137
+ Springer class SVJour!}
138
+ }{}
139
+ \fi
140
+ %
141
+ \if@smartrunh\AtEndDocument{\islastpageeven\getlastpagenumber}\fi
142
+ %
143
+ \newcommand{\twocoltest}[2]{\if@twocolumn\def\@gtempa{#2}\else\def\@gtempa{#1}\fi
144
+ \@gtempa\makeatother}
145
+ \newcommand{\columncase}{\makeatletter\twocoltest}
146
+ %
147
+ \DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00}
148
+ \DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01}
149
+ \DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02}
150
+ \DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03}
151
+ \DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04}
152
+ \DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05}
153
+ \DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06}
154
+ \DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07}
155
+ \DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08}
156
+ \DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09}
157
+ \DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A}
158
+ %
159
+ \setlength\parindent{15\p@}
160
+ \setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@}
161
+ \setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@}
162
+ \setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@}
163
+ \setlength\headheight{12\p@}
164
+ \setlength\headsep {14.50dd}
165
+ \setlength\topskip {10\p@}
166
+ \setlength\footskip{30\p@}
167
+ \setlength\maxdepth{.5\topskip}
168
+ %
169
+ \@settopoint\textwidth
170
+ \setlength\marginparsep {10\p@}
171
+ \setlength\marginparpush{5\p@}
172
+ \setlength\topmargin{-10pt}
173
+ \if@twocolumn
174
+ \setlength\oddsidemargin {-30\p@}
175
+ \setlength\evensidemargin{-30\p@}
176
+ \else
177
+ \setlength\oddsidemargin {\z@}
178
+ \setlength\evensidemargin{\z@}
179
+ \fi
180
+ \setlength\marginparwidth {48\p@}
181
+ \setlength\footnotesep{8\p@}
182
+ \setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@}
183
+ \setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
184
+ \setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
185
+ \setlength\intextsep {20\p@ \@plus 2\p@ \@minus 2\p@}
186
+ \setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
187
+ \setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
188
+ \setlength\@fptop{0\p@}
189
+ \setlength\@fpsep{12\p@ \@plus 2\p@ \@minus 2\p@}
190
+ \setlength\@fpbot{0\p@ \@plus 1fil}
191
+ \setlength\@dblfptop{0\p@}
192
+ \setlength\@dblfpsep{12\p@ \@plus 2\p@ \@minus 2\p@}
193
+ \setlength\@dblfpbot{0\p@ \@plus 1fil}
194
+ \setlength\partopsep{2\p@ \@plus 1\p@ \@minus 1\p@}
195
+ \def\@listi{\leftmargin\leftmargini
196
+ \parsep \z@
197
+ \topsep 6\p@ \@plus2\p@ \@minus4\p@
198
+ \itemsep\parsep}
199
+ \let\@listI\@listi
200
+ \@listi
201
+ \def\@listii {\leftmargin\leftmarginii
202
+ \labelwidth\leftmarginii
203
+ \advance\labelwidth-\labelsep
204
+ \topsep \z@
205
+ \parsep \topsep
206
+ \itemsep \parsep}
207
+ \def\@listiii{\leftmargin\leftmarginiii
208
+ \labelwidth\leftmarginiii
209
+ \advance\labelwidth-\labelsep
210
+ \topsep \z@
211
+ \parsep \topsep
212
+ \itemsep \parsep}
213
+ \def\@listiv {\leftmargin\leftmarginiv
214
+ \labelwidth\leftmarginiv
215
+ \advance\labelwidth-\labelsep}
216
+ \def\@listv {\leftmargin\leftmarginv
217
+ \labelwidth\leftmarginv
218
+ \advance\labelwidth-\labelsep}
219
+ \def\@listvi {\leftmargin\leftmarginvi
220
+ \labelwidth\leftmarginvi
221
+ \advance\labelwidth-\labelsep}
222
+ %
223
+ \setlength\lineskip{1\p@}
224
+ \setlength\normallineskip{1\p@}
225
+ \renewcommand\baselinestretch{}
226
+ \setlength\parskip{0\p@ \@plus \p@}
227
+ \@lowpenalty 51
228
+ \@medpenalty 151
229
+ \@highpenalty 301
230
+ \setcounter{topnumber}{4}
231
+ \renewcommand\topfraction{.9}
232
+ \setcounter{bottomnumber}{2}
233
+ \renewcommand\bottomfraction{.7}
234
+ \setcounter{totalnumber}{6}
235
+ \renewcommand\textfraction{.1}
236
+ \renewcommand\floatpagefraction{.85}
237
+ \setcounter{dbltopnumber}{3}
238
+ \renewcommand\dbltopfraction{.85}
239
+ \renewcommand\dblfloatpagefraction{.85}
240
+ \def\ps@headings{%
241
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
242
+ \def\@evenhead{\small\csname runheadhook\endcsname
243
+ \rlap{\thepage}\hfil\leftmark\unskip}%
244
+ \def\@oddhead{\small\csname runheadhook\endcsname
245
+ \ignorespaces\rightmark\hfil\llap{\thepage}}%
246
+ \let\@mkboth\@gobbletwo
247
+ \let\sectionmark\@gobble
248
+ \let\subsectionmark\@gobble
249
+ }
250
+ % make indentations changeable
251
+ \def\setitemindent#1{\settowidth{\labelwidth}{#1}%
252
+ \leftmargini\labelwidth
253
+ \advance\leftmargini\labelsep
254
+ \def\@listi{\leftmargin\leftmargini
255
+ \labelwidth\leftmargini\advance\labelwidth by -\labelsep
256
+ \parsep=\parskip
257
+ \topsep=\medskipamount
258
+ \itemsep=\parskip \advance\itemsep by -\parsep}}
259
+ \def\setitemitemindent#1{\settowidth{\labelwidth}{#1}%
260
+ \leftmarginii\labelwidth
261
+ \advance\leftmarginii\labelsep
262
+ \def\@listii{\leftmargin\leftmarginii
263
+ \labelwidth\leftmarginii\advance\labelwidth by -\labelsep
264
+ \parsep=\parskip
265
+ \topsep=\z@
266
+ \itemsep=\parskip \advance\itemsep by -\parsep}}
267
+ % labels of description
268
+ \def\descriptionlabel#1{\hspace\labelsep #1\hfil}
269
+ % adjusted environment "description"
270
+ % if an optional parameter (at the first two levels of lists)
271
+ % is present, its width is considered to be the widest mark
272
+ % throughout the current list.
273
+ \def\description{\@ifnextchar[{\@describe}{\list{}{\labelwidth\z@
274
+ \itemindent-\leftmargin \let\makelabel\descriptionlabel}}}
275
+ \let\enddescription\endlist
276
+ %
277
+ \def\describelabel#1{#1\hfil}
278
+ \def\@describe[#1]{\relax\ifnum\@listdepth=0
279
+ \setitemindent{#1}\else\ifnum\@listdepth=1
280
+ \setitemitemindent{#1}\fi\fi
281
+ \list{--}{\let\makelabel\describelabel}}
282
+ %
283
+ \newdimen\logodepth
284
+ \logodepth=1.2cm
285
+ \newdimen\headerboxheight
286
+ \headerboxheight=163pt % 18 10.5dd-lines - 2\baselineskip
287
+ \if@twocolumn\else\advance\headerboxheight by-14.5mm\fi
288
+ \newdimen\betweenumberspace % dimension for space between
289
+ \betweenumberspace=3.33pt % number and text of titles.
290
+ \newdimen\aftertext % dimension for space after
291
+ \aftertext=5pt % text of title.
292
+ \newdimen\headlineindent % dimension for space between
293
+ \headlineindent=1.166cm % number and text of headings.
294
+ \if@mathematic
295
+ \def\runinend{} % \enspace}
296
+ \def\floatcounterend{\enspace}
297
+ \def\sectcounterend{}
298
+ \else
299
+ \def\runinend{.}
300
+ \def\floatcounterend{.\ }
301
+ \def\sectcounterend{.}
302
+ \fi
303
+ \def\email#1{\emailname: #1}
304
+ \def\keywords#1{\par\addvspace\medskipamount{\rightskip=0pt plus1cm
305
+ \def\and{\ifhmode\unskip\nobreak\fi\ $\cdot$
306
+ }\noindent\keywordname\enspace\ignorespaces#1\par}}
307
+ %
308
+ \def\subclassname{{\bfseries Mathematics Subject Classification
309
+ (2000)}\enspace}
310
+ \def\subclass#1{\par\addvspace\medskipamount{\rightskip=0pt plus1cm
311
+ \def\and{\ifhmode\unskip\nobreak\fi\ $\cdot$
312
+ }\noindent\subclassname\ignorespaces#1\par}}
313
+ %
314
+ \def\PACSname{\textbf{PACS}\enspace}
315
+ \def\PACS#1{\par\addvspace\medskipamount{\rightskip=0pt plus1cm
316
+ \def\and{\ifhmode\unskip\nobreak\fi\ $\cdot$
317
+ }\noindent\PACSname\ignorespaces#1\par}}
318
+ %
319
+ \def\CRclassname{{\bfseries CR Subject Classification}\enspace}
320
+ \def\CRclass#1{\par\addvspace\medskipamount{\rightskip=0pt plus1cm
321
+ \def\and{\ifhmode\unskip\nobreak\fi\ $\cdot$
322
+ }\noindent\CRclassname\ignorespaces#1\par}}
323
+ %
324
+ \def\ESMname{\textbf{Electronic Supplementary Material}\enspace}
325
+ \def\ESM#1{\par\addvspace\medskipamount
326
+ \noindent\ESMname\ignorespaces#1\par}
327
+ %
328
+ \newcounter{inst}
329
+ \newcounter{auth}
330
+ \def\authdepth{2}
331
+ \newdimen\instindent
332
+ \newbox\authrun
333
+ \newtoks\authorrunning
334
+ \newbox\titrun
335
+ \newtoks\titlerunning
336
+ \def\authorfont{\bfseries}
337
+
338
+ \def\combirunning#1{\gdef\@combi{#1}}
339
+ \def\@combi{}
340
+ \newbox\combirun
341
+ %
342
+ \def\ps@last{\def\@evenhead{\small\rlap{\thepage}\hfil
343
+ \lastevenhead}}
344
+ \newcounter{lastpage}
345
+ \def\islastpageeven{\@ifundefined{lastpagenumber}
346
+ {\setcounter{lastpage}{0}}{\setcounter{lastpage}{\lastpagenumber}}
347
+ \ifnum\value{lastpage}>0
348
+ \ifodd\value{lastpage}%
349
+ \else
350
+ \if@smartrunh
351
+ \thispagestyle{last}%
352
+ \fi
353
+ \fi
354
+ \fi}
355
+ \def\getlastpagenumber{\clearpage
356
+ \addtocounter{page}{-1}%
357
+ \immediate\write\@auxout{\string\gdef\string\lastpagenumber{\thepage}}%
358
+ \immediate\write\@auxout{\string\newlabel{LastPage}{{}{\thepage}}}%
359
+ \addtocounter{page}{1}}
360
+
361
+ \def\journalname#1{\gdef\@journalname{#1}}
362
+
363
+ \def\dedication#1{\gdef\@dedic{#1}}
364
+ \def\@dedic{}
365
+
366
+ \let\@date\undefined
367
+ \def\notused{~}
368
+
369
+ \def\institute#1{\gdef\@institute{#1}}
370
+
371
+ \def\offprints#1{\begingroup
372
+ \def\protect{\noexpand\protect\noexpand}\xdef\@thanks{\@thanks
373
+ \protect\footnotetext[0]{\unskip\hskip-15pt{\itshape Send offprint requests
374
+ to\/}: \ignorespaces#1}}\endgroup\ignorespaces}
375
+
376
+ %\def\mail#1{\gdef\@mail{#1}}
377
+ %\def\@mail{}
378
+
379
+ \def\@thanks{}
380
+
381
+ \def\@fnsymbol#1{\ifcase#1\or\star\or{\star\star}\or{\star\star\star}%
382
+ \or \dagger\or \ddagger\or
383
+ \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger
384
+ \or \ddagger\ddagger \else\@ctrerr\fi\relax}
385
+ %
386
+ %\def\invthanks#1{\footnotetext[0]{\kern-\bibindent#1}}
387
+ %
388
+ \def\nothanksmarks{\def\thanks##1{\protected@xdef\@thanks{\@thanks
389
+ \protect\footnotetext[0]{\kern-\bibindent##1}}}}
390
+ %
391
+ \def\subtitle#1{\gdef\@subtitle{#1}}
392
+ \def\@subtitle{}
393
+
394
+ \def\headnote#1{\gdef\@headnote{#1}}
395
+ \def\@headnote{}
396
+
397
+ \def\papertype#1{\gdef\paper@type{\MakeUppercase{#1}}}
398
+ \def\paper@type{}
399
+
400
+ \def\ch@ckobl#1#2{\@ifundefined{@#1}
401
+ {\typeout{SVJour3 warning: Missing
402
+ \expandafter\string\csname#1\endcsname}%
403
+ \csname #1\endcsname{#2}}
404
+ {}}
405
+ %
406
+ \def\ProcessRunnHead{%
407
+ \def\\{\unskip\ \ignorespaces}%
408
+ \def\thanks##1{\unskip{}}%
409
+ \instindent=\textwidth
410
+ \advance\instindent by-\headlineindent
411
+ \if!\the\titlerunning!\else
412
+ \edef\@title{\the\titlerunning}%
413
+ \fi
414
+ \global\setbox\titrun=\hbox{\small\rmfamily\unboldmath\ignorespaces\@title
415
+ \unskip}%
416
+ \ifdim\wd\titrun>\instindent
417
+ \typeout{^^JSVJour3 Warning: Title too long for running head.}%
418
+ \typeout{Please supply a shorter form with \string\titlerunning
419
+ \space prior to \string\maketitle}%
420
+ \global\setbox\titrun=\hbox{\small\rmfamily
421
+ Title Suppressed Due to Excessive Length}%
422
+ \fi
423
+ \xdef\@title{\copy\titrun}%
424
+ %
425
+ \if!\the\authorrunning!
426
+ \else
427
+ \setcounter{auth}{1}%
428
+ \edef\@author{\the\authorrunning}%
429
+ \fi
430
+ \ifnum\value{inst}>\authdepth
431
+ \def\stripauthor##1\and##2\endauthor{%
432
+ \protected@xdef\@author{##1\unskip\unskip\if!##2!\else\ et al.\fi}}%
433
+ \expandafter\stripauthor\@author\and\endauthor
434
+ \else
435
+ \gdef\and{\unskip, \ignorespaces}%
436
+ {\def\and{\noexpand\protect\noexpand\and}%
437
+ \protected@xdef\@author{\@author}}
438
+ \fi
439
+ \global\setbox\authrun=\hbox{\small\rmfamily\unboldmath\ignorespaces
440
+ \@author\unskip}%
441
+ \ifdim\wd\authrun>\instindent
442
+ \typeout{^^JSVJour3 Warning: Author name(s) too long for running head.
443
+ ^^JPlease supply a shorter form with \string\authorrunning
444
+ \space prior to \string\maketitle}%
445
+ \global\setbox\authrun=\hbox{\small\rmfamily Please give a shorter version
446
+ with: {\tt\string\authorrunning\space and
447
+ \string\titlerunning\space prior to \string\maketitle}}%
448
+ \fi
449
+ \xdef\@author{\copy\authrun}%
450
+ \markboth{\@author}{\@title}%
451
+ }
452
+ %
453
+ \let\orithanks=\thanks
454
+ \def\thanks#1{\ClassWarning{SVJour3}{\string\thanks\space may only be
455
+ used inside of \string\title, \string\author,\MessageBreak
456
+ and \string\date\space prior to \string\maketitle}}
457
+ %
458
+ \def\maketitle{\par\let\thanks=\orithanks
459
+ \ch@ckobl{journalname}{Noname}
460
+ \ch@ckobl{date}{the date of receipt and acceptance should be inserted
461
+ later}
462
+ \ch@ckobl{title}{A title should be given}
463
+ \ch@ckobl{author}{Name(s) and initial(s) of author(s) should be given}
464
+ \ch@ckobl{institute}{Address(es) of author(s) should be given}
465
+ \begingroup
466
+ %
467
+ \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
468
+ \def\@makefnmark{$^{\@thefnmark}$}%
469
+ \renewcommand\@makefntext[1]{%
470
+ \noindent
471
+ \hb@xt@\bibindent{\hss\@makefnmark\enspace}##1\vrule height0pt
472
+ width0pt depth8pt}
473
+ %
474
+ \def\lastand{\ifnum\value{inst}=2\relax
475
+ \unskip{} \andname\
476
+ \else
477
+ \unskip, \andname\
478
+ \fi}%
479
+ \def\and{\stepcounter{auth}\relax
480
+ \if@smartand
481
+ \ifnum\value{auth}=\value{inst}%
482
+ \lastand
483
+ \else
484
+ \unskip,
485
+ \fi
486
+ \else
487
+ \unskip,
488
+ \fi}%
489
+ \thispagestyle{empty}
490
+ \ifnum \col@number=\@ne
491
+ \@maketitle
492
+ \else
493
+ \twocolumn[\@maketitle]%
494
+ \fi
495
+ %
496
+ \global\@topnum\z@
497
+ \if!\@thanks!\else
498
+ \@thanks
499
+ \insert\footins{\vskip-3pt\hrule\@width\if@twocolumn\columnwidth
500
+ \else 38mm\fi\vskip3pt}%
501
+ \fi
502
+ {\def\thanks##1{\unskip{}}%
503
+ \def\iand{\\[5pt]\let\and=\nand}%
504
+ \def\nand{\ifhmode\unskip\nobreak\fi\ $\cdot$ }%
505
+ \let\and=\nand
506
+ \def\at{\\\let\and=\iand}%
507
+ \footnotetext[0]{\kern-\bibindent
508
+ \ignorespaces\@institute}\vspace{5dd}}%
509
+ %\if!\@mail!\else
510
+ % \footnotetext[0]{\kern-\bibindent\mailname\
511
+ % \ignorespaces\@mail}%
512
+ %\fi
513
+ %
514
+ \if@runhead
515
+ \ProcessRunnHead
516
+ \fi
517
+ %
518
+ \endgroup
519
+ \setcounter{footnote}{0}
520
+ \global\let\thanks\relax
521
+ \global\let\maketitle\relax
522
+ \global\let\@maketitle\relax
523
+ \global\let\@thanks\@empty
524
+ \global\let\@author\@empty
525
+ \global\let\@date\@empty
526
+ \global\let\@title\@empty
527
+ \global\let\@subtitle\@empty
528
+ \global\let\title\relax
529
+ \global\let\author\relax
530
+ \global\let\date\relax
531
+ \global\let\and\relax}
532
+
533
+ \def\makeheadbox{{%
534
+ \hbox to0pt{\vbox{\baselineskip=10dd\hrule\hbox
535
+ to\hsize{\vrule\kern3pt\vbox{\kern3pt
536
+ \hbox{\bfseries\@journalname\ manuscript No.}
537
+ \hbox{(will be inserted by the editor)}
538
+ \kern3pt}\hfil\kern3pt\vrule}\hrule}%
539
+ \hss}}}
540
+ %
541
+ \def\rubric{\setbox0=\hbox{\small\strut}\@tempdima=\ht0\advance
542
+ \@tempdima\dp0\advance\@tempdima2\fboxsep\vrule\@height\@tempdima
543
+ \@width\z@}
544
+ \newdimen\rubricwidth
545
+ %
546
+ \def\@maketitle{\newpage
547
+ \normalfont
548
+ \vbox to0pt{\if@twocolumn\vskip-39pt\else\vskip-49pt\fi
549
+ \nointerlineskip
550
+ \makeheadbox\vss}\nointerlineskip
551
+ \vbox to 0pt{\offinterlineskip\rubricwidth=\columnwidth
552
+ %%%%\vskip-12.5pt % -12.5pt
553
+ \if@twocolumn\else % one column journal
554
+ \divide\rubricwidth by144\multiply\rubricwidth by89 % perform golden section
555
+ \vskip-\topskip
556
+ \fi
557
+ \hrule\@height0.35mm\noindent
558
+ \advance\fboxsep by.25mm
559
+ \global\advance\rubricwidth by0pt
560
+ \rubric
561
+ \vss}\vskip19.5pt % war 9pt
562
+ %
563
+ \if@twocolumn\else
564
+ \gdef\footnoterule{%
565
+ \kern-3\p@
566
+ \hrule\@width38mm % \columnwidth \rubricwidth
567
+ \kern2.6\p@}
568
+ \fi
569
+ %
570
+ \setbox\authrun=\vbox\bgroup
571
+ \if@twocolumn
572
+ \hrule\@height10.5mm\@width0\p@
573
+ \else
574
+ \hrule\@height 2mm\@width0\p@
575
+ \fi
576
+ \pretolerance=10000
577
+ \rightskip=0pt plus 4cm
578
+ \nothanksmarks
579
+ % \if!\@headnote!\else
580
+ % \noindent
581
+ % {\LARGE\normalfont\itshape\ignorespaces\@headnote\par}\vskip 3.5mm
582
+ % \fi
583
+ {\LARGE\bfseries
584
+ \noindent\ignorespaces
585
+ \@title \par}\vskip 17pt\relax
586
+ \if!\@subtitle!\else
587
+ {\large\bfseries
588
+ \pretolerance=10000
589
+ \rightskip=0pt plus 3cm
590
+ \vskip-12pt
591
+ % \noindent\ignorespaces\@subtitle \par}\vskip 11.24pt\relax
592
+ \noindent\ignorespaces\@subtitle \par}\vskip 17pt\relax
593
+ \fi
594
+ {\authorfont
595
+ \setbox0=\vbox{\setcounter{auth}{1}\def\and{\stepcounter{auth} }%
596
+ \hfuzz=2\textwidth\def\thanks##1{}\@author}%
597
+ \setcounter{footnote}{0}%
598
+ \global\value{inst}=\value{auth}%
599
+ \setcounter{auth}{1}%
600
+ \if@twocolumn
601
+ \rightskip43mm plus 4cm minus 3mm
602
+ \else % one column journal
603
+ \rightskip=\linewidth
604
+ \advance\rightskip by-\rubricwidth
605
+ \advance\rightskip by0pt plus 4cm minus 3mm
606
+ \fi
607
+ %
608
+ \def\and{\unskip\nobreak\enskip{\boldmath$\cdot$}\enskip\ignorespaces}%
609
+ \noindent\ignorespaces\@author\vskip7.23pt}
610
+ %
611
+ \small
612
+ \if!\@dedic!\else
613
+ \par
614
+ \normalsize\it
615
+ \addvspace\baselineskip
616
+ \noindent\@dedic
617
+ \fi
618
+ \egroup % end of header box
619
+ \@tempdima=\headerboxheight
620
+ \advance\@tempdima by-\ht\authrun
621
+ \unvbox\authrun
622
+ \ifdim\@tempdima>0pt
623
+ \vrule width0pt height\@tempdima\par
624
+ \fi
625
+ \noindent{\small\@date\if@twocolumn\vskip 7.2mm\else\vskip 5.2mm\fi}
626
+ \global\@minipagetrue
627
+ \global\everypar{\global\@minipagefalse\global\everypar{}}%
628
+ %\vskip22.47pt
629
+ }
630
+ %
631
+ \if@mathematic
632
+ \def\vec#1{\ensuremath{\mathchoice
633
+ {\mbox{\boldmath$\displaystyle\mathbf{#1}$}}
634
+ {\mbox{\boldmath$\textstyle\mathbf{#1}$}}
635
+ {\mbox{\boldmath$\scriptstyle\mathbf{#1}$}}
636
+ {\mbox{\boldmath$\scriptscriptstyle\mathbf{#1}$}}}}
637
+ \else
638
+ \def\vec#1{\ensuremath{\mathchoice
639
+ {\mbox{\boldmath$\displaystyle#1$}}
640
+ {\mbox{\boldmath$\textstyle#1$}}
641
+ {\mbox{\boldmath$\scriptstyle#1$}}
642
+ {\mbox{\boldmath$\scriptscriptstyle#1$}}}}
643
+ \fi
644
+ %
645
+ \def\tens#1{\ensuremath{\mathsf{#1}}}
646
+ %
647
+ \setcounter{secnumdepth}{3}
648
+ \newcounter {section}
649
+ \newcounter {subsection}[section]
650
+ \newcounter {subsubsection}[subsection]
651
+ \newcounter {paragraph}[subsubsection]
652
+ \newcounter {subparagraph}[paragraph]
653
+ \renewcommand\thesection {\@arabic\c@section}
654
+ \renewcommand\thesubsection {\thesection.\@arabic\c@subsection}
655
+ \renewcommand\thesubsubsection{\thesubsection.\@arabic\c@subsubsection}
656
+ \renewcommand\theparagraph {\thesubsubsection.\@arabic\c@paragraph}
657
+ \renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph}
658
+ %
659
+ \def\@hangfrom#1{\setbox\@tempboxa\hbox{#1}%
660
+ \hangindent \z@\noindent\box\@tempboxa}
661
+ %
662
+ \def\@seccntformat#1{\csname the#1\endcsname\sectcounterend
663
+ \hskip\betweenumberspace}
664
+ %
665
+ % \newif\if@sectrule
666
+ % \if@twocolumn\else\let\@sectruletrue=\relax\fi
667
+ % \if@avier\let\@sectruletrue=\relax\fi
668
+ % \def\makesectrule{\if@sectrule\global\@sectrulefalse\null\vglue-\topskip
669
+ % \hrule\nobreak\parskip=5pt\relax\fi}
670
+ % %
671
+ % \let\makesectruleori=\makesectrule
672
+ % \def\restoresectrule{\global\let\makesectrule=\makesectruleori\global\@sectrulefalse}
673
+ % \def\nosectrule{\let\makesectrule=\restoresectrule}
674
+ %
675
+ \def\@startsection#1#2#3#4#5#6{%
676
+ \if@noskipsec \leavevmode \fi
677
+ \par
678
+ \@tempskipa #4\relax
679
+ \@afterindenttrue
680
+ \ifdim \@tempskipa <\z@
681
+ \@tempskipa -\@tempskipa \@afterindentfalse
682
+ \fi
683
+ \if@nobreak
684
+ \everypar{}%
685
+ \else
686
+ \addpenalty\@secpenalty\addvspace\@tempskipa
687
+ \fi
688
+ % \ifnum#2=1\relax\@sectruletrue\fi
689
+ \@ifstar
690
+ {\@ssect{#3}{#4}{#5}{#6}}%
691
+ {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
692
+ %
693
+ \def\@sect#1#2#3#4#5#6[#7]#8{%
694
+ \ifnum #2>\c@secnumdepth
695
+ \let\@svsec\@empty
696
+ \else
697
+ \refstepcounter{#1}%
698
+ \protected@edef\@svsec{\@seccntformat{#1}\relax}%
699
+ \fi
700
+ \@tempskipa #5\relax
701
+ \ifdim \@tempskipa>\z@
702
+ \begingroup
703
+ #6{% \makesectrule
704
+ \@hangfrom{\hskip #3\relax\@svsec}%
705
+ \raggedright
706
+ \hyphenpenalty \@M%
707
+ \interlinepenalty \@M #8\@@par}%
708
+ \endgroup
709
+ \csname #1mark\endcsname{#7}%
710
+ \addcontentsline{toc}{#1}{%
711
+ \ifnum #2>\c@secnumdepth \else
712
+ \protect\numberline{\csname the#1\endcsname\sectcounterend}%
713
+ \fi
714
+ #7}%
715
+ \else
716
+ \def\@svsechd{%
717
+ #6{\hskip #3\relax
718
+ \@svsec #8\/\hskip\aftertext}%
719
+ \csname #1mark\endcsname{#7}%
720
+ \addcontentsline{toc}{#1}{%
721
+ \ifnum #2>\c@secnumdepth \else
722
+ \protect\numberline{\csname the#1\endcsname}%
723
+ \fi
724
+ #7}}%
725
+ \fi
726
+ \@xsect{#5}}
727
+ %
728
+ \def\@ssect#1#2#3#4#5{%
729
+ \@tempskipa #3\relax
730
+ \ifdim \@tempskipa>\z@
731
+ \begingroup
732
+ #4{% \makesectrule
733
+ \@hangfrom{\hskip #1}%
734
+ \interlinepenalty \@M #5\@@par}%
735
+ \endgroup
736
+ \else
737
+ \def\@svsechd{#4{\hskip #1\relax #5}}%
738
+ \fi
739
+ \@xsect{#3}}
740
+
741
+ %
742
+ % measures and setting of sections
743
+ %
744
+ \def\section{\@startsection{section}{1}{\z@}%
745
+ {-21dd plus-8pt minus-4pt}{10.5dd}
746
+ {\normalsize\bfseries\boldmath}}
747
+ \def\subsection{\@startsection{subsection}{2}{\z@}%
748
+ {-21dd plus-8pt minus-4pt}{10.5dd}
749
+ {\normalsize\upshape}}
750
+ \def\subsubsection{\@startsection{subsubsection}{3}{\z@}%
751
+ {-13dd plus-8pt minus-4pt}{10.5dd}
752
+ {\normalsize\itshape}}
753
+ \def\paragraph{\@startsection{paragraph}{4}{\z@}%
754
+ {-13pt plus-8pt minus-4pt}{\z@}{\normalsize\itshape}}
755
+
756
+ \setlength\leftmargini {\parindent}
757
+ \leftmargin \leftmargini
758
+ \setlength\leftmarginii {\parindent}
759
+ \setlength\leftmarginiii {1.87em}
760
+ \setlength\leftmarginiv {1.7em}
761
+ \setlength\leftmarginv {.5em}
762
+ \setlength\leftmarginvi {.5em}
763
+ \setlength \labelsep {.5em}
764
+ \setlength \labelwidth{\leftmargini}
765
+ \addtolength\labelwidth{-\labelsep}
766
+ \@beginparpenalty -\@lowpenalty
767
+ \@endparpenalty -\@lowpenalty
768
+ \@itempenalty -\@lowpenalty
769
+ \renewcommand\theenumi{\@arabic\c@enumi}
770
+ \renewcommand\theenumii{\@alph\c@enumii}
771
+ \renewcommand\theenumiii{\@roman\c@enumiii}
772
+ \renewcommand\theenumiv{\@Alph\c@enumiv}
773
+ \newcommand\labelenumi{\theenumi.}
774
+ \newcommand\labelenumii{(\theenumii)}
775
+ \newcommand\labelenumiii{\theenumiii.}
776
+ \newcommand\labelenumiv{\theenumiv.}
777
+ \renewcommand\p@enumii{\theenumi}
778
+ \renewcommand\p@enumiii{\theenumi(\theenumii)}
779
+ \renewcommand\p@enumiv{\p@enumiii\theenumiii}
780
+ \newcommand\labelitemi{\normalfont\bfseries --}
781
+ \newcommand\labelitemii{\normalfont\bfseries --}
782
+ \newcommand\labelitemiii{$\m@th\bullet$}
783
+ \newcommand\labelitemiv{$\m@th\cdot$}
784
+
785
+ \if@spthms
786
+ % definition of the "\spnewtheorem" command.
787
+ %
788
+ % Usage:
789
+ %
790
+ % \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}
791
+ % or \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}
792
+ % or \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}
793
+ %
794
+ % New is "cap_font" and "body_font". It stands for
795
+ % fontdefinition of the caption and the text itself.
796
+ %
797
+ % "\spnewtheorem*" gives a theorem without number.
798
+ %
799
+ % A defined spnewthoerem environment is used as described
800
+ % by Lamport.
801
+ %
802
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
803
+
804
+ \def\@thmcountersep{}
805
+ \def\@thmcounterend{}
806
+ \newcommand\nocaption{\noexpand\@gobble}
807
+ \newdimen\spthmsep \spthmsep=5pt
808
+
809
+ \def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}
810
+
811
+ % definition of \spnewtheorem with number
812
+
813
+ \def\@spnthm#1#2{%
814
+ \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}
815
+ \def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}
816
+
817
+ \def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname
818
+ {\@definecounter{#1}\@addtoreset{#1}{#3}%
819
+ \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
820
+ \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%
821
+ \expandafter\xdef\csname #1name\endcsname{#2}%
822
+ \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
823
+ \global\@namedef{end#1}{\@endtheorem}}}
824
+
825
+ \def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
826
+ {\@definecounter{#1}%
827
+ \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
828
+ \expandafter\xdef\csname #1name\endcsname{#2}%
829
+ \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%
830
+ \global\@namedef{end#1}{\@endtheorem}}}
831
+
832
+ \def\@spothm#1[#2]#3#4#5{%
833
+ \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%
834
+ {\expandafter\@ifdefinable\csname #1\endcsname
835
+ {\global\@namedef{the#1}{\@nameuse{the#2}}%
836
+ \expandafter\xdef\csname #1name\endcsname{#3}%
837
+ \global\@namedef{#1}{\@spthm{#2}{\csname #1name\endcsname}{#4}{#5}}%
838
+ \global\@namedef{end#1}{\@endtheorem}}}}
839
+
840
+ \def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@
841
+ \labelsep=\spthmsep\refstepcounter{#1}%
842
+ \@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}
843
+
844
+ \def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%
845
+ \ignorespaces}
846
+
847
+ \def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname
848
+ the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
849
+
850
+ \def\normalthmheadings{\def\@spbegintheorem##1##2##3##4{\trivlist\normalfont
851
+ \item[\hskip\labelsep{##3##1\ ##2\@thmcounterend}]##4}
852
+ \def\@spopargbegintheorem##1##2##3##4##5{\trivlist
853
+ \item[\hskip\labelsep{##4##1\ ##2}]{##4(##3)\@thmcounterend\ }##5}}
854
+ \normalthmheadings
855
+
856
+ \def\reversethmheadings{\def\@spbegintheorem##1##2##3##4{\trivlist\normalfont
857
+ \item[\hskip\labelsep{##3##2\ ##1\@thmcounterend}]##4}
858
+ \def\@spopargbegintheorem##1##2##3##4##5{\trivlist
859
+ \item[\hskip\labelsep{##4##2\ ##1}]{##4(##3)\@thmcounterend\ }##5}}
860
+
861
+ % definition of \spnewtheorem* without number
862
+
863
+ \def\@sthm#1#2{\@Ynthm{#1}{#2}}
864
+
865
+ \def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
866
+ {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%
867
+ \expandafter\xdef\csname #1name\endcsname{#2}%
868
+ \global\@namedef{end#1}{\@endtheorem}}}
869
+
870
+ \def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@
871
+ \@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}
872
+
873
+ \def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}
874
+
875
+ \def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}
876
+ {#4}{#2}{#3}\ignorespaces}
877
+
878
+ \def\@Begintheorem#1#2#3{#3\trivlist
879
+ \item[\hskip\labelsep{#2#1\@thmcounterend}]}
880
+
881
+ \def\@Opargbegintheorem#1#2#3#4{#4\trivlist
882
+ \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}
883
+
884
+ % initialize theorem environment
885
+
886
+ \if@envcntsect
887
+ \def\@thmcountersep{.}
888
+ \spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape}
889
+ \else
890
+ \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}
891
+ \if@envcntreset
892
+ \@addtoreset{theorem}{section}
893
+ \else
894
+ \@addtoreset{theorem}{chapter}
895
+ \fi
896
+ \fi
897
+
898
+ %definition of divers theorem environments
899
+ \spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}
900
+ \spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}
901
+ \if@envcntsame % all environments like "Theorem" - using its counter
902
+ \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}
903
+ \else % all environments with their own counter
904
+ \if@envcntsect % show section counter
905
+ \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}}
906
+ \else % not numbered with section
907
+ \if@envcntreset
908
+ \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
909
+ \@addtoreset{#1}{section}}
910
+ \else
911
+ \let\spn@wtheorem=\@spynthm
912
+ \fi
913
+ \fi
914
+ \fi
915
+ %
916
+ \let\spdefaulttheorem=\spn@wtheorem
917
+ %
918
+ \spn@wtheorem{case}{Case}{\itshape}{\rmfamily}
919
+ \spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}
920
+ \spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}
921
+ \spn@wtheorem{definition}{Definition}{\bfseries}{\rmfamily}
922
+ \spn@wtheorem{example}{Example}{\itshape}{\rmfamily}
923
+ \spn@wtheorem{exercise}{Exercise}{\bfseries}{\rmfamily}
924
+ \spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}
925
+ \spn@wtheorem{note}{Note}{\itshape}{\rmfamily}
926
+ \spn@wtheorem{problem}{Problem}{\bfseries}{\rmfamily}
927
+ \spn@wtheorem{property}{Property}{\itshape}{\rmfamily}
928
+ \spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}
929
+ \spn@wtheorem{question}{Question}{\itshape}{\rmfamily}
930
+ \spn@wtheorem{solution}{Solution}{\bfseries}{\rmfamily}
931
+ \spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}
932
+ %
933
+ \newenvironment{theopargself}
934
+ {\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
935
+ \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}
936
+ \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
937
+ \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}}{}
938
+ \newenvironment{theopargself*}
939
+ {\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
940
+ \item[\hskip\labelsep{##4##1\ ##2}]{\hspace*{-\labelsep}##4##3\@thmcounterend}##5}
941
+ \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
942
+ \item[\hskip\labelsep{##3##1}]{\hspace*{-\labelsep}##3##2\@thmcounterend}}}{}
943
+ %
944
+ \fi
945
+
946
+ \def\@takefromreset#1#2{%
947
+ \def\@tempa{#1}%
948
+ \let\@tempd\@elt
949
+ \def\@elt##1{%
950
+ \def\@tempb{##1}%
951
+ \ifx\@tempa\@tempb\else
952
+ \@addtoreset{##1}{#2}%
953
+ \fi}%
954
+ \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
955
+ \expandafter\def\csname cl@#2\endcsname{}%
956
+ \@tempc
957
+ \let\@elt\@tempd}
958
+
959
+ \def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}
960
+ \def\qed{\ifmmode\else\unskip\quad\fi\squareforqed}
961
+ \def\smartqed{\def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil
962
+ \penalty50\hskip1em\null\nobreak\hfil\squareforqed
963
+ \parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}}
964
+
965
+ % Define `abstract' environment
966
+ \def\abstract{\topsep=0pt\partopsep=0pt\parsep=0pt\itemsep=0pt\relax
967
+ \trivlist\item[\hskip\labelsep
968
+ {\bfseries\abstractname}]\if!\abstractname!\hskip-\labelsep\fi}
969
+ \if@twocolumn
970
+ % \if@avier
971
+ % \def\endabstract{\endtrivlist\addvspace{5mm}\strich}
972
+ % \def\strich{\hrule\vskip1ptplus12pt}
973
+ % \else
974
+ \def\endabstract{\endtrivlist\addvspace{3mm}}
975
+ % \fi
976
+ \else
977
+ \fi
978
+ %
979
+ \newenvironment{verse}
980
+ {\let\\\@centercr
981
+ \list{}{\itemsep \z@
982
+ \itemindent -1.5em%
983
+ \listparindent\itemindent
984
+ \rightmargin \leftmargin
985
+ \advance\leftmargin 1.5em}%
986
+ \item\relax}
987
+ {\endlist}
988
+ \newenvironment{quotation}
989
+ {\list{}{\listparindent 1.5em%
990
+ \itemindent \listparindent
991
+ \rightmargin \leftmargin
992
+ \parsep \z@ \@plus\p@}%
993
+ \item\relax}
994
+ {\endlist}
995
+ \newenvironment{quote}
996
+ {\list{}{\rightmargin\leftmargin}%
997
+ \item\relax}
998
+ {\endlist}
999
+ \newcommand\appendix{\par\small
1000
+ \setcounter{section}{0}%
1001
+ \setcounter{subsection}{0}%
1002
+ \renewcommand\thesection{\@Alph\c@section}}
1003
+ \setlength\arraycolsep{1.5\p@}
1004
+ \setlength\tabcolsep{6\p@}
1005
+ \setlength\arrayrulewidth{.4\p@}
1006
+ \setlength\doublerulesep{2\p@}
1007
+ \setlength\tabbingsep{\labelsep}
1008
+ \skip\@mpfootins = \skip\footins
1009
+ \setlength\fboxsep{3\p@}
1010
+ \setlength\fboxrule{.4\p@}
1011
+ \renewcommand\theequation{\@arabic\c@equation}
1012
+ \newcounter{figure}
1013
+ \renewcommand\thefigure{\@arabic\c@figure}
1014
+ \def\fps@figure{tbp}
1015
+ \def\ftype@figure{1}
1016
+ \def\ext@figure{lof}
1017
+ \def\fnum@figure{\figurename~\thefigure}
1018
+ \newenvironment{figure}
1019
+ {\@float{figure}}
1020
+ {\end@float}
1021
+ \newenvironment{figure*}
1022
+ {\@dblfloat{figure}}
1023
+ {\end@dblfloat}
1024
+ \newcounter{table}
1025
+ \renewcommand\thetable{\@arabic\c@table}
1026
+ \def\fps@table{tbp}
1027
+ \def\ftype@table{2}
1028
+ \def\ext@table{lot}
1029
+ \def\fnum@table{\tablename~\thetable}
1030
+ \newenvironment{table}
1031
+ {\@float{table}}
1032
+ {\end@float}
1033
+ \newenvironment{table*}
1034
+ {\@dblfloat{table}}
1035
+ {\end@dblfloat}
1036
+ %
1037
+ \def \@floatboxreset {%
1038
+ \reset@font
1039
+ \small
1040
+ \@setnobreak
1041
+ \@setminipage
1042
+ }
1043
+ %
1044
+ \newcommand{\tableheadseprule}{\noalign{\hrule height.375mm}}
1045
+ %
1046
+ \newlength\abovecaptionskip
1047
+ \newlength\belowcaptionskip
1048
+ \setlength\abovecaptionskip{10\p@}
1049
+ \setlength\belowcaptionskip{0\p@}
1050
+ \newcommand\leftlegendglue{}
1051
+
1052
+ \def\fig@type{figure}
1053
+
1054
+ \newdimen\figcapgap\figcapgap=3pt
1055
+ \newdimen\tabcapgap\tabcapgap=5.5pt
1056
+
1057
+ \@ifundefined{floatlegendstyle}{\def\floatlegendstyle{\bfseries}}{}
1058
+
1059
+ \long\def\@caption#1[#2]#3{\par\addcontentsline{\csname
1060
+ ext@#1\endcsname}{#1}{\protect\numberline{\csname
1061
+ the#1\endcsname}{\ignorespaces #2}}\begingroup
1062
+ \@parboxrestore
1063
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
1064
+ \endgroup}
1065
+
1066
+ \def\capstrut{\vrule\@width\z@\@height\topskip}
1067
+
1068
+ \@ifundefined{captionstyle}{\def\captionstyle{\normalfont\small}}{}
1069
+
1070
+ \long\def\@makecaption#1#2{%
1071
+ \captionstyle
1072
+ \ifx\@captype\fig@type
1073
+ \vskip\figcapgap
1074
+ \fi
1075
+ \setbox\@tempboxa\hbox{{\floatlegendstyle #1\floatcounterend}%
1076
+ \capstrut #2}%
1077
+ \ifdim \wd\@tempboxa >\hsize
1078
+ {\floatlegendstyle #1\floatcounterend}\capstrut #2\par
1079
+ \else
1080
+ \hbox to\hsize{\leftlegendglue\unhbox\@tempboxa\hfil}%
1081
+ \fi
1082
+ \ifx\@captype\fig@type\else
1083
+ \vskip\tabcapgap
1084
+ \fi}
1085
+
1086
+ \newdimen\figgap\figgap=1cc
1087
+ \long\def\@makesidecaption#1#2{%
1088
+ \parbox[b]{\@tempdimb}{\captionstyle{\floatlegendstyle
1089
+ #1\floatcounterend}#2}}
1090
+ \def\sidecaption#1\caption{%
1091
+ \setbox\@tempboxa=\hbox{#1\unskip}%
1092
+ \if@twocolumn
1093
+ \ifdim\hsize<\textwidth\else
1094
+ \ifdim\wd\@tempboxa<\columnwidth
1095
+ \typeout{Double column float fits into single column -
1096
+ ^^Jyou'd better switch the environment. }%
1097
+ \fi
1098
+ \fi
1099
+ \fi
1100
+ \@tempdimb=\hsize
1101
+ \advance\@tempdimb by-\figgap
1102
+ \advance\@tempdimb by-\wd\@tempboxa
1103
+ \ifdim\@tempdimb<3cm
1104
+ \typeout{\string\sidecaption: No sufficient room for the legend;
1105
+ using normal \string\caption. }%
1106
+ \unhbox\@tempboxa
1107
+ \let\@capcommand=\@caption
1108
+ \else
1109
+ \let\@capcommand=\@sidecaption
1110
+ \leavevmode
1111
+ \unhbox\@tempboxa
1112
+ \hfill
1113
+ \fi
1114
+ \refstepcounter\@captype
1115
+ \@dblarg{\@capcommand\@captype}}
1116
+
1117
+ \long\def\@sidecaption#1[#2]#3{\addcontentsline{\csname
1118
+ ext@#1\endcsname}{#1}{\protect\numberline{\csname
1119
+ the#1\endcsname}{\ignorespaces #2}}\begingroup
1120
+ \@parboxrestore
1121
+ \@makesidecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
1122
+ \endgroup}
1123
+
1124
+ % Define `acknowledgement' environment
1125
+ \def\acknowledgement{\par\addvspace{17pt}\small\rmfamily
1126
+ \trivlist\if!\ackname!\item[]\else
1127
+ \item[\hskip\labelsep
1128
+ {\bfseries\ackname}]\fi}
1129
+ \def\endacknowledgement{\endtrivlist\addvspace{6pt}}
1130
+ \newenvironment{acknowledgements}{\begin{acknowledgement}}
1131
+ {\end{acknowledgement}}
1132
+ % Define `noteadd' environment
1133
+ \def\noteadd{\par\addvspace{17pt}\small\rmfamily
1134
+ \trivlist\item[\hskip\labelsep
1135
+ {\itshape\noteaddname}]}
1136
+ \def\endnoteadd{\endtrivlist\addvspace{6pt}}
1137
+
1138
+ \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
1139
+ \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
1140
+ \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
1141
+ \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
1142
+ \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
1143
+ \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
1144
+ \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
1145
+ \DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
1146
+ \DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
1147
+ \newcommand\@pnumwidth{1.55em}
1148
+ \newcommand\@tocrmarg{2.55em}
1149
+ \newcommand\@dotsep{4.5}
1150
+ \setcounter{tocdepth}{1}
1151
+ \newcommand\tableofcontents{%
1152
+ \section*{\contentsname}%
1153
+ \@starttoc{toc}%
1154
+ \addtocontents{toc}{\begingroup\protect\small}%
1155
+ \AtEndDocument{\addtocontents{toc}{\endgroup}}%
1156
+ }
1157
+ \newcommand*\l@part[2]{%
1158
+ \ifnum \c@tocdepth >-2\relax
1159
+ \addpenalty\@secpenalty
1160
+ \addvspace{2.25em \@plus\p@}%
1161
+ \begingroup
1162
+ \setlength\@tempdima{3em}%
1163
+ \parindent \z@ \rightskip \@pnumwidth
1164
+ \parfillskip -\@pnumwidth
1165
+ {\leavevmode
1166
+ \large \bfseries #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par
1167
+ \nobreak
1168
+ \if@compatibility
1169
+ \global\@nobreaktrue
1170
+ \everypar{\global\@nobreakfalse\everypar{}}%
1171
+ \fi
1172
+ \endgroup
1173
+ \fi}
1174
+ \newcommand*\l@section{\@dottedtocline{1}{0pt}{1.5em}}
1175
+ \newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
1176
+ \newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
1177
+ \newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
1178
+ \newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
1179
+ \newcommand\listoffigures{%
1180
+ \section*{\listfigurename
1181
+ \@mkboth{\listfigurename}%
1182
+ {\listfigurename}}%
1183
+ \@starttoc{lof}%
1184
+ }
1185
+ \newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
1186
+ \newcommand\listoftables{%
1187
+ \section*{\listtablename
1188
+ \@mkboth{\listtablename}{\listtablename}}%
1189
+ \@starttoc{lot}%
1190
+ }
1191
+ \let\l@table\l@figure
1192
+ \newdimen\bibindent
1193
+ \setlength\bibindent{\parindent}
1194
+ \def\@biblabel#1{#1.}
1195
+ \def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw
1196
+ {\let\protect\noexpand
1197
+ \immediate
1198
+ \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
1199
+ \newenvironment{thebibliography}[1]
1200
+ {\section*{\refname
1201
+ \@mkboth{\refname}{\refname}}\small
1202
+ \list{\@biblabel{\@arabic\c@enumiv}}%
1203
+ {\settowidth\labelwidth{\@biblabel{#1}}%
1204
+ \leftmargin\labelwidth
1205
+ \advance\leftmargin\labelsep
1206
+ \@openbib@code
1207
+ \usecounter{enumiv}%
1208
+ \let\p@enumiv\@empty
1209
+ \renewcommand\theenumiv{\@arabic\c@enumiv}}%
1210
+ \sloppy\clubpenalty4000\widowpenalty4000%
1211
+ \sfcode`\.\@m}
1212
+ {\def\@noitemerr
1213
+ {\@latex@warning{Empty `thebibliography' environment}}%
1214
+ \endlist}
1215
+ %
1216
+ \newcount\@tempcntc
1217
+ \def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
1218
+ \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do
1219
+ {\@ifundefined
1220
+ {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries
1221
+ ?}\@warning
1222
+ {Citation `\@citeb' on page \thepage \space undefined}}%
1223
+ {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}%
1224
+ \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne
1225
+ \@citea\def\@citea{,\hskip0.1em\ignorespaces}\hbox{\csname b@\@citeb\endcsname}%
1226
+ \else
1227
+ \advance\@tempcntb\@ne
1228
+ \ifnum\@tempcntb=\@tempcntc
1229
+ \else\advance\@tempcntb\m@ne\@citeo
1230
+ \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}}
1231
+ \def\@citeo{\ifnum\@tempcnta>\@tempcntb\else
1232
+ \@citea\def\@citea{,\hskip0.1em\ignorespaces}%
1233
+ \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else
1234
+ {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else \def\@citea{--}\fi
1235
+ \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi}
1236
+ %
1237
+ \newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em}
1238
+ \let\@openbib@code\@empty
1239
+ \newenvironment{theindex}
1240
+ {\if@twocolumn
1241
+ \@restonecolfalse
1242
+ \else
1243
+ \@restonecoltrue
1244
+ \fi
1245
+ \columnseprule \z@
1246
+ \columnsep 35\p@
1247
+ \twocolumn[\section*{\indexname}]%
1248
+ \@mkboth{\indexname}{\indexname}%
1249
+ \thispagestyle{plain}\parindent\z@
1250
+ \parskip\z@ \@plus .3\p@\relax
1251
+ \let\item\@idxitem}
1252
+ {\if@restonecol\onecolumn\else\clearpage\fi}
1253
+ \newcommand\@idxitem{\par\hangindent 40\p@}
1254
+ \newcommand\subitem{\@idxitem \hspace*{20\p@}}
1255
+ \newcommand\subsubitem{\@idxitem \hspace*{30\p@}}
1256
+ \newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
1257
+
1258
+ \if@twocolumn
1259
+ \renewcommand\footnoterule{%
1260
+ \kern-3\p@
1261
+ \hrule\@width\columnwidth
1262
+ \kern2.6\p@}
1263
+ \else
1264
+ \renewcommand\footnoterule{%
1265
+ \kern-3\p@
1266
+ \hrule\@width.382\columnwidth
1267
+ \kern2.6\p@}
1268
+ \fi
1269
+ \newcommand\@makefntext[1]{%
1270
+ \noindent
1271
+ \hb@xt@\bibindent{\hss\@makefnmark\enspace}#1}
1272
+ %
1273
+ \def\trans@english{\switcht@albion}
1274
+ \def\trans@french{\switcht@francais}
1275
+ \def\trans@german{\switcht@deutsch}
1276
+ \newenvironment{translation}[1]{\if!#1!\else
1277
+ \@ifundefined{selectlanguage}{\csname trans@#1\endcsname}{\selectlanguage{#1}}%
1278
+ \fi}{}
1279
+ % languages
1280
+ % English section
1281
+ \def\switcht@albion{%\typeout{English spoken.}%
1282
+ \def\abstractname{Abstract}%
1283
+ \def\ackname{Acknowledgements}%
1284
+ \def\andname{and}%
1285
+ \def\lastandname{, and}%
1286
+ \def\appendixname{Appendix}%
1287
+ \def\chaptername{Chapter}%
1288
+ \def\claimname{Claim}%
1289
+ \def\conjecturename{Conjecture}%
1290
+ \def\contentsname{Contents}%
1291
+ \def\corollaryname{Corollary}%
1292
+ \def\definitionname{Definition}%
1293
+ \def\emailname{E-mail}%
1294
+ \def\examplename{Example}%
1295
+ \def\exercisename{Exercise}%
1296
+ \def\figurename{Fig.}%
1297
+ \def\keywordname{{\bfseries Keywords}}%
1298
+ \def\indexname{Index}%
1299
+ \def\lemmaname{Lemma}%
1300
+ \def\contriblistname{List of Contributors}%
1301
+ \def\listfigurename{List of Figures}%
1302
+ \def\listtablename{List of Tables}%
1303
+ \def\mailname{{\itshape Correspondence to\/}:}%
1304
+ \def\noteaddname{Note added in proof}%
1305
+ \def\notename{Note}%
1306
+ \def\partname{Part}%
1307
+ \def\problemname{Problem}%
1308
+ \def\proofname{Proof}%
1309
+ \def\propertyname{Property}%
1310
+ \def\questionname{Question}%
1311
+ \def\refname{References}%
1312
+ \def\remarkname{Remark}%
1313
+ \def\seename{see}%
1314
+ \def\solutionname{Solution}%
1315
+ \def\tablename{Table}%
1316
+ \def\theoremname{Theorem}%
1317
+ }\switcht@albion % make English default
1318
+ %
1319
+ % French section
1320
+ \def\switcht@francais{\svlanginfo
1321
+ %\typeout{On parle francais.}%
1322
+ \def\abstractname{R\'esum\'e\runinend}%
1323
+ \def\ackname{Remerciements\runinend}%
1324
+ \def\andname{et}%
1325
+ \def\lastandname{ et}%
1326
+ \def\appendixname{Appendice}%
1327
+ \def\chaptername{Chapitre}%
1328
+ \def\claimname{Pr\'etention}%
1329
+ \def\conjecturename{Hypoth\`ese}%
1330
+ \def\contentsname{Table des mati\`eres}%
1331
+ \def\corollaryname{Corollaire}%
1332
+ \def\definitionname{D\'efinition}%
1333
+ \def\emailname{E-mail}%
1334
+ \def\examplename{Exemple}%
1335
+ \def\exercisename{Exercice}%
1336
+ \def\figurename{Fig.}%
1337
+ \def\keywordname{{\bfseries Mots-cl\'e\runinend}}%
1338
+ \def\indexname{Index}%
1339
+ \def\lemmaname{Lemme}%
1340
+ \def\contriblistname{Liste des contributeurs}%
1341
+ \def\listfigurename{Liste des figures}%
1342
+ \def\listtablename{Liste des tables}%
1343
+ \def\mailname{{\itshape Correspondence to\/}:}%
1344
+ \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}%
1345
+ \def\notename{Remarque}%
1346
+ \def\partname{Partie}%
1347
+ \def\problemname{Probl\`eme}%
1348
+ \def\proofname{Preuve}%
1349
+ \def\propertyname{Caract\'eristique}%
1350
+ %\def\propositionname{Proposition}%
1351
+ \def\questionname{Question}%
1352
+ \def\refname{Bibliographie}%
1353
+ \def\remarkname{Remarque}%
1354
+ \def\seename{voyez}%
1355
+ \def\solutionname{Solution}%
1356
+ %\def\subclassname{{\it Subject Classifications\/}:}%
1357
+ \def\tablename{Tableau}%
1358
+ \def\theoremname{Th\'eor\`eme}%
1359
+ }
1360
+ %
1361
+ % German section
1362
+ \def\switcht@deutsch{\svlanginfo
1363
+ %\typeout{Man spricht deutsch.}%
1364
+ \def\abstractname{Zusammenfassung\runinend}%
1365
+ \def\ackname{Danksagung\runinend}%
1366
+ \def\andname{und}%
1367
+ \def\lastandname{ und}%
1368
+ \def\appendixname{Anhang}%
1369
+ \def\chaptername{Kapitel}%
1370
+ \def\claimname{Behauptung}%
1371
+ \def\conjecturename{Hypothese}%
1372
+ \def\contentsname{Inhaltsverzeichnis}%
1373
+ \def\corollaryname{Korollar}%
1374
+ %\def\definitionname{Definition}%
1375
+ \def\emailname{E-Mail}%
1376
+ \def\examplename{Beispiel}%
1377
+ \def\exercisename{\"Ubung}%
1378
+ \def\figurename{Abb.}%
1379
+ \def\keywordname{{\bfseries Schl\"usselw\"orter\runinend}}%
1380
+ \def\indexname{Index}%
1381
+ %\def\lemmaname{Lemma}%
1382
+ \def\contriblistname{Mitarbeiter}%
1383
+ \def\listfigurename{Abbildungsverzeichnis}%
1384
+ \def\listtablename{Tabellenverzeichnis}%
1385
+ \def\mailname{{\itshape Correspondence to\/}:}%
1386
+ \def\noteaddname{Nachtrag}%
1387
+ \def\notename{Anmerkung}%
1388
+ \def\partname{Teil}%
1389
+ %\def\problemname{Problem}%
1390
+ \def\proofname{Beweis}%
1391
+ \def\propertyname{Eigenschaft}%
1392
+ %\def\propositionname{Proposition}%
1393
+ \def\questionname{Frage}%
1394
+ \def\refname{Literatur}%
1395
+ \def\remarkname{Anmerkung}%
1396
+ \def\seename{siehe}%
1397
+ \def\solutionname{L\"osung}%
1398
+ %\def\subclassname{{\it Subject Classifications\/}:}%
1399
+ \def\tablename{Tabelle}%
1400
+ %\def\theoremname{Theorem}%
1401
+ }
1402
+ \newcommand\today{}
1403
+ \edef\today{\ifcase\month\or
1404
+ January\or February\or March\or April\or May\or June\or
1405
+ July\or August\or September\or October\or November\or December\fi
1406
+ \space\number\day, \number\year}
1407
+ \setlength\columnsep{1.5cc}
1408
+ \setlength\columnseprule{0\p@}
1409
+ %
1410
+ \frenchspacing
1411
+ \clubpenalty=10000
1412
+ \widowpenalty=10000
1413
+ \def\thisbottomragged{\def\@textbottom{\vskip\z@ plus.0001fil
1414
+ \global\let\@textbottom\relax}}
1415
+ \pagestyle{headings}
1416
+ \pagenumbering{arabic}
1417
+ \if@twocolumn
1418
+ \twocolumn
1419
+ \fi
1420
+ %\if@avier
1421
+ % \onecolumn
1422
+ % \setlength{\textwidth}{156mm}
1423
+ % \setlength{\textheight}{226mm}
1424
+ %\fi
1425
+ \if@referee
1426
+ \makereferee
1427
+ \fi
1428
+ \flushbottom
1429
+ \endinput
1430
+ %%
1431
+ %% End of file `svjour3.cls'.