From 16f2f0f9c71cdbad9f8150565d4647bea5aee113 Mon Sep 17 00:00:00 2001 From: dh00601 <dh00601@surrey.ac.uk> Date: Fri, 3 Jun 2022 14:49:25 +0100 Subject: [PATCH] rebuilt docs --- .../doctrees/binary_c_parameters.doctree | Bin 973827 -> 982218 bytes .../doctrees/custom_logging_functions.doctree | Bin 54168 -> 54070 bytes docs/build/doctrees/dicts.doctree | Bin 105216 -> 105213 bytes docs/build/doctrees/ensemble.doctree | Bin 47650 -> 47968 bytes docs/build/doctrees/environment.pickle | Bin 899153 -> 977208 bytes docs/build/doctrees/example_notebooks.doctree | Bin 4837 -> 4862 bytes .../doctrees/examples/notebook_BHBH.doctree | Bin 2182371 -> 3203576 bytes .../doctrees/examples/notebook_HRD.doctree | Bin 131472 -> 159313 bytes .../notebook_api_functionality.doctree | Bin 47518 -> 58701 bytes ...notebook_common_envelope_evolution.doctree | Bin 106899 -> 131962 bytes .../examples/notebook_custom_logging.doctree | Bin 46503 -> 50625 bytes .../examples/notebook_ensembles.doctree | Bin 3016 -> 3041 bytes .../examples/notebook_extra_features.doctree | Bin 21190 -> 22641 bytes .../notebook_individual_systems.doctree | Bin 57289 -> 66454 bytes ...ebook_luminosity_function_binaries.doctree | Bin 144311 -> 184392 bytes ...otebook_luminosity_function_single.doctree | Bin 63435 -> 65475 bytes .../notebook_massive_remnants.doctree | Bin 76918 -> 83665 bytes .../examples/notebook_population.doctree | Bin 138736 -> 169734 bytes .../examples/notebook_solar_system.doctree | Bin 30278 -> 33021 bytes .../examples/old/basic_example.doctree | Bin 10455 -> 10820 bytes .../old/workshop_example_notebook.doctree | Bin 65409 -> 79443 bytes docs/build/doctrees/functions.doctree | Bin 170333 -> 170758 bytes docs/build/doctrees/grid.doctree | Bin 79368 -> 80297 bytes .../grid_options_descriptions.doctree | Bin 107691 -> 107716 bytes docs/build/doctrees/index.doctree | Bin 31608 -> 34795 bytes docs/build/doctrees/modules.doctree | Bin 3841 -> 3866 bytes docs/build/doctrees/plot_functions.doctree | Bin 61902 -> 61861 bytes .../population_extensions/HPC.doctree | Bin 72786 -> 73333 bytes .../Moe_di_Stefano_2017.doctree | Bin 20514 -> 20769 bytes .../population_extensions/analytics.doctree | Bin 15192 -> 15413 bytes .../population_extensions/cache.doctree | Bin 26403 -> 26718 bytes .../population_extensions/condor.doctree | Bin 35327 -> 35689 bytes .../population_extensions/dataIO.doctree | Bin 85047 -> 85131 bytes .../distribution_functions.doctree | Bin 292511 -> 291956 bytes .../grid_logging.doctree | Bin 15451 -> 15644 bytes .../grid_options_defaults.doctree | Bin 35859 -> 36077 bytes .../population_extensions/gridcode.doctree | Bin 54075 -> 53850 bytes .../population_extensions/metadata.doctree | Bin 11343 -> 11508 bytes .../population_extensions/slurm.doctree | Bin 34966 -> 35328 bytes .../spacing_functions.doctree | Bin 71987 -> 71447 bytes .../version_info.doctree | Bin 21832 -> 21985 bytes docs/build/doctrees/readme_link.doctree | Bin 28148 -> 31482 bytes .../build/doctrees/run_system_wrapper.doctree | Bin 14471 -> 14566 bytes docs/build/doctrees/stellar_types.doctree | Bin 4517 -> 4584 bytes docs/build/doctrees/useful_funcs.doctree | Bin 76320 -> 76023 bytes docs/build/html/.buildinfo | 2 +- .../utils/custom_logging_functions.html | 5 +- .../_modules/binarycpython/utils/dicts.html | 5 +- .../binarycpython/utils/ensemble.html | 5 +- .../binarycpython/utils/functions.html | 5 +- .../_modules/binarycpython/utils/grid.html | 7 +- .../binarycpython/utils/plot_functions.html | 5 +- .../utils/population_extensions/HPC.html | 5 +- .../Moe_di_Stefano_2017.html | 5 +- .../population_extensions/analytics.html | 5 +- .../utils/population_extensions/cache.html | 5 +- .../utils/population_extensions/condor.html | 5 +- .../utils/population_extensions/dataIO.html | 5 +- .../distribution_functions.html | 5 +- .../population_extensions/grid_logging.html | 5 +- .../grid_options_defaults.html | 5 +- .../utils/population_extensions/gridcode.html | 5 +- .../utils/population_extensions/metadata.html | 5 +- .../utils/population_extensions/slurm.html | 5 +- .../spacing_functions.html | 5 +- .../population_extensions/version_info.html | 5 +- .../utils/run_system_wrapper.html | 5 +- .../binarycpython/utils/useful_funcs.html | 5 +- docs/build/html/_modules/index.html | 5 +- .../html/_sources/binary_c_parameters.rst.txt | 32 +- .../_sphinx_javascript_frameworks_compat.js | 134 +++ docs/build/html/_static/basic.css | 43 +- docs/build/html/_static/doctools.js | 449 +++++----- .../html/_static/documentation_options.js | 6 +- .../{jquery-3.5.1.js => jquery-3.6.0.js} | 227 ++--- docs/build/html/_static/jquery.js | 4 +- docs/build/html/_static/language_data.js | 102 +-- docs/build/html/_static/pygments.css | 34 +- docs/build/html/_static/searchtools.js | 790 +++++++++--------- docs/build/html/binary_c_parameters.html | 60 +- docs/build/html/custom_logging_functions.html | 7 +- docs/build/html/dicts.html | 7 +- docs/build/html/ensemble.html | 11 +- docs/build/html/example_notebooks.html | 7 +- docs/build/html/examples/notebook_BHBH.html | 48 +- docs/build/html/examples/notebook_HRD.html | 76 +- .../examples/notebook_api_functionality.html | 41 +- .../notebook_common_envelope_evolution.html | 49 +- .../examples/notebook_custom_logging.html | 53 +- .../html/examples/notebook_ensembles.html | 12 +- .../examples/notebook_extra_features.html | 40 +- .../examples/notebook_individual_systems.html | 56 +- ...notebook_luminosity_function_binaries.html | 58 +- .../notebook_luminosity_function_single.html | 83 +- .../examples/notebook_massive_remnants.html | 83 +- .../html/examples/notebook_population.html | 72 +- .../html/examples/notebook_solar_system.html | 28 +- .../html/examples/old/basic_example.html | 23 +- .../old/workshop_example_notebook.html | 63 +- docs/build/html/functions.html | 7 +- docs/build/html/genindex.html | 5 +- docs/build/html/grid.html | 10 +- .../build/html/grid_options_descriptions.html | 13 +- docs/build/html/index.html | 92 +- docs/build/html/modules.html | 7 +- docs/build/html/objects.inv | Bin 11532 -> 11630 bytes docs/build/html/plot_functions.html | 7 +- .../build/html/population_extensions/HPC.html | 9 +- .../Moe_di_Stefano_2017.html | 7 +- .../html/population_extensions/analytics.html | 7 +- .../html/population_extensions/cache.html | 9 +- .../html/population_extensions/condor.html | 7 +- .../html/population_extensions/dataIO.html | 7 +- .../distribution_functions.html | 9 +- .../population_extensions/grid_logging.html | 7 +- .../grid_options_defaults.html | 7 +- .../html/population_extensions/gridcode.html | 7 +- .../html/population_extensions/metadata.html | 7 +- .../html/population_extensions/slurm.html | 7 +- .../spacing_functions.html | 7 +- .../population_extensions/version_info.html | 7 +- docs/build/html/py-modindex.html | 5 +- docs/build/html/readme_link.html | 102 ++- docs/build/html/run_system_wrapper.html | 7 +- docs/build/html/search.html | 5 +- docs/build/html/searchindex.js | 2 +- docs/build/html/stellar_types.html | 7 +- docs/build/html/useful_funcs.html | 7 +- docs/source/_templates/footer.html | 4 +- docs/source/binary_c_parameters.rst | 32 +- 130 files changed, 1642 insertions(+), 1591 deletions(-) create mode 100644 docs/build/html/_static/_sphinx_javascript_frameworks_compat.js rename docs/build/html/_static/{jquery-3.5.1.js => jquery-3.6.0.js} (98%) diff --git a/docs/build/doctrees/binary_c_parameters.doctree b/docs/build/doctrees/binary_c_parameters.doctree index be439b3c9d6fef207164cfce0c03cbdd28c00f48..6045f6b3e84a07a8d693fa45567f2f4fca14a6e8 100644 GIT binary patch delta 79688 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 E7Y;b=i~s-t delta 77151 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%0DYPj<#r$bX^^n2_ z$aGyX3d+)yE@0uGF7dadh$O&|@`RUg)8OKfxk-TEpB5L7toPJY*b{#N6ongF6rD+{ zR#*NO1lZ*@)F_==7++!X3r+?_!>CeUtZO|@r~XAD$$>tQ0oldg%2Zv_|C8vSrLfSa zUdwg*T~fuUbRRV<J<6n3p*^X=<NHXQV~$Lt7IsVGt^$u-0H((saD?T5nbjt&)mkbO zW5lRyt-6t}7%7u5TY5LMnuj$L=?5Ak@RJHrGK|Jm0;k%ua4dUh7WFJ;O{W%DW>KFk z>TL3-!oisG+0=RL2Z`PlyOiX3D!t@LUuIMbV{iGCjL09+Qsv16N@6i+m8XJOPf{hV zMwMT<us)~y1-rOb_^PvOsdO$pi+Xk~zof_SWKve<4$hhSDMLw9r4PB(y%e7r*~D`5 zY<ezYQOzs>cX%r6O)atl9D2}MDK4K{NI69rv)j1;$c~`)`P7t3v<UQ{awb;66E`5l z97lHs&OVIN6oKuEM*(h=AV-ha&Xz^tAVLGFux`+i50!%5il`M7(sBXssu=aOf-U(R zmfs~<S(<#$=a$Lq=7GuU(#Sl3E*h|mc>!HCV844Rs4Ael`^1%~_FgsWU*sm`oQ00q zX<R%yFgzv<SjE<;h$3n#3N4~$RgO#DN1ZIHTP*rS{mbH!r(g})l=Y4QR`HOoK}rea z!BN^?07OKWvR*+1iZRsZBGB(jtd?gURF`E(JYgmBVRK2fGOM>vWI=5zS_-ARw$xW+ zog)kC(1Y^oV_IDp*sqsHtB1Y#0#prZT?C+nGhI_u+8t9sR@nPu2<zV~q&ZD4jxbEr zOe%re>r!6N6KtJN3k-mU)6;TlS(YHsvP0{rLwOuIIwaxlcfxHT;U)$l375Vrg`%*Z z7MB7b(KlOM+A=RCD<gucm9dR`sf=Y@mUX@GOD^q=J@Gbx&uoKLRB`INbXBz?tGQkn zwkoZwsup2Yg|0xQ^$x=}MN`G^nW|M=)k&|eW}t2()N)j~JRrQQrnY5mMKq-nT`q6i z`EmsWrY?&%X^0&-u##=)G?k^HX;5WY+Lc-hPvpRGbr$@jKwhGjT7ex9$l0Ftw5FC? z5MN=2olfYjD5|!)n1)sbnq+m<IqaIJSZi4+|EvbF_BGHQ`MNsny_2R@2W0GoYDxKO zAZSlryi|;**6O2LyAt}!6LqUkQODN<>dG60y>YM}N|f?KSD?%WhrQc`(aLq$BMf^d zp>_4uZWLDwsejc#9gk<MdFt4rnW?sI>a(?N)NAShbs4%>2SMo3;1NOon8tuFa1xzA zrhy3?0o|2cJ5T5U@zLOC8Uy;S4Ya*gq8O}$)M=s?RJKcHTb$TC(19jsc+S)VrUgya zpDDIJFm0h;^=-I08`yB4HV{F%8zM;b21@I=rFct2go_&~Qf(Aj>Pn%rC)^IwZQ#V; z_pIzjZsYJ$8!fMQv89@eiZ{lw`b#a<+^m#TTO7fkG^AaFwOXkS6-wU(_3>(J^_fCL zn*d*N+SJ5`-mxj5y=sW^QJ|R!>d*{9qM>}(3_+ryoam|kTTj$oIclp=FZ)KV#I|mv z)>Uv2bR*?zs}^M&g|5IlC)DpzA4kjjn1n93Q*+b6YHC^P-VzYv+Nq=184*ocN3pHY zaW@b6deMT`7IgN^4m7?7_>aY8_SbeX!SJ&KO1LZ4UV?$U-T9ukJ4NVmN3|O60i5$S zdXYtOLxfrmAFd@(Xp_UtKZH?2yp6qj7xjM<`?GHV?@DKNA+>G`%NC-^ZEd4hY-f3F zn2^JADeOa!yQ*F3RC}PG*$s4~JHV&7g!+0~|A$Yk-?6(|39FZ!09&&O@64)2@g})o z@Q0H@|FHPdBQuh}H=5Gv->L(sL?>Wx@SVDu{^$hkf6(ntHum|QE$k14Duiw6g0PP- zRMqK<xcurHoWdy66YN}x#d!kn4+l{V&zK5l__(K9g|9+(gX!~A=U!?_e7LSa)Mkh2 z2jgnHQ<$&@@<sGVcO?9@w|W&9eTalz!b7A-O#7WAKuNy`wJ56ky@cPAE`ARMqMI_p zQ^7D#<b!23#R1PQm~7*i+49X)s-M~j%U}Y>QYYx)+=1sOv%lJ#iuFR0@Z!n&pLmwG z9Xe?3tUn85?fjt7fFmGRd)XPVzPE+{<PX5Vl=L4FA{zTyKOzK;Jq~0<4u;`f>5lS* zKU~7MuR#ouIT*({__<;hy@fj+HP05S?;c4pgVfCQXpqWJgzzK+xe)e=$N4!-UR@#F z{FWi$CaSU85C5t?L|uYARCzQU207Hv<}<9n#plZb;FF7{3_ytNsSiXnF{d<G5^|+B z&Xds3l8|`N4W%hS7k^S~vEKz3wrC4()WDD(PnmQ03!LzO38Qn9?N+MANVTMd|H~kB z&}z}+rf7cfYYCZ6RYt1yDAQnIUO){8+ia49G=BjN!#A%KCWKMk(y$J+Yp6wyeYRD! z2reWOJ*oX7scmbDL5QF>;AgcdRwWaLp`v6bV~pB^WtaN0Y;|M|(cUrYDatb($(|jn zzGCG(#U{%tvTB4R!CDEafJ@mFi$vQ|775xu3J%I8HPw>>VbWp@#v=lLtqH0@^@f@L z_}E%e%0j_I{T0Z0&wg}9niH>PqGl7+eC$^Vceaz&^x)A6>L7*A{R|*6q_(4Hlhm_p z+g3VC>YoZ0!iJ%lTsB2j1LwKcc6mCS<{Hv<fXL~|YIM?V|0=B6E@RCeUv@aNmC{U6 zJMgoncHEQ?-Epl(_|X*j%bQa$Rvt74#b7qAA7d2*+&ZC5fFlUo#xFj@1G0~2pw!PM z-*^a!egRFx5I?7oQnFHt>1sB7xRl?;ah9hUr^}Ln`y)h2$Vf|O;O4W485qpfluD~o z+zhoVP7w>Gm9{yG!yGC+Q{961lQ>GXEdqtbo6*(H=n2%Cr7lw1O3amL`vj}O#r}Rl zYKSB?L<j_2nt!#*#>uHx*-++qBADk%YmTI~ey%zamum}fdu(te<lVKie^uM!Xt7|m z)5&T9)tIMV!R_tn?zEe)8VWs{fqdCXIcD0`^XW{hWGmZwwL@6cY=p@v?AaD%mO%vi zUFsKkLS7I?0kX#*H5RG$Smo`)ZI<6|Sv5ViUan%}*dmNZ$_vebG6?&`Z7vC;*i<-q zB;4k##p>@=?pJX5X^E;SthGd1hDyz|S>&B>xy&95z^@D~U0`!4z0l?`O>%Ihw9JzO z(iii6qVWX>m7-T*?y=u;Gy=P}%P#VEdbk`jf7_+nElvU}f^jQUY#N@k2(XW?RC_4w zl7zj5S}X=QarUM95`Yuumw#Cb+*@ehQUpCnXSSkdzavOowVLWr*+X_Fu*wtn3XD}N z;AWdbYvBgV()hJ-gQaN4TD3JRCDj!F(_!c})FG&zr;W=2bKp8PL}5*ZT)-u_)|y(K zxY9;kVHFS;r@pIzSj?;@Ta6%b@VfVEI6s$ybpo%uXSs%AH>p#UtpX|A_$L{g)o%E5 z#({NCs2fm`-e3clC=&zbsoJD1>QEZD7O8IAq9#z*AONkSra=G_(*PCLS%qTodJ(c= zJwimm{$c|niH>}d9m2S-q&9mR7XZqv#meZwy{d_ePB2dH_b19ji5(P^J#h>@_!F&a zQK_%c4u_Su(wKcJ&KK`M-}me$w4DQJ&JJ}TW!j~VVf8(u;O-2*1~PPu#bNwba41B3 zw}OM{+ce#V5cF+uUkmRGI}`lV)7o2kKYkEfzk?!kCyoh26ft3xcOSfV)_rPLwnjqv z!>Md1M}L(z{%HeGM|=0FUvu<1_`ljDO4s3-XH0Cl<s`n|DM_%0o>IGc?>;N7$PikM zdhbRTpFd?u$99933&|eOeA$T!k4;!pMP&`AnTJs)3-1&I@cg*#1Y_F#J4JDd+UdxX zeYmNL??xBJY1=+b>s&}sXUP7|vAv)g<av~i|2kdvZ?-0=n^-NO487z5`|NVob-zWg zlO6Wx0K&uoK+G8rK8WJR=Zx71A>nsHIp|3X0EHhFTM!zbgdbfcXtCux>FP;LxZ>OW z4&IS+@;V&+;got%p*x3F?BqD3-eL6R5tN;!c(B|?y#1(!__kExcd9sw^}Svp9jL-_ z;QrwvCRjsh{6*e>cFHAq;yx^@Ng+CO2|hl3#_-ZCdY8zKJhc0g%Fj#-UAcBSvg0^4 zy{!ICzn_F7`r(S2T%iJ|fI1g-IAsrSE1XfqiWOEexCVsHK5y5C0vBwkgFV%s@~jZY zDf*f^oc%8Fu|>P+-Zd<gV233qyTA$XOmN_JH8)Q8UIM}!H`Ij+CBF=W3#j^K+peXq zNV}r1%T)wiD$ZGUZS)t!c-8&mFO+eY(0Nazo(ZFbDIxjzYn&>*y9);-Ec^LxVcG0- z>#kajW#28FS(e=n%U+}(?x~k(-8JC;<vwpf%LzH0f$o0YM!w{RRU%r6uz*X)Wea)3 z+ZOVbw}IRxbj1_-MQe_!%VSi`g#s`8bvHeDjQPA@Wn#0Pfd2}U_v?z=<i`G^UZ6F1 zfqlUfwJu7<J=lCUb+`xQVu7IHedIjfV#6+aYP)7ZZ~M@KzWt%l@bV!v{P;q}Y5Ygf zQ0k>RpLRYHL2n+Z|5+mjC@~xt`^P4}QY+Jj$B35dH3q4f|G~hgMXtmt`TNiq@V!>+ zQpYE7A?a!5Ys{o}dV{5%CU9QUARPV7w)w7S(&m)qIpT|@KH&pTJcr_&NkTKS2_NH_ zSp4N{OMJDs_A9L9i-QF{-m4ARmOT{L1dlE6p%3pdjlN-zaCgByj#6+xOq^U<h_l=Z zU3{e$Uvo?QSz)Jzu-_&8K>F<@Z>&P`R7k-i9(e=sq6z)-EkKGUG_Y5cI+uz^o)zvs zWlF3KK(`?>OpC!YGshBZC0P-nAW(3x1Moj#RP`wK-Q#AwG&D9;8&3z`Bgvy-T1VO) zruAm^L^K?0?*GBE=)~VOG1R0UOe>6lrA)KXRu0i5TACZ8752N5dM2=@b8Xf6C#=Vp z6GN=SXz_Cz;r&uoYk(dG$Ie#or4gEz6JNo8r4#%MdZB4|XjWn*yTZ^$(gH&xmf$J- zQW`r`m;}!rNOQO}zQT~HCF@M#KByF1r@r)oiA(CWXBB)Q2NB}ZO;LU`2DGNE&_3Zi zV(9mP_7#qA1(Ilm0{QkiGU07luwfDn8^!8tTJhjNNi`p%l^Tqjk8Wu&uIR;H)d7k3 zVljN;O8hP*@9D9D*}Jd^%{npPIs(XDLLWSlzqLknskC0~4}mv)84!wY%jVQt9=Z_F zRN9hS%cm@pX)kdSP^du??JG*1UfV>avS?-L#{j^BNICx7MtYP?tHJ-Zh5ShX$`zYY znH1Ux!u|Oc!CTTwF0qhs`BKIH6p$0A>J#r5rNSkbh{g}mJg(>1o)c&NMD7eIifbSb zWYU_VgAtcSiwV!Y-(ovHQp?HNnlvdAx18se3FJiZC&Q-DAj_=ba+{i|wPL{yS+uH* zRrVA_6U~Xmr?rT&HbM;JZ!-h3Ra~UBAcMt*)Qm8VD=D8Rmrw$iAJNy~;Ms5cscSAR zKfb~m^POO|;LThhO4%ck&VW4H%V3W@T4IIm64C*ev>r~|r?R0mFpE}<!uWb{qU<P# z^Qm}t02V#s<JnPz(5$i#lFWSSk^^CHqO=2aF9*u65(B5h(jDMv5VK!S?LT`<HBJEA z4rgIPNnDEByMUIQs+UV#nu_NF&Ta*?N;D^zRxhX()ZQ^Fn_DXuEL%kTIx%Z0^afYt z)v7VdQCb^LyQ2}~PHAlx<<GB)y_~c1Yk5h$<0USSEnW`q4Rx)EJpcT>FO~`wfc&m9 zS~+$>=%TH$S_Hi<fJ|>%R+~iOMZi6GIc)-a^-1{M5?VxjsnI>@+me?1J6ci`mtk3J zLvf{`HoP(BF^-qgs?dZXnz#$(c`UGq=V7N;)atP22ZcLmOqnWarLjLCp(NZvgM*Ip zl`fp(uB-fZo<zZYl{8#WJhBXQU#S8MpQ@sr!Na9I8kWyXm(|h>P>;(>P&jVlr7=Ue z>}rlE4?Q`{CrU-v$_oW)Dj@6h?^pyCt)Vre$rTWOq=wd-{;7a$Z$P;!{x|c|$;`vu zn||ulO3O;`Yic#=enmw6sh0MG@<c!&t%erCGKb4^#Zis5w)DOZ?DFV)IEAB?QBEe* z(QsbSPcb#M^1&xnwE_wasE6w{2UmwCalPir>acL-7TP$PPy@duZK*A%=$bN*XVipU zr!>?CQuSI0tJg^DF{w5RO!~%Jh(e9)X#6xt%vV}F8qid$j3+AL!BRBURtLlCYF{Pd z?R%$&(116J1dFbex)Ic*XszKEsz%Urv9*ScIhmROX!KXw6eYO7sTD7(72-8*uZ^Yi ztq>(!2Q8jPv<6asCVgRsjv6kI`4Y)*p)&onZ)r?N_&$+*md@Ia;J&XdHTl{@P492D zpXp9}sEPd!3fFaj8XTHWLQvBS7gTE%=u%_&(+r)UaMQmE!+216skLxVZF}%WXG?3f zZ=rQWA8j-x{tjAe_eJ;P83np&g(z<?EkcP6X6dIDMF+13h)wFRZN{YnJ*~LS`e=E@ zr8&=rAVZV)Mg0Cl;b6udr80dnDqa?+nXF<s9XyD$xygqiGn)2?%!gsx{b1dJT5m-< zh+Km#2XW(*c$k6bUYXl{-4H+&yYM!T)M_(-f~XNX#g5WSV(lg{0&SZw!BHcs(T-8t zE-E(^$?X`eoyMTVORT!|w>yVHOth30g;>C)t%lW*tQ~GQmHrWMy)G#{tKiX$RFj2Y z9&(thrJ>p5;7EQJ9N35iIy4Iv0>34q(&N!wj*vKqIqB36t{Sg3Q^*(vpfx6FuV~~n z6i@u?Ee1NAS-=&ePI!FG=)p96v{lV_2r1kjoA5I#FqYMm%ZDu5kAX)1kOkk|%nj+% zQ`eJJZF)@F7+hc&Nm`5+dd!+Yj4Vb8bG1x#VKNFq=rQik10e|fq$#W)P7P~@OIOuv ziiS?_-{VkHaqavR?GR^mo@Mcj*gz7Bh?j&|tdPPz2LmU9kl4MGbP~AmWii%V1o~ZR zH}d3C-<?4XW@+Vc+=x?SgOBkHYJjh3DhE2rGzqq!t#yDGnyeKIM*ga4N-)*0T1th@ zmK0p#O(li6sgeS<nGTmZkfu)u0pZA^W`KaWBITTCdbmj4ql7iF+Q!Ye<UeE~ib*1h zT&BgSpB=Zd1xH~PqVe3YP|M3cJ1&U4a}sG8%=?@6lR{Hwfk?(BT23XHVu@Bzp)9kt z!tC8K+&itMjW0R67agCYiNQWA=BcPPb+4y&qF3`QB2;(2R4{5j9<kZGOq)T87a(l* za%~^`UZ~*e$1l+S^KL{-ixzM4Go(O0&$tqPvE@R<Ubs@L#HNbaG;k@};yk~hEiTp? zrx)w}q5Vdy7okBeyh^*of<h<=p|T3D3(=C%>@`|-%Crnxa;$~jzh7oGz3wT{Hnepu zGJYzI`MsHerXJ8$Djn2vg-4!1flk*UBXtXEG5&P?uk`Ig+GS{$w_U~>9cg6{W1xa3 zgo}!%X6v*l7JWkWY;f_!8l-r6o%SmwTdn!yyJpI))<Ar*q*03=uG4Chxj}2eYKRE_ zyiVO+gtKB@u!}na!^#u#<(&?mvR!HWb`5)@`P*{k*UGfmPba9=8cZkt<Qb)#EL<)^ zon<bF+uE-LH6OLujDFP06BL;jbJ!>7;%2Qp`~3vXNr!`$PQ2ez+bvoG<yr?@f45b8 z#P)lNeMk9Tqfs8T9%46lB~Hn1dWwC|8FiuJ8zIKWSuD{>k*MF9Xb)T$x+ifxs=Ent zLqqhmEK<t3!1eTG`>kXvP9$XBiC(~>%}_Icr<RQ(x1goXuuGdvMYrO&$GfyC^wl=} zRx5?phjMMlZ(?h6+)19<v}}hK5!|+2ON(7C`?RW*c?SfF%wmyj<G%v@sQI-WT0Ysf zJv@Rk+-E=9?hZR4`*Oclh+REN2~i=1ChbE|#4Z%{l6+gzAzXPv(Fyo%@d5Nc*6xCM zql4O9_Wl#`BfBBqWqslS)OZiVb8bi+!_uDmS6z_p)o^BocRGP0YClk1KB9fYzC0yL zZVT#tRI9>ToZ@5xO;0%r`CxQ6`Ha7fV+w8Fk0cTu(~hw|o-u}mW2dY-lF}c99N)9Z zCJQ+nrHDC%I)R$miVht@pvc-aBGB(jc9>_D4VGDU`G%I1_MXJh>hh`hI;~=`Bemiw zxSsP8&lx9!;do;Hlo?4!-fLlW_mno9DjY@PyH9IZX!}uk<umm1C~%3Lfcp|`(8*7W zihPEQ<2LAp$8FI0MWEl6(kM^R!>w{AUPU_s4Aak}Ry8|~XKGjsrMaM$VU47^`llVH z|2a74f>w}Gl2cl-V8mr@LkR031OqO?F|w^0b=qn!f05AZ)5SA3^j>Fe=*vCR8b_tC zYu{7+Ify;Dt~F!_J;la*GW_}9Y-vt6&qG76oA8AH2o1RA3uSZm1<ee;x`{3voxB7# z-EM2&DoG>G*nB^(b3ePI^<~-5pkU?{YvieOLg<q<avn$cP@Q7N;T+V-yIO!noDua9 zNoAk|i<CH4o-2rEv1e%DVx<JWc6bEkzovC%t<Ug-Q^@(N%MxW}&1G=ZbwnTaK&!y| z%jiFziI0oP!0_R<To4&~L(7gjwDN|QPaJ+c_)x3Q=AEH9^n$`HXw?4^x_&(#VTxe3 zh>B~KF5W~=Jba{GX4{4C@XfaHtbepIH0d90D%)%c2h-ov$}7r@;FtH&%RuBV541b@ zG=7LyIvtI9i25tu2)v}Coyzn=i>1g%u==zYS}t7q81n?3|0|DR^;9pl^>p|#g7jC~ z1>BVc4_4weMjeTt;y3PpgFT+|nWa{5;r`M*NAbxKNRL?@p<?B8LG{dYBqw$Wi{w_n z!>FUx3&bz@UMoO5UqI)^_u5)Yc!}SZe$Y<w14U1?Lct8LwX%#_>`7dSetU~B?w}{V z(>j7er*~RDF_sW2>m}05)2nw7Ii3iQoOYo(A^2hGdyGnsgz7cvU}7Dc?mlR^+aXln zvSyGzgwd})y*O13(MwS}RZm5;Lv*fJPlQbzV(<XPfsfB1#y|ePG@d*}l=hllh!Q2% z>rs_}J{FTK_$_G?{U@AG!EeI7Uk}4?Vt{~qtits2!M@@8NAEdX<;U>$VmDGAzh0M( zI4=s?(DSs)ua{**&-0?<A9UU>*rKDbmWl`T8I(`65@T~c#e#Bx5~o|~Q#nH~jB~_4 z8oK2*lb8q+Uh{&dhV`D+bFEc9k7xlJl3cIPSCUe}(2VpHdKG+>G&nc-!HIbzO-rGV zqyc`U*eWGXPCfJMh1rMmlsBNKlZHAIuz+GiqL+%zvK4Qi)B=qO4KJ}Ro}f2M&|;ou zaT>j$f;A<84j*tq)_-c17C0KF)pKGYm#Yo*MaU<;vu)v&V-V)9M@H&t=tEjPj?N|r zkWA_IrnDg^uQ=)T7F0h4Ox%}7r_kk8Nw$=_oW9<kQUttAY1@8WDvJg^O{Ew1yHeZX zNn)EMAv#nb;iq<)^zyiRH!htX!`@z?EBw#568<YE{9WPlQ3Al9f;9{tBRus*i~F|B zdJ{=vduF{EOMQ{*)WS(Dr-t3KRT!8~GGc|LRD@G%kIbaX8EkfQGk~27%wA7+yCgfY z2=XGE-T+TP31UB7q`2&QWrpwgNVQM|P=Asy`za!aev6i7(u)W4=hSiCRn|zDx+gV_ zwDKTJW()BuPXz}h;+t7)#AUJqaZhI|hddGQmx#r)7b{vJKR)EuL#cEgy|VIJVt;;- zHs;YAF?`4OXKw6AsBvEXIn~Gx>?8B(|5I4fOF|Aue3cw1k770KMGhbnt6|YH)MbGL zNg(y-Hi7Rx2Z1L}0vIRp;h(FAenb)&P*=}H+gj;~sa65}Z*zXVH0yPVVoDh?$|Z`c zff8?rMzQbk3trRqUvgx_iEw(f2M3go*3+XXtgt?mE{}to{V5NqB`>7^pit7h$d+zY zHLsN|wene2V@H$-cpYU|jj_=d6SiNb72!<lv?rGnl8dO}A~TF)m|!0GKX7?^NqE&q zm*_)9a6v#c!yhpf6gQ2t;qs^%XcVTtllAs=X`Eh;-sT65ZN+t*W-@RM#DC+Rla=FK zL93{JE~Q++&&!-@RK(7yKZ+oy?mO9C@ML$^&2C&Q*yU&fcHJ)vcAYOvb_j@OoiFo- zBhcZpBa<$L)7w$#d<%A$XX%|}CT;y6*i|SCPtHbq#=9)p4J~fvSfC_wtOHdpY3JDa zk~X74rNGFQ>{U-jm)wj>RnmR*b49%rdmtIz5sa#`I|7vdrjyLy!LgNe-0@L1R_EvD z<`mP5(()>LyGga-jC)qm=h3!UG%+_X)5};rotU^*%Sr;+g}6NyZInynb(uY1m$%4Z z)0vmp4Np3Me_ECLpcc)pf&ZB`^wL;D8($d?y6qKSm1<(sq0svE6-VCO3MQ|qhby>Y z4VlrXmfl=Zh6q7Cr#G;YRcFRkwg}9zgX&bZ^Wa)l8}=5@1nzpmzV$Ec_R1}Z^P0ek z$;K5RP#pDHxh50_t~wFlN0TxJyKPXKE>VpdfPK3@Z~v96qU^b(AILJ4zLr&n*3?EB zx=QzI+xQ36vGB9vLV@3<;E^Z(`x3vnOJ3CaD?zy6d3E*jtj$$kFL3f^N)x>fYb}+w zxazR_Kf&mxIwlft)dl<>&Ggm^>n{XxAIzM3merTlw=m~#2+S?0eM1}b+lDsgb)M>< zd1C&D;#%or*k1x4yL6Sx43Zw!Pn}z%@?H|U0_UAjUsxXYN)J63W%^nlB`fbYO@O@M zSMadxjYNK)BAZ&si#3zTS*pKyo+#(ZXklZY-2&Kex75?KLL$)bN)MONd$brYq`fgE zor#*a(<7+HaJ`h$lIFBP32*urMXm%D1eg@tPS1y5L|JI`m&59B!)Z-B{S8I5288h) z^y#9`;vchEZ_fztWZ`-BCFF}XS2HORu}kfHS$})Av4~MZ8#p7E&<9UiZ$F`RrHf4q zkIHabXDnI>FnJECbf}A-6+a7ZC!O5zB%G)f$fjtj*4_58*V-bRx^?6A<Cz5SipKz6 zA3`hITV*Y}Bg)!IYTFU{C5~mj?g(09mq5Kvpyi65h#v3I|I@xJ)Ov+pno9Km@WXL% zMU81?doZexjr%;K5Kuy?Pca?Q-~HlmM;?Xx<U;}Aah}?C0s7}X^>VnWqziC;K{>mM za-{d9Lfs@{WvtMHut(i(%!9wRFk|_cC*pS{;`2lu%28*e*{yi5qz}4P0{STl{TN=< z5!I!S9;+OaT8}uPYr%?rb%u@6-vjmFerUDv>I+X^IYKLY*tj?L1h%sS^o*DuR{Dy- zZoO^bAwSr_bBRE|D+$vRxb_Kf;XPXo(lvpe)x9R1Q7wucq&LMm3!b9C`Zb5i{d9GZ z{*u1!1K7!i=p~g&ePQeBRHUzsxpF@XGo9!!g0ulP;+X?%#0xx?C-p?^mxytWBtYZp zqTCDjd3m@E`>24;4ql_J!}VrZY7w~iIdLZswjQA;!V1$M0G~Y){Rmv8;3b$smhrQL ztukI`C`jz1;X`c_X@^-PsK+praaTI2JSilXWqcd&z780RF2wyY=oHnsE;>b3uFHaM zhZbQ~uJc;!uXx>I`ZU3}WA$tbjT(;51nv%8r5B@;zw2Sand5o4=o`;Sc=w!F*)}6B zI?qOdPDRQy+NQI0v_*%__EeDGlTaF&C*rOu(WK3qq#N{L3_3>puhZjpp)tyJYBov# zg6$Ss13R2tGWw`_VcfH{Wd^GL$3ASHv7okyQ!5k1uaOG-TSN!l`(y0_7CGMH^5hqA z*+HMj+gvus+g#G$5EgW$n%R>}MmLvCGjyG9Pecw?x*=*rIchpdPfPf{C@Uv5$KG({ zP1fMd89L56<eY@!bz`R9R$;9?1+&Tg_&|~a>nEfFE_K=Aboj2Two~o0wtXtfnoBB& zC!MTrI!Av6oqLNwXQ!mIP13>dMcFo){$?kgTt13v3isA!o_>dpO$Vp=`Mlq8QAjJB zY3vL;H<rw_n7sDXl-pvGa*oZU`y4QFrI*K(NiM6_@SbY_#i%ucM46kS)|9+y)fy|b z2*WRYr=$O-BWLpY<m*=`X+?Q;=_R`)gMJ06N=x;wcu_{iqtf$iPL1XR?5l+^z|#dN zV%Yq$&@N(I7TQH@f{Yg7OfJTgNj}bGG~04h?wAzN8?X&GMIjA3H53SLUa4b?OYX%; zX~imiq3C$vAB$<tVxS4qy~Q?AeW?YMJr%kTc>i}B>cC|P+_xN^r@$?*gbI5?Eg*}} z$N2(y+Xz~QCK}r(<CdXeE^>>{7o_2CxD@{2ssjaYIgDP^CwIAs>b<O)-dzq+@2`N- z|5&eor?7e=9yUuZTWOQo`G-}Ky4zvnSKC~&uCcj{kz8B}V!_IzYf)5k!DVipuzym3 zUww<lZqe(p)l$t$C+?DzYpec%ehC8S7u)n)3QO>mD<x}jul1HE%C-?1vyz%^wDCUN z2)ts}QoAi|?@B1v6K_e0m$!72w&+Qz{Z73)D|B0w_n6zfc}qiWcIp92whQ?XBQyu{ z-FBG1tdB0H^kob#*~PmTO}Bu_t=;-~>_gZBjQJ?dR@>eww^{b?=&7i@RdXx+X;T?4 zskjoXAgBafvo?USZLOAqiXVXA=@|a+B69)XI*vD8hqbq<dr*t^uX4i2g;~5`B_`Nf z9>*}L+CjZGJ0NYa=QbTVh*`Eh639+x)T-3{kp36DC1tPO4t{r7Po=PHp2F2A;fOvA zmvOE<4pS<3NZA|uIliJayA)UViOpiT!(0ewxFeQG@ZpWLOST3n$Mi-@X(?L#4n@ym zIazT}*_yHtxGYdrT0lHt_xoMF22DGN3@CI@k7BKb8me(f&p_+$>4T~CVFdNOuXktt z{|$<uqepm+eGuA*8XiSBpVy}~M={qg`si&F?EGB!G0vo8dLnwdL(lBakJ@;>Lmz@W zqXhL!cc}4Wy&}6LVg}CNaTLA!K7L<NCVJ2bk6N1l=x1ofaTLGECweV~GM_;4!?5ox z%5|p`7@u4|qW7kMP5_LUH%xU`nBJwbp)@@;Ifb&y_gEGZVt$ucBTq}#mzEqj2p6bT zdVv|vmUnqo3U7MXnp6Jp0(If}3q2QWD%CbZ$S3o*O{mRFeLL$bqOsn0smUw-6uttf zOSY*`UIO;VS<B>XqL9M_F)hy_nW#{sHN8HEK(SNz56=Xfd-7-^dDJ?Kn*XQ`4zXr^ zr&nVaB&sua>DPByhB+fsJ4x>^BDM1a%_LOqy&lJ2-KCXpaO=a}Ngwn{?3u)V(#f-x z#LiOO6Rsx7J-PKF$vsiRUBay?GSuiwyDr;QqCCaE^rX^KQV|;vY9=+pX(TgZS!0=Q z{d@GD8F?7KWjf->Lh8T4q-55_NvK9^l&IyY4Ihn8WTc@38H}>5r;PONJt~&S=)&+7 zk<wj5BwqMgyc8H~vB8%MMBH;^@i&4ETOnna-lI%8v4)AShb&Iw@<zs0U%!@=#DWJX z`DnRegwn5JMg?|CYCU$3(uEu4*)d_Lz!4{c_P+S{*ln{r+*r?^hzROKNQedB-c(vO znox4pn9m-H*ccv`ylpe|-xv9%-xv9XF=F?pVvHDj2NJx%vAj|u7Y;yx7j_9+62<Q7 z1>Hp2Q|k^!6xkfAu(~pGt^1V6G-5Fz6p^dbw0lrrV=`Vl75OsrOEZjCM;PTOEB?p2 z$ylB4)3gX<3-08zVr6)MSbW0<`&mkixKEKA5*NjmKue;|L%kncECR9XPkDsF&H_8E z`J?{=?(#|f2I@xas8oFLKAlTyROg%SU=RPk`;HvPKG$T%7<OOE-o8)yk{jJH7!)A( z(ZZ*;byXZk`5AZ8JdoB6rI^>S?mkL*W?MJM17ZIx52SUo*b*n6>jl}W+oZnGt(Qng zrZQ@<8dAK<1JY6(g|PvYD-2Y8;DFcLM+b)BCJnpDw`LtgwD4~r#|s7ZOJjUa-=~3w zZ)AcMsqJfhGW+QP)tQLZ5DV{MJ8<e7;N`BL&3hmg?IFSU0N^;2U{sM7y_I+`zt!b_ zS5XG0r$-Uq|3HrB9#HZOMo~P)DWdG4bnl^bP6neByD3@y{ea43G%Di=nk8}QgFYEs z^~Q%9G3>L4(uSW=>u{rxvSX5B^j9K97(c9}7&-8fK@`CZVY~{=;LnZ)s22AV{WBY7 zaS4>rR_-A^&1~dX%JC>!eE(kQh^N9?QtA+5;DA*Y;|3<BxwzWup;eoHp{==$tif$r z4Znh`cSU-!bU6{^k8Ia_DsfVMzlY+kfPO+C5R2HKGzmj|;@${6Oe~;GeMn`7hGkIj z2n{EOT?t_leZw$AnzBnFL#N+!0{u=IW!po_k_)EXCZlX73OCXRm*+CV70fjYtrs5# z?|yC!RItP*)NZE7stxkJ6nQN{z7_)h%}$UbNGWJ^W@#UZ;+gUhW$3A9W+@+WcaFhZ z0YhSJZ@|L*-5!zM)uN2*tc;9O@(~?~GAc5B#gOWe!v>=<q{@L#TCZqhFKZ!Ugg1eR zD4kk<V+2KIGgQ*^8>3hgse#7%Eds2MOrqB#Ze`ZX3O^D+ctk;?C7b++63(+2#X>#7 z5;&hkf(|4#tm6Z)Y#p`*cgXQWXpiVgA)^%AAUOu9c{1o5(Hn2kWh$s8rs;)^ne4nw z`Sc^|Qp7mNPTR64lN*!SOBwj|k!<^(+JWIIQB;#tAPtIf;IXXe0lJzJxgDgGsU)Zx zsQ^m!Sqm078epI##EU$pEyYnKib(N-)H^jm9sFQB&J-n$)bw)+qa6AOB0{~#l&GZ9 z3>W1J{dhSujWJp2Ap^TVmUXDR2=o_x?8uYJq8(Fyk+Nefpkr)BnbJ$34blUs>_}`1 z#rxv1Moo;2MB=L-)A3jo)74V{N~iv5)U*sr<Vh);@R%aX8uj?Sw%iaaX<J4B{YM5q zuz<qL$iOF=V8RI6o*5?8{*flci?rDc+}!L;Wu|Chx$7*N89+-{Fj`@oy@(j|4;`;y zl;96)A|eJd&9lIm3vMBY#r>4ydK!r-U1j4(dRq}Jz7Vm(YyM*w%gV+`VwH_axR%3G z5SHDD#}({Cd&hr7o$qLe<<0@++-EAIrNHoiq|Y2~OXSNbE&6p%02O<MzO81|!Yxcf z-?D$`Sv8{=_7(BO0!skn6DKm?M=v$(SQgj&&!}$viB_FQ3qN4P&0EtLMOka&=EDO* zgWsiLff#@)_hf3fB>G#Pi7k}lIOcmIyg}k8asyc6C&C*np(FVuk;G9pk%@JTS}aP6 z=YB$|zA%ch+)_LzRgQ*b@@lr(w|!xpXVsrjAQz_mo&=B7HJT`_vMqc#zY)*cOHFN_ zhzgGnpD@Vz#9@)87RX^zc8~>fkge!VK?yRZ5I~CEP9cqq+H9#1SAT;t?tDfkA*GR# zlwP(l3|ijENXCAX3g%P0!hoH!v2l;>6LG?KS#juU6Jr{kX<{s7yKLbBMIp?a1a?E> z`AcHQhhv}b#J*Bu=T8zALka(2VgF!j+g?m!e^JcF-nfNP8+|b$p6w}JY=Lr}jarvP zxz0=_OCa&iEsgh>rWF!pp9W{OGCC=^Si=&bk`_MPJ1<09J{83my=$pse<=uv;yX|Z z^nEIeZ(m#DY-tH9A{L-T-*sFEoE3fawNV9~E}?YpQ|jEtD6h<wab{8VGSJ#C6Gj%B zIvOdcYg?m2{Dh8WF$F8+w?3s?-x!CLt+xEsvNlW{(dMSPAYopx1rC+7VZM_BuPm6a zY>5lyjsNsh*YkdA96v^06*@CMqZA!6hRFDg=Z!zzGe^1FLeo1M8_+Hb*%HraWGA#) zC4?+C&mE}@7tmY=Hhw0`CqBHDOh-?u82ywVWmwN=veNXl13y%i<||YU<`Y}vg!zhe zgS($C<4k`>S9%y}>2NnA2b(U@O>v^zLB+cp6VM_HbnBl{$hSscw%${Ar>ybkr0gjP z79S3F3Z<wGurFlT6ASDUPd&Kx0)rUtVjI<QVE?*@QJJNGE}TT_=Nx-kmioESpMpkw zft;$+-AFpAD?0n|wVhZoDO&hBMfU>g!nSCu`l#~_WnkUs!lw9em?>yT1EU}NUWRph zE^XS)4jk7|+H`kA;1V8n*pF~TQ>FN%=j7`HM>I)_$J6UZM!MjnKByQh_?%+4hsK0G zmu?`~vcHi=2{!0&WLMZKTYha*;5zY~0)5fBkhqT8Vdt6w*JGK`eGAupJMczxi7Q<T z8&`ut@boEhA0o<M(ie1g5OCqkUzDQSEdlGB!A4sJlbb>!`bAI~YLs9sT8c!xa1_zw zGGpsV;TkW5#cEjEzWECI+C>CmGt2h&MmE;LQ_IPJv-P*H0aNUi9TSaLc+-zW6`mlK zk9$EAM;g%#U;c0u-D-ne#ZJ~FlzWsh56!s1`}+$D8Esr(_zJ1}Z6U=+)XHHgu>XbZ zBjGCq0_`Edhnu)7Kxnx6LNxLWU-3YdlkhoQJdK`P_)AgL61}8*V~sQnUk};yo<r`_ z6gST3!}3WDpTDH&@yMdjUy4$egGO`)o^|7mWvrT%sPvMi{$d<um28RMyFg+~ywQub zlM-LQq=Z#QPWH8s@aK5x$fC=1dV<lL4VAKSFKO^ZqbQ5>l)WO@(SU9SW_o@z3||_q zD_w_~p3+x6`Jvm-CqYFft{7(|qFRK`_#T=3j+eBLkcm4anQe6LJCMO}d?C9gC9b@r zoKuV~?23>GY;%&iW=-}euY~>Iy_A{xPU3S3V`&nTJuHKiP4h~2-qKJ)Z=(>~_L7?P zG}2MTBn<nDOOYZF`OQccZm}*RB>gU}H$7S7o^{Sz%nhxZ0cX_emAJB8c|`?h8hMmv zLRX;iD@Wek_EB_goH5=#(-_J6y`rl<Sxgv2cz=K{%`&Rd$yr82<p&AG75NUWh&P6^ zsS^97SE3N$c{@%I`w)KY19sI{8_ihomGCft@+rGjo=We@@_k$?J>raV#52l$PlMc+ z1`*?m1B)=Tbmv#hBD|D(pT44w^U&Hn6$%57omP41qu29{VJ!J;p2=$9wbenwBMeK> zCY_#dlxBg~yuPr<uc+E!{I)qBMLfTdXZc>s>X1)}xRpQlQS54?9jo=4wl{|}eJzY) z7xZfXs+}_2E*u@D+O|%~w*N}bA7K=5Pe(m;vTwk~2_@m9EiN=*F;MqhjMjCuP=tx3 zw<A#%7NyXW(4`L;c1J8RTCm?`+KXP(oFxFgNXYs}K+7jR^5?Q3?0+q1J1qLUZM{{- z@G7?2Xv%I%ZGStN{A~+18f&y-A#X&@`rwrLV9S&o_uoDZ9zWt`Uu+EBvfOCMa!MUp z-%ynmMpcII_5r>^G;KV9oIQvUq#)S!4@@dgDT9`}f|M`whAyl$o-=%f{G51W0{c>i zwZPj(+{fW7!uC$ENez$!ecm`S5`S_z{~L#;-utNk1MLeoO~#=&Vljj)oo6P=w$dat zLShMH^jehJ?NWI28#01MVYc~=@YEY9dNLq1KV>Gt&HRZelOJ#XM65TOl7Ag2U3w#4 z%LzmJqB4J2XLO+F>x`c4oE<;?RE*r;yus@#xMAUqbYw5=z}nNGeCtgNAybhu6HRrp zx3UwQj9Smc*mHxE7<MOZMDvP{QJ)zAzm1<=s=vwj0vFkd*u~z``AwJxEhb|ZdFwC> z_5*E3mmN=CAtkjT0y*Z<GiktPqaUT(Y8=9QIy_m-2GC3ZTVC4it@M_vzsG)fEI;81 z9WD`YsSa29@>3+eo2XP#CdwG&-_nnhlnlyvTj$6*(D}`u#(a!G1>9wCsq_xx8b+X8 zr{ASh6=dC2E|liH$4PcE9EkcU)JG$CVIWocU}z~E8{%5SPgumL-!9Bu{HBK+6t~Mr zg@ckJl?10z^x)-PMkWR4?RjMNv2B$t^lq22m0s_GRUS(Q33O+kZIvVxHy_z$zLQol zDdu<BErDt*fCRsCgWpoZC33&xg%2-Fa{<3A@d!_fx}=D`fqt5Kz-W%0Wn5KAop+y6 z^g*M(Qb#JQ`OcBO0XlHdIHG(jg}Xrb$RXn~dS)VJmv9maBr``~ubBWj3Xf$y3ya1> zJzla&Y2{5r9%SX$mvC0Uy%Wb+@fNUGgk+wy0-RP9ElNO(a7=<c43OE68M)DG6M7Cf z8Kt0G)67gH9=q9g%=iY|&x9fFB3jeqMt6Si6St}>T1v@Hr}1k5HT*rzNr5Tn_q;y4 zMN?6X&+LkEt`N=kUi2MUHc#2qo~%;H%o5|PsuwY^KX6K{LvV#5)!u(bv8RnPtQyyd z3$9ih>Eo-9OiC*%=?3LJYgD2VXD}1gNu;l~dv8_AhLrxSk&n7v#;aV7&tf$x$ywuT z)=nzPw+2dZsR`N=fqLkB(H+MJNkl-!Cv65Mu5TJ$Fj^LpbKlG1%v>+g3>27THlnj@ z(JADIWT_n7pue(HUq(+Gq?I-hEdy-O5Gxftz3}T6pGlX{$lf`O3+R<gMh14BCyxh# zoT?*LniGcyfnwXSL^R@(F&gKgwr__K*@w@l>SbdMV;{WYWmfqu3m9s1VV3cOFa|z6 zw_QnO5!RrEn?O-)d??{5mQ`A!<rdo#*SEqFE?wC?EfFa#Aszue{<l#H$D;&?0pL*U znvshQ5GmqlQ<XpAC=OmT=3p$&MZ%|lkeNT}hEbbdTt|m)y5!pz0iR@PPL-lw<DxKr zj0=R<f57Esi8J6U7`udXNyd@8Y{sYT^pEaB`WYvgRq4ZSizj>HsUx>1(;R{+7C-!y z_Kr~vYa`>108Z-9XzCrTd!(lAhtW)=z#U<qV9%@4#S3N*D*4z*MX~pc0PUKRs4SW* z5x4MXboQ?CBQA6IiknaJrZ)!w_sktLB@I1@^`#WF=^&W!Hk76wLQti1cnWRXVG;D= zuuXF85d?+*ZA8+OBgjk_F6@XxyXtOg@=A)YImJg<s|!k)t3IP?kBox2zn#PMuW(W< zK*=8)=qo1}#o<n`-Ze4@Tm55TS7)7LfV6^!9|I(D+B5rciwN$I_R>^H=H0Xt5F2sc zNRO*N=3Mx1f`w&iU47Cbs32z`hNLQ-`fn$$fGnW$q~r^uE@`KYQndMnQIz6N8{*7p z5{llXh0@V`*pgT4l~Ic}y~Mg{|1;2E?3Hm6V|?f@PaDq~5u%4cvF8xfE3J|RH+G1i z%jXaz?wzW69zm&Am?@QcA}DzGJQ`cKq5nrK-x&>9WuM%FljA+A!(#;{CtU}uU7a)X zCX2v7@9|$gUh@#kne<|b7>z%Iq2_0ds(--3Jid>=HVZ{Kh0D^G55^Fj{FlP%*~Fe^ zGnQV;Vx{d<#pP6584ux7mT)mf35uDM;p?HfJe6K;v}a8%;f9R5XE2l50}cGi<KTGB zifizJV}HXaw3j9Nol_KldZ@1`OQwrEW?2)N1KD&-(_}`;6Pu+NzDfd0=0sX{3#Dvf zV)F=FZ^^7-!NsAbsjxLt$Ul)eSXU8^COaj?Lylo%R?O|hQS6wvI9_2w!^xgl;twGn znG;t9J@gi@MsdGkKE)p*?XQP8tb{)~Za1Xrp4=<T5-d7^N8e*XWvph_VtDOU6oZ%$ zN}`+P8NR|4`7kR4Q!LiaQS1v#re+AWH_TxSUy*FS5QimdNlSE<(jgr~EK79s7O%~# zsq7uG(N>({h|_wFnuQJbj)RFbZjMD3p!rU7;7>1HUwE3MrgT!=4-0GT2$&VwVN3D; z5Gt9(%+K%@*4RT^pTQa*m-nzQ!lcbfO`THK!LjhWR=k@b)H$iyg5fKW>~UJCzU*M( zP1I*-pA*5kiK3Dyk*9Qnj|RdDf`}4{D8fFGG78%hLU~_W6$EPtT!@uQ<R~Qg(+dl> zRdLttsvz}bAraFO!Ys2=nssnuj4KZRDv=^bYc*4uX{kagGY9)hDi5?m&?i2oi7KCZ zKbFdTh+||twmQ&?J^FV#n#x>8OVXH|*gy-MD}GaHs5z4L4BJpMyrr9cVyG=L$_Cp| z8@!`57X=A>)`Z1QJ1vGkg~eQ;T6kKliL{tF046L}Jfm43XQJo$Oq_{ML_0H@wfR?+ zqgS;21IiKBS(c;W7b2+>Q?*F*FvHgp@hK*H7|F~&Xy3U=Na4h?pak#_VdaU<&weKU zi{G9pALgy18Df<7nXNGn6*1}}hHxu&rB?OTzxhM4A!b92Mn&S?5<7|t{<JWpPh=K! zmyK4EseHuby%9$LWHTFKeL`rOh;7{2%_a<Aq2d=BnHZq*<S@4=Yo*8^i77))^8v%x z5_uSAPR5IJ0`d`yBs=nNaAu#`AB+DY_@2$^-oL>ys@aNRJC^WYc&nVZANJg&kFKg{ zK7OH;npu$DQ>cb!iiL-kEWZ^aABOdL&0<(>7NWW7XB~ha<~5JAT2e%<7Agz;=s29L zHj`7*DD#a{P00ImBkYqB-<jr=hHLC3V}`T~Rj7MfC7069*4{V*+Iic~MpyubhEiaK znL!z9i?s2B&;l!Tu9MJQTc}z<5{e6$c_;BMmMC;b3z(JI0W0br?5r(l7R2SfoLOL} z6X~}qEnbOt5RR_HWq=I}n+deLkXer1vLas#4VElyUQlr8lE?PDVt*%iVnXL}N|a0m zd)Wm|oXbk_-=w}*snuLOb2}z0tBTc65hVknU@9gO@1gN1*f~=sh1m+5YI!JjS9Hr@ zCbx4DJHMq!j+Byg^OVTNk1g255@vwT7BEX;I}nc^-YU%UP@_wjscCOHGbv3fVJ5+b zAg;*Y9KoODS#Nq!!hE5`$+-ROxZ6sZlPOrroQDelMEcEXW?E#PnAO2922OmcO?;{? zl90}fq5H9Bb-cmFMOZM5I+roCqW5blxtJb2&xk<GseH=wge|fogXH-tgM;U~a;Bfo z6fjHUac;r$m5nu_oaC7eUO*)CoT_C4)}J<qq@kwe&Bsa_8lMqpQiKNwRxpPt_=l{0 zͱ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 Ve5GwB&z3s-*6fOAQY(lk{Rg@%XGZ`4 diff --git a/docs/build/doctrees/custom_logging_functions.doctree b/docs/build/doctrees/custom_logging_functions.doctree index c53d685a3f7f5f7e84317ca2b401b069b8564b6b..7b1e341383fc7f84fa48c29c5c5626d97bd1e8ed 100644 GIT binary patch delta 8316 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 ZD_S{9mnl)AbVM3WqcF|)i}R1O{|75k37h}` delta 8769 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 L9sF$Q2kid=r#Gd} diff --git a/docs/build/doctrees/dicts.doctree b/docs/build/doctrees/dicts.doctree index 4d6459dd2526baacdee1140e28a21d43935ff88b..20c57f32874293a4dcc988552a3a227205e4495b 100644 GIT binary patch delta 2365 zcma);ZA@EL7{__ey>016wM;@wpkp1$wu)<qj0_A6bdqIMCT1!^$ZA<TTA(j$o7tt4 zbp|7&%a-L(?@|}W7{(b*v>fS;E>oKsi5ZDwA?|}+LUe`?Q((~;XEx*IUiv|k-a|i~ z^!)Ds|GeENH=0sDno_b+MI0sBml0gRH<e{Y)#f^LoyF-r8nif^N4Iyoz4ic3H}{hT zgn-6`*>(g;IUNtNslqIU!8VnS3=|w@*22ZKLkwJ#^~5Jib@)+{8ecEExki-iDgKy+ zFKDvA(2)wFGu%_qGFdhjlPeXI)Qkmga@#E69rY~!!*mdpGx%hy0T~$#yPrn}2H)Sg z5sxnDp^_{=sYA%dVEcn==)w)#ze9cor++lFrM(`8D|`Y>s7rXd*M!fQ+tC>bj0vC_ z@3S<b%M7j>-WHES9lmGL;91jVl`G>a?Y$^iUD|>!tV+bP5=xxd5kX1eZxd{SB&n^s z0o=2dV8}I69{iwc1McuWPCl!?&Tu_XQ&3V;`=Vkcaq?C}Sw39J*&C8>{(+Ub7sfe4 zYOJ@!DiUL>n-Ntf+Jb7}bE*nYh4G?o1No-&EKA|YqHRV}pR@N#>K)E*HP&_Jt_HFC z68ZRmEjNL!LaheFUn4QxgORP0^2LEt=`eS4y#_v#OTa^XXFp|V%qKXl6fK4muPGr# zejfV=$(PfE?~H56z=WAnc8S~f;b@_#4_6nYT+o*-YM7LdJTtwhq%b%$ttWx+2c^<$ zXWx_#AKZFKeXlapYEplDin^Hu4%gp)jGWJ;q@ug#Pe=#2`)UECaNE3&_?CY|v?Bld z`|B)?$^11TWsvy$fI<~tNaP7W99=4lt3ZpJ$8_;sFaoKm8PGC0XN!Aj9USK)ED%M` z>EZ=um)Ht^yZ}y#3GvNZu&5~ejcd|DIai^FrL};3x&-cuqs4!<307u{*KY+A3s+@Z zzha{2nw|m`zg!7#DA$e`SA(=Gd8mO=DXq_IVMuW1F4cmL?`VWO2;P^q=f8apUSMg^ z_+ID}E2vg8d3nN~Y$(G==1aKutWb!rB`W#1TOcWwxUCgB)s)_IW3PagZ)u00Xj3AQ zGhNUmzEoNJhZ{xvgm2Y;&<m&j6W{)FDZW59z9Vof_lDw)5xBwT93W1(KF-IYP$jlE z8$_c~^k^Ac_1O8&|AIIt0oK?mP%{j%^?JQ46!Hh3u~__0f6(kd7IOK#W?!I(n~%d@ z<Cg5L!ydAS0`^0F&VbqN3>{uUEDqlxZuh$|SFCY+>^)9fzt8S)dwWJsv;A&w-w0>q nV2`H2>FIVlY$6fl>>MoR-`^~B&2U=&BM66CE&u0vScm=vt86<o delta 2202 zcmZ{mdrVt(6vun+y=}Rp>0`?%1<E>zQ{-`(fWc`tVaYH~aKvRq=K_V5m4>#AcEa4; zVDq&ESMk?!CrDrpjU;RWzid~B&Zzt$Gs?p`H0}>vrit0ie2hQ#@NqAM%l-AX{iA8m z=iKu>=XcKewf~&ewVl&3ZQ6)ogxOBPanzofrmJo6Ih*&Rk<3OsPf?(@hM6h~PLaM| z)Mv2be!Y`X5!`2ZiB?%f|1^Bre3XU{qa)o+wIbu{AL9Wt9!h$Tfg$x{zr-?T;)wma zme9u|nMJBRU&cKTOaThyXCU8$)s%xqC8c)AKqUohP)+?hDxF5t8y}`}XjEBOi2Jjz z0@NTUSIF+7H5#|w6QWS(_I2pj+#c8~+H;V3hnDh*-tH`F7mYeQvJlHvL1^Kb4&s?{ zZW9cM_N+)hJhC#e(O>6mtgiF#^992mo9Kz!^KDeW6l(24)ZWFY9g9(u*SAxnGz$Ic zfKmL(`mX`{$fNP0Ll0T_4;V1vErnmwF){wQ_-Sp@g4*jI4QMo;&5Za4;-?Cnu+fnK z-DFTN;&vwT?=xV*SGSZiF){vO>-Rte9n;D|PnUb?cr2x|g+=%I?aQ<1#oW#zhMzkO zN~4&A9e357Cq>TaWsz;Qeo{oiK6BNx&=XzN-BuGnC>_<${(}iBjPJHiQbgACtSol% zKsG6+VDpF8&>70(U1s~-*&bG!hg8ojg2O3z!;#+%&>NkYDQv+rp*~tguqphxj`G-0 z?nx{DuKQUX*l_O2e<@W<@WjBQF&Z^7V8p|Ny%wUZe4|`e`Pg-`WCbg}P{E3$OI#aX zG(4G%AN%UEPDSwW<U3@q-m=I#PffSSW2e5EQSGZF!=kAxMyXv!{O0W2v0d=gm2t8y zAFY%%!*fUDGV8VH4B}BX|G}uw9Qpq;FK$%9trAAn5((ps+hMYvqSdnQxjR)_G<Vw; z;lRR1=DIZtFEq_rBUKOv+u0jnrd87?bTjaUR&Bns0xptLqe)9r!ngt6AZt{>N;4Gb ziCdF*+MtuyzX++kGZ`icCWx#_FOC|YcRyH#OAe5RO%T6iG3d2|rOlK=yuwdqflgSJ z1Fbs57RNwk1u#P<ot`2mZ7YIz$)pu<tQa~Z-6uA|Eed$W^zqX>z{fvc0<3VY6iS(R z@Y^zQk~95Zs;tdD39IN#<*qJ6#jb|Z(Apz5{(J>k_-#dyEew>yy#!(u1TmdzEopK- z51*2&cF!(Lr~4pk*A$T53qO$;7H?^TgJ^cZDD)iwaSWB0nIN*$I%20M9J0`bSEGd# zaPS!Xp6GD6gTbc2299fKX~}EaA9VYDdH&`-+-}zkT$8IQz@LdgnKf<6E9mz(2J#wQ z!FtJyPwIk8CWFgc>)Ku2;C1eC1;WR=c-YK8!^4e)n;FtiW=Hh@4HRa~!rv!g1@%8? CqNXYU diff --git a/docs/build/doctrees/ensemble.doctree b/docs/build/doctrees/ensemble.doctree index 28b84dd301160769761b733c3c96264a28137b96..71984dcc50b6708997a2b4f74aba75ea525fceba 100644 GIT binary patch delta 4803 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 NIE!qxcIo&e@?Xap16u$9 delta 4512 zcma)AdsLLi6?cXOzTN$H!K$Dv3xdz^+^t3`8U;yWsR9z8RU?9|E`!3#B7|BsN_<6B z<dT{yzCf%YM$uJ_8a>*iCJh>soc2hQnoxVpIZdM>k9tyLZ12qMi${9;&-cyV`OUp| ze)F3<^KIvS+W0LEd_M4{@bf1F3n;0FU1gC$1w|$KWmRyctjwhgNF%+icQtQN($pR6 zgnK5VYk^W|91uSx-)VEE4o!7br7l^X?{uavhOF=?I5ln<3=B_Dhj;HtgPOq+u07%5 zq;H=~hFJRUfu~Fzq@{Nn;m{G;)@O$+GwL@%y`wye4RyhYyP<t$UYEiXPw$p=T}lcW zT$eH!Dn^FDGb#7`_W1B;k$vQivEW*22YIz;-j8C9uydjUizZ(9U!B3OkDdq*BFB0T zPs@yOop|zYK(8KGTIM+#U866vEp<9<ONy2jEvetaN@%}+tSks0rP#`be@`o+*Mp!n zCz9R>f?d1K@XwqC(heU?PbGhGsaZb|Vu1cL6QHC?Av(C6n*=Lz(#dc*kz*z!vBwOK z6ctWPkD;-_a4=;&wFHA9D?dnUH?gQ-I9V_PI%fn@6Yq=yOQjyY^v|s#bG=??xi06< zAjFOaE4BG>vk+&2{WA}S)dgd|ngDzNZw1O0<i^f{mRZ}#E8RIMhqZGfpyDMHgv_ZX zuZbL6=R~Qm;8=U4J-}|R>0^YAydjWX6aA6w0>sZNAs=E_6r}wmjJyXo=EakD@i_{H zMr#Z{r|d#7Sffh=*ri}7U2npyuKY5BHU&f1<1>a_!q}_q@%BQy8F83L)HH$w9SMfe z4W_y@JuIJpP8+CThlvF!K#DDDvk%q}S__g4N4)v-P=_`Rs#`KVECR<!YD~N(s4*!> zO?Uun4u-!Kr$P3@&E$8zDN<m=v&ZP;3NCsSWG{+TtvtNsr%!ln-dy@5ho|~MSq5Cm zE1~nzZW%-7z^=ukz%fQcp21eU!RL}?D3YD070wQ|D)5zK2#JSXMY%(s#>gIaGI$n} zog~G>4lO9sZs#2)woS5==!0z$>?Co6$exFCv(t!1$xah*33i$UJCr3tXK^~zFR3QY zeUal>Y7`o}Tey>6^pSMV8>Z$*hUL<0k|ZCLwIfLbAadDqdRr3piI=F4;PYjL^no<r z_cOQJ;|=~U-2A;K`8y~1a|!<5!=ya?wetiee{Ej=V%SY3Q7ib1uPe41&iFv1wYWzU z4Q<|ev34(gQ*el+FN3!PeHmIVF3QfhI*a!cx=`!Y&paML>Zh$cqq|{yNf9mP&{Wk2 zV+<yhzDU=j9ksIt`d3DS#iEib(P~|+cE{#BR?-z(vA5<ymm`AC)QY{e0^@pS&v*`U z_OrF9o>9=S@`7@jTTSd#U9pAM^vJD&oPb5n<@9YWd@wBmN}GbUZ*jPpF)gfXiiFx< z=^&|m9sMf@jGn}<V)1m>(c=h|brj>XHtfJC9cWxtU=ORILr2$dtY2Thrhc?N&>keZ zAZB_bm{tuVT`+l-nSRYFF~jOriR7M`bk}qfeW-<xQ^u0x5K$35@-ojQYFdE5WAa!} zzmQikigdu{in+8y3)W@}`7^qUqi<o(30QS=_4EqTQ8yBHR3=l4&O6maUC*h;JU5X{ zg+<Rr(M+8uIr@}Nl=hiAcV?+oLk;fC_`K3}-a0>tBSoF3i5SK|cosz_Jsel|2z;Jy z(_z_5(wNv5pNq<FE~Gb&79`Op_)O#Ba=K!e%~_J0A6L!2`Ojbosopl;66$T!LClo7 zt~<Y;Lg)=XKUw<Pc{WnIy$;w5)e(@eZZ`dd!&6lsl-+_quG>SuMZ0AT?b5;f^Wx|i z{54V>4gN?SFMgDDLdp6_+OFfZk6zVr`3~;H*dF=b;(18<z5^i}ZYZPlXfUx6VBLw* z?IX8n5(^(!-&8UrFdcyj1KDK$%gn~`mlV$gc<{oz${dNBg($1)?$x0GT(EA#y_c)e z=19Z@y?gC61IG9AHO_+`Fjk^t`AgD21`cjYG`!>GlikvJ)?*E#<a(^-EwLVJ_52if zt=pVK$ZpKa40uv&0Q(`daJcVA>V$J!Um!;Wf}hYF;f~l08(*xz!`r%3p3tvjcJbsi zKIIAR57o;v=%`+tL7*4wutP7($We6ZS%+rsUamu}UX+m=HFuORxz)t(Vkisz-WJt8 zy_jHeq<^l5{LBGxZO609BZ+^Ac&p)i>5{XJkUVEG4OP9n!JwjNGi%m+E6$|a)pP_0 zjE?oMIR8K|y(&%&d|7KIF<{tLMPpRH{V6i!*@g!6BDW#lyh7@-X|6ABcCWZs>RzS= zs(UBq`MhL%y-=N}>D`GqA@@#HYxy*#6q->AVf>C#gHhzdZ|5zs@Y_|f@ZZ!gCb+D% zyQBFPMAL}<u$XpR_{)u<ki9#doI%tCl_T8#Ps7dKXK1@Bw%^+--+tsxxc71e{kyb% zszQ2P9Q{g#uR_OA{52!NLjR*ee`6N^^+5v1AKjBr2E(C-v2>t;!|_sks38hEM~9Jt zaB#1cj0JKa8{07r@d(dqm`Sn(JX69Kc;FNbJClD(iUdB>jsI-l46;Gs*Ghb?7mo&x z-!JfMIi9|$!by9a!GDstp8QgIRuz(M#JOPU*ry7~o<%Y|l0D6dk&->23d!C(_%G!{ z16ob&eG&Behym~mjoDwemm3Gs>jspg3BGR3A$J6BaZ{Lbn-4Uz)3CPbYodXbhaVf} zufuED-Ajl4jL=mZN%8fE!;HVU5`QpACFW{Ezn95;hp$xy?4bd2=bNClxtb*XfBxfy ze-a0qk5p6q!QGECdfY1>_sFEIW%p&gZ`>K+r^jt~pPqi|O-pefC)dH!oFGn<1AZD) zJ=Lqs=n=7#w}gnDMlND_aC8kUquqElwOl0IaaOXPZN(8iWo>F12sdASf;0#euW20R zmiAs)cx*j6g<Ybi(c?y;?iQH*+5-Ie@R+X}g<?B|fh+bZSdXWW&!o#ZD@6dRoVFN+ zto#EYdt6rgjY3vijY3w{NHBh^?8ihrvf9g&lCs)l^jyaqRvO?^>(8O3b*VNYL?~=< z2>)m?Z1lkgg@}vgCcjx3J!B^1AXyPCyd}uAgvg8KM%Q;It0>8Hm7Tswh7Prtmph!P z$;p+Kl}V1Oa(ih>Qfb+;<U(6Tvcu+Z!qm2@;gKFtd1>i#XHt=^d?^RPiMBt5sJ0aa zw!*xk75U3-&ibwJ+p`()#o5&($MeAB@Zqe{mgKLnl~*~ie@#8(9obHM3|`yVIN1LB zH03Z_@T0NkpCoWs6AE?b5~erdhZ*A^f-D|y(TsoeFc*LD>pPptFNyrp%dX<7$oQ>* b?cimcA53f?YK`&z&Z?0pw$-IOKZpDmp)J14 diff --git a/docs/build/doctrees/environment.pickle b/docs/build/doctrees/environment.pickle index 7a3f4915b1438ce61cb50f0f835a84f5956a66b7..1d548e7da748801d30df5f3bf6139b6e6e363320 100644 GIT binary patch delta 124393 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%0A%B6_T$h zWUEjG*w*nUpH_QA=Vl=kLv7q50^va$8$~b-w81_>TpMlF%llGKUEhssV}+)T=Y=YO z+K`qQc8|kCK!yr=hC$SFYA^((sU1hV#7WbN4w6YfX@dJ$KJWZYs5Yut&UBEvRh==N z6aq37%O@gYsrw0F`e{eW`EJF+;=DBeA*xRCmHfPj46jQNeB<#FI<1pb?JQO!As|D^ z{3#+_4-4$yxOD4v=0sz|<(B$}h4<>jsiRP}oh>WA`dqx75Rjq#VnraXr2M)jxUXj5 zUR}+M6)7?w&X>^p5~OOc>Ki2lWGKGjA`l)15Z?SePSx0u;rc9-t{5)Ier_LXf>0-Y zZifS0v%L?!_kv5auW%Bv*;HG0UZ$xSR`|0MCH8^p)I_P3+836I2+*m_PZO&<T`Um- z(n-<vy^>-EQOm&xg{cibmpEm$2cmVgmB5EqbHTdm-&<FO#SQQ6x;n<;cP|Tg<M8yM z3O-a1O|EWvZ`C2y3}h&+Eg}#eEQf<jynZe3gsxH-bkv8io!ZI{i<H&b%FcF`s=eIi z86hA;xjiKU;lX5Zxz*I)dE;>F?k<zT8+%O<but;3+AD%47G+rrO;&h6%M^G)i+jJ& zF_FhR#yJt0I`tdcLo!#Lt9>T~WT@Y7L?Arqm)qi+l;c&ud?sBJgm?WuB{I2UrE!1f z#4`LWuh*qbJ$?-9$m(W}Lq$#b>gHx`brauQc(S_8aCOr`2*|K$m_;BwG!2sohJj9I z*Qk?v{2*5UHSM@QZq@WLMX3BZ`K9Nxsz2hLBm`rqjR_(U9<(u51j9fZ`L)$Xy)6Di zZisbvZoE%ZOQ}#rm|EUes;gzW5R9Q(N*IJkv*G@3TvSV)XJNsq#q)Bq(@psWMcMgz zHuv$SDw7X5+tqq@sNL&$obn2zi~Cmp)ZVtb3vH_igog(Ro4MfYbutFqvSpoQbD(}| z%P8u^>^YHgvw@pJvkRjg`%Bec1bavb%dqVo6oK$y5-yJz?IEd!*^4YiR#z*XRJp1W z=kDy)y4Bdcoqj1&A)S0*98kS)e=dY&DBn{e5MJe5)5M0^T2HSf<R+#j2%f(?hHJUJ zNTezTmVco)%g>D5m_|n5!nmYKHQhBx>dQysCp44awuR8lDE4XN*P*u-f-!6sQ6dl? zo~buy7#_X1FKzpRc1w{u;#v~IwyMcW5h*NuaO3GN^g~Epb)_*-2*yxs{dko<O|ZR; zl$RzA*vttWoo6euz-O{>q;wxB-C5lH%yU)J+^FV#1{79lkU3kQhq|Kp3SN%KG1FX_ zwSY7f+$=AGD}^Ur?vksIDMmzUNl{jQo~h8fusFNWnhPI#tTNAV#z=9C!mGSmsLD)= zk>&!HW1<^eHDQ(sAsY&Fg%L!l$FHaAFkHrTDOX7SO+92K(}xZmCb2g*K<M0Vyw9kx z9?Qx)?<bJDYUjOM2u4?B*Jk4`5eN_4XZ0>Nl$ta`YC+GelGq2`;HD*i9QLY6dAZrk zy<V#3)pk?}#!zxEia=aR$xR%|+Z%+=_I6gJtXyi}jg+FQwzo4vFosh5S_Hzw7+XVo zyR=b-o*N}~z%drW7<G(|Xel@~=|XS5L26S~Y@tFhhGGk15FS^f?(>Zybzh9qUAM~3 z=*qQDe=EFIh0;@~Hq3VYwYGW>>?Q<bD3l}-2oKZv1QCp?^JhLRa^2Kz8qb?_O&DHR z6MQz|5kg%?cz3m$&U&YNYtl8QOY2!MUxUvdjPw3YgaRQwu(^egxtM)uq1tRBR|w0n zX(<fCV}HY$S!tvCTNr_enmXSD?>?P%k$Gd=q}8omqgu>6S@+vmE(KM!NgFhr+Q1mf z=w=ZJ4+G#jF6a82apBaVVuI9i1lx`XV4vbJ<$;s8t&$7y36WCsp)llTDYUBm9utBw zl;5Kw5FX6e<&YmV#-L&O>BYD@&=y$ZU3)xLm|UzMid2S+b&FjJuPWB}gkTKC`nCv! zSFw7urQ8l1nNrt-O>RMIf>5op+rv@UdgOAM<G^9oMb@1Bf?O-zzFrC($@+?mm{-(S z?JRy#!V{o28>)8}A0Ze+t;!6-t3h_zW0Y#0x8s`+DbCKxK%bF}s-3~r7mOoam8Z(D zvrxs^sMf+fPt7;cJ>P1>Tt^{rL#ei_1_7fQINy5k<j`Tb8fh%oOg))!-1h(*4mK$K zn&P}X=CYHQU1S0SUUjR&C;~S|6RK6KrdrvXX6F@I3-c_Fq^H}KMwr1N2J=oVhP)Gb z-qqwkRyY?G!nOJyWe8Dv3G%PW(0H9X^3J6}l-A(TW7rJp(N<+C8N9fx9R!R>nUp-* zW-GSZ`nu1J+&EnGD-8weNuF$Wv~!~rQgs+wCIq9ChfB3f7=%ZIrF`h`vR6L(4=W3N zTEp&BU@3%Ax>8xVf7ujipw#>x$W^%yFAw15A-p^sMc<q%6?c9VZytk-)$U(tS)6WR z&lxL~13*$+<_AzHB_M$2T`SEk4T7(1j}72*-GXuESp>@FMASA+xj?i=R%083uZ*Y| zE?dJJS?w`22-mpGcdKgwfnPcCFfP}y$$v@DM$qDo&dbP7hc7`{@-j?CbnG-Kcsv`L z-5Hj7@U<v)fH^Is7uMe2npS-=enJSwu)TjQ0^woW#pPNH-BeW#su#ZXo9pdimVQ-R zA8rh^^9-pif0*^W_Ao2Bl}JBf&*S@~SAWJCAOvHmkERUbO4*;>{lzn-FG*<+$W`fu zm)>~kgO`4I8Gx5TcuB#_P`nJs%SgP8#>-f|jK|AFyiCH&WV}qp%XN5}j+dEunT?k; zxLEB?b1h3UtOZ3`m1F5gbEKJp><t}GQ<jn@&Eux52{&c!AW<Dn8JBJC+o_Q$Yf_hD zKwH1Qwrw3O$e=pThUuxfl9@O4<62W+CsYA!>eBUw9&I-W0U0*->qQ_u7@txR3^qT} z4RN55g4!yi9*(m)PT!c|?m~4^)5|`gdN31|+pD?>+9L#GsFjCBAUtU0K@kiCt)yK+ zt<Vh_lKM54?=*Fs5UK!E$A_`i)$y?qjG;O{5P|TZj(0^c4AfD4CDl<jU+TlH*6*4+ z{GvsyKU2pJb9Ht22*DVtLl%MXppHf&7zXNCc_r1cYq4Z<q~6qwtHe)R81xjX1RF?J z8V)4ggn$f{k|YA*K`99$7zRqozJf||T)f#t$BmbR-A9uansU;FD#QBA&KcGF%Pb)n zL)A<df$*T3Yeg^&RFiRKRa501u<bRi+$2;FdSs-Bk67L)gkz|dH6jom)Urwh!$2)d zYpWLaRH)87!+oh#AhmY<ZVz-kYmesUtcRwXCxj})%-K>ybM}}JkfCxO6@l=eoZTWA z2FjUNTjkWpytr)r0IrV|O&_O(%FirVXl8W__Nfqzp*B7ef$*S>_eC%av@yN5+Nj5_ z66Yw}5X;pvQBzAmYtf0AW93of*H||df-+Q16A=gxsv#m62C6Bot!nC_qtJr2vdOV? zePjBkO^W2YnXT#ODxsP%6IN<y!g>e+8EU4h2!sdCB#K}dXeR3lYo;sxu2@o!5H8TP zViBqZYQ=Huebru9Ge-!;P$e@(AUvpKnh1u0N)}&9mB7lS7w;n_nl|i06<~d2v0)!6 z7XmU=$XXEy4+>c=f?=SL6}44J{R}L<_#Eu5O>tZ?H)@L6FH{kxm=%VKd0Ys{P%(Q& zAUr7M5fKan#muR#V(MjBSth9yu+5r6J`<_{DufQ`U3~&}QV7OS9iNCmcu>cOA{Ykh zSXEnf)XOs}JUGNV$X%K~g4&4Ayrflz9mHP<$WSA`48r46D)$pGs1a@PcFDe|?gxbQ zCqk<nE8>rfy0|J?tFuGUd`nTsc7ID=dR9KTl;m0~?KPbyig)Ew3$IQ?QFhQoS!(E* z>Ml#YC@=MSwezfy+u0rv=wz3FlwlMu*zrPDMzdfb*IJ%08Y7gKp?F8OX;gY?&kbGf z3&XgIF4a}4nI>1Q7kD^dv{0zNYz$mQ50_Pcol%|;kfGofh(LI76RxA+jOFIxgwbY^ z^75CstfEJzNf9*v`s$<BEkbC90^BG9aU}(4aM0+0NLii2JHA@#T-5{XNg*IZx$P5y z@Nm?qhK6@(gOJftqfbQ&>lED58>FPFg8N7a$WU<aGYF4^vfhy<-RJTiHo7QO8`Y4p z&KNkhdT0Dy2+dG77epXDOd)?3!KgZg<bx+yQB58wJbzDKY`ksPgu(K6hj2O5@i~V_ z2sM8rM|szvXlBxIZ&dX$&#U>&QQsKRiLk*8#N#QX-a_bxjjbnx&~?O8_LdE8^soOZ zo$I)f+r-#OzRKx$I8&%{YQJ1rUj0)D(}aKwr8HFp!o&D@4VUz#&diJ_7+%jIm5P+w zY49)JB*j)W_{)WW3?*110^z}^T@DFe(n+MdL@MJHY(;AIm+<Wr0x}fr9U>531?$nq za{Fv#VqIpM+mV_eypI-_%S^kD9o29a>1`2NI`ta3p?ZfoCIn=t*Vh?@&M<qk%P3dP zWMAr9+xVbSm3N;QN77Cs{UlUz4=e84pHDh3l%1iROTWKV4A=bPTdu21GVR7YDRn-d z)Us_YCmv0hqq}ZeTUwigNzG~tU)7D?b$TV-1B7ZLiacALs)Db{>Uf=B@_wd+Q1cf# zpH_q666=swY^GfQZl{mjW=n1yK3^Z@L7u$!RmG_)eB(yRRCTl;E(B!QsfLI^aDi7l zh{J`dQw*<2&3bVSN_^|LCJ0sG9uDF(uFFaae75J-xEWuMZ-$Mj?8LX?_i9`5t3*`6 z#x%OAp!&LYr4Wo^qgW;a;h|A15y4;$#@&N{b&cAn$9KZMQK>#TJfvx3w@~?6CtYp$ zVB`TIAVYoJD+1v`A9smh80aJC3hINl*et0&La%EId0(gkOd&aj3VBBe$WS52MIbyV z<P8yw>Ix~ghZN<fr{xvrroo}l!fZGNh%d9t1T~HIQ`TT0DMc8RN=hNW&Evsx9;9R7 zqbL|ORxB7aQ5Ip~tIWUvPFHcF4THwYEPhvlfv>WF2l$a*$PmA)1sURJoFKsO2LTb^ zwLMlURq*}JK*bje0}Q@pa%?y|p9e%dxpn1KLKXh47`10X<;bO_J~8UpmUg#i6K zAwW+;2+)NM0(6&x0DW^HKz|Sj&<g>AHu%sRLVOT6Hk6rpxI_B_K@NR}N<&LgGWd?Y zFY(OlS9tjbFK6)bJzmb?<p;d{gqQ!|<pN%Q!^<CVv9gLGi1E2wjDcqoF-FysadY7$ z#brGjM^A2*qD!%M8zFnFZ3U~Q>kjMdy2FaQ?oa}*I~0ZM4rSuHL*cmYP)e@53#D$i zC^#1rCFr_C3E~|#l?rx**>#6!nO%2ysM&S*u-hF<8F?u63OI;Zs=vh}i7qCdO?2Ji zAw}06o>p|-;ju;69iCrw-Qht-*Bzc{blt(x#!}ra9&&Us@wB7s4v#&$?(qDh>kbb> zy6*5qr0WikM!N3sjHK%h4@)MyZt>Wp>kiLPy6*5GCA*{Tw@H&*t_A7YeI}RW&dblK zbX2ONZZ5o8XPY#V1O?C!w@LT5zsdwHxE!J?z2TQGTBAl2lzu>(p!7G<yKk3zTr-f} z4PsY3Rz5))48O~j6u82CdMFEEK86$F6_r`5#x^R>qF~$bm)*Cjv4a$A_Q&5LB}l|- zqStPhZpHBYcIh4rx9*U(`B(wbK9ina7Zgip?38Xn#`im=9T;xhCEXK%W)iw(C&gl- zgYJ}4k+JDcX%U8gcS##Cy!9?=9Y^X<%kGvUX}`NA3o^FfEiJ?_>>eqTM;Jmw|7aXd zZ@ovFj|}NvDI3F_d!<|qKfc!)aR8lok~E{U?~~>s<H&td35Nae=Mf*eU&`i)!)gA? z#x3dDO^to%)ektSBaj+HUwlAX5X|b>)n+Y9gExlTXxP0{XPWh(lz@1fACz(fS%jX& z1sU+ZX1eP^sVg1$kdz#PBZFFX5K=q3>Sw7n4b3D?>CT6wBustmA*mpMr5=!BP0!Du zn`9D&QT*uKhb3Q{G@tm=WxJ)}82P!~Qb7=lJTSvL-%^}YL^r)7wbY_daY`uYfyOQ9 z@rNY^Qw?}TD#h^GN2FyK_Ip%X%p;DYX_I{7=tqxAHe^iPBi+Cmqv?*#joZ>+_ecfE zSg@BX;RJ-LF;{SygVuq=90WMbL4d;?1USq=fWsUFILtwS!yE)S%t3&|90WMbL4d;? z1USq=fWsUFILtwS!<<Wo?YRt7_ep;A$H$~(EMB{PQWl1%o{*C1S>(L5Pa1}lIZsMS zoHF!rX(&?GJ?_-+U>Z84NhA$;g14VVPiP>^)uc<gFb2@mdmBg4x1W`|(6R#(2z0;H zlCy@<*e3&{XwiNt2h)7EUs{ae%zto!9{Y#10PhDJ;F5ppfRvB-2~Tl(ZhuNzh4-;f z^K`d8&C`V(<W2RagFN1!YFO|LFYCw8aQcL2rD9C~;<KFI^^mlXw~rp#xdrg4Wg9*I zEJz^lIjJrE{g4!bkpmC&_P^|~l<ChJQ@3pRUK8DWw`8Uu*FYM51U{z&F-ITa*&I9~ zE#@t}N3JzDt=LA7JqwZsRMv#IKPRPO^uL~y7ILu+rQM223%dS!E|%Y)=VHiufmi>- z7kF`py~yc%U*vr~@+DsV@|UEi18`R3v>Fp%mL^~hJ6@LNVkjNu!1+g|JiI@7RAM@t z{ZHQF|M^d;4C!NE;qeZ<!uh>lmCAStN79{7`n06)zRJze_}8Q@eoPkKp_B7Ym3mYP zp*xRC{<O{OQdfkV_`0;H9Zs{LRpQtQ0iSZPX_l*vcE&c^h8{j91<{B%q@I{|^c%br zzVe2Y%Zo6E#{A(EMX!BRT7nUdy(z87FzuLhGlpl5@wSnFoVSH<j`KE>{+3h{g7Z07 ze!Vci?zGL@(hy8(d7Ibv<lE8&zs-#sNsaK2o?1$p)5E1Cf#$s<`SLPMrXl@&TTuTI zB$1YV2yfXx_Kq}(x1eF8QirBxWEY|^2GQJiIriRnxxG$#Pr4oRI{BV-8-~l?=k$ON zIQ;=N9QmPS=Z$Ox;?aq(fMB|wlIGBJA4yH<?2q83vyeRVBc80u$I^DZzvp9V3x)$e z;o-ZVNO!YrK9zQ2*ye<^h1XyTUAO>haO{M%i4!K#U449;(-kKrJH`w+B~@T}$0=UG z#M3;dS5HfoNVj~(EAZ!M(*1aU-{*V;>-U9J5rXq&mzalhF`xSy{7>5cOPYw$3;rb? z#4zbg=?k9!8hZZUQb#)I-_mJLsNjTCeVYc->0e3Taq42)wQti_bpF@UJD9%zH_}fb zI4^f)*N<m+c$n-@mwn6a*^zH~sjoXD-HXZoI>WPn<~x3G{a$(`0O$2842?O<+rsT< zr8Sr!?wqt0!-MCfJs9Sl=b`BbX%E-?H3j(v+3<BTy6H!$&z2vc`I~-}W?<aqKT7xW z!cV0;r!{Rx2mK^%M#g(TNw){!GQyebi9e;Q=$?&Ded$v_ODP!T&!44r7~c3F={Alr zi!SW%8%+a7kS_G_1$Y5*Ko4k|dw$_2{q!$f(W@`;u>G&Rg0KH7J%TtZe&b={@4Ugh z{=2jr>C66*9>lQYpVICCT+--@v=SL}F7kqWb&&&B{KW*axigtY-~IzE{2oGr>BqN` zFu$x76N+GdYc*{?Nz~Rhot_HvYe6UYkQFq9kQhWvCWN)kcL}+ZS8W<SKi01$-7FI( z>*U6SmF?5U<S-`K(S+Q>BTlD#4+S=-<9!J0OyBx&q)onr^@46qdBT%Ti7NOsTCtO~ zrVsd$I}vHTKe;ymS8UE&Ui9ZFw+E1;Jc|`HrE$|}_zoY*px*|PWt_T-PI}othTarJ zzCfIUU~&S&{iz`&hE4PeLdgYWC}BK8YB>1{@B2oOuQ<XYdSsD*B<&wbKH!9#sA;WV zC)za`GP<`JVcPE6oP3YCrWVA9;dW}t@q(ksCx~|@ioAv4;a21`KFL~;X(_hZvMqTu zr5Ul(uj9#dI`^=@pGzCGtTj>l+6wx{I=^UoLmP6^S=;k{{DBZdP9p65w&Vv4XPC%0 z7><bL*>{QKVYr!9YyTf+C?B7NWi2Sm?9+p1K6DRB3({HvOyEjra-rOu&VtdAPVYd} zS=3@W_yrKfHyy}Fe3Z<FZG(B%LJsn164YQrClZVW*xreJfZ>vO@)3qpI+HWJ<jd*c z$6?}^mcUCsxC{A>GfJuSfL|L_;Au=TIElQ+8H?z7s~ka-lgWnxxLkL(fg`EpsxAFU z6I#{{rjAp)l2Mp$M_0luXG%Bn7~cP^h7WWn2Lo`K?@V6MgEz+Dp5z6dQ6Vk+Q5po0 zz38}J1Sf?1pY276#JMZ!`KL%5I;=5CVo^r)Cd)YoJehlwmh@C_F8tT7cD9|R^z7k) zR&;n{lE{)=)t4+m)IEIxH2^mooP~L&AGsb&o6?_D@bP(?B_o4Q97wLC@5^8>4zH2J zY2E-5#j~7ALsA2q(K!Rj4YXAu{3;tjd=X&yK=KrZ(jf9w2<~I3Ie=38ayxr!Vw0w{ z@nA9xqm3C%DmdaS+HEc1{5+W4#R)U$uHwK*`k%pM6#XrQObfv65NCP8++Ia1hJ*08 z4k66&eLRFP!)qBzn8o%R#{2lA!=UT38OJDFPH`ca+yB6#0g}$d{J$Gcp2YB;5#%-u zQ%3Ue(~(?@rK8CGNRJ;)?hj!oV;D+-r6>yr>?A~LM$Kc$s1V$zan*JxwG1IW=&|F0 zVf5KCWE`RdjwO%t-e*aNuOStsWw0qw5*>V$m}%Q_ge|ac8b^*|>?z~P8yL2mz{8&= zkYijli|D3QXbS(HNZt&<T_LAbphez<DaKFYr9V4~yuwo`v|uucrXO8H4sgPPEhRy1 z=*QQPRP6c*ba15{xaC!_$S1eRZK7CTw6d)xn0w(91!oqkrVzH)`ECj+4aUtUV8D74 z)EkfLZB5U<1|WA&CEWvXtJRt8^i(njOO|pixsexOC_R7Bw;BEXT9U^JW9Z)PL9OYn z)5v7n=?xO?W)McuZchfapj)SrZuF{YB*mHJG(<!yTjPdKCz+T@$#lY&S>I3R0-ZjC z+(3rIvSkJ_l@5opt^nutEQ>7-z8Jw?2J6~$EN5Ge<!r~Xob5N3vu&nwwhUXxR$=Sd zB5WO7gRNsruyt$&wvH{p*0J^1I=1{;$5vnK*y3v)TYIf5Woxf>Z0WU*t-RK;g;zP- zT`Xsti{)(6Th8XZ<!s7Z&Nddy*}h^q+g2=RyNcy(Q?Z=wDVDP>#d5ZzSk5*S%h`Tn zIonPwXS<2zN;hn!<qEc%a;D#MrrvV4kyx&v&dQ7VX2lCDK(!#Y<XL1+81BR>>8NL) z-29B<94kG$nY7-rQ;MQjZI@aEDW-Of8g*jQQ!?rK*9k26W|Nda9a-VzoY`cgo}A0c zZ_g$}^yC6g?lp&`>d7`v?zD<DW0@y^Oq%QYV5~83$RvsOP9srzUJ2(Fq><K<yj-|r zqO5>gDX~y|x@#_prTKSBks+08eOQDt6a6BMj1SVKS#6>N=aR8{(pnQ;yo_|9UGI{7 zaBHPmQzr&J^E!+;bF#ruFy@X=Nw``rhHvNP3br{T%(ajpeT0oX!g>qotta2Y$Xgad zvebK}2v>gN--P@U=aB?`?5$OENxn}Cbn1<jV;hfgcpmAlPq>|v53O_-4|aR}q83?l z;O&*La7l+(HR>d@i^qoCqv^_Y5~@eKoAFqIQ4m`mkb>L_a34>bzXEb9I7Qm)(>};~ zkt#2S9(q9X33ki+VIF07hI`6AoXkoTXmu~qKE~5ZL?1d$g7vvR$<y9oC2iFvgF8*i zQ(BWbk`MKC-$l|I4~zPYiT-LO!_}6;NQYs;Jf95Glb$zGI-iWtlU_2>Z|0LxYH3)) zfAZ2aUk>tNc@|`9t)E4BjYj|tsu6ZR0-H3iXOaLt%$qz`XsKJQwpqkaAL}h13wp7N zH9w1(^%36X5ujD75nj&H`Wq|F2Q0#tY%)-v>|>q`x<jI#d_p6~(7umJ!On)kkWO>v zg=}I9=WPu)tCXL)8fa&QbXP^k=oet;bOB*oRFT1I<7ABAP4p>+3{&%Eq>HrMYosIX z`Zz4W`Yj;-dK@X19=DJP`cKyAn#qB5#uHM68)9QM%6GZML_?pHnrhl-=)SR7l3{vK z|5z+TS8B>3L9{f7`0AOkwHsdnM&w)zxs9G4s%G<_9MVTmk5K7Mm!<<!Fnyq<9HfuY zT#d0Kmn7-wQLch_*3(<7bk>FdF@WwoAceWrxos>=%}958GRi%xI5lZfA!$n!TFJqB z-1aJy$&yKXNh`UzK1L@s2CEB;@p>ycOdlgbjRAFOOWQ=tA$n$#%4Bvb^%)Sw)dj?@ z2;I~eP(Cv~94)))x~HBw=NZY*t;)R_w-aT!=UU5+-PPPzpBUIp!r?<+PTRy9!T>b} zn3`mLsR!$U2epxX^vt0y*hD>jgi41I!_<uLKe}Z$TIGYugCXY#?li`@*LIu>p_3kY zqDsHkMmp%}*Qj)++NW*qa-FI&U5Xpj)?IPaT-mjy8{5i$dhD4h^P|_WwAc@K7Lg|U z7<2Tw&w5@8a?_1P<v#p6q(An&6z9gxP`S`S+tR}(IY1Ab$y&105;H|9EIzESu^??1 zxf_IBJ=l&|cd!DL3F8m1M??{Pj?7IlHZ=-sz)5lL4S12t?68<zqc3EMO5eJeM5}`k z?%66UVx9ArR2vLJxQ(i{N*19kcFPjdUxi|n)v<K+5;9OvS{qAWFCkaaH;=-!<=7J9 zR1J$?9!tNh0%3>JtOpAP*@aST32}B%7Jp+bU0p&3=<#o1_|EZ<#oDYwRJ<ygoVsF+ zt+Djv9e@pt7Ie>25}^m$7E6yU)g;5>Z;z$P%Sb<ctX;7<3mc**-5pC`T1Ku?2M&Bt zuRO#>M}wDZ@?rExR8g~zGx#mom)@{kGtex?UNy#{H$ce{Bb2^*3`|X~>>H@&$)Y_T zOQjWLf}XTrO$oD`zIysoDjf`CFFpMkXHF|ge6w7O&4w>X=7S&0;;_nxUI*LF$DpjK zZ%O`6d9o<ayCAyhp<i+(?W&4}z3KB6msnzGK`Dt*6EWuNv2<H0nWQHji=~@xBk&;c zb1*R<Wco(xnQzC^U#};l!eMLMS#E~&UMxLWriq4;K8&T0u7+iP+A884yBPhGSUU3s z6+bEy9ty$-5{rs8F|ar%8QiFd%);ypw|qWRL04Sw4*D;ZezFSvD^_0TET3V28%tAP zg8cWaAt7O-hq=Lj&tRtNYkWSIhOHsj>PbJbM%#f7{#0s5pIt+m>Y2ajnQd-xXZ{vT z=RU{t4yMa*AkMLl73|Mgx@xnNnVse9CbdR!*il%X9U^kFZQA^tC6(i-bcZTaI^v|H zO^_HD9#THN)5#6Gk%a5Z>leqx!PLFs6imO>_Q;Y3#-UzE(PK9f=OD)DA#q%}3G3YT z5FSSppLb@J`kB<!4Xs(6rurayW*u>wZ3fvgj+$PCq=U;zTYUke<IsMv_81gdy{W|L z%m3^bRmvZ$mIog@G<T{RA519i<D7<e)nV9wfCwEmL(3v`ilgUmB1_bwFj7JsU34>9 zuO}tN(NH_NRZr>$33o$*0dlCb`Yd_RI68DaS*4HLI}Q!+NOc5YFCFct6)bff6s&B7 z9HAAAMHm=IOE-||Dhwl~#L*CJIuJQtPao#g{0KRc#*Eaa3oOydIJ##GPZUZ2`rb7F zGwzr;oU{&AEeSpqQ6}(`(Ulcsu$l{_Pl}_jR%k|?k*37a&YQ>_eXQ%Cjow10&>(m! z;uH&uJA*OO^l@jaZNW4SrsosS!=QcW7Htq?iRS8K>=`RNM-|3QXEhtJ<tLcvb{VHl zNEvTFYq|X?gFffbnlEE!$5H=EGEA*BK9o^%)k@E;)CM3%F94iMGFdG(BiWc1ta{R- zIPBBc=}9GwG|A1jvE<8DWx-RNW^{b2HlJe5QdT9WKpE+JMw&!(s8$I^zab7S78tl+ zz!T)q?@|+|v>A7uYAS#mOy~X~g}ZTYj^oCkaqrlwnF^M4gFfj~e^yDliOCMK{kExZ zgla?Z8IrQuCBYu}fG9|7&Wyd4HRpc((b1B>q!4F;7<XG7?RJ|cW=7i1$~a4vDI@Jt zt)poh>7u9K9Y_0bCu8twQwulP`{GnXOh{`t#)EM*>2@-$1s{_c_`^_s*dVjQ2Wc~C z(j0h#w6iH`M?)Kv=59&%F!9XR=f5wGF1Uka>Pb&BbC#+n9bl!LrzahBmTw0Mq04-U zHaTV`Is_Wtp^Zt5^c>5441IQoHo;=_7u9~k9?TW^kx;iHAC03Uc9JZ8&abjoI73f* zLp9q4ElBfLP9usB&Xl*fYGHe^sB#rOHx3?zL!?Aa!7S3darBp6<OUUykv@o{ZJvfE zIyV}2^uB%0-=t@L3`M?+EYg!s#L>I%B3tyN(;&2iPKZ5slPEp&i#WRe5u(t+_h>^b z%lF@Lbk;p&nLg?_jFeA9BT0Z$HZ1OUaWv>jz^FLt--OP2$v;$|>RcSXa4&J_Nk7KX zt@n|YdeVQ?YMSnaeTxnEYvUTj|5YtxaF(`WVDvxY=->xPu^#8IIQrZJq(D!C#qOX7 zwb6+sY+|N+UnTvwJVdV6$82imvViA+O(WCh7w4tBsW8Ay=j<j6Xlfhqs~WglYds7y zm@(Jt;lj)~x|Qikk!HH`VX|CLYQZus4!im)x6E2Ga)~}>8#Agzp(`HMRvj#BlUdh9 zjupsmO~h=b-S?1%dYlesx@Ql$UQdc=MTJ)Ig1>W5f<bpN(+y8RmhfEB*G=WgX4(xT zNcR-UT_dw?Huz+>YRFi+?p(mgc9U=~Gaa{&tk7qDwVA%R&%Mp}Gt;cc$r^pEfoA%e z)`oX3mYq{`mRkxdWuZR)Ff%sEQax#;ncn&&8KX`h=3%ECYlaKk`aZXrbaOt;bZvjL zNE5(YX+J!m<#vvdCYkBM{ba75G{wy36%3<dKP*Yg{-Ny>ur$|!#9*-i5t>ChWrfc} zm6^N{TMlS|j6BCoa}SWEY95SaVM55FU0)7}*z$6KbJojv8D?7k6uD6!J(IPIoAe}w zH6fUAJ+1A(veda|G!d)yQ43gR>+~d>nOdG9BUA~NV&NBS5}dOdreN@xG)yyTEW%PV z4SZIs86&MQ)0v0J1blGnY;25PrqXBJpv^-VeKn(Js3l>fwX7ulDLzcqCadg~jyJg% zh&^phJFLy0S)BD|y7(}00y0vCnSOPcq^o%_lEaMCy8i4jtEMsbjzY@wz}a07dg_Qa zr(n$6%sA)lM~@9Bf%NQ9qU{|r?j2?vO`S7RM%roSYYs>dL_?m}`Zi<UWyV#4bJfX6 z_kymrL%AS+82#XR(o8KhV?F?~dVx%cfK{iqPGpSTj4?$Y_fa!nMKPe<QAFGFV+kHJ z<050GKEV@=G=V-lnglwn0gL+&-nMy>(#8;N9>us%LkD_^OjM_eE3nxdQYE<eB{EIT zfzh8c)8;ReY(42kGqt}=7U)SwLBvPNd>Zm@ppVwtSo&8PCr=;w4Kw}iD9P88jx*x` z>!+hIIce25$hnAO5brQE0nAD{SS|7#Eb<3xk>|XkE#4XZV>3PQidH^GI>C&iP0f;# zPBVj8q$ho0rU46Jof=~gig3;X+2OUX)tpwortQu!`WZ9dj)#rHc52D+3AA!fjUW0t zNl@wRn9om6oC<hY-u4dJtme*`zo=laYv{DljQ*QShYcPxK8J3tPxPmmPI^PDK8xR| z9WNBbAEb{etMr&RiF1dQ#rIL^um#wR?zk43{KOrybMJ`7@M}kRy{Xllkpk63Y*YT^ z4!KP!H^z(^0*@~3O>wj?%7$SG=U4ERu}Gle1Kc(cDlr%(U_5(pI~<PLlz<1k`mi<~ zo}px|$XdaYDT6Wg!A|%nS9><<;%?Nq@Hsz}JU$0=v0u{I?2$HmJmcb)wAY|#V_Mw4 zbaD5%xYr{Wcj#Q)_g!4J0q{zx8+$?r4LS`I<AU9lINQZ#%T-)8ySQa8?n+FHD_0ly zJ{Om*YjBB&+)^&Ck6dgvg~s)ZD{*{BtypZB#woCid(_2c<0Fp6F7C%JE*qe5kaTe` zmb%z%JiuYd#cl=)RJF(~IgSY~ZaWv3nJ2X7F79<ME;9#*+_;NWZU!_E*00ejxDuDU z5^Fu##jS90wSMd3I$T`Vtba1o;I~OMI&LJqP0SdkzD-(_pF7dKw@H`b|AF}SkhC1j z(vq~ILQ9@42aW_lyH+Y>VEATQ^Q?uIoJxBW_yV1ENhS6Q<u}X&`O5G3>yJ+K<lCfu z=>@pyRE22|<lV*OG5O}wu2LiXQyRxNYII}e+RAx1R@!}RR!d=eR;A((M0iDlA$GuI z7Ri)~9}q8UW>B<%c)IZ&(vpP5(+A!m<9zTyoIQe`dIy{vLf$1k{g43g&Ex5~cS(|z zNteA#CPDD}yJRv1vG1{<_&stB+#P+7On{)p`(zSF3U}<iD}t_ipQHf!`S(dlz#5cF zI`n6ITWUE1{?c<lAe}>z3c2)S6|`HD>8jb_T2T5COm)8afV7NYsWKszf)}X%EPa$d zvq?lCi=to@#Y884OeWFW0E3frk(>+1SUx0HPANc20eEMBL~NX5LyFBrPkcl&Ib{)2 z7BMh|Q%aChVxlj9OnUgLhKov{kXS#wfeK8BrwN~slyJr?!`OI%@(!onJ|TVR{!ie! zKVz;&Cb)MT|AdU;l(k3!?+yS+V2<+%}dY9WMaW3t`$*=Gnnu?8vl(&(R4;#QZrJ zc_WfHf_vNvaDri!Taa>#iI$y)h<{m}#n_DG%_e&2B#=kV1Fr=Zdn=N+GT5tmWws#& zFHnlUycFP{(Sk?cj?C?9(W|>{FvwjPXBW$<A5V2RQtswO;yxNI;(bWIk4YwhE`LCZ z3F2~i5a|z^=&n;_EHBf;NWlw~DUp?_x${U*B~P;lW9(6@$DA@)7W<IAkLBElm*q*M zJP9W+PLn>q>X<{Dd`3F5BR`<o65cfX(3PLVBkA1Fh+jC1_6#P(3zT87#`KL&VyAzs z@I7E`@P{!LULckV5&XFm;(27^1(+!u0+_zd0fL<gQZZh_XyC08`!DDftsjwE2660v zBK@Bx`o`y=YnIz<NO=unenE!wQoe~4yg(NHFpC7rTsD|9221l6#&`=(ReeFGaFlnE z@-EA73`h9@DR=>t(Htcvo0xd?kCFMYiJHEI;w{f6A)I^y$tM_jFsGbG%4s;@^(E;l z<<UF7BqROsh$RU5)_D5emtbC&gS$PsJ_L^>0d)r#{aBjvHB7L+`!^&@r!ilV8~yOG z5=6Kso<8yw84lEoP2_QO@YkdZ{LcNFEP&w5MKXi-_=a?Y-<$q|%^k-#jD7eUa+9Rc zvEPyh{P46B;2esle|`(5N}+?!kdh`ywL1nq*PecMhAaW<%<ssfk_F4wg2sJM$^!6s z6r?*21*Fe5mRry_&VqXe{gcE&G$_klPPp+b2?hcbs2zRkESU<wL(h>-5U>IrJ4Z65 zMfB?P<PpC`9P!`r^z3=k3#jdXAO#R?`GLIVi%fg(skHNtupYYoM{sdulxW9*_gmB9 zKam*_apzBD83e6=CND^Ei0@~zCuAnaY|@!2ZYEv$3+Y6U{s-V^(u@BgPeE|t7jh#6 zDHq662o7E#cS<&z_AA*PfTz5miqVjm9`=DMCjLeS12gY8a(@$K+8y?9+S9?mL$)@0 z@OSdMG>hK!2RRym2g4v`BBmVdC%14^3~o&;{v`1bf$7QTB8(QZ=z1UdDthxpG8cY> zvhIce#Ij8)*_<dZCiWiG@+UaXJS)k80sNR5fDY}v`8#=*RKkI_Nb)%N&48kaJO_R= zt-nR&QSh4yd9*AS!taB!{00O;evs#p#`3k&0@|{Pe3KuZTLWB6XZlbR`5K@?2{%9h zm^VSd;0k@^f$)2;ue=2UK)Rm3(o`M-zX5KeG@st#CvWk?qi=vz+L`wEhhoj=MSRy^ z?hn6N5l02c6W}+)JRcxm4Zm3trv=J`;P=)*c`XEOgBa$cL2@zNwGWoJNoDj%uzY_= z8PDM!uFqt8JVcJAw}!}}l9fIfB9HOI^L9{#hdR?gL*yCK5;`qZUK4`H?|{0OCmT&4 z4wVyW%P={{2RZg=`d0_=tDP1G@>@dphsjwGn8M|?O&FV&h0E>fv2Zyb$b%zf8w8I> z$VCvuN6PCUcq~$$<;#2<el|IdtZqg-H<Kg%kN~;9*O`V!$vx?^X0m@Ei*y0a0C-Ss zY9@~gXO!QOf)_9^gQygT#cM7{a^^*3;su!S0()el8x_ZrVu1->RI8fHqdBE9Qow17 zWs3e%;KIi;@kIu>OF_21=;0^fam?Hna#Nm%Kl1S6DuCua#bX3v47@;$fxHy`_e<ds z96J=bcmeKk&ON+eiVEV~2;_nzRbX4W2hGbRVZ5Zxkqq8bzsCak*<7%jtejCu2IncL zz(AgNYoy@CmG_PVQn-rV7P;UtwL3~4%n{;{0=`m{+5j-RNpW&}B!ia}$f^fL-zZM* zgk*4yVx>ceC{9j5GWbKW(xEF9FG~`V@d9NTz-wA?P-;x`qn+7w!x-QR1-bWTPEZ`L zCz8PjijmR%Nfljhq~iquRrNAJ^nr4!t}n&`7bun%y`Nez?<Xd%0m#D(r0=II5JU^) zMIMYX@KPlQbcW((8;UW8GW--y8G#h=g6b9{_iW{KfMWTLMh;#8tvAmvDn<_E$;KfQ zT%RCWf1de7q~HajcW2Qf@QfxrGG}PlARBz2n5xk2iQ`N~GI%|KPKI&HG^Bu+6Cn3s z4o)0?CX(?2@LhRn(6@=FnS)GlZDQc))uf8tf^@t<qG3GIN6+J|f)yzPx!}|U?XL&( zXX0R)NCtN%Xl6aAf2<tD3!oqwFMy@04}F?=np|XpOA~`aZzi6m0LgfPG~HPK;oOml z<!?hS_%T7l8^Yr+LJD3W{v2N3<#BQko<|8X!Gr1PIJujzy6$)MU(=d~nB|ZVB!Cg> zk-!qe(Z~*RBD5+NuMAU`#nMmP$vq>|bF3EFVP}lh$XE^T7iQ2RqpU>=UZ4d15G08v zw1Y0enB~aC3oyGgX1H}pHfWe}?Z^e6CVM-1cp#%}L<%@ELB9Ps!YxR_iwi#LNuLlN zeKRt_qX__d()-%WVLZ)NB;y6rj8Kd88k!uI$2R1GLsLu#IhDg~M+*2eE$txp;gnrS z0e7ZD9l&s~RCgl<yqN+z%0s1mI<cc{^}|!LAi>EA^qG!wFQER|5eA5SI;)es41y0j z$@8Rzv|qfO=Z7b0A*wZjJ{B)00`*k9Jgzhw&Y?heW#=IHX<K`s8?DM01fV`K$=SH1 zPAaq&nF~tbS!Z6N+w1b#@dbN?5zAin<@xlw&T;~jC1@)Q{0BPACiwkPXBg=h(!>OL zCIsaP@@yY0yFHvrH^Pz7zY^q@DWSSD6x(na&2w$SZ|v}<TqHtiBXlvXODwqs>`U_t zX;K%E*Fu`nMIHdbwYSL~=+Q266#TyZHrZSnt4lVoI6EgJJ1;XaBR{=37hc_<msWER zT)Xj`3-ho{ZFJxUZ@+`8K##D88?fx**A(aFL0L@2dD%s#BC8F~o=b^xYbbY2qMQQ3 z+(ZyxF5Q<X5Awrf)1dQ56X@@W@^D{uYmJUfl6!>U4e%c4oe##vB=Gz&<;%^`n=F_f zPLe|dS%OEf-GOV|CrM!L7-cU~z!k1bvOJAb9!Cmzy;UU3Q#fTmQo!l$T(UfwQ=UQ! zxVug4Do+S!IL{yjFCdd4?ge1(Y>gwGj&CgbVT=xbZ+~@_M{|JZk%AXb0Q8NwB=9j{ z$zQ_Ac!9{19a44+dbqdTl)l+bzRH(xE5_nSsA=!+ayxeN8>I6pmrklPdLJ-PEbi+F z20n3rUM<gTo^HuYQ}VOHLNVSk<biYCs&W}lr}vfz(#jq%Ut+wsk%t#3#55=BKpN6h zZW72MyoV9MNzT+$ws6XaNC6+Y)4k-G^sAn75GQ|vWN?v_ddZobauO-v5C=(T(l>j- z_{k7ILo&F-LHaCC`4>{a5e_J6(S`ZBc>Y{1`&Y=qi@tm*&RTzqTyTr~bRgtV(Hp!T zSq|SL89d@x34z?CRa#LobTk$7JhJfum=<T9Q(B~DXQaW#9rj&@@)Je_k2w(O+%Su6 zflB@b$>1voWGm0^H>7}r-02xyzJuwjedG|%`xANKA2(r~%8Sa*ODia}F3QeF&q0<^ zqd15IZgPM)J2E?u`^Yhlj2v*0J2}g#xlaA$W*pfEdEg*-+TrBg-A@kZJU`@te;kub zoBmF@1R@z6<GS{D>M{f=;1b6qb)mmgm*GeTkGQY_at23ih7|CETQ$I`-IhoJ*S9~k zRyA>;9KmBpBM;o)@&?N3oDzc+@OXm~&Eu3<q=1*(8#l@^bVmv-8OsLABYf2zbNc!q zIo}U&pw;_#p#wKVEw`u0+3@I(Md^ge@d8S$q>~28$uu|x%Ep)p$ONCaRVnfwPDw%v zxV#M*A|DKAak?P|F95Jj1Gt9Thsv#ajGh<+FA(E)U5ub_rPe{b6umJDxWY-jpm;IE z<siCYm^{E&-Pot_dF*af9xiwGLkiR+x(ja!Eb83hFqE>W0}%$i<K7(WgaO{b7D?#^ z#c4&^@O2w@$WBSYXy7rIFhX9*6AnWP_{zB_q-{pR?1>?d#0YqSI^@%CBjj}EFc-lA z#~>Fkz`YK8!j{qS)`1fv<*R+wrw>&9q;wD+GfM6df>fwR=PoSCwQ7<<&>va+Nr(qd zb<mvJ0MyuUMxBCGyg)8FYLe0PnbGh-kMXZVK3?4T1I9S{GmwuLH~urg4`k_QBOe^^ zu$Mrtqv?RLuzF;yxyS;KJJx{;#)9c*<a8v1uN{cZ#wqiW0v>kIPZdtdMhdvqf%R%b zOH<_ldS;y5$5(ys;{2*}FFz!JNK(3JF^7OSShNC!0Czh8jiF_!@~BXB3T7-DvcT;Q zT0cV{L+5TLk%5f22zlUt$9gv8JcgeAs;Lj>l^_os@ibmI_cUe+mm?FL@mOtH!tvmY z7tVO4$is_Mh*+oVIPZGo;YH*91w5YN4aft>JZ9WVC&?2zc^#6$BM&6Vsy2jq<VEnx z-Hc4U0G`4OEaWwmqE{YIy#XVDQ=Tg|I^_lN)SHkAK6y;=e@zF$ubd2m&j2}tM;?84 zvOLufZ$RjCRG~vG6grEt6_bN&9tdGB{d$TV8qUbukc<~7lZ7t4PM#5+H{XT_r`2@Z zF#=w&&@2M|Xet;~mU<U5!B-C(Hig`VM#2!4mJeeBW8aNzaM{bbR$jsr+=mqK)nj8W zCZMU;!I;2eKZrbV*JGBG@m{?S+B)N*%btQ4C`CS&!a~PQlS6sJJ;(%SJ=WV<!lTpV z2%c~s^6&x)i+S;Z8Afkz0?rn^luu$5@ZvjvlUfOSY&s0eEZ+mj19v{C!CX3IhTM{q z4<Z>{`kd7mMPHo(eTyYIggkKQgO-uQDbFDV{P~>a8%Cd+DTnj&y@))#K>4zH`L3P? z%M%856q$Gd<|57<G+XwePtS4|<W-CT9)6(J0-o6$NC5{w`!cA_o_sl)eibQ4ZwVq@ z{3_YmWAO2#8!{vlenpyw%#la?;bTu|HRWBXWsbZlkUa%`7h%BB@8TSJH>Z4n6!7zd z!Gi%8(UEiIw&5)H$H>DA6tt3BX3O1iiaM?3g2Mdb0!#O<UAw7ypTLOV{0HMr8(L5( z7tx0-asmfAjXb;n$SxNMeb6FDh81MYS0TQ@Xy6aHGE=T#{(!uA|3)&n1D;KnH@7TE zgWUmZCO%o@b^Zpq;28+qT|EAGNCB6?yd?mmxdd|FIpl#y;CQQifS2t@q~Hb0cDt@@ z_GkSgd7A%V4Db(hipRF4CGn-xGvz4G{}uV*A_&Fa!7=|p3SI!yp~F1(PyYa(<}Zu^ zzJkZH<Sjf6F#`oJkY<Z6P1ooBgL#@J7y~>9Clo=wz(vrXlba$LJO`Q7&~q?C^&DjS z3qUS74uZB>qNa4fZZNxy7mPgc8)UrYFZ#FU<S-<I@8G97^1YlAi4<@h+?Xrh$tf+6 z0-l2`)7SH$qcg--NCwYACpjRr&(*4)+8_%&2tiL3%!81pFd^9ljzC)5`?MXLd*Qk@ zBhzfAe-y}+NAG|X@E_c<P`;m2;*kRGgHT#%G~hnS#n}bPcmZ)%=){SRgb^G)8Kd9@ zqHJ<SX;zT0`V+D$b;nrXP6$%JjYIcB3SJ=HHdi`)uSpn8)>x{mF%DiJ&Ry<tqB%-G zjDZ)3ai=TBmKXh7@rn(^2;g=Yx>$aMCrLpHULc9CPLVcCo~2uNHRoX%3A_)X_20vR zMj{2A4{-!_oJ(m!+b#uH{qZI8pn!QYu+Z_ro{Zl<HPQVg@&G@ig4Ot>3$ts^B$EPJ z><NelE{V&R%F8)r5>mh;5hz8G-3toY_8p5m1v%iD2o`HqIHO#L6udwc7Sq@jayOc~ zTps1C`dH8%%VnD%-a!6eccIZM<PCw0HwP1fOXB)6c|ARQG$4YLEl38pM9WI~VNS_F z3OFM|qsH1cqle1mS@i5mczw#A-XtJ`y_rGD#8`NNa@>dISW7EP<xq^`hc9x$ZE=>b zf)T-M5%S&1Gsr~>_$xva)H0Y!*Y_o@f_Rbwi~!z?P^R_t+{*zbp3a73@L+^R52kBO z*RPTN=&|eNe!itLuoj!$KA;^)hpd+4{g4H+xY&iwxSi>SK|5oKmLe!#pdJfh;t`Fg z!|_EiFu7ncR$vV9c+6P?`eKwaq?9qrd^!Vs9XWY5l2?NoZ*WFjixlv5#1hl9YhkXR zv=&OMy0l<vr~BazlrJceuLvO4m~a+hJtoErl&l!n5-sVuwem>%;EgcCu^1H?1N<Ig zM!1ZpaUcaRkmfpSvBTq=<?CQ-uDZ$K)I5=XwGO7`NP%oyCbGEKV%%#%Wh~-thyq@a zFofp^GRhrD0nbO6f8=q>PNeK)ac0xt=V6-0BHo4MyTBLuCV751quh%Wyg-riF`L=+ z!{@<(GUfxwM2|<ioQ~)0V13KzyOE9#k9Ikm$9xni;P1#Lm1Q@}BWT_zIB&+IKZZ<j zcVx3z&U_JGK*6A%Kpyx#x_IdPs3!aeGQszeP0}FYaEiW<5ghetWa5RD{CEXC7{d7i z9XytF460;rHC7G*+uoCX_LyF?Q69_Qp#yU5#pSw`Lb9dM)>g=X^&A4?1prqgXH{rM zk;;1!dEhDeYK3eMWU-GT1so+WZjx_gj*_4r#&{JO;3o-;jXdfbNC7v=TzK^jE!!k# z&^NCR3gNut$OC^#=zl5?{Utf?9pr(#Bp9|__8uPQBgst}JW*W+Zxvl$DgVF9&OAP< z>iqxC+}SgMgsdbanXoS*1X_?qmWWhwyliT#MHwc^02#88g(V0P*M4hQEXt9hD76-` zMdjN{L;*n%S47&{+FDWkwso)Ay|v2k^E}VoCqezazQ5lenKS48JZHJ*-gEBFxt}>_ zVsL@Q7t19h%~N;a-ye!5U#GN?PU7F}?+7_X1j<R&3s?J{R<q#KgrS~9<u(cVJrRf} zgU0%rYaPwvPBUu^e)_e};&Q$zjaOv0-DMRGy@OYI`CsRB2b$i-${%y?JT7JUzs=*C zUmCnAT}KnR*C0sVWnF~;bGKv7Kku^2@EsGllg;$IFaWl0wX%JjX^*MgvfNS4iFi$Y zB34)1u#_j2Qxm%EdG3U+d2B1Dh}Y5NZ9ntptyT%XV+Oas`TF;*QhdiW?hFJpgBu(2 zrF{P{Gqut}|G)FNX6jv5Zsk`@(Mopz&y%-Le&6bkDxdnkRqJ1f22Z|+oBcLxQg4c& zFBmzUGq-HR5ccRcyjWqc4+p>%irA00S=0SDQo1t(%!IqG(LstJ-S&~D<!-Ce?}+K1 zyxSTTqzG*Hk2JIH!L;Oc$MLq49sWVtK@$r+yAP9p6QK`uw^=50J6>-<4x8Jjxvmip z%<S?Rxj++}w%wX1iOwSlD1A7ICYgt}V*-ucEiytE`{H(Ms<``z&<ETno0C+=oO>~o z!tOyb(g%#=*_huRug4h2)-YM=1J+8a-q%dYEAEUAHj*SZNgub~(MFpVH#XG8s}gmx z&ePwZ_Dj;ok~O#7k#s{NlC<!_F%s>ilzXscQj9*>mQAt67Cv(D4d#3Yu(^O^e1|I( zd$D6rmI&ytV1R(Z3Wf+6u3&_Kas{IVj8X740pk>$k8d5Q*F+*WQAMlqULIhw1Gu77 zofvEOV6Ie<6#wZ8NT3Ig845_B2XL_hlIH=;Oo0wk<}rz?3#s$qViRDQ7p=GiFvkI0 zt$9w2rFk%4q2NaG|E2<x<iX=A1th}*`1Y_4r;JV^*Qg6g@8GgP0V(eQ7Ahdk9YB== zQriL4DA*=ok%H|4mMG}hAtb4U)O5(CP66rY02&lLB%nzFN$23vtbpWl0Idp0C<m}y z0qNubR(23!;TUPNK~_6}8+nZrV`&`B-TsHff1P?95pbgd61pMD%?e2225_r_mm+9? zkpEIb+BSgO6p)?`V7&s8vjJ>WKteWv+ZDVnV6%c#0`63BT7Vgb#p!vyw&Y!~A(L(7 zA|f`#?xEOq)G@Y;d4~hIaqg#BHJN`X=A8~;^DZZrd`Qf@6+A3p50}q5{I`(D)Mc-L zeF~lsaDV_Q+L8wa9CiQ~dc=t(kBa$O1<wh1QNc_2M*aT;kvL`fin#p30i5NlPAvH= zG5<!vZw0)e;FN&V3f>m*2Lj8fh(8K=F9kYeto%UjABz2B1!n~OMZsSM{6oP%1$?UD zKLXAwI1gGW9H@nW7u`#G1o($j|DTU~@sS4A9uj-Hf?fhL74#91qaas6Ujn43OBM(y zasU@m;>3~>Hg_ZkC>h8kIYhxw0V4=pLs^yy807%Ya<mgmjuG=%1>*!vP%u%zWCa~l zgj5n)MP*zlV1@&@jEkLE@)9ve6<j7@wt_hVE?01cfNv?dO2B*s9a88uLSp1X629a@ z0o4xRS|prUa*>#86(j}JD`*g~OhL1NHU-NGbU=!zq+MLr5Fq(qa;<=M4&Ykc=){sY ziTPFq-w|+|f=&S&6>Ji)*#RBNJA@dAB<~WiO~Ks)?p1J~fcpttPxbtvfSnHDdhVha zNeGh<iFvmJ*!&2^R`T=5qhkLl6C_~!V@@o&SIqkqJR#tKf`bAMD|lMKGYXCgcwWH^ z0y>T>d0EIw1wR+?DuLB>9DkEx`!xq}J%8)OAVTC`{yPPvK}5GdrQmY`Zz*um4};+H zwh|H?0{mV92@L`MsDOlp0PiXw9U;K`3Ni$IsDLDc@c5Gg5(@&H;qix$jdX$_e^wV# z2m<_70Vx9k{;q(8fdKzhK$1X!e=8s{Ai#eVkPHyua|InF{sTD=x&>)u68r(U6_C^q zz@vcVeE>cMB<KSOC?EkJKu7`U^#H;ONTUbPt3$~*gk&fnRUTaWC?Gi=K(+!B;sN9; zApIRcz5-I-0Td`8;T=Ff2XwI94y4#2kl3+HL;-2*;L%?JY3cw5Dj+o-z+eR=p#vDI zfV6V}!xfNV4xpn<2`S}3$`z1C4xmB-iQ@pq5MYJZ8UbS+z#ZazCk8bf`%h3nQaEHV zNx?0t>wmHmQog}ussd8H0aPj=!5hGI1tfI?n4y3)ZU7f6AYmK8Oa&xp1Bi~G`!62~ z3EDtxbs;?)z-$F1X9Ji^fMjgRdH4o!r33irzvaY|SBZJPf@=iC6f7Kp=Rf37O@t(4 z$r^E4>;TTP)`=yPVy;)vAYhq-W&v#qmJ3*=pk2Tk0d)Lpg{)JT8wA{};1&V@rQo{) z)+^W`;C2Py6L6=3EdsVG_&x#L|L#$;U0il3_<?{26#PiQE(H$>*iE3GTJT{3dmO+m z_*07AKxX=#CR%*213K9LxD$nJjO|Y-An6zq>{md_F@S>#NH_*?NCD}_0G?JriZOtr z3P>0RaE#8s)QdD>AkV1_>AnD7Aiz?e7X%!409X8k6N9vi{ZA?&Q5Q1!g#r?B0lcb! zlw0)t{c9zp+yeNG0@7>&ysm>L5n;Ah8y}n+iy)1#nsciL(IyM*)el0RBLrgO82$ zSRn7H3yH4)-cvwYD}WCakje_+BLyU~0{B<~DXRcJQ9v>(fWIh!dW!qs-;|JM3NHUp zKtd^ie<>h|6u_qnNFfFAnF7*A0i0Dp(kK8IG%<22Nf`xT0dxo{6yjBvVgY^yr2>Kk zVss_bkA{&+*a3V!^m1aXe1bVc0ZE<!`Y0g96ZOArB_wu&ORfUaHUZ=-AUP920Rff| zO%hP#0Io%e6N6-l{Yw>83K-yk4v3T3WspNyjD#|VC?Ne2z%T-=&Y2~k%mG|zxf6rF zi2W-RkhBOHj8Q;ZB7m=#QUBvCNj(HIPF+Yd1TbC!DTM$gDj<yzzy%6OA_Oo+0V#w4 zrV(I`O}&8W4!{qyVV~hdAqC<D7b|EHFjE0Ze~=`qfb>29wgS@l0L)fEnjV0;3P{KU za5;evt`})|K(165QttqKO96>>0IpU*3LSv?3P_a$a4iAWY|xL(0Tw!d&r+2Wg93-l z9myIc+a$pv1thjX4oej55Rg<rx*B-YDIi%5K!XC((f~9mAngo5vjDpPk!l8{Rb5CW z1F&2H31a|ODj+osK)V9c!2n#RfW$8VYZZ|81>kxGq;;YGcY_iVxWMHm1te+#xJ3bJ zS^&O7pq)km`i(xoZ4Tf@Uhl-9TVeA?1*Bbp|LqRwV6h6wW`{tO!Y+3zASDVsi~<s# z0Blu2k`sV!3P@!FaE}5KnE>3YfRrTw9Xphes08GG1tcT^ct8OuM*wyzAk7HCE(N3$ z0r;^3_W%aF6_6?f9*?8|`acOmK=!B$X+Qves(^$a0FNoi6wsxB6d&-|ryx(jlL`t1 z98gfipd<N|l8Cq*Rxm)o5e0(<JfmQkfM*qugaZ|MUI7U<0A5r;0u6xU0_gfDZ3f5* zbr~<<q=HETexYEBfL9e%3i!1G(p4bS-zXqi1;FbBsw{kvj)JcLQx4&4_bn#|(F7-W zTftlbzgIwd31s<41*DV!c$Wan5#|f{zyVyuM@|d^2^>EXe5@oc2|iIk`UrUZMFFWG z0RE<cBo6@pP*5-6UkXU!0FO@<khTHfGrs@u6vzr8=i%iU>kzo2ZYRc)1tjn&SR?*E z1=kA*D7aBTNWm=v!UR}Q@Ld49|MYeU7n<qBSd9R4mI6{B0OTkj?Eyd@0e<~%1Qa-c zbL{8DpfX_pVg>hf2#F}UPe6YK_X`-PfYb#jbg%-F6#xuXKzagz;R;Aj08plYBm@BE zBkB5A;Q&a5x{z1^V2pw%1$><VznOnZ!1)f~gPq{S_|-o$n52MS`U6Z>fOr1<{5e$# zz3hier2=}_4=`Q9NdYqy&|7_YTufkrg^$++T<QR>)@4qN-{ix8mH;~bQ<7kgx||j; zPXWEcN17`Lth4ZOCB6Y%<p3_@+fFPwU(5>>!~|3+s1~rOL&;(xNd-#<G$?2k(5#?E zz;XpE1hgwyEnuwzDi0OE!2un~8-?8BkmRibzN_Fi0UH!-6!1L-n+0qku#np4J!!D5 z4&e6L=EU$GoNIB<NP7OH_usrG6zX*!xe(w4KcE=DApWZ)c)$T{-s!~fBAoNvrQqKJ zeyrd#0lO8@OK%i7=Mg3Jx*KGV0(#L6@KXi!avR_=1@t}}pi4pTfyRH(D(|4z&e(~G zUg{#Cm#7HnH6H?cy@lX93Fz$;V)RA{L0p365`0^N`4Z4e4Y*t*!72%8vL29T%Mn~J zL4t-<M9<kMmZy0DY3c?6O}8MRIRgYYNI?ILA{LXNO#=G=0FWM(5zwP8f_4e$Mur&O zYY?Q0U1C*ml*ScM8Y>V`-$X#&2LW9r2<TKJs58}1Srd96M~t?BrZ(BsS-knIox6Gc ztY9BB@ylN}6^@<|8&lrYuox@(BwzWGy@ZmT_!7>`9@m}f=P7gC)E=^?1b>-|USl3T zWL5V5bt+12ys2}<<~_5^D9>Mg2@fn78yoG^<h3uEq5V5-g@doB4A+~V9kwchzt!kR zhoJ&_BNa`UYo4}Bv&VF2c&ewREcjL`y3*YKv^62S$RlmW(`VGUn>uqhN1F07QPZ4r zY{qxQDp~N(DD<i4>EjfAyiXse>Ek8(I71(Qp^sPT<2CyDJ$<}RA1CPJ7=8SlK0d<7 zrm9YVP2Hke{*mV4QRc=YR>DJ<_U1zuWp6oZg|S*l`cWumlBVLQRpE-8_)+MOu<g@P z{GjQTPu#gay2|m3-W`8;W4)xKSbbqW8ArNWOvy9WXslu}_Ze#v)|y!Vj5WbW=c03{ zIqkQG2IR8u#L~<mYakYNC_RRsrY4Mi%o-v~F_f8yX>Ep`$E=)=OOcS)SEIVEk?olg zP`5)s-3|eDI|NiA1k~*iP`5)s-3|eDI|Nh>1k~*iP`5)s?|KkWuUi8hOGZOgOVg6t zhLy1uwKZLnp0!?`7#@k95xqM41BhU-TjuYqJkK4;krn2Aw<qF8c(vOzfWozIPYH$h zx;^C-o^X4H7SLeQnORla5N}=;tB%z*E{<VeZ2a`;CX;D-id{FE3d_^i%Wmc^>^km~ z0mw{sd-6SmP2BA%bludo+wz23Dc^l7Ji|g<r^(TpTkkNX*LnIA&sgcn8^rv!=oZv9 zE!Kb^t|n??Sk#{?jDy(92T^Di=6ed|AeOH5lv3giD?J4iKD5#^lEUAt^o*d;x60Gs zwbcw;<te1-HxQjbS=qZ>_7g5Dr9RQTIKf*~K{dpt11>x6hAAvNh<Dq}4kVw<K99QX z=g23cx~-)Zzm06c{?4g=uGs#f+dj{t>~WR0CYsf>rQI`>Dl)v?Q&7O3BP@Fwc?P;y zKZ1QhyQd%dUDxgz?4zL^%S0WHxwFmwc26$>MFKK@=nA=$t>#R-r*JfTenp*_pIaA3 z1+;y8!3?=uu>P+pQSBTEd-PhGSk)41ZHz6dYmB#|i6pCYT8&W-ZSbB~#NV^)u^W1A zQ{AfAIXi&0niH!%Ir;1o#?LLA;?2_XlB+qq!c*#MHO1F?22En89&N($UM+1^SjH_? zL#HxdI8UuzYp?SR89szsH(C;%fwoO=Y)Ul55)Cbh`YQUtDVr{dUIkOOseIU#y)eb* z(-qm-$MKBO7!zw<)#RjE9Bqa@3r$g@*_FqZG}3R5IMX|$JE**K9LQv*?UW0%ai?cE zo!D(VJ%cEGdZ+ZhcXoOPQat@ZPd{9+!ygp$T!}V3=ow7bEf0Dk9=fHQmv(yk=Fzv# zUKeujte(+8Jrh6CZ8q;e=qYkFo4_tlv5$S^C?oPX@YTo1x!(RGPqw5erQPUDEy`^> zvO#VKc6kPk;M~4=cmluB#?4*n4|xuJk81tW1>U|PZl22MrRecZ7kYF0a@>y2Lvsb` z*OWDhy4E;1RncT`zYaFnN52QNU-mh7&cU70y8%72+yuMb8+{n0H@3@M&OgkI(a+vf zy*aukdH}`%hOk&oTuQ)oaVYvSXgVcHpyyVt!jI%rr|@L-b=2|k$=>it&iz#M?{M{} z_Ha)*{mVX&Mh|~&3-=4I_a~FRS%s9u?&GqH$sDBoyB$iVczKYTG{rlp7du|yvgeUw zmZ{w9%C_i2xp|5=A|pf0Wmicq@z&}k@{7~0=BX*(zSO9{o#N$@?=$#Qykx334;Rk) zQ@uQzUo+KPC?nndE_*L!lZK6k8kZ;dnwF!m_qps}lPOI5rnI#rnj7NuvsUEx=u~g6 zB!Amwf6B?Lp}=iT#Fo@78k<V~xy!zg2g=5_)~2>r(&kDlnzK{A{fqeszwNev#6DC+ zYE3k5X)|@2w8s2t-Xc1H_G#Xdah&FlZrjU4BBfc9sB21<mu}fBh;wy`$9N4Hq&+ds z%fsbIsl39K-l>$QUFj|0fxy1aV?XIZ+TgOb#@57&=D3sT0gru{4Ed(AAT3|+Di2k9 z3;V66&XqMi-qhNLpNlLmkD<rYP#%L`&YZ6F_RVCE9#__ClXjuEFpqJty8EO_PJD{J z{J!06oZ`)Otv2-+dh>m3mC`XW!?7=4%8b8wxiai|jWNhfov3*8V(f)ORZr!bcFq}O z-!OFvI&HE=qtpe1MWdUlH+8x<w?j%^)Yx1fZ;i=b%BlP^==4<1x_l-c3F;c#=$8eO zDRC;DZXG>Y_vvT9K=<kGPS<@}ne{TiobJt#O0a)RZ9A^eZvXD9mRWZ<<!Gq3B~~48 zYQbKlsYKm9mL0r3R`Tf#^RSI)92)jh{=MttOA{BwSQQ>?O{~PDh!muQ5=X6u#uZMr z&g~7W&Ak_Si{%J<UVNPF+&;-DfbHI!@VtP5oZ~$QM+T{pkH4p5^r~uXNnr5;U681A z^onNe86VS!Hr!_8=DuUDVvOdi&9yVU)2)tWE_0?iT-bGRhBw>O5xQdbMYAVHE^n+) zL>d=GT9+guvOh%&zQ<c5D-w|<@#TpKP9R+?k=h3K8CqYvvbJGZq`D3}PepJuheJ#4 zV)AHhj8r8eI5{<uI82cyJRimD2-h~qwS;AeBSV`L=v)nWN=wh}h=4~@i?5Uqi(GL@ zB2wMf+>B0_$~ID)st)S6ii<<{M}AnFrlDGETo$Qn!<r{lZTL4dwnpN0E8?s0HBp^t zX~A=BdE{HjI^KY6s~ej!rqRLFcSKgywl0ZGqwS+=tL5;^BB;_dK0E<*0CYh_u&hcV z-cp-rCW6D{EFwdfw6-?2OdLf&DyWmCZOW?~>#>lF)Nv$dH8S2%Gg68fnQG>dHHozP zRV}Txi)s@!qlVpja;CTI<V@esmb%_Cw>;+SAE0qDx;*+P^XOx~+>1GOCVCdbR_{5D zO>MF=Pq{2v#6zgdW#`kV-K&Qg516Tebfn8(3adH$q_1C){p(%!N7z2uS1QquUG`^Y z{$5|1L@l@7$86f`8_xer*x7EoFUE9Jvfo!M4ux*}QuC1}zszkvZSuOD+@5pWZ<xw1 zU*u9Q>rJ<P4GrTNJ?fTPyNT@!EPFB8Gke$*%Ny&K^Q{TD*ILVd(EPZ|H&6<H$g;D{ zYhAv<a!<|i*v&McV>_EJUr|O(eu~dIw|eYCGvRUH07+QnwWpiJ<G!I1o#C|`%$CP} zLnPYdwKtk$kNe6cdb`(NYd(A2S2B;YTIaX_+y8}1#?ZoT&VA)Ezug>wLspNYi1A^n zOKZUHWEXS$K3`T^>f~$)*jr8KKHp#|cSpe9ZJylc)cKKs{hE1apKqjCe;cshH$_i4 z);|Yq%glVjH&B|w8?-|~)S=MKdcv2RQQg=^tCn&7!$CX4?0CXC|9ygJnPX2l$6gdf zQ~do2Us)YHHwEpLluxMpSnwvwjZ3nc4Q==*_go{%d%o%fGykd+ONK4`eEka9<I7hy zVRL4$uedKe^t^VGja9Vo+O_6CPx?w+*P4F&eWeJd?Dq}#aIyt^eZ%rN*_XP*wdN=L zef@aRu{Jyc#E-l3yWZLF^L~S#9{%L^7hX;c5Uq*6ONZZ7*Vr0sY_6h}!I*zwNBG%@ z4bCz|+++h>_IJtTt!b;TU*()ym%W+#U53Zck36d_KmY4{ujL<5#L3=s*}dp-DUEY% z!H__^L!vHkTK-5cnlaNHZ!qZ|f5dfzDfjsMA&7eXh2Lb4-kkW7dAN(j@hfy>z*zEh zYRTxFBkJMg6ilcMJ?WF<t^r+ddi?G<S2J1~9fC@xUovNUIsRe|I0f=h_j$rUa5y*3 zxF{`RmEpM1%15$>4qLZG?}4?@OnKAQj~{!NF7oqp>!wA1ev*55kw2f#!E=lJ#T34a za2PkyK$ks=T2@O>oqsltcG**?g&$4&v2jp^xn!}QpN^BMuye7$U?_X8aM|l9o3K;E z9^=G~E_(;%a;R1c|I=bWKWk?$@t2lz>isVJRZ894N!^UOipFLhq0Hq=`~&3aH`8s; z<ELN8O_sJm#qL<*A3_y8u*Bb2rWBHHyOn(PxLO<AXpL|#Z@JsvK*nB9Ms)w6wTh5M zR;|=-Tq?Y}*55yyQ@!T4-=b6&QlZ0|jkW%qzBJ$3eO`L3N@WfpgAr^_bBfV5pSs&g zenU!brl{7R=V~&gNq^rQPWOezY%;Tx{sMR;5ez#wXPh-zX{q~wQzx>??1sCK-LuWy zo7}mV^Y<RtQdO)~*M90g7Nk%8v(El`&Oy+%7h6P2Sf%C+$!xAg%cE*@miqIgEV&xp z$tH8#Qh&)v&O=W|>Jn$DM=58MbDJhj@$piBuH@FooPOJtMY%=l&`q06Wt~5#;M`18 zXP97{IqmURblq3yKl>tG7dyrWCQ*25d|(2FeJ2Dir107afw3~UkGAZq=r%djtQ#N5 zF^^3M<dDNlDaVY7feR=;Yhqv~g<B^EuB7nH#6T(jPwX=(Fvv%9?wvy@eYTl)n>!1$ zn~Ww2x_(k%nD|_*V2F8ZVxX6o-OQfbus=n`#6Uk+%#6AqFphDX8NI<>M%xu;b?v$! z&^I$g*J8AHG#fo?$E*PNq>t?YckAA>0{!KG{dv))IG8?ICZKK=9>7}4r_Z@EwagNy zuaB;PJ*f874JbsI?>{|F^cLZ(^I}Vp=2DKQIrHeOK%c@dCZXxL)GANrjah*rFFD{W zt#^;>8aq3%d@?oW?#=*@T0id$@a)Y$Q}Lqpfgy6(7e_C{VQ<=i7Jdpl74lfu2rG|e z(JQ0h#zFP2j#n>9l+S9btD8>WQinE%jRmG-Gj=pUVQ;Jt@Z6z)L!jg$Zj;ySG8%-u zoIaH*&#njK7I8SeO!<mJ)|y8*1oF(9+udod)OXrU(VgT-e-9<wvOZ9l#_9985L3C< z%7%C5#y}}Mn9L1<9M{^e%Qgo7dDSIctCHwIKB&fqn#N{4|589VXf_Uxmcy7SG-Y%K zMO-Bn(eq*MYZe&n>VRY3^=_by!e75D*ULZNm4+^QFECIhw%emyks`-Tonz%mlW(J0 zV$=JB0OxSqdy?|U?*#@|P!;S9w>^$VMW0k6)ouk0x!u%IYh3RKay|4G%IrbOu39tg z{XpLcfzCeX97F0clPyviIN$z$AR<8)Z>w0q=C3;VTJz!iffD$JKL`{{foI=EzpCwu zeh_GArY3mu+8|H-{Oa1^Fp9etNLaQYm}-h2M*jzg)!#gPkDIT?8x{n4j&aw5AU|dt zPlcZ>2o8`Z`Dv*Kl4Vsvz8lSq1^FF7G8W`+x;_@<oPHV$@~q{Xu^?aXo`sV0h=swv z{Dfp5bK5yI8ug+Xg_*O<XMN-H?$c`LS@uY>`ox-Q@)Cy9<c@(}_2FzTJL}4ICu__j z3xhcxVy4%^U|}v>(^Ey@MkI?pnSU(|4s_L+;&`yo$1YiB+1>6`!UM5j1jbeIV2K!| zf%4cfEtMBdUdnq$bL!e)Df~Z0W(Dk%new3#!MW|$n2M@k3EbvX1&a_gR0W4i?m6c3 z``mfFFjgDZ^F4jmRdMTwRl%+gt3t!((|OA~7~-~`b}+=}ap}R(Sh<w1jy9l;D$MOi zLfBg4c!*E;TL(j57xRYbBQTeU`K?wfAb3yo=fG3U=rC5cKl7Yqy78&d`P>`qOqYFu z%fzvAPWPUCRE^-F&=?9Q9}4jsle$BpQ53)DP>4_U^M^uTr}$a;Nlq@eo#r-~heCx0 ztLdcqXxSV%EIu3>OOD$Qhj`BI&BLKeNifT8FHR+(T?xtQn@@*E$bT-Y-1b3p;%QWi zcH<-4b5Dn+Q<#1vG@8O`M<jmpkx-f3@)lb5TDpu%_+WEmx(W{W>+3E1CRk0=OK86O zdMlSQDLNYB`{z|hL$fKq>!=*|8%IMtg7<qS#P`{&pOM;s|CtcK{d(aUKKw1mq!q>; z3yr7bO~*ofSAF<cXdv#Qzc>~e>S{M@Ucg~2{DHflk6uyJMjyT0<NW--8ZR07#B4ki z3X8Q;0QQ*7HghuEc|P$oqchzV?qs`}OPSG5lj1&D+<A?t7awq^GU=w7C_nRMB+*r* zBwddSLclP|h}Mh}fNJ8B!9r0bS}dI=FCT+BeYrQ^&|**?ikp&yp%RpI_W96oNnK+0 z{KTD4*OVXgN?h#`(iGz*C^BoF2^He|$1jA&NG8h;hsbB{i%u{k<gC5aIoO=sjUDRG z915j7)dR@K63g!5R8#hoBRF&@<QEt08$uWTsAel)%0a_nbtQbi@1@W{DRbkIP=BY! z+_9+V2pB3|sp5DjQ$UZdmuiK|IxC-+J3^Lwj)x{n&i#VAnh`bqX!dP0d){`H(SD`5 zX7$AMQO-t*{;s1hhu+}}dv~8SzL~w=Cyhr{S5_L2&qK4)c(jdXrSUl3n3cvi`mHIx zKP!#9=m%M8U!#jKlATt7i*HhPTCt~!PEJKuTHgWmtuu%Ii=o%Fi)qSwc~#G)jyem> zC#$gtaFr=qonFyhzdvWE{bmp4d;D11Gzxn^E8*N{)3|4U=h?K2h`;=7+J))d)x2&y zO1DsRat+?7)4D?ZU^Dl*RD$Qy2B3mJc`j{;k7OEn#>_k)?LuoJxvn<FFQgUf{)~uE zeLiiX_>CjKLES4H;eoU}{Qz_QvuQprgYJUeNzQN*bF8s<##Kh!M|R!&LR#(vRO_zB zFpsxyHHPVtb4yd08+l+;m`}#MrZ6}5bxmO&bslL7^Z56AD)cW4kC2<?GRt01<4f=6 zFrThCEL6aTW#OUxI?I06vRBj8Q-IEbyeHpkPAm%-_(-LK_Mdam-Otrw!p-4<2u36D zki}#!3zvH78xG)rdu-Rwn!{7FDDS`CEVV1XMQU~FE#bkV`9W%Rw3AB01Y(@-PtMaH zQNE-0uq-h<ZV3<akp9s8=jL$4OW(MpGTt1rYrw7H#*5`Y`=V%nWSibn*VbHL&Y$w= zW*&Jt%+FIVy&UF8fKOhQ8Wo)g^V8|16Vk3RggpF5SJT@&^Z6^`Jh@Tb!T<B;m`xYC zb4zjOz~kP%(brH~Mvu~Ty3YLJM0j8>Uv1C3>{s|Xm;G?0Sj8ip=UQRTe<fVxBgGG% z7${di%L+Sl&GGMIL|9=qy%NqAd$Bow#2p#UzULGt|IL1x%WS|3^XV($0uPzZpH74e zC9^zJxWVe1&xv~XsJlGytT1>MuHYRpyY4#~zI>5P-j+rOn>pjtv8X*ZWR%xTrQ_52 z%Di-Z`tUSvkGcF$(B{Jp*`{z}da<-)L-a<p<C_!Gx!vCypU$s>0~6AV(Z_}W`_@ns z6qwQ*0{LEE?#R?nNbm1jV>V4lA0$DMsT-dj!1v!xNFVIw1X>J7+swja?kQc@O-!G{ zxAFa}(#J~qgZQQGQ|;;8Uxu}(msj#>+2ykL&}j+dB}5CR^RepTqQ=y9n9U}>5Wiqv zKy}4})GxXRxE4UpkUk2*hwbSVt_58fmtM?>a7$!G+itz1Weq0XuzF6+nU5j`SBp9P zGgodGc7!bBj(XYN^wj@aGosaKsC8ZG{0zH&Z#q9#970&ec|H`~hw6r!8}UCD#>lGF zd~$Su^hIz_b9^zTB+%)?UFiimoZ`*s=dgI2Wlb5FCUvC`_K`Xe!huir`?GQDt21l6 z(AafmM;FdWojHWq#q5&Gk-wi)DibGHj`X4u=sg<d$Y_H`Rv@-@n$jO*^LFe28TMmy Ky0*5e^8W)c2t(5V delta 101202 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%0DJMLK* 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 diff --git a/docs/build/doctrees/example_notebooks.doctree b/docs/build/doctrees/example_notebooks.doctree index 6d021fc5f3371b321fb06c102711a6e978cb8e23..fb65d8d15beed4d64684484769f1df231eba56e8 100644 GIT binary patch delta 126 zcmaE=`cIXmfpzNVjV#Xm5)v6DB?ZM+`uYW_1;u&=l_eSZd3yOp>66p>-4)efk|~KL zi6upe$=RtzdYP#uX&@E)Df!8hkMds;<IT)XOizu^$xlql%uAor!;+Jkmpx_j3IS(c Up48l=)RcIzg5u3D1pYDt0Hs7P{r~^~ delta 91 zcmeyT`c##rfpzMwjV#Xm3JMt|B?ZM+`ugSN<$48`B^mj7dih1^`YEYp`UR;4#gpUt o-Nj{Kic0eHbBgscQ%ll7iY6cDzcTrYfWYKU0#2J*1b;CC02R<8IRF3v diff --git a/docs/build/doctrees/examples/notebook_BHBH.doctree b/docs/build/doctrees/examples/notebook_BHBH.doctree index c09d847bcec7347860659b7f5e60f269c472d11a..bad18675fa1ab8de93d5b385faab7c13cc78a8c9 100644 GIT binary patch delta 58128 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 MU3_??yHNQ50FZ#({r~^~ delta 2268 zcmZXVe{54#6vubZ>%Cpapxe3v4p=)Gp|oB1=7cgfsn98dItC>CP;>)a;jyrvEsQ}H znP!fk3bc4NDjGsUqA?LBzKx6@f{7p?f;vUbHc=4J1TadBe=Od6-z$C5CEqODIq%%} z`JQvn`}@op^z$2?2yemri0?3Nanq@8u*ObL{{=nQeW+v!vQ(p#6va{ZETVZT_E76W zk_w?!^d}F@gOC#I7?Dpe^-Ae6wbX&y=t?(aQ|mElGTIRPB#=)B10(|?h~5hjN4HXD zlh9s~6Wbk-(W@+_0Bw%l3D|i~<`U8hp*B`BNKc-Sa!?;nb!s(wMGZTZmy+D>*|QG6 zhrZ!a8-1$;N=fJi_KH`!D}E;nP=i`khDI$wH+Vdc4$UX2^lpgckS7pNqOu$8=y5vG zFXy03Jf{rxYX7XF_f$ziBk2SWbXx2nz-{mV+=8;`kO!WEvG9PKR(rt#GEmfqZ5nw2 z-R%b*-3<a=wH82W8q5`GLG&cgC_s<U6Mpa_H_a?#Aj5uG4duMDh7VDo9sROH<8Ky) z1pfr;DuETS3u5xPN^|8rU|8GfKnZ*g`^6(Jjdy_-V8s)>&?Vwdnh_*sx}u6?qh@}% z9ck#W%mDUz83Vg)1pC4Oc3ubD{1~jYz-=AuR{;iJ0eyN7xY2n7S*L-_E*Z$OByN$` zS@m=UOx<hWS3HSL9s6mIyA-St2I!MC+8rFqqb~gc&Njpx?lcI9S~_x{#G@3QkZh8x zPHQr_M1~PME0LjN-!akUJ<_L^21&Ghos?`j{AuE|9)f>NiJp64o0M!fye!c@ewe7W z=_LW<P<I}aegill@`CV=Nb$lBDRwtt=ZCk!NSy5S1*0G5jD7@8N;f{pM(DqGTo-nv zR@yKFz9y-!)SKE5z<r|^10s|l)x8+}pBLv68M+tm6E$`O&qS${Ou~$b)Tv@GzxNjS zkf<3S;XXh`^y0^O5h~-cg8Ug;W)b_few8wFC-TKR;~jC)JpKoJ#Uk3Q;;C?iXlC}1 zgqi7dQV({Z+SmH9zBpFWjvo9dRGYM$)8B)qNT{8~%h4tt%BR*KdzaNF=4CdjrkQ@C zU!DuRs(yJ6nG7R#P}I^#?6cz-x#5(F&r@pU6+T?YO{(K2u9<A#XU-LKXBfQ8qL4mc zl9^}oBOhF;V<K*xu7g@!_j8(A-Qy=U5)7N@A2Y~YuwXu2UW*wEe}_$KODUNyp<&IU zQnO~!Y;)408n!*@Gt<~5;j0yVI5~01quvdWqX6?TpUEK15kW5$W9|=lFyE^iVKFb4 zSS&c{4O;;0`O#vps`cgMs06#PcGZ@1*zM}Z3Nl}U{o)zT26L^5U|Phsy}nAJOC%V4 zfMz{GH=@x@|EeN4EEhHI^TG!4L9swohu&m>rVEJ!ZVD=GvBGsD_ci|BPPJkY@k@Y+ z20yI9J8rWxc9KZ6Hr&z@-&P0gUWd?nC0E(Xkgn;L>`hvNJakLHtbb};L@cB(_Nieq zGo><Fn9`U=Fr_n%WE#a}Wy)a6WXfW)sq)h7=kG%~(Oi6;do`=;R;8V3G}9QSu}lv! z<uHw78qYL=DVNE?<YdZIZ&f~g@7u9WBeaoB-YKyV7xOosA~wDG%Q5^6V(bT+$>Vv+ zO%Du9^h<9?nkzY9!s@NUL*435k{mI3Q5cdN>qXhL#?L->`$g0X+liPl7H5@hwD_v5 zfX$`8eN{dMaEGWhKgxZ`=~SZ8rpS!K!q(PSUsGFDX>9N{wyY_v4R0uH3O7Y)@qj#M z%=koBw6Sqr#J4saUCp!Tn*;LK*7R`ws&H-1+WM7i!jbqk+Bql(>34(jW;jde;vqSZ WewL)9%#SD;?eV%I_1z(P8TuFY+ssY? diff --git a/docs/build/doctrees/examples/notebook_HRD.doctree b/docs/build/doctrees/examples/notebook_HRD.doctree index 282fb895e389b41478d190cd84a43128290474b8..78910a4f6de5fb84a3b658ba15c747e2ef242b4d 100644 GIT binary patch delta 12687 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 delta 9219 zcmb7Kdwfk-_P5r3oO|=UNp5Zk@(@8tA|$FL2=PpspucG=l88sb%@uh`h_;@i4}>3f zYMatYmGNq)#cg{^hmp}~YiNto(Vq@N9~h?mbf(kRWA@|Z=D0F^;tx4zt-bg9?(be} zuXR>({449~Ut5feOfPNPZJe1zOqT*lMangJgG}mo!m<V1wR1+gUL!Ct!QP)eHE=<c z)8LGDc5%jJ?IH6XnQGZ1NA2RHh^@cH{I(cL)>MVK`}CiQcmU~?T<k#90b}4JHmZ;1 z0Gm=X)j60XrCuZ5Q-6X3Bs#61>0LgNEGQUk^D^`YS~&>1k_x*Y`7$jMz9(yXg^;94 zae$;TG8r!;ZA`;R_wqquX0#YckaIW~NOX8S-as-oygeV#6oqlvfFwP3xcBO3`RWDO z*Fd9dp*Qw6P#6q--IXK4&6s7NLkl3=ob@%sHrjnYYq=To4Wx4SP;=HDE+Wynq3{fa zQ4o$J3}pO?ROl^a%gL@=;m|-T%DfF`hr74tRs$>}9rK1mJ(--BU|DMrR4*eh<@F9- z#$N=@InJ1znyD_r1Y|&7H`sR1V0XWKf52r1njQ`*=16F!FX&$SvSXozzuN_o_!-;4 z?SXjIAlN%>knFuVX^IsuarQFs8$n;#ab~y9JiEH6xT>mtS&cKo`69D%nC&lw4z@y= zMyR*Fal&2!1d~Qr2#Ffe83T=+(`53ul8exbNynO><Y;@i9Wy5Yr15domWfH`d?6;s zXEl=wv0{;mTX7I5#1G)Lh<s4?0_-7$mI&f1?{A%B6r@%gX;3c43lFa3B98}WyWCgG zPXR0;2P;c(rIAd@i?^(hvz9PxA!KqvdvhtrROwz_)e%X`Z*AzRBm1jUapyh5H<84e z)MoWF>@lt?v3aRY?yEJCz?C#79J-my<btE-jzIjvNLI}|k4=2B9v$n<RmIb5s!Hlz z7a0mhxa*um!-lz^9?V9IvsNm^3P!T9U{H|PmgZ=O{pvHl(8nYWS}}=(Hk#x?7d#6F zj4_FWjxzB$Y42xh?V#BN5jK@Z9yZ>FR>)JvY?F+eOp}b8UW<JcoNnTAlVe`XflhO; zcyX74a~Yc5!;~FDWFm0M-W)iSO+0WMnG8kE)M97A{Q4eFTS2`uxS-y(oQz-J9x6$n zOZOpY)DUdb5Nr_$vWaa&Ka&1(2fA@EL~AeI@t{Pc9OmZtn`p%lc-(E<5CnK!;`&S~ zG+ZklgJ|5xarLF=9|NmnOB=y`p#=ew8=IoYvD-GhE8r#5yBY8tbR>;i#*&4rP1xQ{ z&kTpV5YGn2kynp|D_?UY?aexdAe1SiN!0p|j=OEdaaF^S@4=C47QsjxMngEG$4F-V zZXhif0}8z}S`g-ughCC6sr<kJRhjAGG4QxH<41VjgZF2t)-ea=8s1<@Uaq-qCkrU< zWKcbz-xi?z(%w0+#C><iEreqNngtoOPt4T#I2<HND`H5}^CoxNE_US|I|uLRB*_3x z9>l?NmY(6iXox#H-fkn<&JrvJDKZcO6v^+|JjQR*`%CGw`4HFqV4>G9K>+qtM0_Z* z97uPCt}9^7^0C>4;2_8Leh;anVt0l)Ug$~m{t!bC*E3XjWmm=Hl@P#Gc6dOHq-fwu zHE<;YTwmIL8XR=j9UX);sst>w^K|&o^XkCoBs_B}H@}38|9uE;D1mQC-O&wd<V@I# z%}@J)OfC(8bpq@-Il39F$cYO%*i<Na7|!V$&JQ)5hcptijTlZoJ=KpaJgLw#wah=| zODLYxC@kYvzf$Nc^B9Gnp2}qGDK!0QNM|n-;JQFoEymnS<Ci)b4|&657f$ZGvoP8s zk2Jy}@3w?5Cm3;{Mc!?T`J(;ZXa085h*=hXx0%-n(b`L%?3F^sok)WSE|H0=)r)L1 zx}U%F76jK?nzNIZ`0L21E2+5H!V{BKOH8#EviHh$thLBgu$`M^H*_nh;7!4)tec9i zM&b?zlI8ua7Lg7%TX;H%Aognm@lO_!4gP2m+2C~s<NmbI#y=n%sM`5m)fl_1G1l?> zB}Oz^C1d+JR&?LI8E-^~Rb+!hLS)rP;$6Yn<%e)~M7Ozdw<B>3TaRsSq*ZJ#!zyzf z+!<mrI~A5o2Jg9(&TjpB7JO5!Vz-4>Q6pwqMUBX2JYajbwC&Ydr9&*UiWpbRePAr$ z@8tdzgMsbuHLDux2ZsUQl{*ZULfsCr!7B3IGHcsz#V&@HI*xDovfT2wa?2MbB-#)J z6il=-5JG6hZz0XxlLJ7tE*KsMaBzi4Gv*{Ar#I}-?5=p11M8mP`a45*zXx1wBi{Z3 zZvl+tHf0XX@KI|VV1?i^pLXqL^8#lIdtmq``OrSU!cJO60C{{$G`+qV{4Ke1M21AF z3nQCX>65Phx;;cg@G3sxp8A=-+X4C`_2F?8tJT_k6#odRgXsF_>KE7ZqQk^r7@Ac+ zGPp)?iezwk8_S{}heIB^fR~#zqa!3(Ka@Z}@M)<x8$D3?7gP3lG9~R%o0sq@6*|Ep zz%xGLJBe=W45RRCu}BgZhDAV{M_CpDBk)I$QvEIhCW@*28$ikDcpH7hW#DCHs&pQD zJqmhZq^}5;PQD^oI{1p4Kz$<`Mgu<TE25*Hueb}MeOvPcHbVppGsP=IFH@EB+;OU} z43<J)aeJzbUBRi~GrltQ)pD%0zUrcQFdGA3I&-_7_$Px^T@w%gH1OPlbqp&j8&}KW z`Y@{T6=77!AhupMBEwf%mf?+Whrl-pG<bV`RrYbx0oXgQS(V+~(g|OcRft7QD6Fee zrdbzh_%m)@D-QRz6~X~6G{WfaG#MITUpE+1WO10pr80VzKXc0oezHa!$`#RMb!ivn zsFdsYfSz2N=CJ!cgbzjw{UQ`fp|Zt#nXt}E!p~v3&iYr}$_suftNgM7Hnf<(AQd`7 zU@6xo%Yv`$VHmv6<g!M{(H2OD8Kh*D6?_W}@Qn`Bb#D5CpUO(U&PMvnQ0OVD=AWfl zPslkwE6s8EVPL!?lI4j(FbTW)OaG1WmzO;&=%xS;@t1DmZ)7mi{8d)EodF!@FZ{$V zg*sYrfPagh#P~ntXuOehl1LV7NEQereN|SyMVRqr4M_|)O8wQ9C9uJauS+D4N}-Mp ztmjBl9ShnDB1eKaqk%Xr>7cwcql=yfPi;06f6x#;$&KIeS6NM#3TO%t+~iB4o|}K@ zxH;WcSknY7+LX&8f`4Bn2gqyY+<f@f0Ap!-0gP2jxY5S~)J{vF(1?=-5_7E((&KYl zGT)d0&JA;4ArwhQyFI**WEnRb%bHO>G@uS*kgzpb;jubE+@&i6MB$+xs)P3xd?P^I zr8`)e&bm=A1<;%I&<j>_BU%SV-k{z#c1gzn8Xz6;q}W-qI&B>k0$i6nQ~4&Y1*jd? z!<T@pJHiXlkA(1^on4VTJ1LB!{GR?VTRZKwwG_4}+ghJMzBNds<7?Rs#p??k7bt_^ zJhzt}sICl#@qkkV2<2NT)Vp40AfuNR7LNqBmQE6x^no|HH$T?|Kd^>I)k2c*Dly$P zk>y%4en*7CHPwd}{tsqR+h!<<C}-mN^{z_x!}SgusjoV=1?sB~+`>`D(TYB3v}#qy zsz9*~y+e3kUH>wwE4IKcu%2S8GdeyG6#1W26j+pBI2ElYWH70pY=v^bD}kQ8Z=r?T zVF=z7D<pBviS2OOGvdxf%s{h^FE5m7JE4dxMeaA7Jf^(q@}rG&HJ8nOow;nHO`K~l zn>g1Vbj>U5qmwzb8t?{u1~|$lymq)vQ~*h~){d-)O<w_c8|=glPQpr?@Lwq77LwJS zZ^4@iF1Jb7iQ#x(u&HmUkZZvW3=+%oX;P?nouxK$Yn3q=ZSs*PC59s!hL1Uh6q+&^ z!m0mX;0S)L;h4ltHrYf&h->=Mjp-0aqtaoN=e0lnQ{pR<gY|dVS&mPu13qpm$e9vk zw;(Ok1c^)|ssJ1kB#ElxHq(Mc1%Ts%1W)s%OwZGRAi+~iP#bw#EFmn?Ak5bw@a_<8 z_$v&e`D0jvfVYM`uMYf;hHV+gu`Wn-hJ>1=Z{__9h1O(3db6Y}?v$|qR}R<HM>uSa zzWHs%zD{C4qhUWSu*)WqTJe8y3-JdH=qudvjUdq{qTBaD3|+LFeI<Rmm+h^`Q|!DW zpMaq>vI*QOYaH1SO~HcbZE~KT=zmC}Pq!899tpNzusrL&!Sbwmn~1)61)ihx^Pz|5 zNs*1BoM7n$`#6rQV9_YzV_s$?kKzy8u}~sylq2-qjt*|&wr_A7{o=5MyIO<0Qoxms zBlY$z(07hn-W|9@1AL6b*&0k)QSu{Y<5}bAXV@p&atb|P$||~M;bCCEDd55Xjhv$A zdNbcas$*qa!T%z`U(vvSr*X|nmPRnprl#iV+F)iV+l7ec5gl#DmhKUMn*eq`Hbb$> zVR~+F>$v^yVeq_DhRrPdn<M!0^2>Nwh^SsDt6qxLMFBV;=&r?}sH=VPHoznuW(Nn8 z7eZM{vyqQHWPoxBGgfMJ1i}Qa5uIZk79tc6N@b4-T)bn%z7WDN243US?PQm|J2r%f z0%v20EO1t|$0G{7FZJJdNW%9*M7r1#(ptJ;vmWrlm@ny|=Q&hf%3TOiZ$x7kggbnF z?MrAH-`y`Ebmb__q~~Jss`_dy4gg>|{O|0HW=pkx^Z)j2-f@A!dSLqSKBA@GR1D*0 zBo#yKf{HY|j9}4mnZ(r^(mHVtc3Bm%!x8w_N}(R#1low$Bf&M?-Wq3VOxh;MztOy^ zfg2QF<-1X=abIcl7=1Abo%fVRhuBDcY4na=Um5|sybycdQyOiwKh&RIGppDai;UQ0 zmo<*4V6NC@1=D0#|NRJ#1FjV%%r;I@>($cl&Fbfm;(D|Ogo+}|FSMn|+VkJ1y{9|H zUTMss<LD+c%2VtXDo!ybRAqh8_slR%s<<x?3FW>V){EJ?zYP{c&qrZTUP8Ch`}j&b zgHpbjjO>z7%A9!^%^Znm)s&Hl!0vjc)tu!bN53RgWo})Lu#Rgol$%nhcb0`*BYy`} z!f>_8GmJ`e=g@}=8V>WtBn=-*8V-eeoO!(tou9(cU0~>V_fTRBmLfg2a{?PZpNN+D zBdwBlsI8DY2*?H4%^}jIZ;XTQ`94p6`yMCGWP|ihoaWFwF%EFBY;tdXALDqa6L(S6 z*e7rfqSK*s;!1~fVkS(OfSDfU+6g!xmr7-nQ-EeYMvRZrH5vIEqgAfA0BOroArrBy zXDJaZJEbzhvlJxgR$?!ng*s3%VZWSUX`VpO=HWzoDi5c77Jf3Hx!N(0RrRNQi~z0` zQP`cIuZ+UZUY)%}g>_6b<Fsa}T0R-y2eo7}9s%nQY^!YE|BF@Q#m7%_%R=6_>i~~K z`q6()#YhYc6Q3l0Vd9g-N)NI>=pa8u*a;8E*f5b=g2Gx0M{5{6!4UFnczXj!-AYUj zQ>eR$-817=V=;b&xFAgZWCs2LqN1GD)fKY`_U=7*?%c$RdDYJHvc&SL8NG{&=k%^9 zu9!_XmEfqbPR*mL%gak=CzcdfPv@hk)rBVm{fcKzEiNi7nKflb@$C9#^rj0l=*XG) zEIt)RKbVPmp&QvByVUv3t}ZSuol=!BqpGB+-c?3ZN-?qH0rpK=7gRi_ymU@U*^Gp0 zXR)Rq8%F1sVwZxa*p72tuLA#{uan~{V}B2j<Kh!@Tw}Sm#%W`nYu7>c>`ZYr@*nTH k{=|N`HnVB2L;Q*VJ&5ZA{=_@xu0QjqMj!Q7DLw)J0R_(`p#T5? diff --git a/docs/build/doctrees/examples/notebook_api_functionality.doctree b/docs/build/doctrees/examples/notebook_api_functionality.doctree index 0a03aa1e07fbe62b9e9666b3f33204bba4126c38..0e1fd46db54f8086224c18e97823580f1315d786 100644 GIT binary patch delta 3614 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 L4Xb4@-G=@K%r%gZ delta 3043 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 diff --git a/docs/build/doctrees/examples/notebook_common_envelope_evolution.doctree b/docs/build/doctrees/examples/notebook_common_envelope_evolution.doctree index e37fd7001b9688004a318ddfcc7c344f026a7592..1601abc4bec9b460ea058f6d7940a4e841787422 100644 GIT binary patch delta 10056 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 delta 6316 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 diff --git a/docs/build/doctrees/examples/notebook_custom_logging.doctree b/docs/build/doctrees/examples/notebook_custom_logging.doctree index a1fda936235c00e7a5fd551fde673f3ae71680da..9f5cafec6e8f4198971024d0496dfa7bca22f118 100644 GIT binary patch delta 3404 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 delta 2433 zcmZuyZA_C_6z1Oc{b(jq6%i3=ahf3!Xx(rsl!-7lgM2gw<NPY1h1viuwyX+s&MlH4 zUC<p&V8h9n$rcym^o@&(vLS3nW1=G(qsf%PKC;XxD%o^%x_j;`6kq+*-uIk)pZnbB zIrrS2Cfyf*QsF&ePy5ls!hsa{J@p~+gT-!vNUMob9c;HRqK_%mSYM_ODcmkGDc@V? zP&z{gyDPFuG}vv)RIdY)6p49j-4wXq8U>4!ipe$xGYf{>BH)lE9GcqV=<7PDS#5#= zyOA!@F|4U98?SVw5kl6%sriM%4wuQjTAB1}1EC(An+Q!QF=7)&bx_(ENe1BOf*86I zb7rtvW*`p6Z$n{WH33e1PP&P9a^hqkqc@B1*N*$eD_7I!5!$74KgPN5SGlwNc<!G* z!~NF~_rX!_amtm<i2`|q+{OKj<-a;5J*QS65pZ~Ew%ElZ<9Oc>@n#qy-j|@eaL|yc z4+~=}GW4)GdM;daNHp&%TraYd8;ndLd5d92LPzIIbcG)6Aj_3I_6L+~;&HRhLOft8 zPNu8%+>GV=rw(*idmz%z)|pWo(gt_zQQV4SE3AYZWr-<paejtypV2v@yteWrAwRI- z5;>m`4CzB>B8ONafm_k0hS7>Dnm+*^22F5ojn8mjJ=b4)Fq$pKd-!E`>0Ak}nXVV} zCo2tWI|$VaFg$HKWH}bnaDkoQf)Q(7k`##>-qXVkhi#H(X$;|ZuPrfAi@@tNS>VDX zDYr^K6UkE8Rgpt;8BXzBI#1xLBq1s<QOZDjY&lxcTm*fpYKafLtk_T}FWf3Yq2iP^ z8!u84gyhOXaTzjfRNk*#r6YUU)H#s1H%2PvQDK}=4J@Y$<yFHdR1DJCZOPWkQUXc- zkI7`N;V=FV3|9nR8<z#HVLyI_G%Q!XuANQkkgDNuU@g6=YRDqnHwQ-(iCZqy$72a5 zuININ{czopY1BYg!=bt&G81+;swHO<xw5fJP5lFjr1Ll{Il4gP>dq2TT@nkHx=6hL zv|r%jYEavs71zn2RB_9ork+<JEZFe}d6&hfz~agbu@gzwD}e?-A<ZnB00RqU)L8tA zXP~5Us@fOGW|qz%Wjvy)%Xpx=8Xn)k@|_1rIXv2V(D0+kmAxQxWzXYRNZFGx(iAY< zP^bJPKDn5(*o`}%htj%Cqh>`Pv#iMQKwa^-3Oe#M=s9K2hfTyFNql2L8bdvgs3V9v zNwcJ1E%m`>6Z0gi^@%4E@5-?f@5-?2AR3d^nnM>zswomLd6pk7`4N%3q5=Qsd9L6l z1D&z74AG}5!)@t=d6LztdJ;ytC)+>iKu>V4aaF1$@u)Pe<~Q@4#gd3Pqx~+1G9KuP zhKCVO?OUqV^BlhdX&p|(Syity5;v+3zd}Yu!BEE;!xeSP<uOU6Xr$C9Vf!#@mc+y1 zW-C;7n#f(w5<BZ{RnnWPq;a3y!s!b#K6F%;xuzqkrfkBfrVO055iR&i20oj0iqPAa zCXc;+^W?F&FY(AWLJMR_sVorJA=f<RKjjgj4xF9HJBgEr<&diMO-!oKAA<_X%BY~M znsZk3b0!@((T`-_C7aoD_L>KgMLb+Po<qM>57#2|f?<hLcJ~4&rqkyiE&#us*s3)u z3VdB2a#9)U8luFYoasJA%x0J0@AWN8O$`JBDc&u9m!~?#v#BC=gY)fFuhZ*;_V3=9 z7CSo0@9|XnQZ_pM<v0oSJ(nUTIIGH>8yp*}N-LbcmPWYMlMPv?-=Tvte0w@8;w-yZ zL7~>ivMufl0z~wt(H;?Udu{ZZ3_E%gqI+0H1ShWdRC!C+`;$FoZs&S`i@RTj?%vF8 zgK}6{fg3>z*lPUk;p1yOj!O&JRQ6lzGHz{2bmtjZ&AsAY#{S%sDf`LC5xz?90vutN laTnqUn}WLtM_A)-JC4wn+F*FO$K$W|_??bTN_}50`5$P{H7fuB diff --git a/docs/build/doctrees/examples/notebook_ensembles.doctree b/docs/build/doctrees/examples/notebook_ensembles.doctree index 5bf02920ff77ada51444b22dc62c2fcaf1482d36..cd6360949bdd7b00890a5d0bc35ed7f1ecdca1b7 100644 GIT binary patch delta 126 zcmX>h{!pByfpzM&jVw+a5)v6DB?ZM+`uYW_1;u&=l_eSZd3yOp>66nq+!fVek|~KL zi6upe$=RtzdYP#uX&@E)Df!8hk8oTO<IT)XOizu^$xlql%uAor!;+Jkmpx_ja!zMn Up48l=)RcIzg5u53IUh0t0A)unM*si- delta 103 zcmaDTenOn3fpzNMjVw+a3JMt|B?ZM+`ugSN<$48`B^mj7dih1^`YEYp`UR;4#gpSW z+{I;Jic0eHbBgscQ%ll7iY6c9xWdnqnwylG5}%oyn4VfZrE~HIPUp?cT=y6OkIN<H diff --git a/docs/build/doctrees/examples/notebook_extra_features.doctree b/docs/build/doctrees/examples/notebook_extra_features.doctree index d20e86f08397188ce6752f0850119f269ae13e15..387665f02bb906109e180e1d011426f3608c19f8 100644 GIT binary patch delta 1753 zcma)+e@q)?7{_^!yY864%IJPrDWy<bezZL*tz&hxT?>QFQL0ANKW10jgX?WAr5uiB z)@>#(QSs+f|JYxS_#>K3897PNNsNEYNYq5llEq~@$Tp)cF*6~WAXDG>4hl4y_|N@# zpU?Y!zVGuqcb~n5emjSl6U=M<k4`dwn>L9Cs;H>pWG<Vl7nrdb=&hb9$q5?{<OHw! zrp-N*TMi2v!6^Em!cqwb?d9OJl+Y4CD#52-9g4!ArX`ew$tp9P36w&8oe@b2dNojw zh9KPNLMi#fx<@GVGG6XsB&_v<%v&rJ8eb#H!kkI(&XOQDHqy7=-_$W{I+}?ld5O<N zQuuE5)L6SCPOEKWjTK%u=waUSlqI`zfd7S8WD8C>xyH`w3GX_U_rwe3q+D8Dq|FC% z_2PqY%d1DvEpOY3o&c_4%eIu_zmSc><GwrLU=<7JYCF+O`Fbrh7}0e_fz)fB)QkFo z0&lPy-fZ-s+e)aFbD~8YGQ*2p3Hp(wA<zVO44uv^ZLt|qBRE@iFc+{QD-79Ol(|?@ zx?uC7AP%)7KVDW;C|fZ!H|UTV-she~Z{$@x4kJqERg#K|sH*(p@StZEl~Z|@jH)6k zD(}fn&83K)DK09)H9HSJr&BvkUTTD5!6eiQb@$8i3Fi$8%|gFx5PgdYJDk}}v$L2Q z=@Yzg(w%@&_Xq}lb-OiFSZ2ByxIkN>&iTCIx9>IL+N>P=55@3;YPfgDWvY^fxyB&U z!g$b5Evar7;G@<?nmB`x@7P^|Q>^oN0c!^#yHiiM(HI%x3}6dtkw>20nWU&*8k&qD z<_m1?A^G`T8j2oJscQUTC{t|shQ#n<;S|3UPsAknde?4Xy=Jg`>)@(~g~z<QvX#O8 zPolD5R*$UaTr;Yd@`($_PZ?D@tnRuST70@~9>rlHNaj?Jrs1fsy|Cur!&klxlELqf zluY8yIN1aZerL1xEO}dP@-_J<KaEO0QJERS*kGcIWp3atXTcHh7VfyY+|DL+8NLkM zhc4lEnU$(vgtlM|-BQ|jg(f3QU8M2kH!&i~sy477{{jf@adZtEt%jTJLAI7r%+|ns zhh4V=doYlNRlkdHq{EL|V7kM^wy3Ndvu<_?vrfDKC}0G;j-?z7a1{oK?=hf#@bsQq zcAtvxSMb{y@A?;<>x{9y3dR)hFAPT3gRgc4G$fsYfv&E5*yAdm#kh;@E<$Pqe+U)p zy?1L6Y~0(A7UiM6*D3V5+`E4UZQm|PQhM0KacMq1>_{J#gu#?!Ff#xxp-z)!B^ZxN zQ7IFR9pW>N1TXayf{PEv;FZwDt!0U1bbyZ>9*o8lse#-WeK?Uilmn?JSXRm>`}lZ7 z0fym&p5ypO?g|Id6pV&F8{WlT88h_36`x*XkL5%?1K)+K@PF#}u%mk%A1fqI;qNUZ x5-^0r<a(N1M+7bYy^5t8+#Hu!Ms7cg<@lz2pyDR-L^>^M$&-PRhaPws{R0JDB~AbU delta 1337 zcmZuwZA@Eb6yAC7y<I0nVC!&e$_f-5n%&#lf&tbN21UwBi)@3%A8z5J-R;ewm$t}I zaQMrZ_{9z+O{PZTjAHyTyuZxkV~LsB5Bx}GG`NqLpw1;2P!s*7zVCa(YO259_dU;Z zp7We@&)vEV*WLwbN}9cLY(e_F0!!s0gsOGu#|5_sORJqQh+iGDp&mL2eYmMqVY5;U zr?6WoH5RLn5SXIy9t=4BQbKiVlg9CyhY3v6U<ICUsgzPIh$Zq~Xu+wV9iFAgBP336 z#BZZA4CuyRg8Q*q?t)2PbVYW;r}v9qy<c>R7JUkCab#KXz#2tla?O-lqEa?|)u+OX zRHO?YK=2$UI|bZQT+A{N1^hg80H-}o;KD6$kd!m*5EP>B-^<WB+6K#?<|Zs&Cp^hD zA~}ttriQLqamnk21lNh1I>)#UWo+wQH2&}vLcyEDjvaIc7wLg_h+Lv&S)g1M)C#py zb%p1Q&bl86%%itHDSl+K9>uqJi`IGi80}Y^Fw&5~V8bYx7x1n9wU&3NTvov4_CRr- z);zbKYIM@su=c;nS-)XguROd4zj51}rtO>DHbv_lHAKteg1;?a)xZTuD|Q6zq)f!` z<vn;g<REqt->>!=*8>fNJT6|SiAo<+TR!7tvxSiMZC)Wh-{P_?Geo3=v6)LiJURSI zkZUoF?SUP#xT`IgZ{ah1x-A8B_+{Jaf)_+S(DU>#2Rgw5xq+@4=bjK@*J~#26%hlS zwbB>V!UQh0Hx=ixzvd(Jhn(aCW~ve1!^b+zCBKBLp#fN-Z<%~3vV|p=SQl(f_DLEO z!cPj0l<?cX4BW;)I|gBunmvHe9c?Z6)pWAS_<RF4SRiM39e0MCLBLSB!YW9-ISEI? zb(SBgX^{BHSLz=`*=8kwiRdmV!{5VYV8`8^l~%i%;NS^A(S&{fo3PwDV68K$K2E($ zsqX(!Uyro#sv9DH8}VAZ%!~-jknYip4L-s=|C{(mG!E;A(6vq=YuxQ#gz|DVlhM<S zZui*On4*to)a0;|Or3EL#-4HOF+Gio$J-xrY?Cs{<k_^6h-Ko8gw-c*6cxsX`eTEq z6GMGxV(FQeu&AdM`+Fu}1n=~;!YsOa8(|zz^;S9W(P_S18avlFq@Rt+dS5CXljEbq z1DQl}ct%U$T(1%tp^ZefS^7gowQ<UiYAh?NC0Kk^EuNgI(bibAwc2;=_*uJ25B{ra Tx7dw+Z0$C?ZHR{BWDooUmnNx9 diff --git a/docs/build/doctrees/examples/notebook_individual_systems.doctree b/docs/build/doctrees/examples/notebook_individual_systems.doctree index 024f940ca81f8237d9bc0e2804d6a63038b712de..689b294ba1e0481e9f33d9cc333d142f9e050996 100644 GIT binary patch delta 3990 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 C7!Uja delta 2821 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 diff --git a/docs/build/doctrees/examples/notebook_luminosity_function_binaries.doctree b/docs/build/doctrees/examples/notebook_luminosity_function_binaries.doctree index e561576c40fc7828ce780a9226bcbaf13ac8234e..4471e89bd2141f39130a269825bb5979bd20d77e 100644 GIT binary patch delta 9570 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 GQurGu0t4j$ delta 7111 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 b5&FZ*{sd<|%AQ!I*?NpURZ8vWVLbXj^{J9( diff --git a/docs/build/doctrees/examples/notebook_luminosity_function_single.doctree b/docs/build/doctrees/examples/notebook_luminosity_function_single.doctree index 019c0078ec2a9213d267912382d284e80e36898a..38c69bd6f06293a2fe8a8c579e1707bf10fb8dde 100644 GIT binary patch delta 5577 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 SVwcCB<F@CQDK$T(p??EE3h71w delta 4302 zcma)9eNa@_75CoVef!>06(WR@BD;!4E$o7_C?Y{tAZpOn*cxZrQUzRDUm_qZ7$}aP zRSbR~oD5YXMne?*VDlU&6LpdntxhfAHpXam>fk6r6j)MiF$(s6z^>U5%|H8g?m6f8 ze&?Luz4yHOXR1q`D$N?r?yvvn)JzD4t0Vr4?9dQ)Rl14>4YKRyD+n@bA_FIrzb?9B zu&eAN?W64BX*tRR{ScLOhx^^8elbE?9(9C_F@egw@Fpbvz^(2+Ykr^gA?`&muY5S< zy|DmmF@1&R7P0k$Ys4^kwl`Rt=3sAxfVwyReO_DwYfRBlJywr?1(!`z@mLHat76b- zutXVP;kXQ(jNzT)WSm6T!@*D~;YbYb*MkrSOJyW>A+S739s1L3HYn%Ee~z$>8LeFr zD{z6AmJE|3NA}zDBUj>$&)Y(cH>k~GF$<dqB)y%Go{Nq%!nK_6VZ{=K5Wc|Kp7XM; zqih55;g`_;Gt8ZEQgUO~qYlc3)P6s!ZtBF3kp}KeTr6r-%&dhBbF6TH7*#504i1C5 zHgyQ%wqA<h>8Z6alO$3fW7UOHvo^iLo(PRGW|(W%iEK$PhcUEI2wKR`Lc3-zMKQ1- zwor`WuZ(2?2MNH0p97%Gn)EF~vq2x1f)<j{NJ(D6fo4Nx+*D#ovcw992;58$oaD(4 zrcQ|ucuJGxqNP<J{eOX~YM822@p`;f1uj!O{!m3_g*TChGfYw99V%R{V!}E|EnHaJ zRkT%T6F3u%FBaC9ig{WgdaZ$SW`(xe!)cx0h0{sn(bb=1)BqutF{puM^woe&&oido z7Cr9eOrLP3-JI#+>4F9as~OWkwTI~-HDlUMm=1%qnZYk+dy`;~hV)rO;aTEf=$<(O zThv4|Q8<wxIfIn+S;Z3mtr}{FTQ#={!-Y!3uYc6y_o$N|q|k7oi>|84MjNJ;kI_9Q zz)mFy|Au=QDn$@711TKw!15WGkQstpFgr8FXPeK#P?ed5a^OZ;7>vrwl0H=vFui<G z?KzOD=!!?Yb3~;v>w*e9)ocsbWgGFA%$J=kPVl#P_1i+1EyNAXHiVu!PJ&aIX;0j8 z43cceAzeO09oOzK3pzy1Rmy_*wqo4EaeJ08!ksKups{3iM@}d;QvbosA6j#|M4g7w z6`?sdRy&lftEuh+d{_q|*3Rv9dOSwMgf~jVgr_GDBD}N}Y7r&Eyy6r*l^U4t&{(K1 zj=;o)9%xl+STR1u-v@Y#l3x;xL_6oPl<`O$m`942$9m3V4d=0n^LSGFwhrxOJSsgr z@Sim7s3JZC6Ul@5Wt)%)|0;V|yv*4&5;jJ5sa&E9-X0by#hb}?zX@~8)6re(#kzMB zZk0y}A5iv}6#p&1#ON{c2!Xe@MPV#ZL9k{#*1(Z%@qM;lVheiSretgnLzwu`PL*)1 z(>q3BWP<Cv{(+}Z-*M0ce-tMRtam1uUlBp9Yj(tHOPRlhb<l_NI&bBc3ao=!0_)&n z@*o{--Q9@sYJqLYQflEx2iX|(=vWL%l}3C?!&>Nr{E<>$S%+}7z!bf0PZU1E5@I!} z2KSyWRL$7!9hluGUUuJcc2_t%7iFi1IUi5KZceV<OYS-+=X#D@fDgG^FYpL0O&f)P zp~{Sc!Qj*@jw*jGo}{HoljGk|HJaVSdM%Snu$IZ?#Ys0RI}cw#;vy~UK{_n1iPe7N z&ClP5#&x(?^E*^T)TM_dwdLYk9=DprafOxA1+T(xDRD=4tHkZxZ7YQrnkjrK_}3){ z_;`QsO|ph3`58;{kYaE)AzaTB{MwV?QJ&x-mLMvH=2NM@kPp3(ZVuVbAlpdY49dSx zrXeheOe})v5z7x8x9ugk7<&$qNg|VB42_S$(d0p782m+?8qej(v%Sc1B5Mh8B0HEf z_V+2maOL-Bvyt?H$U0Ial6_(p!Z59wB7AigNgKIk1GgCZEPpwTqzZ1?#Vw<lh1S{k z72{xj{Rwo7b#dgmY0@bkcap~O>C;J9ylpfoN6zVybdLM|mE%WKd?#310u}w=BqaTl zTQ4)Kb|SNiYzzCK#d&Mj&TH4kYxg~^onF~<Q9@Xdn3`2!Y2s?`<fS7%^zd_vYzzA! zPgk6OFIHirM2n`KF)#&k-_fy_-UDe8+fFmdi_ADxV%^)_^tl=@;S4f74CYAe3`qso z6=NTP03QMwUfi7=cN@bkr?`5qw;GQ7nFkj*ZuxV#{yw<5%C>8Fk@StkMB(E3IR?(J z#LJ_D^SIA=wDSD!-mt2X7IwA;!j9LYks5a1;6-+GDy=V}vP(&7o`Ixj9iw8>F@1j2 zuZ1Ax*6lJJlt8UaKm7w3naJSHxHoXB4g%bfV&7Dm0N3ssae|KB5|s=@v9w%A(qaz( z2L`X*<IU8!G6$fxb(*x2yB9L|G1c6iQy|k{4;e|vudP^BG0v{B3v|*RM<(yt_cow1 zaNS!amGS5gc`k=(^hQ#g@cy}dy(b&`Eym~e#x@7q56SnJOZ$2B0UmvXM(=x7bo7H{ zbP5~~5~Nc+`U@UiL!(c=GP>PP=GMyg45@)fH}U9N8hz<i(Ip)h@Esi_cdmb}#gkZn zo8VgKWZc1eB=z;EMF(%W-IzS+ReqGd<MylGaiZ&?G|Z1FB*2et#$z;YuwVZtk=Xaq zupR>b6QM69>X28FpF(?>?EQe4!&*VMI-TTvc7)<pc)TAwfG7L01K3O+&M?^gFa^(} zEByXX@M8xrF%EosoPphsvXDu6{OCK3jwr6~v&dkuI~;ih@ljDLSFSYW6+7&?Ii}qF z?5HKSqNqGuUIA49I3qZ;-^r1i`+k9Gna#13I>C@9SBCz=wmj3eWYMza8QHdiip|jd zBpK44mZEiV@o55T1WnIav=59uq39yK-D3(VCRgQ_09#S+`$fxgvW*VA&6u6PY)OTD z9Cr0gM<wuWPvq)#q_kGKkqrD+c^{dlt@1@O*;!>8Y?Y6bgV-vUP@h7(KT*AWpSHp* zKcJ8EayxmD?=te!LI2T7R_>(#=w&av=|6fW$zAjxEqmdX!Ao;<9XYuU+oF8i(gI~o HZ!-EnlEiST diff --git a/docs/build/doctrees/examples/notebook_massive_remnants.doctree b/docs/build/doctrees/examples/notebook_massive_remnants.doctree index fd71cbfc44537a8a89fe481f90f4568b0995540c..3b100c3563cca8d60bc8a4a55f6342c29304a500 100644 GIT binary patch delta 6629 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 N-@^TO83w`=@IUqhy?p=x delta 5494 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 SYPY?t);_P!^Tae#;{OLt>xioW diff --git a/docs/build/doctrees/examples/notebook_population.doctree b/docs/build/doctrees/examples/notebook_population.doctree index 2e908a8d3a6ae820a93ec8a26bc5f130c6bf3f64..68fdabe10b833d7219295ba0158873eb88ec7c95 100644 GIT binary patch delta 6978 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 delta 4793 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 AA^-pY diff --git a/docs/build/doctrees/examples/notebook_solar_system.doctree b/docs/build/doctrees/examples/notebook_solar_system.doctree index 1c469f935789e3b5ff3c8c40b19924be7c911fb5..570e0874e672c6100769af9b243c721c1d4af930 100644 GIT binary patch delta 3016 zcmeHJOH3PA6!jZ_2oMSlAJIU-d{jQd1{;?|xHxg>k5WSlA-F-<7(8Y?c(64d+8~tz zk+MKSN~$}}CQ_p=QX#rXB1@H0HA1RHqeyKxK~bx!>84WEkJ6H^qV#v)o3Ud;P^79$ zycpllyZ4@Z&wFp?^Iyqdi=27E{NBBVtLB@YXT)J*Ff=Wyb84et_MbBu3>717?skU+ zHO)O0HXCYEo^I+3N&Jhl9G9sP7LV4z_2$|f=5$K%pt)|II;_!YE3<V-&r9*}OpNz1 z)g@6c=5n~(osyOQ94;2XWPDKN6tm#N-R_dQ(ux#|PV-dJ9d=!ol8IPU$vEa+Qe#GO zNljVucJUD?&(RfWBw7PbDH>r``e49Nptwe;fyo^bYeBcqk5Y#gjOa7)X-q@+prauZ z=aM?J<n5w9bEjmp**sQ92d<!`WbjdeMkV5jtl;@{_dB9(%Ub;qL5Jkbva=>or>LJi zLOO^vqamd9AkDN5XZG|m<ZT6?#_n$Kkg{Pi2--|>SFUw<*)G%ZWx>|PM`%6t|HH}8 zaEy5Fba}IPz~k^d{`h!36~(HMGpY)n-D8*DFE~DWIqV+0?fZzHM%~IThuvfMgc<F4 z?26Pgs{X<gEJC$73yYp6vq|AkDR9M8Vm^<yLD+ny1ith9NG`$p;WzVF@hyqw75szE zGACJubFcQ2D{wJjhd++gk#)>b0%r#s$Y*fXS`YofB5sX9C|I3Z@vd3O9p+!Kwvlhq z-%>8#z)Z`Qq!Q+3SzVeDs)UP}e+|pNO>V+;&ky-I94l$YKUVT9R&s-t%<HY=YB~5l z(8*PE&^Fo5RdTG@T5rFFxS??11?~`a)a6+ca$HI%s#p)F2U<uaTppMu4>DPzT9$~G zWrAiYg}`tjEKT;2Gcb0%Z;#JN5ZY-D?7}s29^ykskN9#mlff`EzU2#I*)q}>pXTva zV>eqy-8%6PF-en^O<Wb)1P8V+o}d%15o(1xU!h*ld$^brm*LBy{bU{^YFz17rf??P zhc|)NnQ>ltihj!!A%uOSs(1mqPDDrvREYs{8<SWmHRM*xHN2lZ{WnG=Y4J@Iu*bU) z^dBHv#b0PexaKd&{Yi7);(!6V0N$8D4y1f<d}GYD8d+eK5n4xGq!z-Xmvil!twpod z!|Q?9NHe@2I7WKlw}6|x1g(=U(w!O$9<*@dMkpHSCPB2-H)Oc##S{-46bBJOFG+8b zZg514!5xW^V=U`gmUWqBU4pS-S(-oYBO`>4`*M7KI?xrc37>GE8X+;{_4)$Lgk}B{ zfnU%pjnz9c7}g3pqNUn2xl1&_TAe2F-7Wp48(X4{aXMvDN*VVjjjN`d<=@x9{*1GL z{^2T4ya!*4H>&<YeNGh#dPOUKzGm~e&je%sN*zL>i9(=^?$H^&kM&B4#-|Lcu@7>O zU;-SK$HeG-i%~b1x-EUrk;T-<iR+}iTu_umva_`{!6%aT#H=F3r|ofh5<q^r=Gn9} z98yAx9GaNoWqXuYB6LM-I6eWJ@<v%fR0>V<!B{*Lj!sXi%O?D|ol;>V*<G-gm&W;U ekS$0;iSiCP383`vJ&Cybl0p$Sx}LhL_{qQeNn>{a delta 934 zcmY+CO-vI}6oq@=&;n`0j}#PAp$(w?r3IrKh=8yFihu|j32mW;%5(y>Fw<57Ep(xg zR2TMQLX5^3b!S3wqDG@pHj;|LpSW=&YFrtkvJe-d@y!enSiPBd?ws$u^X6}aJpTsj zDfQ*5z`QzMjcnr@%wkVdKzjvLDmIUsr3<cR9e``-Wv!(7CO-3-@uD>!?%}+(3hv^( zu>fnGX=DyC?8y`BnxAT586(wtoHCZf64lEX?g3zVuO8+wdVB&NV^YT#?QaF}YZI`b z02XDyt<HS1i(vXlC8T1z{UFg1*}dyTn+8hJ=v3T`s8)bRAsO^&u$6%hn`~q7eaoUt zu{bGPbP!xO72+Lx3-J?Ns%TZO(F2ZRo8u8VM-T)f9&SuRGoPK<ye=sOU-NpHz^^?y z#48OHK{r}@GYNG%B4i{)rRWZuAr@=^1{ZoAaGxeC2T^Qy=0N%fqEhjGHkW%tAE@6l zPPq1N*eywR`%_tsq{kIqRCrN@J{EK$*Y}>$su=mxe{_Q0LIr6_$H>5(HbvRi(M8$L zz+v_%WYZ9Z_>nDzVoV#UO4ujqkxY|xKah`+kt`}Ei&s5+G^CC}lQToQBT~cQkM6R( zQaXJ>!wdcH(b1V{uAVZRf#zec)A0EWT5UnnQnQ8d%80@32oFW@B+B3)duw6?(9g~@ zc+Bw-uEqq@M!7kf7Foboe5O(coQ(;^WQ39b5D(T0`W?-7O3jj&Qe2BRPH}!0_d@C; zY|16vTMYOYb64nlXomYl7w#t=*<Sl+2172x25KcH6s7EFJuU}PO1EQU@J3Qvg4}ru zt_BZ*OD>ibg)=Jz+QrWCCtx(Pg5cvTEtX&~X!eZ>tasS#9UZXry8{-V+s9*ZsA0EZ zb4c)d2YIu{Eu5By@KWeqs?I&+a`*RmhMWU#er6iS!}Yiv9)}XNPPXYvD8H3w)98Uv Jyghje{sR$sGe`gc diff --git a/docs/build/doctrees/examples/old/basic_example.doctree b/docs/build/doctrees/examples/old/basic_example.doctree index 62d18bbe2862b8c8f7a52baad1a62c57e45ca166..49a107499a813fdc1d4b7515806a0f0d9d7744d9 100644 GIT binary patch delta 833 zcmb7>O=uHQ5XbkuW>bqT-84xzX_9uAwn-{A!Hc4xpgnjH`-Os_Qj+YpFWY?XZlMul z6{@yU(K6eE2a5-<3bG&+DHPO$dXR!39uz@5s^?ycvq@V5_Tp*x&HU#-Gr##f_T~bA zlV3T0=mj72wrdjMxPe<%)rvEIDFn+Mp%#lZU$xk&`b)5GTRUmyW<A;&*z6eKU8Xu~ z!dRD&Kaa66$N?`5dVi8}*lzBFKSDdKifu6NlZc6W3C;xtQnsJ^{KWGZ8yYjLTYHE< zSbQJe`y=EcJPUP^dnlIuCB2w0nHF<9s)f3$?6hc#YYL2XGIAN)B;Z{@Ca<x=2XjJ< zY`|BsuhwWCDq@Cw!S`YDEtW624O3Bd-C9ILwtzj?(XB$1T^E;&avY2vIM$>Q3g5)u zn$0#`39eCz!XwYHJBL*f3cox*$PpL`4F&aDfa7M;|Bdi88Z;uDb*!K)`KVUM(1ilI zX9t7k#^L^5VcP*hkw+vvNve(5TjH#uRdH_><S<Ig=vKSH!2&wryo;EF??N}#mf>V% zqk9$KRZDw<A8iFCjn}zL;e$WCbDnu;u6@r_sE=R2&Yc?9qdl@~ZIA2AJ+9QIa7|3p zk4|Jze6{a(Hu_yB5A5I4JSCEC^sbXYfSG2=IFU@2)RK`XRZLbaB#QbJjP{?Eqq|8Z zWu{C$m6=xcL{>E?9Ys<pX5e}Mr_Q!)J~gFI<ccXJTbQzzT)Avv+JfciP+O~-PpisA dO<=%g^ak02(O7Tm7S1<pFaZH6_FU`|`3nWg3>E+Y delta 673 zcmZutO=}ZT6wMuHXe_NwlbOWE`Fd?I17fl%2vQfVNO#dfKsQAbGtKK@GSNwlQ6nt~ zQb9?%qagYVgwV?1vXF(MVi5vD>CPV@K~Y?)FNrA@UETNYJ@=e*&#Uy#g0Lby+BRMY z6Cr#X`UWZdITXWB;tb@l9n|rZ6o8DEk|YQ|0H4pPP}N#t52{&pKwFdH41yAcn+#3x zLwI!RMt_=NrII!2p}K3(z@kfoi>_g%yTj+Wu8G(j@?%4phx1G^fsF_Ok8z0D(&Mm+ zoyauT1XM{D-my;%74abV5^$4<(8TwLYjA0A@B7}~*Y2Lb)03ua*cMeh7Ih(jt>{^S zGS8zpD~Iscc$+7j&xhoIj9-GWBgO8BHU2f+yN(|ofMs!*`_Xd|?yKxS&`RS~WeF;O zLevDSz`U??C4ON*F(ZxpQ#~!KhDCJ}R&iZzDGwR2?ph62tO^_dopc_Hn$i!N&kcCC z!()T2`*i!Q{5R`6z0B_Ggn!bdIp;sYS&y+jF%5_cxeOb)N{+)*+#nL`ye7Bdo;Npn zmjj>oCbk8-PRr$zb26E%R;!6ptxWA=!oHSI=FIEKl38-_+0prkJOGt#`-+oTHp@$0 w5c2VlV<ToEYvwL47czO%ao4aDKaI1-E!f2^V`^lVnMye{z;c-LJ{uR{H)CSbB>(^b diff --git a/docs/build/doctrees/examples/old/workshop_example_notebook.doctree b/docs/build/doctrees/examples/old/workshop_example_notebook.doctree index 49f080853e875625a189e83e44cf9255e3bb2787..e8e24968fd09d1fbc28b4aecd50d5d3b0aa3f4a9 100644 GIT binary patch delta 3140 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 delta 2845 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 SvM?H2>SoLIfq!zK4E_TLi&4t} diff --git a/docs/build/doctrees/functions.doctree b/docs/build/doctrees/functions.doctree index 4043b5890974499ec917659aad75c8b199ae6bdd..9f4ff2a4b7edb7a568b8ae271bfca2360cbeb852 100644 GIT binary patch delta 9670 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 delta 8964 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%0A!4RsMde(Qm|+eSV!K+?TEL zU^n}&i&rKGJZLQGT7gCXV2E*Cy}t-F_(^H+FG5|n{yvfDd|eIo#2I|MtK$0@#Sy1{ zA4HY=w`eDW&zo-{cJ2A+S|gsebT8`{uoHP;psoM&{R2lrU5!6K5A=&4x*Se{exPiK zd<b7_;XkbaU^RjEIV?P~Ml)Eotp*q!(6NGs3a3pSkFjAvVA0GWaL4dV3j4z$Q_sy) z;cjlUzjTE}i{Bf3j?Jtciiali1IE7V1HFto!b`e(oJRM9{|wNjx_1z3-~Cp<bA+fl z_WZ*ja=oAS<N(Olr-au~+dK%S{R*!wZC)dWKmrV6Lx(^W3}gp~z&vsyK#Ld(`6gJ) z%5qV>hF#BvVff2A5?0AyQ7m}}bYfRVLI}#g90_Go9>K~-!C(~a9R-E3MzfBFApa%P zkhkQ(4i_Ux+cE)mf{wCvQ69>MO@dr2?Cv1z6jm?`Oj_1c5O4Y=g-#`KSnqy{)8qbZ zDZHj9)@QKzX}G2MuXE!faERA1tlL8P&~IGB@%s<T%)ZOu>ker!FdTA-*IKMK4~*K) z<uJ|wTYV<Z?yZ7lJn%K0SVQrB18n!z3}H~q)~tow9g7`W-*wPz)Vo0&Jnv4_(l){0 z2rlUM1JIY{ZiZA`=$g%N9!1$(pa6eu+X9nxwhV2TYP(*8abTE;XKeb-!miBmI`q=5 zYGrp1?E_zjqk-t~{%$BR@W&4pyBor_`EP(R0JiweBx)aQhlvc4<!WR<Y;A)#6S4gJ z0GyG?(%BEc7hsd$!o!K56D{E&Oz?r%)Z7kU=Xejiqs<cDq850Ptg*5s8g$jZZGl+- z%w|1LLJ&LsDTHX3kHTC23K}ZhGU$rFCBYrZr|2I^ltsVzj4XQZ2FGT80F&L@Z9dzM zCn@?#uz?mFeb_W55nW;VMxTLbliv=Yef|-=NBqPL#i81yOOP3;TSol&x`3r#gPR>n z?Haywy={b7eU?X9to;k7>&zQ4PI<uCl-qDlUxBlFxEau5zJVqB3iKI#?Ji99@8R03 z_aVSv%upPpP523B>Vs|R=?V7Mzo5);IG)_bZ7A_~Vi$Tya}d%efZZJJeV>RtXst&4 zxJAc@`EG*@g^}6-8(F81klfo7;f$Ts>!;&0I68!UXVAZ%<CM3ClW#ke2C<fSaA@ng zlAnyAe{MsB=`mzn2jav;(ypBjPw~Jzn?xSd!}A#o>qTNa*z@{i5R3M=Oww$?LSusn z!?Np}MN<7b9}}APN62UTZ8f>CC;qJ=q(t$bYr_~4BwK3SXmZ+bT*L8<K-k<a^R(je z<l7F!KTah}^$S#&?m@6{di&M$8C0Gm4G*;3Fyj|2lV%aKq1~xTyF8opGPf7*DkEz_ z*AJe^aHI3-2dgt=KR7a<;2|K1q-(D}O}6TZ^%`meE6HH}!ukx>RFmf(IC$q-LM(8$ zJ-4i$v>5!v48@sR&lThd(M{pQ{vAxgFhEX0ec3&Qv8%~MOKfaOO-*HWR^Pt0wY900 zi)u<L=BHLXGq3NQ;%EC-7FSlY!|TbYF41nSnu?0@>eSNWnz>wyIX95YLAK(jXBW>Y zD1EwcUUBvMRm`-Jj9^b}Bww48ALdUw4ekF^32iY1GqQ=qEiL5V@cI8wP-pXRto+Nh z8i-%`RQ^>~E#(*fX;F>Ck2Wg*Xr?yt3;$T8M&cWJm46vgckm1U7@+pT4Nv9oywyYe j!e7j)Pw;mL{5_7km_JnU$4K=@{&@6rkhXIZDI)&|6^P>k diff --git a/docs/build/doctrees/grid.doctree b/docs/build/doctrees/grid.doctree index bd235ae7f19a78e2cc58a459193b940a505c0302..5efe0b61a382be48828080236b051a6b286fe504 100644 GIT binary patch literal 80297 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 literal 79368 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 Bdf)&6 diff --git a/docs/build/doctrees/grid_options_descriptions.doctree b/docs/build/doctrees/grid_options_descriptions.doctree index 35393bfd82365dc27231d363505c189d93d8a103..bda4b2f9376dafcecfbd2c7998177cd056c08e4d 100644 GIT binary patch delta 134 zcmZ2|lI_SzwuUK;?Tn^dI~Xk&NJwOqloS+O>FXDy78L6hRF-7q=jr7arB8pjfYDu1 z4JMnCSdv&$l$e~ITBMhmT9O7*qMwqVJl%dF;}tR9%-qEE)cBnI#FWgu^eH_oIhlFc cQ>H5|Vsz%^NzF}4O^FAqDBhm5h|!Y?0Bp!IKL7v# delta 111 zcmX?dl5O=#wuUK;?Tj*8I~Xk&C@5r<loS+O>Fbx5m+KW&mSp7T>E#!t>!+la=@+CH z6i>gofYDuC2BxYcKR>5fFEh0y4Ww$i<3h$O{5+|-NvSFEnYoGSsl`(|r)w`_blzUK Ih|!G+06Hfr+yDRo diff --git a/docs/build/doctrees/index.doctree b/docs/build/doctrees/index.doctree index f7ca0740c94d8be9c760cb46606669f6a317b94a..108de20719ed5c28386948a0f3b3bf80b7539a3d 100644 GIT binary patch delta 8402 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 delta 5821 zcmcIodvH|M8Ry<)A2$Y)b;E|dU^g!|VM$0rkR<{M2}vNhfM}FQ2%F?4cQ2dWWq0#f z0tC>gFpE;ocI?pNYo_%<jWRn{osJJITBcL2IJJ#dtChjg5viSyj-^i9?>i@Vcki+k z{KJ3F?mg#szTfZr&Uemt?)~Bc{@ZUj&3?^~2ggonnuX}08wNQN5Sod7<{!9Mh%jpt zcb3#_EEmG*9_OGKk=`cZSp_ii#H=0p(tATvne=`*!!P!We$mq__C-24$t1l(tXcN~ z=u}p%CI_C|$fJhh+RR(UT|+LvI4F98frzB*ib#gAx^p6OAhI`Nl{C_2nD#9&R~o9} z-`7&PlqSuW?vyGza!K2b#|1q%V}@jswH$GJ7i;nmL&}Yfn{zgVf|A!`uB%#N_WI3| zYd{kHjBHEAv~jrzCo}%k_?Qj`HOccBPa#ki5Z~;Q{5-~Q!k?Hn$54-)Pkx$XPOGW9 ziM*UsO@F`2DYw9Lf}FVdrOeC{X1)l_*P?kLW}bZHsUWY<&Kl1_B#Qv3U=bPWkz!7T z`<gs`=Aa~+`@L?rcf{oxF#A|6e9qpT&H*uCwvI@yUdcS-a=Xm~V$kgJ1cFYtTkJDC zhl1WgXVBFPk0JAjBzlxVv@_xgj!R~r%U7{XS+^gSO(Ba1O4!6AwUI_jnimg&JR3%o zrIoa}u2wlep)aiQ3=R51$w|<M23ZnJ1LACS%p~`-WhsVb>A_{`onDr1oT^^+L_RIV zT?_=13CH4u3L?%(2Tk%`##jQ3A!O{nKE`yZ{z?ar#rfEHoQ)2d<OpLc1-7H#%ReXV zvFR-wOF;R_IG@(X5OGF2Xp&Dd#xh`h{QEI_`kYrVzN%uRh&Ur1G|8_q#&TeM85zav zi>S^S2>QKO2KCQz$`~ZhNk>icdyI2FaK4M2JFky319qU#?G3tJJ;}LqDNdV+iZfGy zN&bp4TY>o^GLK&$bG9$k?RR;CqTlCrJA-0I5`Q==3Bbk;SN6vh2|R3)bd#*(@rc$| zfTT2@?3!Jy9B$nl9B!4~4d~i_s3da25eHjNIpRbq7fV83S0tS2PplwLsQ^kyQHuU~ z&~NFAV0EelLv8WB3f04~VlMeOccoB;`b@HoCqJrQlwE;Ou`S(UBhs8-2sbmxGUh=Q zpeuN?F>jf$mJPJifzm~EfX#;rkn%ht7xQF(D^Kps@8Eil6)hBYFcV!oc|ZR+*F|>C zt=HCpq0KZ#N`2{6$zt{8V!`RmyRe_0bWWbUSlG(l2R8N7HYcL>MGYJ`L2WJun+L9G z^Ru~=nNKF#d~9ALH<@7bWOR<Xfa6Y5oAqGx@oU+Pp0t#5Jjgp&yo7r<!PGgjyyTqm zT+B0vRDq5G(o(vJ`%Hzrx73mn`D;M_TZOcgS-5kc&d$H7%Cb%#v#cOxmSMbMMK6_Y zoux_=8%>hYayuESswYQpOV75ZsnWw9y<FbR8SSy&xDOkw+qqT5*$`V{dm6c5J)ROf zwQ4DMdlHtb?BVRBv94a*0P3u1<Y7Z8DOs>mA3!pbyo)@#v?kjVW2Sea73AcC9{mA^ z7$@A)dTk?MJ!xcv&Br}JPTS@ij^HS}K(w&2jd@0HEqQfe>r5!^Rmzs8J-M_ezL_6p zrcY4Qt!(-WRa=wevVsP#sk%-70-NwFR693{5An^lMs;sFPfpdmUFi3EgXTWC9rgyj z{*cY=AMz-IC?FjH#88(f$Zs&yXHZLa2WU~uLlWIjChC@R?<70Co}ysu8o8C=u!(%R zNJngoEg3PdRoyvNk+|!hFuISa>l<T+qP_J^oc=2|c!_G+l&s|+O9r^_P)l|~@b5qr zIeL>zpP5cqG=mtLZRDsy&~9edam9BmwG+pR_N;BHSpALcT6Q?P+djb=D{wN6X*~CC zY;bV3U@ew=73t)`hT4?a4;osy)rd7rpBiWo$P8f%dDdP`4&1zmhv`jqi?!Q9)|_<m z<;|VhN~ot3X&c$Jyel~g){vi9u2*j;JI#ydR+Q<-n9m{V^8>eOvWH`S&`fqlOIGrn z{t$!RtAs|=3mS&WK;tU4VJ9^_)wn?a7@P4(%<u`d;r{5lrVwYGjP=IDhTHIY425!l zPDWdsn>c=wy04Ld`UH8crJaWtnaRdVVqaaY|B%uBMWN%S$nvH_^788Q`Y+hf=P~Vr zU|@=zZ(WB5vQ}4;N81((=^DEDyoQ#a|Hfp|DEOke?Gk6qMoiKgA6v77&(jdD$flH# zYz?VcJD1BQmQD59e&AA!(fx2_?HFIHfw~J-&!*2!NW|d;D0ywudd^3Kx#+e9!Yxc( z2NTyGlR?FW$Zv0V3tJgvvj(es=@{5jU{@`Hk<K-ooBXwNmEdNRJ#?~mA54}}VzE;8 z22_l+>_s2G!@wISVgvEz`^{#Vzn?}VODTYW!c-<7ZE=%7Z5f492(i(Q1J41<qg+7- zG*>SUsH$CqX9k(Mtyy@ENscmq4_uGGr?z?cH#Ef3wcdC(h3@C!?(w#2CC_Ter(M>R zV9WMa{(Lg{q3td3dXBE$4SLR~LU=mHh>ONTxTQP5bLr$Q=LVxzdu3|X^!%QmrNz`z zHi9-<*K6ieg8Ri<-jW1<OMH{#wOV>;On@R@o4BYc6cM8|1=aGRw8hwxLeOT{tNc0@ zM+;dm-<}eS(d<sb=IwOxElkcmAgA$Ka-x@aj_|_WsKg{6)Y5zFz3_J*ov0+u>Hm{7 zxDL}vbCcI1Jj6`>jG8JvL<d>iuewQI^d94%(UMzyhlOX@>{Cog7-m1M^5Cgh$l^=f zx$9P5_#K;gmQ6eY6VIqTcuGr5K}UYdI}y^fNB0FE;Y{Cv8TngmE@Sf@HviF*#lu52 zGj#Aj4H^-?{y0Z^oxY&U>xsx2(1lm|&j1TG!V2GOZUBQ9wB-Hadf`0w(g6K^Zyu=` zY2rd8FmgtyhFQ?RP={xswGyA$Z2{-cxoW6>GHT-*$?Kyf(0)Ez1g$Pq%&*fy1{adH zP=&CT*=^I2rZKDWpTHg#;9FH6eClw4*gJG&&zOyT94auZMkLdl4@y?)AaN~FlQkJA z0lQXUSL}dlP-$fM^3mP4g`?OH_j0)v{wN<M<XCTqs+XMGUCi&Na?`AGC;4zssUmsr zRU{uq$qP#*uoKn~diz|SK5-OZbmRmN3PA2|wFlTWd`%DRdsddIgik8&sDw}I$ca7k z_-IPy&t66OOH_F=Rjv()PJgeItQ)_s{Zg$PyPlxB_0w;%4dl|^1y`o7vP_lHx_x_j zE;D*+|4W?NECqwUz_RM<k&%%q_BE`^>mR7@6NjsPqAx)1IoOt4sDOfAuRBoX5`+B+ zB9{*SF)LFX>=FCAU4!`jEOLlU-PKGM+`WH%J_JTC#pqm+K9S4eT}Cd!rVQ?baxpdm zsOYi}n`iOyX>4}lql8T_HaoC6j?IJEyo=2{*nEf0zpz;ir?|Wdn|a7sh|Q<E8RIkL z^YC{lEZ|q!V8{pJ@Fls$A)_*fbm2ZK%0UG=s2B$o;-DfNRDgq$J1DV(k~%1%gOWLr zXoh1*%0tUdl8yP>CVe7(FiyRdzGklCyEAhYUz3=t_=3V*#VaFobq;z&UBycua}{rC l%+)FUM_tAH3v(5(6x3504~3!d%zk(a@OXpK$L?9f{SU2vp^N|k diff --git a/docs/build/doctrees/modules.doctree b/docs/build/doctrees/modules.doctree index 5f86b79f2523bda448fcaae2cc0c2cbcb3fb4c8e..11585987b1979afcd675a57eaca1c63fa0bdbd83 100644 GIT binary patch delta 127 zcmZpan<dBEz&e$me<N!Sw}eDSNl8JmmA-yKYC*AHL1jrsex6=_QTpVG-0q5MFv*m} zlEjjt#N_PMBE8Jik~EMC{gnLV$?v(Zi1B9TCZ?yx=j11*Wagz$>0!yq%*&oK`4W#a UFHdT2Qff*(SV8e-A>Q|l00O`+1poj5 delta 104 zcmbOw*C@x@z&iCC-$vFPZUu#ml9GaAD}DX)@^Za`%94!yJiYv)bp4dnGW~+og5t@Y z-0tEsFhwQ#`8maUnW-gdAVrfua$n)+NzF}4O^MIUO-xTMp3*t_HjndWJ>EBr0Gzxg Ap#T5? diff --git a/docs/build/doctrees/plot_functions.doctree b/docs/build/doctrees/plot_functions.doctree index 2b585f215ddc9d9dc9bc3fdeddc881fc98721bc6..9348db7e3d4ffe72c9500b088f04bee475827483 100644 GIT binary patch delta 9514 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 C<XZUv delta 9734 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	_Ws9&H?3LiomU zcZgV`>qGbw-GWx=mgqxdlvrmQLOe_KdncAFDRv&L9(J7jc$)9S<WQF28vb^Mq&zA} z2iU2;TeImdY8aj2_JyOTI(rUbTTlI(6~erCmnek-FqU{{*xUeGhezA>>u^4j@ztW_ z^gvuk8cz37<_Kh&0ZGg7ET2f%*gwC*lxhKb!Jr@2iq$aiy$wpO7~XE+NqfC5#8V{M zYCBIdx2l9)$p`)UqWi2*;c({t;dpu(d1jDuQiyoRAcEH8Klw&}bY{77Szs<1Fyz($ z<QQ!l=HvK1wv#%?=5lTMae7~Fiaty^Q1aJrmB3IQa3xe9McQEDE4Z`XD873(nMJ{! zv++ul0K|mqqe#2J$WVP0!;y?fas9az+>E|;?ja>hAhQifT6uc;Mn3srzLGC6BMlf* zZy3jD?g+>6f9?*_unS>CWG$ik$P&XGI~`F=33l9Ab%US&wnAAVWItn&O)Cx3&_@T= zG$2apS|WAQoY$99SKWmKChaCNV;${|L2g$^cOnm7M|Zj$7xysyb|wGQOzC$9-_#<F zr;-l&_@H#|0hyoCn4f_$pZv(qaNd8pH}4NVJulsTK;A!Synk^0bcr$c184r-y_r{C zZjcf?l2;6SB%fZ1@5uK^@g32@#vb6g{~9gzCoai~`U@I%sC~eGWqiUwywM--8~O6D zF7Q;VBj4TOg?4xG@X3`+65imR2TvaCSLoDPORm~b{jO&lw~N=jwKR|<tq!Gk<#6r4 z`${|ky1Pbv(Vfv_-8UAPGwyfb)&@^WQ4hhTt6j~bQDLZk%gIK&!vCk-935R+Sy^7u zCp~@P!i8z&iz-XY=BAZBH6wjm$%6FqlJW}J(fU{yhelM1uMaBHW|mY=Cn5;Ac`n#m zGG|K3w8=B)6wfHBs96o)-28WV?8{cUcPC2IwQaxA!mqK?vNz(FA1ZzIgI`hL4}EKa j?}G7%UKp!GaYLojF(o$r_(MAbwI1zIce_U3DrEl$zrt1@ diff --git a/docs/build/doctrees/population_extensions/HPC.doctree b/docs/build/doctrees/population_extensions/HPC.doctree index f5174df626d3da5c2236f82791250c7e84602a52..c4697939c9cbd215257043fe203183ee596f8af8 100644 GIT binary patch delta 8326 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 VrS78#&0sZ-*h*-*70D*D{{#F$ik|=g delta 7584 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 Awg3PC diff --git a/docs/build/doctrees/population_extensions/Moe_di_Stefano_2017.doctree b/docs/build/doctrees/population_extensions/Moe_di_Stefano_2017.doctree index c1a187e4112c3c482c14892cced13c0b22a8e456..71b8ac60bf4f13af8b4415a9a91c964b54b2bf90 100644 GIT binary patch delta 731 zcmZ3qfN|j>M%D(_sbYZ}S%aAwpG<Bvlo2u3v(&THPt7YU)=x<-(@o0EODvlFUU<vo z53H<{O<0~1P`3F4Ya27;4}3<Q-kieqnGL_13!A-!ni%n@+5BFZm5C{WXYvO-dF*bs z*E~7-yoA)`-(t@RsoQ*B;s-mU0zR`oY`&`~&qzSc<hzROizQW98Fg?Pwb@?No(aD^ zGvnsvI@eejg>f1(*<SPP<^m%nMgnRk7Z}NIUSwj!!6<^ytdo=F?W8xquw`c?M%_<) zWo`+HjFOUqVk>?9g4BXyy@JY;jQl*k{G#;9Hs0=vYB0%^#FE64qQvCv)FQpi)RHui z3jLJ)<jJ$VuZZzx<|d}6#^>ZGrex-&Pw8RF$;`{1GP%~rnU^OuHz_qG9;~2v@?M|! V9LHD~7&7E~2qsa1&9nSE7y+U80nz{f delta 489 zcmZ3uh;h*ZM%D(_sp0_}S%aAwuT5U4DZ`eOnU`2pIr*aImdUm(uP_Dwim*?f;Lo{P zhOLa5@fE6;6PvrazOiA5PW~&xvAId8i4j9)^Is8LMy8&BsK%U}{6Ir^vbXp<>@u6Z zB%iV~3QZQ&kw>`p!{%Tmc}7gpX)5fjjB-e7H(%7WXF?ZYX58$qdyR#W6<J}R(R)S| zk;#EZuQtb-+Hf$kA*llf)yc`3&N7=f+p#fXm$~Gi#I2x^QBqP+Y^ASXUS6(OP+5|Z zpQo2!l&+tWTBcu+T2MTh$H!e<2BxSaKR>5fFEh0y4WwvtiO&^&p48l=)Rg$l+{E<M i;whbz<9wYbZ}fe`afF3|Aw#YQBl>_bwRwX7L`DGE_qQYf diff --git a/docs/build/doctrees/population_extensions/analytics.doctree b/docs/build/doctrees/population_extensions/analytics.doctree index 4988ccb387b9450e221182a95b300f45c6eb6b65..26fca8742edcb3a5f9536f237f7890cfc852705d 100644 GIT binary patch delta 660 zcmcanwzYz_fpw~u%|_OTOpF&M9~6-hG1jxxv(!(`D=XGdNiEY&%FIhFnk>k%VDn05 zK1M=ns#r^y7;oV;XR{zjI6EGBpgn6hTL|bf5>PYQROm0`W1Q9ijafDMzwklAN(45~ z6*XXCe23qt`I2IjH%MJ4P8sXwd>M8YLRMc@5}4efDLpw)aTWoko3AQeVr6`e--Qht z{F9qC&k~_*vyQe4w}eDSNl8JmmA-yKYC*AHL1jrsex6=_QTpTwX6}k=Fv*m}lEjjt z#N_PMBE8Jik~EMC{gnLV$?wdri1B9TCZ?yx=j11*Wagz$>0!yq%*&oK`J%ZqFHdT2 eQff*(SV8e*L5ues7nvCtGGu!Qq_9(#eT)DpJmxz9 delta 430 zcmdm5aifg2fpw~{^+wi*OpJ#n8%W8pC1vI%7FAA8kXo>LJ2M|6hUnzwRsx%sv8FIF zo<UW=YV%W$wQQK8xdH}^7^0JN1vn-*2>oEZifYK}$sa`dC#y<JPp%W0h9SB6gQz_V z;{zlun-ip_Gopw9U4C@)TN!p14BeA2C?3HO++3i1k(Kc#l950IR!^4Ix{Xaxc=K~@ zdu|1VjFOUqVk>?9^73-Mg36MN{5-w<qICU~)H3~o)Pmy4cINKlGB8CY`T04;dYP#u zX&^<DmziJT=Sj^?N==E+%uP&BEuPXjd4h%W<i{3oIL<ROFl5N~V8q07t3E~mXgi(3 diff --git a/docs/build/doctrees/population_extensions/cache.doctree b/docs/build/doctrees/population_extensions/cache.doctree index 36e74a873ff0d2a8a0e4a1a04e9206685948a899..a7e346e459d625f3484b744aace87d9ccc3148dd 100644 GIT binary patch delta 1159 zcmZ2{j`7|FM%D(_slgc=S<f;to|wGRRYt^E&r;7)KQ*tcSU)ATOgAYrFR^H{qr;5N zz07Kigw*7*^06|W!)MOC&9>ar*$AnbDrCY)NKKcB1ry^9e0I&BtYFT$xmP@gMMT9Z zu{gEZO2Mk2(keM8vAEbOp>A@%jM!u)8Ao1OG*Nv<*3GMAm>7vMy<E<WD0LMIT#SrQ z2)cH1y(;hID5aA`D&72Bc^eBcYS-!TPVUqs%2=S%&05+Eh%(mJNO*F;ru5{)2J4A% z#b#Th2v)`igaaYL;xKW__&5KxtY^WmcKhTN2GW!HgV-lm*e}DQbhD#FJ}cv6{I0X` zke=M@_L6|I%@!UNT#UEy8`T}bx49wMlZAk~&D{|_jFTN=SteUYO<*cyo2=+5J9z;M zA7@rR8v{dzbXLw}#^`94VjyR-c$CWK>gZ5L#<s~9W8@jzHh+xKVwI4{C@Co@w$j%x zNG&MVE2u2V$j{TuFG`<mo#d{l29r!lEJ-XWN=(j9Ez-+OElC5Z&`-%vo;)+@iWqNZ zZen_Bd`^C1N@iaAlpdCx%)IO=lWUTld3jQElTuUS!3v5e?@4~oVZjb`muwII;$(6j LtH9>k)MbnS5z~>5 delta 796 zcmcb2fpPIUM%D(_sS@cMS<f;t?wTBEA;XrGnU`2pIl0kd#^%|~YK)koU95bpj0aHF z&fA>MJ)I3hbn*oej?GtvbQm#YHeV32U}8LlYRZbu55;p>gq58Vi&KlO6s!s=t&(#R zi;JxiCMU{-^T?nIh)upNBgrF>oS2-ET9TiiQ>?f7s|*t(rlA+)%rHeKUy$S2{9FO3 z{u-(yR!%;wbQPPR&}437uFZWa%UCdF`89bbOKY9LDzW*L_IxZ_Y)yG4`x{=s)B=%U zn|xlIYqO}aH7nyKBnNJ8w8&;e5dp^3_RUwU>RHf5=TFwK7oKe9a2Bh?=4Xz3Ss1S( z84WaO{$zJg>B)WWFEJ!GyL(n}F`hwFzPUdnoCQO4a(@Wl<|C1HjFYotR3^JcPhcuy zn|x7Nn=`9`je#LUIxBZ_VyygR?HC)*5}-g<29VfX8I#S((hg)z&bO6eY~Rcpr^TwE zkWo@nP;8~IUtV6WS5R4!k)NlRUzDz&l3J!;kXleY**)1^Tn45Hk_a+WOVU7!Ca+Jv x!q1bMo0OUopP8GOo?1MmbMnj-=gDtU-f)<)105pUgP!6icd-g=-jTM95da|^BY*$^ diff --git a/docs/build/doctrees/population_extensions/condor.doctree b/docs/build/doctrees/population_extensions/condor.doctree index ac1f6e19e0de3e3fe42c204d33556333ce47bd7e..ab4631ba95d63beb4358a56a92573ee2d2007583 100644 GIT binary patch delta 1356 zcmexAnd#*;Ce{Ylsd3#KSuZg$o|?Q+O-966&r;7)KQ*tcSU)ATOgAYrFR^Iy#P<1{ zXEJj$;#ae3b0O<-X2y%S%?Z?4xcLv~Y&Jq_q6JMD38<MIEc}J>7Cx(1Ox_^IIaylt z6ai(MH;6srV0?|wsFjoB6n+s_BDvXCDVb$*grY3=U<}mQGPxsDdNP|H|Kx@0y*L$a z4%9e|*O--)ALt&!seN*w21o(-=1P4r4#o%gJ(g$AIXT7R3K7aS^IBbIWqg9)xHS&< z2rCiVoZ-a5LO|VS8+TxWBVe74yU=D;&-a{+cknrD#pL_JR|qTN-rN~l$j0~>pHYi8 z?~mbQB%o&U{uqhL>x#H0>w9)>wu{f>WPF6z%*jgG;=qJ)m4LF%O4;iPIdAfT0^!Xo ziy~MFIT57pX2ng$$rtKaI3{s0Fl0z)^-X?QBfI%`)l5dleUmSg>u_d4C3b-%7<X;{ zU!%#$w2NbMg0sZr{Avlt?UOgwDQ~W;(_s{4;$&dRGGPJ|%pjI2m^FESeY2<lTt*Ns zBe*%d;Sdv}!)B@Gy^InP86_nJ#a8<I1*rwadIgmw8Tom7`9<lIzqhz6s=*{v5=#<G ziV~BvQ;YO6Q%ll7D)dwGlP8C^UJ>KX%uP&BjnBzXOv%hkpVGsUlbM%2WwJ$^GcQkS zZc=JWJXk^T<chXBH7Srg#DPR{4`*ItZfZ$oL2B`o+9_Ee3BTeD#o8$vS>lsr+Pyj2 Rfg%~QJ-Exp%@f=6m;j!b+0y_3 delta 1067 zcmaDkjp_enCe{Ylsb4xbvR-0h+%s7*R)#GpGcU2Ia&lnotj&v<1sE|!Ygw-|Gag1& zyKu7_*K9US(aC})j2NPmX9|B|JcDY$qR9!OH?axwZ<ZFn$uU_@T^8XokYcvUeaa$} zFJ&oCW>P#hd6xz@>CIb}GFceUW7@<v`M(<b<bUdWa7u2Tr740#Yrii0<UTzdT7i<A zwG5;=7%yS7RnGDrE(!k0({m~|$5@B4GG4=`wa0;P@=V8zI3+g+I`gt%mzD7np6uoE z6RYHA880R-#&cL~oD{+~`ESTMTymRNg_W@}UPaQlIWTquBZ>$x5$)RiCLU<P6(n^) z(M6LRa>OU!$hwLlvAH2<J*u%_<qlOMlV8O1ZB{AqWJR}P(PoFLH;f8B+(oHr#RaL! znQ58HQ#!Id85tO|f;fPL7m$^)X|qnvAx5VC9FrL(WG5$tb1P>p0!m`4E6vc(ngo=| zkj~mY*`h|4arb7YI!#8#-IF)e7&7hPn0%l_Zu8!H14c1sPN3l?OhAGK#4?4jCL0z? zO_puU5EFz;3&Ev@IDyi_o7Xk2V`6mN9NV&&Q9&W2q@<wON?*Ucyj-uKvLquvPcOeH zT|XtYOurztpm?%To4dFSOi@XGeonDoW@<?qNYUh3ZCChtQgf41Q{ppo6Vp?Rr*uwk zX?LD{y}epZ8f2>kkSOlq%uCEoEvYO3%GXZG0!jE4XDHTA(a4gRT+!jp(FPRBknKS) P04CS63T$55d4v%FSKxT_ diff --git a/docs/build/doctrees/population_extensions/dataIO.doctree b/docs/build/doctrees/population_extensions/dataIO.doctree index acc6b3c2a3658d01dbdd45ced6c03c082114092c..65c60afd31e190270f80eed059af1ccff71645be 100644 GIT binary patch delta 2269 zcma);e@q)?7{~jxcWt5VXr*P%+ERWE5Vv;hhp_`;9nnH{#4PbIvp{Jpl(81tW|3*K z#*i2WLB_*!+x&yjEp9p-;G6A?QHej|HXynMGYkwi-JCyg%#kemhfc3|LE|62<NkW? z?(=@1=icZ0zVETe>7Elbm7tF)$Eg`P&X(JZ+Z-;3%NYzGj5!0rgPWT|VP6!7T_?$) zVi&+9x+|<{8OG)XJ$6}kkn41w9NDXB<%Y?J>f=i6+ATul=<7k0I92)>z%8+gk^|X# z95T`P&Q=TBjPFU)WXRO1!u-8y>q?RZ8>PS{e|iEJY?)*%zYnmnm?BMuUV!uH&dtTf zf*d%9g(VKuZ+rw3sb>RU8x)q-kI-FQCO;=f-%u{*O=)mnQ7L{>?1Y7X$IWr$nqVb$ z&+N(qEsmAAv8u30y&hz;7E9|gCsCkmspi5ZUTy9_wWFn7luRL$4S1{|BTqhF0`R@) zwBhuo_2_!yD+!EDZ_?24t+<qZyN;XwaS4prw>Qx6Q(7r9>>2`*_nbv1aD-&ydDBbe zjY>a-Gu>%BbO!5dvatV}1sC0Ki-M%SW`%;qv}JK=PouR~i=$qeo3ND0)L2nByoMoU z)Eia7kK)ojFPO+*dzbZV;VuOdwBWc_pPUaC+w4MMjyx31SlY2H1m&>~CEONEo<#d$ zBYE}EO@#zU?1w)PL{}2CLU8Bx`%1VcrEWldcP1f69MoFbPv4y96J#Xhyy>enm>;o{ z8%L*wyr1K16kHe0OQ;i7AjPQO`q(6Hwj}mnrAgm-rGzPY4*SN<WQ0&!zAIA`<$PCG zKjKOj{}Gj+?Gc)F`U|fRWLzo&Ijz74Uz&;MvVS#3&t)CM?IcFjO=dG&G+-jS$#<1v zK2BAUg+14%Bq35ZLo4Bi=oI4UyaCO17R;NQlt9Vod{iyrAMCwr#z%LqNMNM*ZVm<C ziC5P7iveF*`e6+i*>=yH0o<;c{ya;f`e80<{QagX<5<V@GXBEqzo%8t0k_KzWMls` z79887y|5cNOG!(yemNZCmni#(3M!N-H?Z~VpiYS1H^Qun>o;>t1!ne?6+#M$^NQKG z84P&w$U647JUFXi5&&uUyd=xP3%s$|7q>u6sN?ny=>DG>m(3|NvLjEyMuGixCs>52 z;A!}iUuLYU8v0dcb4xtl9^2`3wg=l|j`q%YOC;=wM4OqPp9N2T@#@=vFYb#+eg6Hy zs3R1Nznnsxfry{+c;K5HUFd+XIoQw^@dZNR=D}X7Efn5A$duJWjZPap&=d?b@I;Jh Xt%dt)*9LCg+j_-+Ls;%NWP|)4SfL*{ delta 1986 zcma)7YfMvT818#|PFrk|q9DXxD7FlUp=Fzwg*xp-<tB8~#eYU%oLP!cq(xGeImrHO zfo&Zx<bchRt!#72h7&%Mvt&cqEutfafeT|Snk+N!2WA)JE{V5OqHr#4vi@k^JkR?+ z@Atiz@AM2Y{2)VjF$1bmdX9oG@ZANoroOSIt}To+3#Uj-?Exh^!mt#4E%kkm{Hhz& zDA5{Y4JgpzmURHLQh^xmTW`eDF&n1N>M)$~K|%)t8^T)nP8Le4t+ZN!VzqS*ac+7O z&|BajllDr0PjS?0#k0+6T<u2C!YA0B@5Gk8doa07c)aPf$v;kU-+Q1?VBdBeKy$te zu1doeg|K?K6$iQ6bTD9KgvPy7+YG(*^KI>Hzdu5$RCu_+Lj6wR@klP#Iv8r{q3WWb zT8#G!P6FV|g*gD^ox*&8E3zx0w<rtGY`&}@h_^`3;5=nn?NbcTZ%M_HCr4#4Iltuy z13$@?|0ubu0LkQz>ol&@NmOlnGO%~|mok{x_WVP`j9hhs)nc^DfOjjtNl21tRalFi z7D<K)Hk;f(c+-f_<%)4K!E#L2av5LqyFsP$pV10`I|R%3J~`CHQc20ro9)TTtAYO@ zY2^Izzmk&|gY6plL4N1ro^-P5rC-#EncrSHEftKVtX|@+?#1M!|J7R>{A^ZIlH#5U z8m=i%U?u*@kKhm&ORZnY)9%~s?-HibXY%jVbI-cLOq%+prI|(UWP5)X4O8+g(WoBF z$4unxP&O!75{-^$$_Hu~J?G4r>Nb%V#!^7R63;oCK`orQ?@~5tn0%aiWDkASwqmD! zTe)H%zTf~V?w&_JnmQCW$1dr$(#eeHq%ks=CJe1fctt)=Kof!1z-7?|$;`qaND$%W zBV_;2bvk)lhjHtTEF8RkQ9+QcH!^9M6Uho9F|;iGoe11O?%dp)!kxB(xWhPo+e)7J z_nMaKwR2WAI0iiMp>e>zU$y+J0-=X}>oMnKKA!=w6S!xJ6!Cni8akz$b1GwH82E7= z?9xaUK+N7*3)RWlicDD43U%invp~06@i_CHxo|<RfH?t9=kuH}E!|3I_UftrEQSv0 znZ>Mc8@!P`_V!aylbkJeLk?vZuZBojv>LlPuNy3U&(kmu|HJ**L-$?Kq_x?6p-^kE z#O3Pf=y0}%L%u+ZGthR_)xe%`wX&^2ZfzNqWtks&g#v+NL1!ZydNJ<BohXAVX$H2r qo^3eN*j#s%4femz)s{mkN6KMIw|%3qx|Uw~cNs?*Bi~&KYp4e_F5c__ diff --git a/docs/build/doctrees/population_extensions/distribution_functions.doctree b/docs/build/doctrees/population_extensions/distribution_functions.doctree index cfbd7afc98f30013fccf322e6bdd139a89cfa8d0..cc95e9ab1a6ec94a60a9bca409aec0cb3b4b1604 100644 GIT binary patch delta 16490 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 SMV9kdxWRTZqtj%44F7-6G3lHD delta 16301 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 diff --git a/docs/build/doctrees/population_extensions/grid_logging.doctree b/docs/build/doctrees/population_extensions/grid_logging.doctree index e6408e8339c7aba5799defa51d8cfd1d19455c1c..d40cb918c90198bbf3accea9530153ca0642db48 100644 GIT binary patch delta 605 zcmcazF{g^Pfpw~&?M7B*X2xriAMneF80%T;S?Z_el@;r!q?YL>W#%OoO*XVzz4;q6 zD<gh2+csZeEoPc*rY(!hlx3R*IM1^&KE`L$vdIFR0-JXT*fJ8M?wrswM#eXU%;TMW zPMT-)G|?nhBGhg^C!J1=y2%HW1tv=?ohQb~1IjyD89x$sroYy6;*^O_o+Zk)SzE`4 zTS6kEq@<wON?*SqwV+t9pt2+*KTj{eD1GvDb9Y5Gm}E*~Nn%M+VsdtBkzQtMNg7Cn zeoB7w<geye#CS7v6Vp@UbMg~YGV{`>^swY)=4DTre8a+-mnSthDK#Y?te|+Zgynk< TT^0t047ncM$z`*ll@=2K5>3#` delta 388 zcmbPJb-RMKfpuzt%|=#bX2uhf^@L>Dk}~rWiz+9_2`!uafR%MK3kxeFhRo&%tj$b} zS5eh(+w8@;pAB7f_vWtx7K|vOo8yG$Ffrak)xCMLfeg>)SE5O*7&4m;WYRH3C)=qA zOzu`XkEz^FWhd+8WDZ$`S2j;RuPHG3wbpek!kf40L~|=BWR#Q?6kF-*mzS686;zgF z<mc(-7p3c`q?YLyq!tuU*0gXJmw_oN$<NOz*2_#SNdqaGJkjC`KTm3IQff+kW^Q77 iYVnlL$<>z5lh0Yc;m~GbV91c`!4kFtn^#zuFaiKY@{7~} diff --git a/docs/build/doctrees/population_extensions/grid_options_defaults.doctree b/docs/build/doctrees/population_extensions/grid_options_defaults.doctree index 8b36be83bd08d37c4c9cad32b09b2b313819ecf8..da775fe042907fd1a8b71b669f92c6354d73bb65 100644 GIT binary patch delta 2529 zcma)8drVVT80Q??dv9GCOjZWc2M+@xSP+<K1CfVj3JDJ#z6%uSD7S@HiXh6XY)&P< z%7@#`CdOq>V#vmF7sWW|NTzXH#F;Ev;?y}z+!CYyv4w2Q=JuU?Yh}p<|G7Oq=lA`- z@B5wKcUyRe-akTBz3Ri0pQx;%<QMSd=wHk-FEcMow>P(W)9dYRi)tI2Z7tB7JSOF; zqG!dV3oGZ6M>FwENcLC{KO5#!VilPUqf1&zNCY(HnEtnBsW<uina;7NpQZYR4^+hP zR1U;kg#(sIsG*!xlaWZC5eqdLTIp!!RTa_C#yua7HpIh+OMjgODjl%!JTc8oR~{P< zqxmmLrwT_@&x&=fnj-K<v4gCI`^8352^AFv$m=xI3Khh68zJ8sORH62wPs6~OL8ay z1f)TDtw0XJN9AUyE47eQFjQ(FBf-$&C!we1P}p9UE_|R032_)4p<v5PQ0c|v43vT_ z|CDu*n?cs=$of8cfZrF>dkW+_LNef1#gHyq9TFm*ruc|qt26RS@~`=ukWBDxG=M2( zk=BeyERVyu;pz5}ueLlk48B;ehI^GRvRaNWFEWso5N|cXs8dG@<kf9Ulr~5y=Bwd; zCct~^3#nNR*Ro=0ih3ZoP47m?Hb<IhBbeQYF#Ir;5Qkn&Rl`JkGJLw>qR_>5_2N#< zwRi^aPA^Ufuxy9%O)gZ+w^3GK*w3gi5149`!M}M2Il+$Rh<Qw9R96lD;uwk_BgJ~S zwKI{Ng)>_W<ec0l-Y+?W%~{Ar*kXN|wyWV*XM%RGQgkSbhjD8RISxNqlkpi^^*W=9 z_oZ?U7oHBu!YuE8j_y|vl&6q>2(Mm8{s<N~HNCj6s&lbduEt2_!cTRwxybXdwZ=mA z9P<@vhsm1xk%8nK($C?rhk#Q;^&*d86R>Pk!EDKJ&X!DykWi5$pM{_tlBsr_kXLbk zF{uc~<#Sji?Z@Z@%{)b*?W~=wuvAv5Y!-I2HeZge8<`Z3^{|!fu^uVj-att7%;PuF z7>Cn*mmHDXWL7*JXaub|YwS1~mE+3Mf+OH}W|QFoXC=8D-2776giFqPayz(tBe46f ztBm{}-2E-EySb@~M)2Slmk}+*b<4J<!yJ5@XoTAqUD%TX#gm+D>_^ST^e`tI`yj`R zy@dadu}`v=6k`u?(4CzG2G3T_3IyTB74kq<r$TR@I@13Hx11fa>nyOv!9yP(HV~AB zWku1WHX=k3eG^;BqHp4%tS<^8mI&0(!J|bhqzhXo3H9<&P_SC-4v?a>v%J8=yhfO_ z%}4tc9o~Gb1L>1jD8n=|(FeJ0cc`0}6%ct;Aa)c}O&e_=%d9Bif-CJ;G@r8#z4+PV z=2i3=O41AlIL^Yu4i~+~g0nOejLInbc!;Y_f(tv|rgzyvnkF#Tlh{LX44H)So%!@n z9>%ul$zKrHS%P=Zu9v;7IYFMPF}T^8sQp?gmW}izXuD!4GTg8xAwy}`F?`1P(v*?@ z5#txq37!qgH#|gCS5k{0*OVhnuPLL)f`jGkG19dH#CI+LsV9z>;ZpgnAXW(P%_3t^ z)H^>iketWlC5$96()jXU#R5`jj-aH&xfB9(c@|5`*1A~P%2@iK#<x^=2;&ul_}NM} zh#yM(UP6EH@bMZB-l{S{#u@>pd_}sUAo^GkeM~CtyF<x@l)39XiH>%(wtBpl^mLEi z<28FaS{?3Yv%94M!gs$CpY-^!-qvbsZL!rk?Jed;d+TcqkzVhvgQnfzMTIps*&6KC zF1M||vAJPzpUTzP>>PyhJw;(!dsD5wzFG!&;n1G$q+wRa34D0>X_{?K_SO!M-8<Md zD6)f6uOp#raDjLNviFt<It|l%-^_o<z}8<lF9ly-BKx@$58_0LY?wt6l@s04`Tlj} EUsb~>;s5{u delta 2427 zcmZ`*Z%k8H6z5)E`(A~L3W{J`7%)(Vtqz?Pbqa_JA_z<k4yhC=l*hk9tH2Z}u+2X( z2OOr(#ULaa$zmpX%lxwqaLJaKEuzcxgJz2xANFNLOg7E7On2^k6iQ)VZg1{6=bqp1 zoZq>x;~!BtLpitVLt&6B@Fx$TD_o~8Dyy>AHo(pBYtnXZ=^UpSLfRrS;pHpc41Zmi zae~ozB@&ZQW}jMOQwX8Z7Z>5llv6qiBd;uik$5$Hv3z1qqcjr#2S<W@!^X|QutgOh z-CJcK|8EURyw8#OKC#lc*-U1g!nipGdPS|Ycf)-(S?Ci3k6sOe1?eHu?$iNpPOG#a zou|<q0kyUgr^9xjtfcHf&oR+V{rp6p!(~0&^$|Zm2+gpQUEt0z&^;X7U2lM)j0Bp? zL1g24TF60Xlo28=YAJumI!b#uXlYI)U67n(gr`|a<P%uEQ%^5X2M#EKSEm9YAlpPQ zaPVa9%kU^uMf*9(PBTE{W=>dxK<qlP3l?VOLUvIc{aLyGAzt54A9HZ?bt9(}f1eeB z4!O6NgsG6i=Zr@<+g(+5U~P?t2eysUJ8zyNG*N|=(gRKCVAtFI?S{Nr9nans4DatL zr`uKVl0gTSay{LqLW~JeUBS~7woTMdUmzx{pfe3%Q(g)&fjcjp#;c%f+o5F+%yH13 zAX>4gb_2TMPecYmf(fv4@3^Lk9q7a(Dx_tibK>9?{|0d6SI{mMtF`7N3uD*8ovc{c zvhQtrk=?L7R?NimO}4Ziou*sLP;63a+Yb}_!fC$>HfQKSyE72Z9SJ2jU`K(Te#uIs zbo-i$b(?$(PYTx3dZg1Br9GkG_eaPWKGL|9^n=3^hwB+j8?NrWFu0N%EcdjR6=_CK zPr`F+JZ)FOP<AY2H=F3+3Y%v$*jNfTqIf?pG>~9OF4x1v5hD#!%UJY~Y+Xz0q0SoP zfucqz0qQ9s32NV@&!&@RlCAQMSF%Di$!f0(N)L<960%!1-U(TR^2(jMM>8qNWHr37 zt|0C3yf~gTOfp@jO<>q%5wUIz*Q{I8j5jL^bhDkTK)0GHP<miXC1jr0*h)F2_Xs&F zCw9122A*Q56iIr!K~Cvooclg9h@MIGG6N?okqp3K`EGJcKK^FraWI^y$RWSTrk{LG z`ztq+zhu*&zNUz(46MJkK`*Ob%X@Nh0|*XU0(7t{VzG7_sdz~(YyZ>g?evryTJpkZ zr<#dhw~n77{!5IUB4$v7aqlv?QxpKV9W_E4I$|GFG3%=NV)wM)79KmhG7zT9B3^=_ z8uOC3FhHqsKHJGP&gZeldVdUuLgQA+QTr<)E|~|btb?UcDm&|)9&#Gs*1;C+t%vo| zDb}=&Z4<TA@nS14^ZlT1CviYuQ<%S4&dYoUF^AW%x3ZK9-%1|&#=&Rx7ldJUsuRD$ zT&rh)6cEb1p2?saJk;culONDC0fw^#%_s{su>5T5I}V>FzoBhKocGXQN1r)|ehf>w zFO1@k*VNO0c*rc!k$+|8IB6(~h{hz!3!W#QT!+ra=)mt3E^P3}V7O7fr^XUX#(*^S z;@a1=nm%Hck_X;1Gow748Tvi%nRv1R+|6q=X2F}tSaTA|1%ul_cL|fP&paq`N78IT zo_Y&>?M_4-Pu(%vNgO=l*da_!eY)VA*(`W6zbIaTZ(Cne0=#Guw3Up9GOk!g9M{EN zh((c7H`~cl>ITvl3MXIVp{ccMaqpDJ`6-X{5@{Qw0i$@(G2d2OTU`r-?*>csz4Ih8 z((ZCOoJl5AU0t2g(crRIR~f5oOHIYLLnepK;e;DU-w4%toLtq_6;5NB%~isjAnMqU zL4mf)B3tqPvPx^I&DnDt0*|M{{^N&Z2Uz-xxHvmBRn|(ItHFWx#vYLwvYhs)#-8Qk v#qJXsLWqVHxWo4^6FiURA*Fpocs%<wu+Nv+iK8X5VMY<-;*d_a?;-yI|EUcR diff --git a/docs/build/doctrees/population_extensions/gridcode.doctree b/docs/build/doctrees/population_extensions/gridcode.doctree index 7a5f57ded599d4d3c5c9e0b4c0d9a6e7b3c80fe2..cbd022637202aa3ec200713afded3423a8832b40 100644 GIT binary patch delta 5530 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 delta 5833 zcma)AdtB627WZD57tAojqNp&#(^YxI2!@J=!ltHRD!w8X%|S-+Cr<&v%m-y<D<*i* zC>2FZ&GN+$TC>{Ja?@>7z-`^dO#Spn?-sVLw%xV%oO@>m5i9=r-TS-uoO{3Ldmi`x zex1*Iy|&*=vtF}p)TQH^4>&sorGZv$&axuMidE1Q*r*=!GO|9SaLh}i)@stc*!kY_ z2h?W6i`qV;uscAnPVlc`eP-0%0qvY!xn&i#DG-8sjUbNK)$oKsZCH)(3g^<Y66ca- zOP4LF->6Jy0|qGTyz!BSz5HevJ1&p?6LycYv425RtPS=&5y!i{!STB!{)0EfJG0fM zqz%jvq(SLmWrzmCv&VvS!Yn>qcE6mkn2)9INT}VX<4U5s{vIvonPO;|@;PqRch`#i z808Ai;EMA!Fe-N_$ELer<km@pd4UG@jI;704U|@=aYZAbRA~r`CV&(mG)2gtP8!bU zfg`2VP%pu46^OJ0<*FH#0T7egZP+U(_lQYNAWf={-{dmG8*<_`nur;wyh^V&rH){Q zqz9o~E0`vKYiN^V7v$nJ{w`q(fnyWB4d>-#s|KoTBLn)ZaI8o2h?GP-!`F`D8FHel z$`13UZsbf$1onfio02VTTx<=}3bqDo1zQ1H!B)7I*n*O2-t4Ae3+0Keo5)rWv`<Sl zBx?ov6KLPDS{oXLA{mv_`E)U22^AwKW6k%f$Wg|?XVV|xnF1xbd61IW%hqtY!10;U z{68Mcwx++&R|%EjzZ?b?2ncSh4&oJBNMAV=?wxVjuvvoKBtb^t9ym!LpA{p)zZN4s zAQ4hjb^V(9k@?8d%)20ZW-34E!94Ib%p*t}j?IkWD~Poa=&FiSqh>8({JhZVhd0h@ zMeJhZ^2Sx^jcd{ySEM&SmEH)O<IPbrEM*8a=niVoRJD4}{Y<aX35R$=)1p{tOEhYu z5FQGkxy;`^Xo(erJr=|Mc^|VdoQ@)|+-_kUNec_lxGl7+GZq*aOC^<l7?`Xh16eY3 zFPg#U>!5o>IC}sb52dlW;K&@$9Xc?V=V|S@5sDTrw+c}kY*`%1AJ$Q1vPV!n3Lcsi z!K#GH6FQN}LIsMmf;lSwSP?-Dae@tT(w#Me=?_RwUT~YQ9VPc6PE_|GT+jA4CX=K) zRJ*dB?2Ma}+aonmE`gEC#v`6k^tv4eE~;T4^^=lol9FqJlJ6uX-wR5<5%ziM1tnu} z9~31@NK{f{)eA~OpnY*V57JYvvXL;#xiC_S4;WC9lOI^a7S=yr?+RpPrz8Q_B9^eB zM7{=*IZx6H))MxC$BvjK7uX_P+y=E)W8^O<T^87LgIE@H6+}_xT_NF>3wR|G-dcp` z;8}VRx7g6`S<qAz1YbE@_0Q==)HaAcXXgcLlhACGA`k6%4Tc)CNXqS<)p^CN)rB$O zcJCxhb*du|(EgN^cJ;;lA&mXirPCj~I)q&vXqOG_N-X;fvXxNw1+EYUlQP5kC&D)V zExBqk+_!uf>wtpgHhj96FdIZw^*2yeWhQ8^3WfEV!7La`3LK#wXpe9dj}7bbR1Li$ zep)1j-3{@DHa<o!kl<c`rx-B$r-H30sArWsxw}Iz+>H$p-k~-X<uUzYgJ63RSW52U zI7Owfz(5ro+Dg2Q1j|G7^^*JfYMK+r^6flNCY*X8o-cZMhA&F5@SQ@ZAElweAZi~r z-33-SwZYDhVRu6~Zzh{Z63^_2+ivzc_>~uM6vl+0##JxhmposVG+lCw^BY7{wq^># zY=9dTgY>Q}Xn-FoB1xZEX@Inqrwz<Ukn*G8K{Hio%&sJ-IjW-I$GK+9G#Vr7+#&c; z<r-$i>G*-YPq8#1NUX4JYJ1gehSdxg=?57}K7tHvT!v-%h)kag?GLB(Sw7-aUg$$c zY145R6r^(i8!{wG{om^Oj3vRGH6>Ip5jWl~pzS^#j{SSh2z-XEjpt)%8IcjNXYDSw zx1ZP=B{po_j(P>VSjbNxIGGPE65tshDqWgc2(S^l*W0*DC$@SR-Yzq$L)cYe&)=o^ z$7IhGNPg5B+K5j0$<l?ZQ0c;kjBSLs9^HaZvS>$-MVB61$8Em-yaf&Q6?9|cGKs}Q z*M<l_+Se0$c4*%;o+tZ?Vw`~%p)kds&=L2{1->H3Gf5{6FOnpm<4Z1zl=44g60Slf zVM8Vjh4-H<!)M0kcovB3$V27)#!bATzZTU?i?DH9^s=z%NRLH_1i};2qPb`h3X?@b zM_AM@ExIHvx+vtYN{giY&sc=3kVV*#MfGsGW)(ikqB@sF{_uEh2<(1a2Y=gqn1zGm znOInVR?kA<wWss>I3v{UveB9Pj13lViRELABIqX@VSGyhv}O9knihYs)%x-TBkX92 z=5`VYf$NRFxWxL}j<8DOfB`kS;vA)XRf)4+siIeXuCr{3>s?(@_a<Z8#169{#8`&{ zl+*dPnh$UJ8p3a%gHW(F5H6fB!^-+}_A+YVKJ|h8pxm-{pOHWB?&_iKq_?SOEoGk( zZk*f<pKOcabw)g3hj66^?A!B(bl`sY;gY`szY_M*-XZA>-S9LV+5VFLIt>IXAL3r| z?2d546112_8ygDP*C-^o(|3^;t_JbX0@s`RgnuW_yFS!z`DF4oiSWn9Rc)*$5y~MZ z5z0Yux=|cge547(`EJ$;@jJpyUr5Mah!Qoa{9uF5rY7}t0(9(1p)TDh7_Jb_y3i}p z{7WM=HP7eS1TKagu7A+v0X+h;)bXqgYIlY33fg@nTvfwZsRzM26S<#v8lkAg13`xn z3QZIQOrf3lgC_iZieg{lhLJF-RmZOo@iEZ$j^6w<!4_T?q(eq)0PJeDMLa^(G$Ryc z4fRy&t@ZTQVGq{T%~hlKENA@B1kDDs!Dc*1;C~`$iVh5hizob`bFYJcWCH()(Rk4+ z-4}yy+qG{N|F0bSj)wRZycEPmn|hX0I!z*OTK5iuo7)2UIihlim+}@mYx~ln;eI{A z(@7X)@SHWl(d{FE?f<R8juJ@BU4BTko%aptq61bQ?T3ec0PH?+(J)bp-$UY~OcUrW zB%PcqWz=^L-o;oNeDh){pHDI|24${PNrRn-Vt5)3u8lL>6ql-2sy@}QoR<rE^0lFq zRBU8h-PvIH(@Q(~7Mkq+sTzeseWP@fpNLXyTv58uPekbpej-Ynp#6x9(xZM9r98?H zQlAWUTVg;ss7hgq4b`Mgka}bxy-<X1MD1w)xE~yUECNE0D*Q%&VO^E5uyMiqM#B0| z!ur|+i<$2L%NJpxD#5~rU|mI60Z@57jRpu>ryE*zZ3LA|_9zZSLSeIxm->k~FM>VI z3wWxTydqehXzpQoG0!wpDdkyacRuk2W~!wu7m`{=vnVKR2{*dDW=1@7;JKC<K8s{z zIh_dISYL~1vj~w+7!vMuI_rslbSmaZuXK6_amaLPpq@x4(etE}{gq{mA17oooemT7 zpGc?kuTTwk@^fZNCH}Sqh{acb3bpXM@D3b3GZ@rYqxf|c88#ZfWPWurk$)xR@uj;Z z6hCW?_%BWNM5#9RY^l5n*H6C64<nJ3X$Q?B(*|04GVM)*Co}DkS!7!F>y`QlltA9X z!2gdn2#X)sw_X!;tk>LT0Za&%C?vabED*X&r%xbt8*W~E)`}^S0N?+ifXx;n_}SI# zwrEAszL_z@A~FLTR|w`>#BFgYt|32_bHH(GJTI|`2((&6V#Lw5GR0AoA`lyjz!{Ko zx{O{Z`ldt1+tF+)_@8OR8zLEqn0ozxxih9lT%G>E;LR-YtxtKQTx|!f#;00DBvCBi zivu#26KF7s+bwiFV9?W6ZiX)RFy!Ff7I8E98YQN)e+a{FTEwY<hS90uGE9#y`P?E- zg-<-YT=wkZj%9R-JC+Z5f=?kw_m1UJ{_a?gr=Eyq(R0P}P{`b9!xKgaE6*i`iqmAG zM`e;nMfBFG7tWpLtVpeW_YD>nmS0|8Qa0XhudJ+$D_K>ZUtAPdyduw@>s)Csah8;U z^S%29TirtC#l;0>am$?LOGyacd+#r1qq8u_nfuVPLPwsnto|wZ{e^qM=i=(&(`eTz z_$aF}6gdi=bnhv{|5*x6%q+_f$6s5@6nN=kx?aT*y!YJx@0tEGL#@UaK4|j`s-e@6 WE;e`u;e(DU%n^JXR=wL7u>S-0v2o-8 diff --git a/docs/build/doctrees/population_extensions/metadata.doctree b/docs/build/doctrees/population_extensions/metadata.doctree index 62b4f5496c7849f5135a5fb37b8ec9ea0124cf97..e9dff16964d72690f417c3222d4bb77187db73a7 100644 GIT binary patch delta 497 zcmX>f@g<U_fpzN3jVyPW7|%_X5s(ov*0a>J)KASTE7ng*Ez?cP%u6hqY$q^p@*?JM z1e9!!Wc6oeypGS9RhvsWm$Bhdv)N9-nhB3Q&?)OTdkgb1GQP!akDu6)$qu5g@hI8s zCnmzi_!^%PYbIOD2u`*ZRhXP4yNw8?n}5i)a!5#Il#~<{Tj}c;q!twG6;zgF<mc(- z7o|_0tM0C-29r!lEJ-XWN=(j9Ez-+OElC5Z&`-%vp8Q+=iWqNZZen_Bd`^C1N@iaA zlpdCx%)IO=lkaIb^YWzTCZ(ptgB27{meYLCag>RHAw#x@K-@*L3T%F=mBk1Eym+V> delta 343 zcmewoc|L-rfpx0OMwYuwj0Yw!5RqX^%FIhFs+@d5WZvWr%-^sHvQDno=HA@OYR}Ag z5>?Cc&2u<cvSEtK3Ql3f5S=V5$gz2%Fdrl1eI!#hUl3W3CbB_HgpKhok{Y1n)=Zu) zBRF}J>@}<so6F=|ITRE!N=gcft@QQF%ggl&DoZl*^YrqI()CkP%k&FU3yLQTYq*Qc zz!a6_=jRmbWu}&-ffP-y*0{pYlbV~9ni8Lxo0y(jJf(ATs;2Yg9hz@A4l^+@WXSel M2`|>o_1dM30JRi?xBvhE diff --git a/docs/build/doctrees/population_extensions/slurm.doctree b/docs/build/doctrees/population_extensions/slurm.doctree index ca741290c6891c3279a2b8df8abfcb815a80cc3d..e93ac8125f33d24d2b2e53f53dbfefcc8786185c 100644 GIT binary patch delta 3331 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 delta 2961 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 diff --git a/docs/build/doctrees/population_extensions/spacing_functions.doctree b/docs/build/doctrees/population_extensions/spacing_functions.doctree index 2fd67c589c99fd60dc6ce4ee8a4be13d4fc7d95a..73f7a6ec4a392f7ff6d784784763a017846a0179 100644 GIT binary patch delta 8395 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 Xv0tR>Y3H3K6&m_;<3Lke7z_UofO)^c delta 9062 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 McMcp46%)k&1Azp`)c^nh diff --git a/docs/build/doctrees/population_extensions/version_info.doctree b/docs/build/doctrees/population_extensions/version_info.doctree index ef114621ef178e40c80b72308da5ef5506302ad2..d05c0446ea80476d16eb23f1bac3d4c8d7c5e296 100644 GIT binary patch delta 842 zcmX@Hit*uUMwSNFsn<5Ls4z2Lo6N^5BVw#)sb{I5npak=pORXpo0OTCSTxyyb@k?N z%;JoA)ND3jb!KIJjL(c^lQ)R-PS#am-yFbwkc}9%du=&3zZX(sBwDS=4@Slxc-^ph z1JD};)BxS7xp}eV3|7Yfc+CQ;<C}ayMQ*c!!cJx))NVeY@|AIt7R%(DYRQbflWo;y znfjR~KNOakJkL#!sher?2WLyBnM{-Cx|(bj*Vxa<cy@AustMz%%{*EwS()xJO=k2m zV7d)bCI>R*fjc|nsmTY84JP+$Dovj6q|f*Vtp4X@9xdI;-woz62{Hps*O>gCk9G24 z!|2Id)l@i47#SEcWU_cCI~qwb@iI?Vbd#Q3VN}T?&&<Fud84byWKLseCKaH#kvvHH zqmT-VOcob2vYkJHcCKTTpIl%f&nUlnf=M_NYXk$(Sb|}-dA~UqE0Jm^?>Cp<e86@t zD7-dT*uN2wkjN-0DJZtm*DpvdDAp^eEXl~v)5|YPpWG7QuBZl+Oi3(BEGbG%&Q2}T z%S<gv1F6tY$xojADBy}1Z)R>{dTM-5equ^yUiy?CmYmGI>?xCv20HWdq~<22ro@94 a6i;Ride5<y6&O--J$SRlw#`?9OBewkq86S2 delta 674 zcmaF3n(@RcMwSNFskR$gRG1l0OrF3c!<LkpmsnIe`2g3l&HtHY7%@aA|7T|1{GD|M z3*%KJ^_vfHRkNdr08Q97*+7(av%0VnBZkao1JS>XjIWSP0IJ_S`Jb5hBq`R(x)L|A z%59RG%gXo>U6ZY<{N@D;JDD+LHruLxW1L)Lq%zrDJ(;m@@@#ckrU^`w4@k&P?s3p% z?3p}4Q+{%Ti!|e`%?=u07@5w2<YXob7>YBV-khbil9lN`OoV^3g8?h!9iR>^#?zAv z4H}vL!lc9*e@)KP(w!V?IG0gqvY@TzWErCb)~t3W28PL9MzXSe%nS^rNf}~2Ogaiv zTBkHlshy&c!J5IAA(O?&Jekiydh&gvN)`p6s>vH%L?#y)JF~#_GV)E{@1z8>nu(iv z@<dHdpjCwi29qO9>L3~#y=52`Hh(t>XJYF4gdQ$6X0ns#DhO^)vAD~ELt0mqW3!*# z3`TLVb33vk7#SF{ZULQ=6$xZz9NhfO{)2#mLPkkRL9vy-etCJhUO{C^Mt+`Neo?x9 zN@|&YL25zq<aYt?;xaHrCHeU|#d?{kC21f<lfwe9@bjeRCZ(ptXXYlRrxs7?oa_+f aJb7}^8;;GaKuhF$&=Vdwi6w>9GXenFKkaD% diff --git a/docs/build/doctrees/readme_link.doctree b/docs/build/doctrees/readme_link.doctree index 3ad6e60171f701515c7485c1a7ce4e7a8b97d56f..92832e0d0156421afcfbd5ed59a7e0bd829f0d71 100644 GIT binary patch delta 7752 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 delta 5078 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 diff --git a/docs/build/doctrees/run_system_wrapper.doctree b/docs/build/doctrees/run_system_wrapper.doctree index 2e8b97a5a6144d4ab616d7e1f2ab7376b36e6347..c005c42504a7280626ce6bb83288356ae91b01d4 100644 GIT binary patch delta 308 zcmZoKd{)TPz&iEzMwYEijN2yb^2&%9>sjhq>Zj(F73-&@mgy#C<|P(Q_UCQeoW$(L zNJvc}t1=VgL44*+*{sdM$cjhJW`EvEY7!C|B_##LR{Ht{sRhM)1(hWk`FVQzMd_0n zP23gLV3H|`C5a_PiOJciMS7X3C21fP`YHLzljBXUi1B9TCZ?yx=j11*Wagz$>0!yq q%*&oK*~!$ImnSthDK#Y?te|*ulj(boPG$y%47nZxL7-@!#s~l>&1UQX delta 219 zcmaD>*j~uez&f>NBg<AM#ubw%vdgd~W#%OoRZc$0-nO}b*^LoHbaI2az~)+3VJ61S zNa{BqWS`24A_6pF%4TW4f2s-!86_nJ#a8<I<>lpi1(hWk`FVQzMd|t}sb%^FsRhN8 z4Ncs|WnhX*^7C_w^)gdS(m;wP&osHh&y$*)l$sKsnVXoNT0Et5a<i%P<ZGsHINF&R P7&7E~Fx=f>p2i3Omby_H diff --git a/docs/build/doctrees/stellar_types.doctree b/docs/build/doctrees/stellar_types.doctree index 51dd8575d91a5dfb679d8ac93ef9f74888780ca4..3c1d4627039ef38fcf806b80c51707510d2c0295 100644 GIT binary patch delta 236 zcmZ3g{6d+ffpzNLjVx1`7}rd`%_1XWtY@ibsh^rxR;-_rTBe(nnU`2J`7cYuW^3m8 zjCj;+{>vi6At8}bQc_TCrLSL*T2QQ4P+5|ZpQo2!ls?&#*IiK!CYh30l2}rdn4Fzj zq?egmk_J+tpOT+Ec{=YEG2YDF#PrnooczR;%)Im|JuEqydD&AYSMfRX@}%Y_rKZG# Z6%<e2#rK#)m63rVL#~H_)7=H)7y+;?Q?>vA delta 171 zcmaE%yi}Q`fpzMvjVx1`80SsC#V^B_l$n=UR5_VTpmDPo^E^g$(T2@4S?91TC}fnB z6ck(O>z9|8>lIX%WaQ`R<rk&vr=*tY7o-*xPxj??7ngx4D#_2!Db~wOElC3@n!J_w t3O`S3Zc=JWd}eN9dTQ~M&dKxnoF{+cd%&U0$iR>x*Msbq&0GTa7y+dwJ=XvL diff --git a/docs/build/doctrees/useful_funcs.doctree b/docs/build/doctrees/useful_funcs.doctree index c3ee61ea0427b5b2e77b894409866d6f84e7c7cb..2add81bc37b4e7eed1d3d8a5fea4f1da1cdebdd0 100644 GIT binary patch delta 8752 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 RQgS?d>vgn0pGICJ{{s5Z`jP+u delta 8988 zcmbVSd3+RA66U?Rb27P)$xH$yAtodl2v-(_5C!E3!3zac0)!+ZkdOp1q5^_kh9jv! zD=W$&y6TFA0TNsZK|p`9E)b%~WftY<ipL`Cy32B{`;PAE?&%2(%O9E7{rXjXRbN%T z>epOp({KDjzr7x#*MzzhWHU}Fn^ja<BkWH>^I@27llJy<_Xho#DAefv__J^$DaQSN z{F??JbM6~Sr%^_2U}f?2s*2*NWz);1HY}^PRMh0oET1-KMsb5{I_}b?)=X|pol#U( z)ldK@x-Z51G1T2<M~CWD?C@HTRPzDyP^rze58C=V;8L%6d<?^yuQEfL$bBZk)l5cE zn4F0A!tCUss0C1Ax6p&+X4=Ar=No#K8eBhO!HSR#{al~oKu2L*ZVyT91&`Q&W4N4} z<xq<)aD7AM)auG+RX5Bj&2Ui-@lZBC0t~5EqG?lW54EOHov<kc*|AjzD8;VU6%1{? za#1{7O3hC4sm3sUMtPB_$eq`7C&CZtAStP5ch_!$VwuZp5e4)XnIPUN&_VXm*suZ} zxk@P2mD&qR9R+iyxLRQQiS!VaFQ&tqyBxSw!go2lyX1>$6d$hCQTJNCbh*9}8iP<& z_+F~d?s|^?I7S($YG`#P_|mLl;bk3T0k4#FD|lGWd?Qfb^wy{*$`ll65$K?3yv-K` z4L#dMdUp7Lu#G|Zh(hS&6M~W+EeKeX6KQc$0vH{2?cGoTwB@8?!p+w!CeR-=CmW4| zg?)PoTlJ_v9L^ez|KTUW7dgQf{UF!~joA)lhBor|C@A>VL)U@1I85(9zb0bKMaHiW z#TtIo^*qaZiK-R!rZLt1^)$uqh+l?)^XmhGhTlRxOF#607D54oFo{99Lw>m%6#No4 zD8CmezvS=LoQE;FMd|&C(0c=IB<d3&dr-7xgP!HfIRq6ahLD1xNyjF})*dZeyBOXB zw_+<oos9v6twz0&9g7mf8mV4&CD8D7R^+Qg>#WmE`Gq^@i(`QDR-X_EU+Q9nz?$no zI&hM|s=E9e0}yPW0h4oQ*(gG2I~^mXW22sOgSY9yTAzkD=;7GgX^_&dCu}^EiUttn zj4RX^?i*Bz?q}B<gTwST*Kh+{(bvFM3>*AzVwHi^B2)PkS9MJV*}<ymrFmL$)l~7? z9d!40gzBh4aPDG8AerYh)cV*w_YQTDP@#`5ct1UOrRQ1K8wQwtDH0m;9znY~yln}1 zhXL~bnS%^4?s7Pk59^JNc%}}sDKim3YW_6@Ne@NC)5AhwNPaT<o9C%-B>|IT?65CC z1h#K8d1>9Ys2XoJz`0*-L{Hx0SiH;tlNLW@+e}51?dB82!ubsf)iDZ@fLmdJ&ljh{ z#Cyk^V~yml%@qwvBQl_3gRh<d_706Pv2_tfuvI*TGRVU@mNdH3PR-uFa|HD3{yR7~ zA{~t&b7|d_dtW$tj&1h^ioGu%^6rZZ%cmmL0Z(#Gy*W=bvex2pA~!+T)1@kokAe06 zTwG$5i=(Ve-29|;OQxzEqjbd9d?W04+I%V3WZMEGuZ}Nzv@7c43ru^hQLc|l?Y{Ou zH3+)@`S5_IK5jMg`uMgl5L+0CMh1fCoHq#V4ycAvmlGl79Ptb(k(m56W~QKgxHx(| zy`VL6DAD79jeX5%FzkOY309?*pzr<T`aI+MydPX&=Um_P7^>I^uQEeTCjYsnjm~+_ zwGZWlYjs&m1ZQCa>IUD87t5MO>|*UEunruEGfa0(w1|Kb?E`_Pu-*&%iS7|v1o<4n zIELU3Sr#!USSCK9ER!F?GX0^Q4*8)ppHtDi1}!CE5}<2La5qIaD@T|jqZgT2H@nDm z`;`8@iKX-g(NIFN<my+sp>N*-%XFV7x@kuH(5+#)m9hM>*2gVe_2<mTPPTi=c6z^2 z@J>?9BZdGbk5BLgKtu9(jO6dN0M2s&m;WD<MJFgoCN7~QlOLMOiy-H*2k8afQWuz@ ztu_S@Hp1kXZie~9f4PkHOML@znvw3BC<P`@cm($~LsCs2OK-DO=soR_x<rpQQ$BHl zS$us`5IWM#a_3RA|7lBGf#GJ}5e=uR)f<GSM$b0$H<T(#Jt@&rJe4!`=y|yOg!qc$ zC#M_)Yl(bd(3I$PX8s2GiVqA89K&Xc;SO_GM4{-4h7$#Z!h9l=bVa?*lr5ZM6dG-4 z4E_t}>#&Ef!a*tU!Q^7xK_-$iNpEz9uRAQQBg?x%Ymo_)ogK|dhrRXY;1#NtX6U>q zq0oWsj%Ubim)S!8)X<TIj-K_5=7F{2QTNU%D-rHyp<w_U|C%0TCl868RI~ON;_xg7 zM6U~n>f$lj$rsU<N?zp3wy>5ebNT{2!UFpf2I71RY|8J0hJd5Qg`ed2CQA3Nm6YJQ z>>jFu4W)T_DZQ}4jnYW-OB9ODRRytSgYYZ-epT53%R2GCg(L%Qup)`<3uQC$4kpLE zjZBmFYzY*;n2KBJy#!PbdFvxWMS<c20^p~5;UoNkEim?}bV>3yk7PVV8uBhqZ7A*H z`dFawd_1;WSQ{5>VQpL=3PEn;vMFHR#>HD$8#j37I~E+k%<B?Bh|Weno!tZ7gkNTT zZ?W=6L+PVg!LAT`$s41a5MMC^cPA4h>l5jHJEefOcR{lsz<1LX>T``71dOJ)%ME~i zD{Pqj{4)9xlv_W?iTekzl9Lkvo5na`ab+bg^;6h1CJar3kyT^SG%Bk|CF{{GPvCk# zWv$}C$WP##1JEie>}8d(mN)0(kNgzY9KiOwX6hz&g?jMm3Amj|smZXkabF(^fZ3}i zq<l%Pl%28Kd+fc?=4ytSb7L`)PV06vd@%QZ)J&1?@*pKu+eoXnGk_I=!~j;Z6QJ#x z6`0UPlHR?jrV!x-I>FQXCP^=z-a+v+ei&d^HVl~;qrX5<0Xh`RGn`)W41YLK%5XN~ z8UE9}g9z=^=5pfe7MQ;zjO4S`z2t?@bcklmaCNGDMFf&u65zuZM<SLZXr0@+Xg%&k zpnLw3Jvd6~u;d^q+}s0}KZ`n>+p%I<r*pZr3p$&F4_Ee&Xdzp>bOc#yEHype;5rWP zZtV-Xt1`_ZomZf7wF6eK%8OGpMKU&;tb5%*uCnR5OGAStmp(^FtZ1?kcj@zR4Ef5~ z#Md3}=yl(6SEfSJdWYJb|0Tjicc#N?GAp_C%zENdZ3%EEzTTpC=jafRJ3BUdxl=Ls z=w>f>D(22@nXh)IJO@v1?bMx9Q5%H3RigBtypa2E^;;pL|N4bW{@X%F%ztde{TK0G z2|}B+A(^qm?9P1uLA{STcgBt>I#u+9bd_8It9JG0XFlpCXKGj4<bZv5B0r#$T8yHu zw8McncW3kCS6Pzy21-u2i<;x%GiL;(H_`KF(!rpEFu7?YKRrPQ;8;^7Kf_ioR=+?J z8T6E#bRJ~wr_G~1YX|PB<OkE<YnAVPWOW?8k`t__XPwZvD;(Zvk8s;R^de6d;ok5k z2j*@d`hM6;^^vxYV4cu1yK_S)wK{}Bu_yvk_Q{q`+$UT5=Y6-gbW-a*9!o!I6)ly{ zyO%&wOD@#xclu%Uq*gneJsm8)-43wQ-pQTy@lTj1<~6GnSl8)@1r{6ez^Xe`gV5XB zz`A%S*!}UR4Z6<eLOzdF2iNp4PjGcVDh3zv>e8d4SEW#Lhp|u^cuWi>d7T_eb;rby zB}Bl#j){(y1f1jo-fDA-pF}*0y<cFU?il|hl6+kJBtqm(IxdIRk>g@mDM8SXREJf2 zDi5jc?NP#Z9kRli_HeL27U@3I{)HSrXHUrSGv+HXew2dQcM6gyV^4|k6MIsQpMsNe z{Ir}D<43vLD^tdvlH+I3DcPj-)Bcz=_7n>m<aGad+N|S&5)~l@N;Dm@Kw+bKZfnOO zgf?q}#J%v`3wmGo-~H|pbrD`qCDN~91v@U3sB5V_<u3VQi-=`zq=e-eI$~JZhzIS$ zzpq8;Jq;eHyb|Va|K(Ssk2!bcl~>h@^P?n85O`G%*z&6~jpwe4G|JD)LE3Sh*SkMl zlUe-wn#|&u>mrNF#a=9ST$k(JJvT%ar9f|wVwrN~hFAu?<*0(R<2tK-gwfeIw;;>f zz`MGzf8ZPz8L8O8Wg*b>H`(gi-$bh=<!RAW`PvakOjCKC#{+BMKw_Gz&zK4YrwJtp zy%3_ih~h=HfXNhgA|$4+QmEQ9M0UJDigU75Bn1~no+ua2VkCySw+N+EgmN9?sVlVT zP*fAi-OWh#$x>deIOK6h)23Gl2tZvi|4xYx3cC$Vz2dF^Gj2_(@fI!;T8)yAh>RX4 z<W<Wqav5KmZtoE)Dqa|BR=DJ4v%)1e&3?ILjYV?FI5T29BsG+kvnDbq>?}uw34zEH zE<#J7<PCH{$O=N8r-{%jgnU>geSvT#2ze4k$Ox8PK?J-OjBcAMRE{TC1PGBVm$po| zu&^s)pW%h!p~#Pnp#sH}X=)8cUfrJ@7{Yy4h2ej+Dhy8uyOrVb5u)MWg((b=3s)Gv zBHRzdi5%JRg%RF{KOoeFqg){;(l4WlusC63Bnn2(rfrdEfM@#>!eb=MB$w{tk`Kk) zD!>zB5#5MbyC=L9D;X!r=-@K?#rYB7M3e*OwMGbg;+Vr&8z@|glPs1>lP->yCSgmw zUltRo;$GL3M9z<-4JOXB!O#)kVCaZ$Ft(<59H_rOF|o9|x}qvKD{JoDxtSF;)urXL zGRrGVvZfV3omEj>Q6>DRI~oyflb)(BFP~ABSyo&<ojxT@?t#7t4Jw{FrFhztWiyLP wimMuy3nP<JzOW$~{cQf3Xe+hXYW|~3L)T^Wz=?iybH&n=2YXX-Dym2S1DkuOm;e9( diff --git a/docs/build/html/.buildinfo b/docs/build/html/.buildinfo index 9b0a6c759..fbb0a5c1a 100644 --- a/docs/build/html/.buildinfo +++ b/docs/build/html/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: e979aa9eb24450dd330ad22ac37f144a +config: 152c93a9edbb6c06996a04d7f36b0eec tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html b/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html index 7e442aac6..0f254fe36 100644 --- a/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html +++ b/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html @@ -13,6 +13,7 @@ <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script> <script src="../../../_static/jquery.js"></script> <script src="../../../_static/underscore.js"></script> + <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../_static/js/theme.js"></script> @@ -551,9 +552,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/dicts.html b/docs/build/html/_modules/binarycpython/utils/dicts.html index c15be2d2a..a3dff7ad4 100644 --- a/docs/build/html/_modules/binarycpython/utils/dicts.html +++ b/docs/build/html/_modules/binarycpython/utils/dicts.html @@ -13,6 +13,7 @@ <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script> <script src="../../../_static/jquery.js"></script> <script src="../../../_static/underscore.js"></script> + <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../_static/js/theme.js"></script> @@ -962,9 +963,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/ensemble.html b/docs/build/html/_modules/binarycpython/utils/ensemble.html index f455ac536..d3bfcd009 100644 --- a/docs/build/html/_modules/binarycpython/utils/ensemble.html +++ b/docs/build/html/_modules/binarycpython/utils/ensemble.html @@ -13,6 +13,7 @@ <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script> <script src="../../../_static/jquery.js"></script> <script src="../../../_static/underscore.js"></script> + <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../_static/js/theme.js"></script> @@ -476,9 +477,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/functions.html b/docs/build/html/_modules/binarycpython/utils/functions.html index 6972ad96d..b456a0bb2 100644 --- a/docs/build/html/_modules/binarycpython/utils/functions.html +++ b/docs/build/html/_modules/binarycpython/utils/functions.html @@ -13,6 +13,7 @@ <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script> <script src="../../../_static/jquery.js"></script> <script src="../../../_static/underscore.js"></script> + <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../_static/js/theme.js"></script> @@ -1311,9 +1312,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/grid.html b/docs/build/html/_modules/binarycpython/utils/grid.html index 2c9765a3f..51a7537a5 100644 --- a/docs/build/html/_modules/binarycpython/utils/grid.html +++ b/docs/build/html/_modules/binarycpython/utils/grid.html @@ -13,6 +13,7 @@ <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script> <script src="../../../_static/jquery.js"></script> <script src="../../../_static/underscore.js"></script> + <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../_static/js/theme.js"></script> @@ -92,6 +93,8 @@ <span class="sd"> - TODO: fix the correct object types for the default values of the bse_options</span> <span class="sd"> - TODO: think of a clean and nice way to unload and remove the custom_logging_info library from memory (and from disk)</span> <span class="sd"> - TODO: think of a nice way to remove the loaded grid_code/ generator from memory.</span> + +<span class="sd">TODO: Some of the methods that we have defined in the (mixin) class are designed to be used as a portal to information (return_binary_c_version_info for example.) THe current design is that they are all instance methods, but that is not always necessary. We can decorate them with @staticmethod, or @classmethod to make it easier to use them (https://realpython.com/instance-class-and-static-methods-demystified/)</span> <span class="sd">"""</span> <span class="kn">import</span> <span class="nn">os</span> @@ -2510,9 +2513,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/plot_functions.html b/docs/build/html/_modules/binarycpython/utils/plot_functions.html index 7ae04c559..9d2e8086a 100644 --- a/docs/build/html/_modules/binarycpython/utils/plot_functions.html +++ b/docs/build/html/_modules/binarycpython/utils/plot_functions.html @@ -13,6 +13,7 @@ <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script> <script src="../../../_static/jquery.js"></script> <script src="../../../_static/underscore.js"></script> + <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../_static/js/theme.js"></script> @@ -714,9 +715,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html index 643168fbe..16984ce1d 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -824,9 +825,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html index 65a11d7e1..fd584fe1d 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -1317,9 +1318,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html index 9182b9c8f..3e309fd6d 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -207,9 +208,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html index 4d0459caf..c39a167b4 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -453,9 +454,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html index 54d9b3edf..10bdb9bfc 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -654,9 +655,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html index 38bfc6486..4fbb43cd0 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -901,9 +902,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/distribution_functions.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/distribution_functions.html index 1d74b3f80..be502f563 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/distribution_functions.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/distribution_functions.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -2402,9 +2403,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html index 676af2f64..410f14835 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -554,9 +555,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_options_defaults.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_options_defaults.html index eda3c579e..a5d68dad8 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_options_defaults.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_options_defaults.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -716,9 +717,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html index dbdf11d8f..690061d87 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -1235,9 +1236,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html index 6316c9ce4..6d977f800 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -228,9 +229,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html index c49c344b5..24d093b4f 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -552,9 +553,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/spacing_functions.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/spacing_functions.html index 2c758ddfe..7d536f438 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/spacing_functions.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/spacing_functions.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -775,9 +776,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/version_info.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/version_info.html index ca7256fc9..7dd9c94b7 100644 --- a/docs/build/html/_modules/binarycpython/utils/population_extensions/version_info.html +++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/version_info.html @@ -13,6 +13,7 @@ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script> <script src="../../../../_static/jquery.js"></script> <script src="../../../../_static/underscore.js"></script> + <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../../_static/js/theme.js"></script> @@ -521,9 +522,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html b/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html index 1c01f4a22..1e4907fd6 100644 --- a/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html +++ b/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html @@ -13,6 +13,7 @@ <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script> <script src="../../../_static/jquery.js"></script> <script src="../../../_static/underscore.js"></script> + <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../_static/js/theme.js"></script> @@ -205,9 +206,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/binarycpython/utils/useful_funcs.html b/docs/build/html/_modules/binarycpython/utils/useful_funcs.html index b6239a664..e856554d3 100644 --- a/docs/build/html/_modules/binarycpython/utils/useful_funcs.html +++ b/docs/build/html/_modules/binarycpython/utils/useful_funcs.html @@ -13,6 +13,7 @@ <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script> <script src="../../../_static/jquery.js"></script> <script src="../../../_static/underscore.js"></script> + <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../../../_static/js/theme.js"></script> @@ -471,9 +472,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_modules/index.html b/docs/build/html/_modules/index.html index 29e1c56a4..4a85dba10 100644 --- a/docs/build/html/_modules/index.html +++ b/docs/build/html/_modules/index.html @@ -13,6 +13,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -109,9 +110,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/_sources/binary_c_parameters.rst.txt b/docs/build/html/_sources/binary_c_parameters.rst.txt index 81bd07a93..1019b88d5 100644 --- a/docs/build/html/_sources/binary_c_parameters.rst.txt +++ b/docs/build/html/_sources/binary_c_parameters.rst.txt @@ -4,7 +4,7 @@ The following chapter contains all the parameters that the current version of bi This information was obtained by the following binary_c build: - **binary_c git branch**: HEAD **binary_c git revision**: 5853:20220225:db09898b6 **Built on**: Feb 25 2022 19:21:31 + **binary_c git branch**: branch_david **binary_c git revision**: 6072:20220603:69cdd3f72 **Built on**: Jun 3 2022 14:44:39 Section: stars @@ -492,6 +492,12 @@ Section: stars | **Default value**: 0 | **Extra**: Ignore +| **Parameter**: PPISN_massloss_multiplier +| **Description**: (Pulsational) Pair-Instability Supernova CO massloss multiplier: Value by which the (P)PISN massloss is multiplied. Currently only works with the new prescription. THe additional mass loss is not affected multiplied by this. +| **Parameter input type**: Float +| **Default value**: 1 +| **Extra**: Ignore + | **Parameter**: use_LWN_fallback | **Description**: Flag whether to use the Nazehdin-Lovegrove-Woosley hydrogen envelope ejection at failed supernova. | **Parameter input type**: Integer @@ -2378,6 +2384,30 @@ Section: output | **Parameter**: david_logging_function | **Description**: Function to choose which kind of information gets logged Requires DAVID. Choices are: 0= None, >0 for custom logging functions | **Parameter input type**: Integer +| **Default value**: -1 +| **Extra**: Ignore + +| **Parameter**: david_tzo_logging +| **Description**: Flag to enable logging for TZO project +| **Parameter input type**: Integer +| **Default value**: 0 +| **Extra**: Ignore + +| **Parameter**: david_ppisn_logging +| **Description**: Flag to enable logging for PPISN project +| **Parameter input type**: Integer +| **Default value**: 0 +| **Extra**: Ignore + +| **Parameter**: david_rlof_episode_logging +| **Description**: Flag to enable the RLOF episode logging +| **Parameter input type**: Integer +| **Default value**: 0 +| **Extra**: Ignore + +| **Parameter**: david_rlof_ensemble_logging +| **Description**: Flag to enable the RLOF ensemble logging +| **Parameter input type**: Integer | **Default value**: 0 | **Extra**: Ignore diff --git a/docs/build/html/_static/_sphinx_javascript_frameworks_compat.js b/docs/build/html/_static/_sphinx_javascript_frameworks_compat.js new file mode 100644 index 000000000..8549469dc --- /dev/null +++ b/docs/build/html/_static/_sphinx_javascript_frameworks_compat.js @@ -0,0 +1,134 @@ +/* + * _sphinx_javascript_frameworks_compat.js + * ~~~~~~~~~~ + * + * Compatability shim for jQuery and underscores.js. + * + * WILL BE REMOVED IN Sphinx 6.0 + * xref RemovedInSphinx60Warning + * + */ + +/** + * select a different prefix for underscore + */ +$u = _.noConflict(); + + +/** + * small helper function to urldecode strings + * + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL + */ +jQuery.urldecode = function(x) { + if (!x) { + return x + } + return decodeURIComponent(x.replace(/\+/g, ' ')); +}; + +/** + * small helper function to urlencode strings + */ +jQuery.urlencode = encodeURIComponent; + +/** + * This function returns the parsed url parameters of the + * current request. Multiple values per key are supported, + * it will always return arrays of strings for the value parts. + */ +jQuery.getQueryParameters = function(s) { + if (typeof s === 'undefined') + s = document.location.search; + var parts = s.substr(s.indexOf('?') + 1).split('&'); + var result = {}; + for (var i = 0; i < parts.length; i++) { + var tmp = parts[i].split('=', 2); + var key = jQuery.urldecode(tmp[0]); + var value = jQuery.urldecode(tmp[1]); + if (key in result) + result[key].push(value); + else + result[key] = [value]; + } + return result; +}; + +/** + * highlight a given string on a jquery object by wrapping it in + * span elements with the given class name. + */ +jQuery.fn.highlightText = function(text, className) { + function highlight(node, addItems) { + if (node.nodeType === 3) { + var val = node.nodeValue; + var pos = val.toLowerCase().indexOf(text); + if (pos >= 0 && + !jQuery(node.parentNode).hasClass(className) && + !jQuery(node.parentNode).hasClass("nohighlight")) { + var span; + var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg"); + if (isInSVG) { + span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + } else { + span = document.createElement("span"); + span.className = className; + } + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + node.parentNode.insertBefore(span, node.parentNode.insertBefore( + document.createTextNode(val.substr(pos + text.length)), + node.nextSibling)); + node.nodeValue = val.substr(0, pos); + if (isInSVG) { + var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect"); + var bbox = node.parentElement.getBBox(); + rect.x.baseVal.value = bbox.x; + rect.y.baseVal.value = bbox.y; + rect.width.baseVal.value = bbox.width; + rect.height.baseVal.value = bbox.height; + rect.setAttribute('class', className); + addItems.push({ + "parent": node.parentNode, + "target": rect}); + } + } + } + else if (!jQuery(node).is("button, select, textarea")) { + jQuery.each(node.childNodes, function() { + highlight(this, addItems); + }); + } + } + var addItems = []; + var result = this.each(function() { + highlight(this, addItems); + }); + for (var i = 0; i < addItems.length; ++i) { + jQuery(addItems[i].parent).before(addItems[i].target); + } + return result; +}; + +/* + * backward compatibility for jQuery.browser + * This will be supported until firefox bug is fixed. + */ +if (!jQuery.browser) { + jQuery.uaMatch = function(ua) { + ua = ua.toLowerCase(); + + var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || + /(webkit)[ \/]([\w.]+)/.exec(ua) || + /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || + /(msie) ([\w.]+)/.exec(ua) || + ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || + []; + + return { + browser: match[ 1 ] || "", + version: match[ 2 ] || "0" + }; + }; + jQuery.browser = {}; + jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; +} diff --git a/docs/build/html/_static/basic.css b/docs/build/html/_static/basic.css index 603f6a879..9039e027c 100644 --- a/docs/build/html/_static/basic.css +++ b/docs/build/html/_static/basic.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- basic theme. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -222,7 +222,7 @@ table.modindextable td { /* -- general body styles --------------------------------------------------- */ div.body { - min-width: 450px; + min-width: 360px; max-width: 800px; } @@ -335,13 +335,13 @@ p.sidebar-title { font-weight: bold; } -div.admonition, div.topic, blockquote { +div.admonition, div.topic, aside.topic, blockquote { clear: left; } /* -- topics ---------------------------------------------------------------- */ -div.topic { +div.topic, aside.topic { border: 1px solid #ccc; padding: 7px; margin: 10px 0 10px 0; @@ -380,6 +380,7 @@ div.body p.centered { div.sidebar > :last-child, aside.sidebar > :last-child, div.topic > :last-child, +aside.topic > :last-child, div.admonition > :last-child { margin-bottom: 0; } @@ -387,6 +388,7 @@ div.admonition > :last-child { div.sidebar::after, aside.sidebar::after, div.topic::after, +aside.topic::after, div.admonition::after, blockquote::after { display: block; @@ -428,10 +430,6 @@ table.docutils td, table.docutils th { border-bottom: 1px solid #aaa; } -table.footnote td, table.footnote th { - border: 0 !important; -} - th { text-align: left; padding-right: 5px; @@ -615,6 +613,7 @@ ul.simple p { margin-bottom: 0; } +/* Docutils 0.17 and older (footnotes & citations) */ dl.footnote > dt, dl.citation > dt { float: left; @@ -632,6 +631,33 @@ dl.citation > dd:after { clear: both; } +/* Docutils 0.18+ (footnotes & citations) */ +aside.footnote > span, +div.citation > span { + float: left; +} +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { + margin-bottom: 0em; +} +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { + content: ""; + clear: both; +} + +/* Footnotes & citations ends */ + dl.field-list { display: grid; grid-template-columns: fit-content(30%) auto; @@ -757,6 +783,7 @@ span.pre { -ms-hyphens: none; -webkit-hyphens: none; hyphens: none; + white-space: nowrap; } div[class*="highlight-"] { diff --git a/docs/build/html/_static/doctools.js b/docs/build/html/_static/doctools.js index 8cbf1b161..c3db08d1c 100644 --- a/docs/build/html/_static/doctools.js +++ b/docs/build/html/_static/doctools.js @@ -2,322 +2,263 @@ * doctools.js * ~~~~~~~~~~~ * - * Sphinx JavaScript utilities for all documentation. + * Base JavaScript utilities for all Sphinx HTML documentation. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ +"use strict"; -/** - * select a different prefix for underscore - */ -$u = _.noConflict(); - -/** - * make the code below compatible with browsers without - * an installed firebug like debugger -if (!window.console || !console.firebug) { - var names = ["log", "debug", "info", "warn", "error", "assert", "dir", - "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", - "profile", "profileEnd"]; - window.console = {}; - for (var i = 0; i < names.length; ++i) - window.console[names[i]] = function() {}; -} - */ - -/** - * small helper function to urldecode strings - * - * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL - */ -jQuery.urldecode = function(x) { - if (!x) { - return x +const _ready = (callback) => { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); } - return decodeURIComponent(x.replace(/\+/g, ' ')); }; /** - * small helper function to urlencode strings + * highlight a given string on a node by wrapping it in + * span elements with the given class name. */ -jQuery.urlencode = encodeURIComponent; +const _highlight = (node, addItems, text, className) => { + if (node.nodeType === Node.TEXT_NODE) { + const val = node.nodeValue; + const parent = node.parentNode; + const pos = val.toLowerCase().indexOf(text); + if ( + pos >= 0 && + !parent.classList.contains(className) && + !parent.classList.contains("nohighlight") + ) { + let span; -/** - * This function returns the parsed url parameters of the - * current request. Multiple values per key are supported, - * it will always return arrays of strings for the value parts. - */ -jQuery.getQueryParameters = function(s) { - if (typeof s === 'undefined') - s = document.location.search; - var parts = s.substr(s.indexOf('?') + 1).split('&'); - var result = {}; - for (var i = 0; i < parts.length; i++) { - var tmp = parts[i].split('=', 2); - var key = jQuery.urldecode(tmp[0]); - var value = jQuery.urldecode(tmp[1]); - if (key in result) - result[key].push(value); - else - result[key] = [value]; - } - return result; -}; + const closestNode = parent.closest("body, svg, foreignObject"); + const isInSVG = closestNode && closestNode.matches("svg"); + if (isInSVG) { + span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + } else { + span = document.createElement("span"); + span.classList.add(className); + } -/** - * highlight a given string on a jquery object by wrapping it in - * span elements with the given class name. - */ -jQuery.fn.highlightText = function(text, className) { - function highlight(node, addItems) { - if (node.nodeType === 3) { - var val = node.nodeValue; - var pos = val.toLowerCase().indexOf(text); - if (pos >= 0 && - !jQuery(node.parentNode).hasClass(className) && - !jQuery(node.parentNode).hasClass("nohighlight")) { - var span; - var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg"); - if (isInSVG) { - span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); - } else { - span = document.createElement("span"); - span.className = className; - } - span.appendChild(document.createTextNode(val.substr(pos, text.length))); - node.parentNode.insertBefore(span, node.parentNode.insertBefore( + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + parent.insertBefore( + span, + parent.insertBefore( document.createTextNode(val.substr(pos + text.length)), - node.nextSibling)); - node.nodeValue = val.substr(0, pos); - if (isInSVG) { - var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect"); - var bbox = node.parentElement.getBBox(); - rect.x.baseVal.value = bbox.x; - rect.y.baseVal.value = bbox.y; - rect.width.baseVal.value = bbox.width; - rect.height.baseVal.value = bbox.height; - rect.setAttribute('class', className); - addItems.push({ - "parent": node.parentNode, - "target": rect}); - } + node.nextSibling + ) + ); + node.nodeValue = val.substr(0, pos); + + if (isInSVG) { + const rect = document.createElementNS( + "http://www.w3.org/2000/svg", + "rect" + ); + const bbox = parent.getBBox(); + rect.x.baseVal.value = bbox.x; + rect.y.baseVal.value = bbox.y; + rect.width.baseVal.value = bbox.width; + rect.height.baseVal.value = bbox.height; + rect.setAttribute("class", className); + addItems.push({ parent: parent, target: rect }); } } - else if (!jQuery(node).is("button, select, textarea")) { - jQuery.each(node.childNodes, function() { - highlight(this, addItems); - }); - } + } else if (node.matches && !node.matches("button, select, textarea")) { + node.childNodes.forEach((el) => _highlight(el, addItems, text, className)); } - var addItems = []; - var result = this.each(function() { - highlight(this, addItems); - }); - for (var i = 0; i < addItems.length; ++i) { - jQuery(addItems[i].parent).before(addItems[i].target); - } - return result; }; - -/* - * backward compatibility for jQuery.browser - * This will be supported until firefox bug is fixed. - */ -if (!jQuery.browser) { - jQuery.uaMatch = function(ua) { - ua = ua.toLowerCase(); - - var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || - /(webkit)[ \/]([\w.]+)/.exec(ua) || - /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || - /(msie) ([\w.]+)/.exec(ua) || - ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || - []; - - return { - browser: match[ 1 ] || "", - version: match[ 2 ] || "0" - }; - }; - jQuery.browser = {}; - jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; -} +const _highlightText = (thisNode, text, className) => { + let addItems = []; + _highlight(thisNode, addItems, text, className); + addItems.forEach((obj) => + obj.parent.insertAdjacentElement("beforebegin", obj.target) + ); +}; /** * Small JavaScript module for the documentation. */ -var Documentation = { - - init : function() { - this.fixFirefoxAnchorBug(); - this.highlightSearchWords(); - this.initIndexTable(); - if (DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) { - this.initOnKeyListeners(); - } +const Documentation = { + init: () => { + Documentation.highlightSearchWords(); + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); }, /** * i18n support */ - TRANSLATIONS : {}, - PLURAL_EXPR : function(n) { return n === 1 ? 0 : 1; }, - LOCALE : 'unknown', + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (n === 1 ? 0 : 1), + LOCALE: "unknown", // gettext and ngettext don't access this so that the functions // can safely bound to a different name (_ = Documentation.gettext) - gettext : function(string) { - var translated = Documentation.TRANSLATIONS[string]; - if (typeof translated === 'undefined') - return string; - return (typeof translated === 'string') ? translated : translated[0]; - }, - - ngettext : function(singular, plural, n) { - var translated = Documentation.TRANSLATIONS[singular]; - if (typeof translated === 'undefined') - return (n == 1) ? singular : plural; - return translated[Documentation.PLURALEXPR(n)]; - }, - - addTranslations : function(catalog) { - for (var key in catalog.messages) - this.TRANSLATIONS[key] = catalog.messages[key]; - this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')'); - this.LOCALE = catalog.locale; + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists + } }, - /** - * add context elements like header anchor links - */ - addContextElements : function() { - $('div[id] > :header:first').each(function() { - $('<a class="headerlink">\u00B6</a>'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this headline')). - appendTo(this); - }); - $('dt[id]').each(function() { - $('<a class="headerlink">\u00B6</a>'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this definition')). - appendTo(this); - }); + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; }, - /** - * workaround a firefox stupidity - * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075 - */ - fixFirefoxAnchorBug : function() { - if (document.location.hash && $.browser.mozilla) - window.setTimeout(function() { - document.location.href += ''; - }, 10); + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})` + ); + Documentation.LOCALE = catalog.locale; }, /** * highlight the search words provided in the url in the text */ - highlightSearchWords : function() { - var params = $.getQueryParameters(); - var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; - if (terms.length) { - var body = $('div.body'); - if (!body.length) { - body = $('body'); - } - window.setTimeout(function() { - $.each(terms, function() { - body.highlightText(this.toLowerCase(), 'highlighted'); - }); - }, 10); - $('<p class="highlight-link"><a href="javascript:Documentation.' + - 'hideSearchWords()">' + _('Hide Search Matches') + '</a></p>') - .appendTo($('#searchbox')); - } - }, + highlightSearchWords: () => { + const highlight = + new URLSearchParams(window.location.search).get("highlight") || ""; + const terms = highlight.toLowerCase().split(/\s+/).filter(x => x); + if (terms.length === 0) return; // nothing to do - /** - * init the domain index toggle buttons - */ - initIndexTable : function() { - var togglers = $('img.toggler').click(function() { - var src = $(this).attr('src'); - var idnum = $(this).attr('id').substr(7); - $('tr.cg-' + idnum).toggle(); - if (src.substr(-9) === 'minus.png') - $(this).attr('src', src.substr(0, src.length-9) + 'plus.png'); - else - $(this).attr('src', src.substr(0, src.length-8) + 'minus.png'); - }).css('display', ''); - if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) { - togglers.click(); - } + // There should never be more than one element matching "div.body" + const divBody = document.querySelectorAll("div.body"); + const body = divBody.length ? divBody[0] : document.querySelector("body"); + window.setTimeout(() => { + terms.forEach((term) => _highlightText(body, term, "highlighted")); + }, 10); + + const searchBox = document.getElementById("searchbox"); + if (searchBox === null) return; + searchBox.appendChild( + document + .createRange() + .createContextualFragment( + '<p class="highlight-link">' + + '<a href="javascript:Documentation.hideSearchWords()">' + + Documentation.gettext("Hide Search Matches") + + "</a></p>" + ) + ); }, /** * helper function to hide the search marks again */ - hideSearchWords : function() { - $('#searchbox .highlight-link').fadeOut(300); - $('span.highlighted').removeClass('highlighted'); + hideSearchWords: () => { + document + .querySelectorAll("#searchbox .highlight-link") + .forEach((el) => el.remove()); + document + .querySelectorAll("span.highlighted") + .forEach((el) => el.classList.remove("highlighted")); + const url = new URL(window.location); + url.searchParams.delete("highlight"); + window.history.replaceState({}, "", url); }, /** - * make the url absolute + * helper function to focus on search bar */ - makeURL : function(relativeURL) { - return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL; + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); }, /** - * get the current relative url + * Initialise the domain index toggle buttons */ - getCurrentURL : function() { - var path = document.location.pathname; - var parts = path.split(/\//); - $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() { - if (this === '..') - parts.pop(); - }); - var url = parts.join('/'); - return path.substring(url.lastIndexOf('/') + 1, path.length - 1); + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); + } + }; + + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)) + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); }, - initOnKeyListeners: function() { - $(document).keydown(function(event) { - var activeElementType = document.activeElement.tagName; - // don't navigate when in search box, textarea, dropdown or button - if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT' - && activeElementType !== 'BUTTON' && !event.altKey && !event.ctrlKey && !event.metaKey - && !event.shiftKey) { - switch (event.keyCode) { - case 37: // left - var prevHref = $('link[rel="prev"]').prop('href'); - if (prevHref) { - window.location.href = prevHref; - return false; + initOnKeyListeners: () => { + // only install a listener if it is really needed + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && + !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + ) + return; + + const blacklistedElements = new Set([ + "TEXTAREA", + "INPUT", + "SELECT", + "BUTTON", + ]); + document.addEventListener("keydown", (event) => { + if (blacklistedElements.has(document.activeElement.tagName)) return; // bail for input elements + if (event.altKey || event.ctrlKey || event.metaKey) return; // bail with special keys + + if (!event.shiftKey) { + switch (event.key) { + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); } break; - case 39: // right - var nextHref = $('link[rel="next"]').prop('href'); - if (nextHref) { - window.location.href = nextHref; - return false; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); } break; + case "Escape": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.hideSearchWords(); + event.preventDefault(); } } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } }); - } + }, }; // quick alias for translations -_ = Documentation.gettext; +const _ = Documentation.gettext; -$(document).ready(function() { - Documentation.init(); -}); +_ready(Documentation.init); diff --git a/docs/build/html/_static/documentation_options.js b/docs/build/html/_static/documentation_options.js index 2fa8c97fe..a750e4d5e 100644 --- a/docs/build/html/_static/documentation_options.js +++ b/docs/build/html/_static/documentation_options.js @@ -1,12 +1,14 @@ var DOCUMENTATION_OPTIONS = { URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), VERSION: '', - LANGUAGE: 'None', + LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', FILE_SUFFIX: '.html', LINK_SUFFIX: '.html', HAS_SOURCE: true, SOURCELINK_SUFFIX: '.txt', - NAVIGATION_WITH_KEYS: false + NAVIGATION_WITH_KEYS: false, + SHOW_SEARCH_SUMMARY: true, + ENABLE_SEARCH_SHORTCUTS: false, }; \ No newline at end of file diff --git a/docs/build/html/_static/jquery-3.5.1.js b/docs/build/html/_static/jquery-3.6.0.js similarity index 98% rename from docs/build/html/_static/jquery-3.5.1.js rename to docs/build/html/_static/jquery-3.6.0.js index 50937333b..fc6c299b7 100644 --- a/docs/build/html/_static/jquery-3.5.1.js +++ b/docs/build/html/_static/jquery-3.6.0.js @@ -1,15 +1,15 @@ /*! - * jQuery JavaScript Library v3.5.1 + * jQuery JavaScript Library v3.6.0 * https://jquery.com/ * * Includes Sizzle.js * https://sizzlejs.com/ * - * Copyright JS Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license * https://jquery.org/license * - * Date: 2020-05-04T22:49Z + * Date: 2021-03-02T17:08Z */ ( function( global, factory ) { @@ -76,12 +76,16 @@ var support = {}; var isFunction = function isFunction( obj ) { - // Support: Chrome <=57, Firefox <=52 - // In some browsers, typeof returns "function" for HTML <object> elements - // (i.e., `typeof document.createElement( "object" ) === "function"`). - // We don't want to classify *any* DOM node as a function. - return typeof obj === "function" && typeof obj.nodeType !== "number"; - }; + // Support: Chrome <=57, Firefox <=52 + // In some browsers, typeof returns "function" for HTML <object> elements + // (i.e., `typeof document.createElement( "object" ) === "function"`). + // We don't want to classify *any* DOM node as a function. + // Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5 + // Plus for old WebKit, typeof returns "function" for HTML collections + // (e.g., `typeof document.getElementsByTagName("div") === "function"`). (gh-4756) + return typeof obj === "function" && typeof obj.nodeType !== "number" && + typeof obj.item !== "function"; + }; var isWindow = function isWindow( obj ) { @@ -147,7 +151,7 @@ function toType( obj ) { var - version = "3.5.1", + version = "3.6.0", // Define a local copy of jQuery jQuery = function( selector, context ) { @@ -401,7 +405,7 @@ jQuery.extend( { if ( isArrayLike( Object( arr ) ) ) { jQuery.merge( ret, typeof arr === "string" ? - [ arr ] : arr + [ arr ] : arr ); } else { push.call( ret, arr ); @@ -496,9 +500,9 @@ if ( typeof Symbol === "function" ) { // Populate the class2type map jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), -function( _i, name ) { - class2type[ "[object " + name + "]" ] = name.toLowerCase(); -} ); + function( _i, name ) { + class2type[ "[object " + name + "]" ] = name.toLowerCase(); + } ); function isArrayLike( obj ) { @@ -518,14 +522,14 @@ function isArrayLike( obj ) { } var Sizzle = /*! - * Sizzle CSS Selector Engine v2.3.5 + * Sizzle CSS Selector Engine v2.3.6 * https://sizzlejs.com/ * * Copyright JS Foundation and other contributors * Released under the MIT license * https://js.foundation/ * - * Date: 2020-03-14 + * Date: 2021-02-16 */ ( function( window ) { var i, @@ -1108,8 +1112,8 @@ support = Sizzle.support = {}; * @returns {Boolean} True iff elem is a non-HTML XML node */ isXML = Sizzle.isXML = function( elem ) { - var namespace = elem.namespaceURI, - docElem = ( elem.ownerDocument || elem ).documentElement; + var namespace = elem && elem.namespaceURI, + docElem = elem && ( elem.ownerDocument || elem ).documentElement; // Support: IE <=8 // Assume HTML when documentElement doesn't yet exist, such as inside loading iframes @@ -3024,9 +3028,9 @@ var rneedsContext = jQuery.expr.match.needsContext; function nodeName( elem, name ) { - return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); + return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); -}; +} var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i ); @@ -3997,8 +4001,8 @@ jQuery.extend( { resolveContexts = Array( i ), resolveValues = slice.call( arguments ), - // the master Deferred - master = jQuery.Deferred(), + // the primary Deferred + primary = jQuery.Deferred(), // subordinate callback factory updateFunc = function( i ) { @@ -4006,30 +4010,30 @@ jQuery.extend( { resolveContexts[ i ] = this; resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; if ( !( --remaining ) ) { - master.resolveWith( resolveContexts, resolveValues ); + primary.resolveWith( resolveContexts, resolveValues ); } }; }; // Single- and empty arguments are adopted like Promise.resolve if ( remaining <= 1 ) { - adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject, + adoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject, !remaining ); // Use .then() to unwrap secondary thenables (cf. gh-3000) - if ( master.state() === "pending" || + if ( primary.state() === "pending" || isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { - return master.then(); + return primary.then(); } } // Multiple arguments are aggregated like Promise.all array elements while ( i-- ) { - adoptValue( resolveValues[ i ], updateFunc( i ), master.reject ); + adoptValue( resolveValues[ i ], updateFunc( i ), primary.reject ); } - return master.promise(); + return primary.promise(); } } ); @@ -4180,8 +4184,8 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { for ( ; i < len; i++ ) { fn( elems[ i ], key, raw ? - value : - value.call( elems[ i ], i, fn( elems[ i ], key ) ) + value : + value.call( elems[ i ], i, fn( elems[ i ], key ) ) ); } } @@ -5089,10 +5093,7 @@ function buildFragment( elems, context, scripts, selection, ignored ) { } -var - rkeyEvent = /^key/, - rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, - rtypenamespace = /^([^.]*)(?:\.(.+)|)/; +var rtypenamespace = /^([^.]*)(?:\.(.+)|)/; function returnTrue() { return true; @@ -5387,8 +5388,8 @@ jQuery.event = { event = jQuery.event.fix( nativeEvent ), handlers = ( - dataPriv.get( this, "events" ) || Object.create( null ) - )[ event.type ] || [], + dataPriv.get( this, "events" ) || Object.create( null ) + )[ event.type ] || [], special = jQuery.event.special[ event.type ] || {}; // Use the fix-ed jQuery.Event rather than the (read-only) native event @@ -5512,12 +5513,12 @@ jQuery.event = { get: isFunction( hook ) ? function() { if ( this.originalEvent ) { - return hook( this.originalEvent ); + return hook( this.originalEvent ); } } : function() { if ( this.originalEvent ) { - return this.originalEvent[ name ]; + return this.originalEvent[ name ]; } }, @@ -5656,7 +5657,13 @@ function leverageNative( el, type, expectSync ) { // Cancel the outer synthetic event event.stopImmediatePropagation(); event.preventDefault(); - return result.value; + + // Support: Chrome 86+ + // In Chrome, if an element having a focusout handler is blurred by + // clicking outside of it, it invokes the handler synchronously. If + // that handler calls `.remove()` on the element, the data is cleared, + // leaving `result` undefined. We need to guard against this. + return result && result.value; } // If this is an inner synthetic event for an event with a bubbling surrogate @@ -5821,34 +5828,7 @@ jQuery.each( { targetTouches: true, toElement: true, touches: true, - - which: function( event ) { - var button = event.button; - - // Add which for key events - if ( event.which == null && rkeyEvent.test( event.type ) ) { - return event.charCode != null ? event.charCode : event.keyCode; - } - - // Add which for click: 1 === left; 2 === middle; 3 === right - if ( !event.which && button !== undefined && rmouseEvent.test( event.type ) ) { - if ( button & 1 ) { - return 1; - } - - if ( button & 2 ) { - return 3; - } - - if ( button & 4 ) { - return 2; - } - - return 0; - } - - return event.which; - } + which: true }, jQuery.event.addProp ); jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) { @@ -5874,6 +5854,12 @@ jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateTyp return true; }, + // Suppress native focus or blur as it's already being fired + // in leverageNative. + _default: function() { + return true; + }, + delegateType: delegateType }; } ); @@ -6541,6 +6527,10 @@ var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); // set in CSS while `offset*` properties report correct values. // Behavior in IE 9 is more subtle than in newer versions & it passes // some versions of this test; make sure not to make it pass there! + // + // Support: Firefox 70+ + // Only Firefox includes border widths + // in computed dimensions. (gh-4529) reliableTrDimensions: function() { var table, tr, trChild, trStyle; if ( reliableTrDimensionsVal == null ) { @@ -6548,17 +6538,32 @@ var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); tr = document.createElement( "tr" ); trChild = document.createElement( "div" ); - table.style.cssText = "position:absolute;left:-11111px"; + table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate"; + tr.style.cssText = "border:1px solid"; + + // Support: Chrome 86+ + // Height set through cssText does not get applied. + // Computed height then comes back as 0. tr.style.height = "1px"; trChild.style.height = "9px"; + // Support: Android 8 Chrome 86+ + // In our bodyBackground.html iframe, + // display for all div elements is set to "inline", + // which causes a problem only in Android 8 Chrome 86. + // Ensuring the div is display: block + // gets around this issue. + trChild.style.display = "block"; + documentElement .appendChild( table ) .appendChild( tr ) .appendChild( trChild ); trStyle = window.getComputedStyle( tr ); - reliableTrDimensionsVal = parseInt( trStyle.height ) > 3; + reliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) + + parseInt( trStyle.borderTopWidth, 10 ) + + parseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight; documentElement.removeChild( table ); } @@ -7022,10 +7027,10 @@ jQuery.each( [ "height", "width" ], function( _i, dimension ) { // Running getBoundingClientRect on a disconnected node // in IE throws an error. ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ? - swap( elem, cssShow, function() { - return getWidthOrHeight( elem, dimension, extra ); - } ) : - getWidthOrHeight( elem, dimension, extra ); + swap( elem, cssShow, function() { + return getWidthOrHeight( elem, dimension, extra ); + } ) : + getWidthOrHeight( elem, dimension, extra ); } }, @@ -7084,7 +7089,7 @@ jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft, swap( elem, { marginLeft: 0 }, function() { return elem.getBoundingClientRect().left; } ) - ) + "px"; + ) + "px"; } } ); @@ -7223,7 +7228,7 @@ Tween.propHooks = { if ( jQuery.fx.step[ tween.prop ] ) { jQuery.fx.step[ tween.prop ]( tween ); } else if ( tween.elem.nodeType === 1 && ( - jQuery.cssHooks[ tween.prop ] || + jQuery.cssHooks[ tween.prop ] || tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) { jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); } else { @@ -7468,7 +7473,7 @@ function defaultPrefilter( elem, props, opts ) { anim.done( function() { - /* eslint-enable no-loop-func */ + /* eslint-enable no-loop-func */ // The final step of a "hide" animation is actually hiding the element if ( !hidden ) { @@ -7588,7 +7593,7 @@ function Animation( elem, properties, options ) { tweens: [], createTween: function( prop, end ) { var tween = jQuery.Tween( elem, animation.opts, prop, end, - animation.opts.specialEasing[ prop ] || animation.opts.easing ); + animation.opts.specialEasing[ prop ] || animation.opts.easing ); animation.tweens.push( tween ); return tween; }, @@ -7761,7 +7766,8 @@ jQuery.fn.extend( { anim.stop( true ); } }; - doAnimation.finish = doAnimation; + + doAnimation.finish = doAnimation; return empty || optall.queue === false ? this.each( doAnimation ) : @@ -8401,8 +8407,8 @@ jQuery.fn.extend( { if ( this.setAttribute ) { this.setAttribute( "class", className || value === false ? - "" : - dataPriv.get( this, "__className__" ) || "" + "" : + dataPriv.get( this, "__className__" ) || "" ); } } @@ -8417,7 +8423,7 @@ jQuery.fn.extend( { while ( ( elem = this[ i++ ] ) ) { if ( elem.nodeType === 1 && ( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) { - return true; + return true; } } @@ -8707,9 +8713,7 @@ jQuery.extend( jQuery.event, { special.bindType || type; // jQuery handler - handle = ( - dataPriv.get( cur, "events" ) || Object.create( null ) - )[ event.type ] && + handle = ( dataPriv.get( cur, "events" ) || Object.create( null ) )[ event.type ] && dataPriv.get( cur, "handle" ); if ( handle ) { handle.apply( cur, data ); @@ -8856,7 +8860,7 @@ var rquery = ( /\?/ ); // Cross-browser xml parsing jQuery.parseXML = function( data ) { - var xml; + var xml, parserErrorElem; if ( !data || typeof data !== "string" ) { return null; } @@ -8865,12 +8869,17 @@ jQuery.parseXML = function( data ) { // IE throws on parseFromString with invalid input. try { xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" ); - } catch ( e ) { - xml = undefined; - } + } catch ( e ) {} - if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) { - jQuery.error( "Invalid XML: " + data ); + parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ]; + if ( !xml || parserErrorElem ) { + jQuery.error( "Invalid XML: " + ( + parserErrorElem ? + jQuery.map( parserErrorElem.childNodes, function( el ) { + return el.textContent; + } ).join( "\n" ) : + data + ) ); } return xml; }; @@ -8971,16 +8980,14 @@ jQuery.fn.extend( { // Can add propHook for "elements" to filter or add form elements var elements = jQuery.prop( this, "elements" ); return elements ? jQuery.makeArray( elements ) : this; - } ) - .filter( function() { + } ).filter( function() { var type = this.type; // Use .is( ":disabled" ) so that fieldset[disabled] works return this.name && !jQuery( this ).is( ":disabled" ) && rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) && ( this.checked || !rcheckableType.test( type ) ); - } ) - .map( function( _i, elem ) { + } ).map( function( _i, elem ) { var val = jQuery( this ).val(); if ( val == null ) { @@ -9033,7 +9040,8 @@ var // Anchor tag for parsing the document origin originAnchor = document.createElement( "a" ); - originAnchor.href = location.href; + +originAnchor.href = location.href; // Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport function addToPrefiltersOrTransports( structure ) { @@ -9414,8 +9422,8 @@ jQuery.extend( { // Context for global events is callbackContext if it is a DOM node or jQuery collection globalEventContext = s.context && ( callbackContext.nodeType || callbackContext.jquery ) ? - jQuery( callbackContext ) : - jQuery.event, + jQuery( callbackContext ) : + jQuery.event, // Deferreds deferred = jQuery.Deferred(), @@ -9727,8 +9735,10 @@ jQuery.extend( { response = ajaxHandleResponses( s, jqXHR, responses ); } - // Use a noop converter for missing script - if ( !isSuccess && jQuery.inArray( "script", s.dataTypes ) > -1 ) { + // Use a noop converter for missing script but not if jsonp + if ( !isSuccess && + jQuery.inArray( "script", s.dataTypes ) > -1 && + jQuery.inArray( "json", s.dataTypes ) < 0 ) { s.converters[ "text script" ] = function() {}; } @@ -10466,12 +10476,6 @@ jQuery.offset = { options.using.call( elem, props ); } else { - if ( typeof props.top === "number" ) { - props.top += "px"; - } - if ( typeof props.left === "number" ) { - props.left += "px"; - } curElem.css( props ); } } @@ -10640,8 +10644,11 @@ jQuery.each( [ "top", "left" ], function( _i, prop ) { // Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods jQuery.each( { Height: "height", Width: "width" }, function( name, type ) { - jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name }, - function( defaultExtra, funcName ) { + jQuery.each( { + padding: "inner" + name, + content: type, + "": "outer" + name + }, function( defaultExtra, funcName ) { // Margin is only for outerHeight, outerWidth jQuery.fn[ funcName ] = function( margin, value ) { @@ -10726,7 +10733,8 @@ jQuery.fn.extend( { } } ); -jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " + +jQuery.each( + ( "blur focus focusin focusout resize scroll click dblclick " + "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + "change select submit keydown keypress keyup contextmenu" ).split( " " ), function( _i, name ) { @@ -10737,7 +10745,8 @@ jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " + this.on( name, null, data, fn ) : this.trigger( name ); }; - } ); + } +); diff --git a/docs/build/html/_static/jquery.js b/docs/build/html/_static/jquery.js index b0614034a..c4c6022f2 100644 --- a/docs/build/html/_static/jquery.js +++ b/docs/build/html/_static/jquery.js @@ -1,2 +1,2 @@ -/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),D=function(e,t){return e===t&&(l=!0),0},j={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&j.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(D),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(D).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(D(this,e||[],!1))},not:function(e){return this.pushStack(D(this,e||[],!0))},is:function(e){return!!D(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var j,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^key/,we=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\.(.+)|)/;function Ce(){return!0}function Ee(){return!1}function Se(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function ke(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)ke(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ee;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Ae(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,Ce)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=Te.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=Te.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Ae(t,"click",Ce),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Ae(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ce:Ee,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Ee,isPropagationStopped:Ee,isImmediatePropagationStopped:Ee,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ce,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ce,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ce,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&be.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&we.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Ae(this,e,Se),!1},trigger:function(){return Ae(this,e),!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return ke(this,e,t,n,r)},one:function(e,t,n,r){return ke(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Ee),this.each(function(){S.event.remove(this,e,n,t)})}});var Ne=/<script|<style|<link/i,De=/checked\s*(?:[^=]|=\s*.checked.)/i,je=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function Pe(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&De.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),Pe(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),Le)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,He),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(je,""),u,l))}return n}function Re(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Oe(o[r],a[r]);else Oe(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Re(this,e,!0)},remove:function(e){return Re(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Pe(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)})},prepend:function(){return Pe(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ne.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Pe(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Me=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Ie=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},We=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Fe=new RegExp(ne.join("|"),"i");function Be(e,t,n){var r,i,o,a,s=e.style;return(n=n||Ie(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Me.test(a)&&Fe.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function $e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px",t.style.height="1px",n.style.height="9px",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=3<parseInt(r.height),re.removeChild(e)),a}}))}();var _e=["Webkit","Moz","ms"],ze=E.createElement("div").style,Ue={};function Xe(e){var t=S.cssProps[e]||Ue[e];return t||(e in ze?e:Ue[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=_e.length;while(n--)if((e=_e[n]+t)in ze)return e}(e)||e)}var Ve=/^(none|table(?!-c[ea]).+)/,Ge=/^--/,Ye={position:"absolute",visibility:"hidden",display:"block"},Qe={letterSpacing:"0",fontWeight:"400"};function Je(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Ke(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Ze(e,t,n){var r=Ie(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=Be(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Me.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Ke(e,t,n||(i?"border":"content"),o,r,a)+"px"}function et(e,t,n,r,i){return new et.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Be(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Ge.test(t),l=e.style;if(u||(t=Xe(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Ge.test(t)||(t=Xe(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Be(e,t,r)),"normal"===i&&t in Qe&&(i=Qe[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ve.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Ze(e,u,n):We(e,Ye,function(){return Ze(e,u,n)})},set:function(e,t,n){var r,i=Ie(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Ke(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Ke(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Je(0,t,s)}}}),S.cssHooks.marginLeft=$e(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Be(e,"marginLeft"))||e.getBoundingClientRect().left-We(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Je)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Ie(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=et).prototype={constructor:et,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=et.propHooks[this.prop];return e&&e.get?e.get(this):et.propHooks._default.get(this)},run:function(e){var t,n=et.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):et.propHooks._default.set(this),this}}).init.prototype=et.prototype,(et.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[Xe(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=et.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=et.prototype.init,S.fx.step={};var tt,nt,rt,it,ot=/^(?:toggle|show|hide)$/,at=/queueHooks$/;function st(){nt&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(st):C.setTimeout(st,S.fx.interval),S.fx.tick())}function ut(){return C.setTimeout(function(){tt=void 0}),tt=Date.now()}function lt(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ct(e,t,n){for(var r,i=(ft.tweeners[t]||[]).concat(ft.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ft(o,e,t){var n,a,r=0,i=ft.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=tt||ut(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:tt||ut(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=ft.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ct,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(ft,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ft.tweeners[n]=ft.tweeners[n]||[],ft.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],ot.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ct(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?ft.prefilters.unshift(e):ft.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=ft(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&at.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(lt(r,!0),e,t,n)}}),S.each({slideDown:lt("show"),slideUp:lt("hide"),slideToggle:lt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(tt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),tt=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){nt||(nt=!0,st())},S.fx.stop=function(){nt=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},rt=E.createElement("input"),it=E.createElement("select").appendChild(E.createElement("option")),rt.type="checkbox",y.checkOn=""!==rt.value,y.optSelected=it.selected,(rt=E.createElement("input")).value="t",rt.type="radio",y.radioValue="t"===rt.value;var pt,dt=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?pt:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),pt={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=dt[t]||S.find.attr;dt[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=dt[o],dt[o]=r,r=null!=a(e,t,n)?o:null,dt[o]=i),r}});var ht=/^(?:input|select|textarea|button)$/i,gt=/^(?:a|area)$/i;function vt(e){return(e.match(P)||[]).join(" ")}function yt(e){return e.getAttribute&&e.getAttribute("class")||""}function mt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):ht.test(e.nodeName)||gt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,yt(this)))});if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,yt(this)))});if(!arguments.length)return this.attr("class","");if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,yt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=mt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=yt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+vt(yt(n))+" ").indexOf(t))return!0;return!1}});var xt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(xt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:vt(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var bt=/^(?:focusinfocus|focusoutblur)$/,wt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!bt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,bt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,wt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,wt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var Tt=C.location,Ct={guid:Date.now()},Et=/\?/;S.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||S.error("Invalid XML: "+e),t};var St=/\[\]$/,kt=/\r?\n/g,At=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;function Dt(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||St.test(n)?i(n,t):Dt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)Dt(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)Dt(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&Nt.test(this.nodeName)&&!At.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(kt,"\r\n")}}):{name:t.name,value:n.replace(kt,"\r\n")}}).get()}});var jt=/%20/g,qt=/#.*$/,Lt=/([?&])_=[^&]*/,Ht=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ot=/^(?:GET|HEAD)$/,Pt=/^\/\//,Rt={},Mt={},It="*/".concat("*"),Wt=E.createElement("a");function Ft(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Bt(t,i,o,a){var s={},u=t===Mt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function $t(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Wt.href=Tt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Tt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Tt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":It,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?$t($t(e,S.ajaxSettings),t):$t(S.ajaxSettings,e)},ajaxPrefilter:Ft(Rt),ajaxTransport:Ft(Mt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=Ht.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||Tt.href)+"").replace(Pt,Tt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Wt.protocol+"//"+Wt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Bt(Rt,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Ot.test(v.type),f=v.url.replace(qt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(jt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Et.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Lt,"$1"),o=(Et.test(f)?"&":"?")+"_="+Ct.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+It+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Bt(Mt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var _t={0:200,1223:204},zt=S.ajaxSettings.xhr();y.cors=!!zt&&"withCredentials"in zt,y.ajax=zt=!!zt,S.ajaxTransport(function(i){var o,a;if(y.cors||zt&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(_t[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=vt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Gt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Gt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Yt=C.jQuery,Qt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Qt),e&&C.jQuery===S&&(C.jQuery=Yt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S}); +/*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),j=function(e,t){return e===t&&(l=!0),0},D={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&D.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(j),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(j).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var D,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^([^.]*)(?:\.(.+)|)/;function we(){return!0}function Te(){return!1}function Ce(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ee(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ee(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Te;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Se(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n&&n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,we)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=be.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=be.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click",we),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?we:Te,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Te,isPropagationStopped:Te,isImmediatePropagationStopped:Te,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=we,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=we,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=we,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Se(this,e,Ce),!1},trigger:function(){return Se(this,e),!0},_default:function(){return!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return Ee(this,e,t,n,r)},one:function(e,t,n,r){return Ee(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Te),this.each(function(){S.event.remove(this,e,n,t)})}});var ke=/<script|<style|<link/i,Ae=/checked\s*(?:[^=]|=\s*.checked.)/i,Ne=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function He(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Ae.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),He(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),De)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,qe),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(Ne,""),u,l))}return n}function Oe(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Le(o[r],a[r]);else Le(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Oe(this,e,!0)},remove:function(e){return Oe(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return He(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||je(this,e).appendChild(e)})},prepend:function(){return He(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=je(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ke.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return He(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Pe=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Re=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Me=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Ie=new RegExp(ne.join("|"),"i");function We(e,t,n){var r,i,o,a,s=e.style;return(n=n||Re(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Pe.test(a)&&Ie.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function Fe(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",n.style.height="9px",n.style.display="block",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=parseInt(r.height,10)+parseInt(r.borderTopWidth,10)+parseInt(r.borderBottomWidth,10)===t.offsetHeight,re.removeChild(e)),a}}))}();var Be=["Webkit","Moz","ms"],$e=E.createElement("div").style,_e={};function ze(e){var t=S.cssProps[e]||_e[e];return t||(e in $e?e:_e[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Be.length;while(n--)if((e=Be[n]+t)in $e)return e}(e)||e)}var Ue=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ve={position:"absolute",visibility:"hidden",display:"block"},Ge={letterSpacing:"0",fontWeight:"400"};function Ye(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Qe(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Je(e,t,n){var r=Re(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=We(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Pe.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Qe(e,t,n||(i?"border":"content"),o,r,a)+"px"}function Ke(e,t,n,r,i){return new Ke.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=We(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Xe.test(t),l=e.style;if(u||(t=ze(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Xe.test(t)||(t=ze(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=We(e,t,r)),"normal"===i&&t in Ge&&(i=Ge[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ue.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Je(e,u,n):Me(e,Ve,function(){return Je(e,u,n)})},set:function(e,t,n){var r,i=Re(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Qe(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Qe(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Ye(0,t,s)}}}),S.cssHooks.marginLeft=Fe(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(We(e,"marginLeft"))||e.getBoundingClientRect().left-Me(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Ye)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Re(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=Ke).prototype={constructor:Ke,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=Ke.propHooks[this.prop];return e&&e.get?e.get(this):Ke.propHooks._default.get(this)},run:function(e){var t,n=Ke.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ke.propHooks._default.set(this),this}}).init.prototype=Ke.prototype,(Ke.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[ze(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Ke.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=Ke.prototype.init,S.fx.step={};var Ze,et,tt,nt,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function ot(){et&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(ot):C.setTimeout(ot,S.fx.interval),S.fx.tick())}function at(){return C.setTimeout(function(){Ze=void 0}),Ze=Date.now()}function st(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ut(e,t,n){for(var r,i=(lt.tweeners[t]||[]).concat(lt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function lt(o,e,t){var n,a,r=0,i=lt.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=Ze||at(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:Ze||at(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=lt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ut,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(lt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],lt.tweeners[n]=lt.tweeners[n]||[],lt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],rt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ut(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?lt.prefilters.unshift(e):lt.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=lt(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&it.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(st(r,!0),e,t,n)}}),S.each({slideDown:st("show"),slideUp:st("hide"),slideToggle:st("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(Ze=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),Ze=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){et||(et=!0,ot())},S.fx.stop=function(){et=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},tt=E.createElement("input"),nt=E.createElement("select").appendChild(E.createElement("option")),tt.type="checkbox",y.checkOn=""!==tt.value,y.optSelected=nt.selected,(tt=E.createElement("input")).value="t",tt.type="radio",y.radioValue="t"===tt.value;var ct,ft=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?ct:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ct={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=ft[t]||S.find.attr;ft[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=ft[o],ft[o]=r,r=null!=a(e,t,n)?o:null,ft[o]=i),r}});var pt=/^(?:input|select|textarea|button)$/i,dt=/^(?:a|area)$/i;function ht(e){return(e.match(P)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function vt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):pt.test(e.nodeName)||dt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,gt(this)))});if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,gt(this)))});if(!arguments.length)return this.attr("class","");if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,gt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=vt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=gt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+ht(gt(n))+" ").indexOf(t))return!0;return!1}});var yt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(yt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:ht(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var mt=/^(?:focusinfocus|focusoutblur)$/,xt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!mt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,mt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,xt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,xt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var bt=C.location,wt={guid:Date.now()},Tt=/\?/;S.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||S.error("Invalid XML: "+(n?S.map(n.childNodes,function(e){return e.textContent}).join("\n"):e)),t};var Ct=/\[\]$/,Et=/\r?\n/g,St=/^(?:submit|button|image|reset|file)$/i,kt=/^(?:input|select|textarea|keygen)/i;function At(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||Ct.test(n)?i(n,t):At(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)At(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)At(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&kt.test(this.nodeName)&&!St.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Nt=/%20/g,jt=/#.*$/,Dt=/([?&])_=[^&]*/,qt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ot={},Pt={},Rt="*/".concat("*"),Mt=E.createElement("a");function It(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Wt(t,i,o,a){var s={},u=t===Pt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function Ft(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Mt.href=bt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Ft(Ft(e,S.ajaxSettings),t):Ft(S.ajaxSettings,e)},ajaxPrefilter:It(Ot),ajaxTransport:It(Pt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=qt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||bt.href)+"").replace(Ht,bt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Mt.protocol+"//"+Mt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Wt(Ot,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Lt.test(v.type),f=v.url.replace(jt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Nt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Tt.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Dt,"$1"),o=(Tt.test(f)?"&":"?")+"_="+wt.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+Rt+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Wt(Pt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&S.inArray("json",v.dataTypes)<0&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},$t=S.ajaxSettings.xhr();y.cors=!!$t&&"withCredentials"in $t,y.ajax=$t=!!$t,S.ajaxTransport(function(i){var o,a;if(y.cors||$t&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Bt[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=ht(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Xt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Xt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Vt=C.jQuery,Gt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Gt),e&&C.jQuery===S&&(C.jQuery=Vt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S}); diff --git a/docs/build/html/_static/language_data.js b/docs/build/html/_static/language_data.js index 863704b31..2e22b06ab 100644 --- a/docs/build/html/_static/language_data.js +++ b/docs/build/html/_static/language_data.js @@ -5,12 +5,12 @@ * This script contains the language-specific data used by searchtools.js, * namely the list of stopwords, stemmer, scorer and splitter. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ -var stopwords = ["a","and","are","as","at","be","but","by","for","if","in","into","is","it","near","no","not","of","on","or","such","that","the","their","then","there","these","they","this","to","was","will","with"]; +var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]; /* Non-minified version is copied as a separate JS file, is available */ @@ -197,101 +197,3 @@ var Stemmer = function() { } } - - - -var splitChars = (function() { - var result = {}; - var singles = [96, 180, 187, 191, 215, 247, 749, 885, 903, 907, 909, 930, 1014, 1648, - 1748, 1809, 2416, 2473, 2481, 2526, 2601, 2609, 2612, 2615, 2653, 2702, - 2706, 2729, 2737, 2740, 2857, 2865, 2868, 2910, 2928, 2948, 2961, 2971, - 2973, 3085, 3089, 3113, 3124, 3213, 3217, 3241, 3252, 3295, 3341, 3345, - 3369, 3506, 3516, 3633, 3715, 3721, 3736, 3744, 3748, 3750, 3756, 3761, - 3781, 3912, 4239, 4347, 4681, 4695, 4697, 4745, 4785, 4799, 4801, 4823, - 4881, 5760, 5901, 5997, 6313, 7405, 8024, 8026, 8028, 8030, 8117, 8125, - 8133, 8181, 8468, 8485, 8487, 8489, 8494, 8527, 11311, 11359, 11687, 11695, - 11703, 11711, 11719, 11727, 11735, 12448, 12539, 43010, 43014, 43019, 43587, - 43696, 43713, 64286, 64297, 64311, 64317, 64319, 64322, 64325, 65141]; - var i, j, start, end; - for (i = 0; i < singles.length; i++) { - result[singles[i]] = true; - } - var ranges = [[0, 47], [58, 64], [91, 94], [123, 169], [171, 177], [182, 184], [706, 709], - [722, 735], [741, 747], [751, 879], [888, 889], [894, 901], [1154, 1161], - [1318, 1328], [1367, 1368], [1370, 1376], [1416, 1487], [1515, 1519], [1523, 1568], - [1611, 1631], [1642, 1645], [1750, 1764], [1767, 1773], [1789, 1790], [1792, 1807], - [1840, 1868], [1958, 1968], [1970, 1983], [2027, 2035], [2038, 2041], [2043, 2047], - [2070, 2073], [2075, 2083], [2085, 2087], [2089, 2307], [2362, 2364], [2366, 2383], - [2385, 2391], [2402, 2405], [2419, 2424], [2432, 2436], [2445, 2446], [2449, 2450], - [2483, 2485], [2490, 2492], [2494, 2509], [2511, 2523], [2530, 2533], [2546, 2547], - [2554, 2564], [2571, 2574], [2577, 2578], [2618, 2648], [2655, 2661], [2672, 2673], - [2677, 2692], [2746, 2748], [2750, 2767], [2769, 2783], [2786, 2789], [2800, 2820], - [2829, 2830], [2833, 2834], [2874, 2876], [2878, 2907], [2914, 2917], [2930, 2946], - [2955, 2957], [2966, 2968], [2976, 2978], [2981, 2983], [2987, 2989], [3002, 3023], - [3025, 3045], [3059, 3076], [3130, 3132], [3134, 3159], [3162, 3167], [3170, 3173], - [3184, 3191], [3199, 3204], [3258, 3260], [3262, 3293], [3298, 3301], [3312, 3332], - [3386, 3388], [3390, 3423], [3426, 3429], [3446, 3449], [3456, 3460], [3479, 3481], - [3518, 3519], [3527, 3584], [3636, 3647], [3655, 3663], [3674, 3712], [3717, 3718], - [3723, 3724], [3726, 3731], [3752, 3753], [3764, 3772], [3774, 3775], [3783, 3791], - [3802, 3803], [3806, 3839], [3841, 3871], [3892, 3903], [3949, 3975], [3980, 4095], - [4139, 4158], [4170, 4175], [4182, 4185], [4190, 4192], [4194, 4196], [4199, 4205], - [4209, 4212], [4226, 4237], [4250, 4255], [4294, 4303], [4349, 4351], [4686, 4687], - [4702, 4703], [4750, 4751], [4790, 4791], [4806, 4807], [4886, 4887], [4955, 4968], - [4989, 4991], [5008, 5023], [5109, 5120], [5741, 5742], [5787, 5791], [5867, 5869], - [5873, 5887], [5906, 5919], [5938, 5951], [5970, 5983], [6001, 6015], [6068, 6102], - [6104, 6107], [6109, 6111], [6122, 6127], [6138, 6159], [6170, 6175], [6264, 6271], - [6315, 6319], [6390, 6399], [6429, 6469], [6510, 6511], [6517, 6527], [6572, 6592], - [6600, 6607], [6619, 6655], [6679, 6687], [6741, 6783], [6794, 6799], [6810, 6822], - [6824, 6916], [6964, 6980], [6988, 6991], [7002, 7042], [7073, 7085], [7098, 7167], - [7204, 7231], [7242, 7244], [7294, 7400], [7410, 7423], [7616, 7679], [7958, 7959], - [7966, 7967], [8006, 8007], [8014, 8015], [8062, 8063], [8127, 8129], [8141, 8143], - [8148, 8149], [8156, 8159], [8173, 8177], [8189, 8303], [8306, 8307], [8314, 8318], - [8330, 8335], [8341, 8449], [8451, 8454], [8456, 8457], [8470, 8472], [8478, 8483], - [8506, 8507], [8512, 8516], [8522, 8525], [8586, 9311], [9372, 9449], [9472, 10101], - [10132, 11263], [11493, 11498], [11503, 11516], [11518, 11519], [11558, 11567], - [11622, 11630], [11632, 11647], [11671, 11679], [11743, 11822], [11824, 12292], - [12296, 12320], [12330, 12336], [12342, 12343], [12349, 12352], [12439, 12444], - [12544, 12548], [12590, 12592], [12687, 12689], [12694, 12703], [12728, 12783], - [12800, 12831], [12842, 12880], [12896, 12927], [12938, 12976], [12992, 13311], - [19894, 19967], [40908, 40959], [42125, 42191], [42238, 42239], [42509, 42511], - [42540, 42559], [42592, 42593], [42607, 42622], [42648, 42655], [42736, 42774], - [42784, 42785], [42889, 42890], [42893, 43002], [43043, 43055], [43062, 43071], - [43124, 43137], [43188, 43215], [43226, 43249], [43256, 43258], [43260, 43263], - [43302, 43311], [43335, 43359], [43389, 43395], [43443, 43470], [43482, 43519], - [43561, 43583], [43596, 43599], [43610, 43615], [43639, 43641], [43643, 43647], - [43698, 43700], [43703, 43704], [43710, 43711], [43715, 43738], [43742, 43967], - [44003, 44015], [44026, 44031], [55204, 55215], [55239, 55242], [55292, 55295], - [57344, 63743], [64046, 64047], [64110, 64111], [64218, 64255], [64263, 64274], - [64280, 64284], [64434, 64466], [64830, 64847], [64912, 64913], [64968, 65007], - [65020, 65135], [65277, 65295], [65306, 65312], [65339, 65344], [65371, 65381], - [65471, 65473], [65480, 65481], [65488, 65489], [65496, 65497]]; - for (i = 0; i < ranges.length; i++) { - start = ranges[i][0]; - end = ranges[i][1]; - for (j = start; j <= end; j++) { - result[j] = true; - } - } - return result; -})(); - -function splitQuery(query) { - var result = []; - var start = -1; - for (var i = 0; i < query.length; i++) { - if (splitChars[query.charCodeAt(i)]) { - if (start !== -1) { - result.push(query.slice(start, i)); - start = -1; - } - } else if (start === -1) { - start = i; - } - } - if (start !== -1) { - result.push(query.slice(start)); - } - return result; -} - - diff --git a/docs/build/html/_static/pygments.css b/docs/build/html/_static/pygments.css index 582d5c3ad..08bec689d 100644 --- a/docs/build/html/_static/pygments.css +++ b/docs/build/html/_static/pygments.css @@ -5,22 +5,22 @@ td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5 span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } .highlight .hll { background-color: #ffffcc } .highlight { background: #f8f8f8; } -.highlight .c { color: #408080; font-style: italic } /* Comment */ +.highlight .c { color: #3D7B7B; font-style: italic } /* Comment */ .highlight .err { border: 1px solid #FF0000 } /* Error */ .highlight .k { color: #008000; font-weight: bold } /* Keyword */ .highlight .o { color: #666666 } /* Operator */ -.highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */ -.highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */ -.highlight .cp { color: #BC7A00 } /* Comment.Preproc */ -.highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */ -.highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */ -.highlight .cs { color: #408080; font-style: italic } /* Comment.Special */ +.highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */ +.highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #9C6500 } /* Comment.Preproc */ +.highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */ +.highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */ .highlight .gd { color: #A00000 } /* Generic.Deleted */ .highlight .ge { font-style: italic } /* Generic.Emph */ -.highlight .gr { color: #FF0000 } /* Generic.Error */ +.highlight .gr { color: #E40000 } /* Generic.Error */ .highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ -.highlight .gi { color: #00A000 } /* Generic.Inserted */ -.highlight .go { color: #888888 } /* Generic.Output */ +.highlight .gi { color: #008400 } /* Generic.Inserted */ +.highlight .go { color: #717171 } /* Generic.Output */ .highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */ .highlight .gs { font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ @@ -33,15 +33,15 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: .highlight .kt { color: #B00040 } /* Keyword.Type */ .highlight .m { color: #666666 } /* Literal.Number */ .highlight .s { color: #BA2121 } /* Literal.String */ -.highlight .na { color: #7D9029 } /* Name.Attribute */ +.highlight .na { color: #687822 } /* Name.Attribute */ .highlight .nb { color: #008000 } /* Name.Builtin */ .highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */ .highlight .no { color: #880000 } /* Name.Constant */ .highlight .nd { color: #AA22FF } /* Name.Decorator */ -.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */ -.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */ +.highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */ +.highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0000FF } /* Name.Function */ -.highlight .nl { color: #A0A000 } /* Name.Label */ +.highlight .nl { color: #767600 } /* Name.Label */ .highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */ .highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #19177C } /* Name.Variable */ @@ -58,11 +58,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: .highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */ .highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */ .highlight .s2 { color: #BA2121 } /* Literal.String.Double */ -.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */ +.highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */ .highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */ -.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */ +.highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */ .highlight .sx { color: #008000 } /* Literal.String.Other */ -.highlight .sr { color: #BB6688 } /* Literal.String.Regex */ +.highlight .sr { color: #A45A77 } /* Literal.String.Regex */ .highlight .s1 { color: #BA2121 } /* Literal.String.Single */ .highlight .ss { color: #19177C } /* Literal.String.Symbol */ .highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */ diff --git a/docs/build/html/_static/searchtools.js b/docs/build/html/_static/searchtools.js index 002e9c4a2..ac4d5861f 100644 --- a/docs/build/html/_static/searchtools.js +++ b/docs/build/html/_static/searchtools.js @@ -4,22 +4,24 @@ * * Sphinx JavaScript utilities for the full-text search. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ +"use strict"; -if (!Scorer) { - /** - * Simple result scoring code. - */ +/** + * Simple result scoring code. + */ +if (typeof Scorer === "undefined") { var Scorer = { // Implement the following function to further tweak the score for each result - // The function takes a result array [filename, title, anchor, descr, score] + // The function takes a result array [docname, title, anchor, descr, score, filename] // and returns the new score. /* - score: function(result) { - return result[4]; + score: result => { + const [docname, title, anchor, descr, score, filename] = result + return score }, */ @@ -28,9 +30,11 @@ if (!Scorer) { // or matches in the last dotted part of the object name objPartialMatch: 6, // Additive scores depending on the priority of the object - objPrio: {0: 15, // used to be importantResults - 1: 5, // used to be objectResults - 2: -5}, // used to be unimportantResults + objPrio: { + 0: 15, // used to be importantResults + 1: 5, // used to be objectResults + 2: -5, // used to be unimportantResults + }, // Used when the priority is not in the mapping. objPrioDefault: 0, @@ -39,456 +43,455 @@ if (!Scorer) { partialTitle: 7, // query found in terms term: 5, - partialTerm: 2 + partialTerm: 2, }; } -if (!splitQuery) { - function splitQuery(query) { - return query.split(/\s+/); +const _removeChildren = (element) => { + while (element && element.lastChild) element.removeChild(element.lastChild); +}; + +/** + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping + */ +const _escapeRegExp = (string) => + string.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string + +const _displayItem = (item, highlightTerms, searchTerms) => { + const docBuilder = DOCUMENTATION_OPTIONS.BUILDER; + const docUrlRoot = DOCUMENTATION_OPTIONS.URL_ROOT; + const docFileSuffix = DOCUMENTATION_OPTIONS.FILE_SUFFIX; + const docLinkSuffix = DOCUMENTATION_OPTIONS.LINK_SUFFIX; + const showSearchSummary = DOCUMENTATION_OPTIONS.SHOW_SEARCH_SUMMARY; + + const [docName, title, anchor, descr] = item; + + let listItem = document.createElement("li"); + let requestUrl; + let linkUrl; + if (docBuilder === "dirhtml") { + // dirhtml builder + let dirname = docName + "/"; + if (dirname.match(/\/index\/$/)) + dirname = dirname.substring(0, dirname.length - 6); + else if (dirname === "index/") dirname = ""; + requestUrl = docUrlRoot + dirname; + linkUrl = requestUrl; + } else { + // normal html builders + requestUrl = docUrlRoot + docName + docFileSuffix; + linkUrl = docName + docLinkSuffix; + } + const params = new URLSearchParams(); + params.set("highlight", [...highlightTerms].join(" ")); + let linkEl = listItem.appendChild(document.createElement("a")); + linkEl.href = linkUrl + "?" + params.toString() + anchor; + linkEl.innerHTML = title; + if (descr) + listItem.appendChild(document.createElement("span")).innerText = + " (" + descr + ")"; + else if (showSearchSummary) + fetch(requestUrl) + .then((responseData) => responseData.text()) + .then((data) => { + if (data) + listItem.appendChild( + Search.makeSearchSummary(data, searchTerms, highlightTerms) + ); + }); + Search.output.appendChild(listItem); +}; +const _finishSearch = (resultCount) => { + Search.stopPulse(); + Search.title.innerText = _("Search Results"); + if (!resultCount) + Search.status.innerText = Documentation.gettext( + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories." + ); + else + Search.status.innerText = _( + `Search finished, found ${resultCount} page(s) matching the search query.` + ); +}; +const _displayNextItem = ( + results, + resultCount, + highlightTerms, + searchTerms +) => { + // results left, load the summary and display it + // this is intended to be dynamic (don't sub resultsCount) + if (results.length) { + _displayItem(results.pop(), highlightTerms, searchTerms); + setTimeout( + () => _displayNextItem(results, resultCount, highlightTerms, searchTerms), + 5 + ); } + // search finished, update title and status message + else _finishSearch(resultCount); +}; + +/** + * Default splitQuery function. Can be overridden in ``sphinx.search`` with a + * custom function per language. + * + * The regular expression works by splitting the string on consecutive characters + * that are not Unicode letters, numbers, underscores, or emoji characters. + * This is the same as ``\W+`` in Python, preserving the surrogate pair area. + */ +if (typeof splitQuery === "undefined") { + var splitQuery = (query) => query + .split(/[^\p{Letter}\p{Number}_\p{Emoji_Presentation}]+/gu) + .filter(term => term) // remove remaining empty strings } /** * Search Module */ -var Search = { - - _index : null, - _queued_query : null, - _pulse_status : -1, - - htmlToText : function(htmlString) { - var virtualDocument = document.implementation.createHTMLDocument('virtual'); - var htmlElement = $(htmlString, virtualDocument); - htmlElement.find('.headerlink').remove(); - docContent = htmlElement.find('[role=main]')[0]; - if(docContent === undefined) { - console.warn("Content block not found. Sphinx search tries to obtain it " + - "via '[role=main]'. Could you check your theme or template."); - return ""; - } - return docContent.textContent || docContent.innerText; +const Search = { + _index: null, + _queued_query: null, + _pulse_status: -1, + + htmlToText: (htmlString) => { + const htmlElement = document + .createRange() + .createContextualFragment(htmlString); + _removeChildren(htmlElement.querySelectorAll(".headerlink")); + const docContent = htmlElement.querySelector('[role="main"]'); + if (docContent !== undefined) return docContent.textContent; + console.warn( + "Content block not found. Sphinx search tries to obtain it via '[role=main]'. Could you check your theme or template." + ); + return ""; }, - init : function() { - var params = $.getQueryParameters(); - if (params.q) { - var query = params.q[0]; - $('input[name="q"]')[0].value = query; - this.performSearch(query); - } + init: () => { + const query = new URLSearchParams(window.location.search).get("q"); + document + .querySelectorAll('input[name="q"]') + .forEach((el) => (el.value = query)); + if (query) Search.performSearch(query); }, - loadIndex : function(url) { - $.ajax({type: "GET", url: url, data: null, - dataType: "script", cache: true, - complete: function(jqxhr, textstatus) { - if (textstatus != "success") { - document.getElementById("searchindexloader").src = url; - } - }}); - }, + loadIndex: (url) => + (document.body.appendChild(document.createElement("script")).src = url), - setIndex : function(index) { - var q; - this._index = index; - if ((q = this._queued_query) !== null) { - this._queued_query = null; - Search.query(q); + setIndex: (index) => { + Search._index = index; + if (Search._queued_query !== null) { + const query = Search._queued_query; + Search._queued_query = null; + Search.query(query); } }, - hasIndex : function() { - return this._index !== null; - }, + hasIndex: () => Search._index !== null, - deferQuery : function(query) { - this._queued_query = query; - }, + deferQuery: (query) => (Search._queued_query = query), - stopPulse : function() { - this._pulse_status = 0; - }, + stopPulse: () => (Search._pulse_status = -1), - startPulse : function() { - if (this._pulse_status >= 0) - return; - function pulse() { - var i; + startPulse: () => { + if (Search._pulse_status >= 0) return; + + const pulse = () => { Search._pulse_status = (Search._pulse_status + 1) % 4; - var dotString = ''; - for (i = 0; i < Search._pulse_status; i++) - dotString += '.'; - Search.dots.text(dotString); - if (Search._pulse_status > -1) - window.setTimeout(pulse, 500); - } + Search.dots.innerText = ".".repeat(Search._pulse_status); + if (Search._pulse_status >= 0) window.setTimeout(pulse, 500); + }; pulse(); }, /** * perform a search for something (or wait until index is loaded) */ - performSearch : function(query) { + performSearch: (query) => { // create the required interface elements - this.out = $('#search-results'); - this.title = $('<h2>' + _('Searching') + '</h2>').appendTo(this.out); - this.dots = $('<span></span>').appendTo(this.title); - this.status = $('<p class="search-summary"> </p>').appendTo(this.out); - this.output = $('<ul class="search"/>').appendTo(this.out); - - $('#search-progress').text(_('Preparing search...')); - this.startPulse(); + const searchText = document.createElement("h2"); + searchText.textContent = _("Searching"); + const searchSummary = document.createElement("p"); + searchSummary.classList.add("search-summary"); + searchSummary.innerText = ""; + const searchList = document.createElement("ul"); + searchList.classList.add("search"); + + const out = document.getElementById("search-results"); + Search.title = out.appendChild(searchText); + Search.dots = Search.title.appendChild(document.createElement("span")); + Search.status = out.appendChild(searchSummary); + Search.output = out.appendChild(searchList); + + const searchProgress = document.getElementById("search-progress"); + // Some themes don't use the search progress node + if (searchProgress) { + searchProgress.innerText = _("Preparing search..."); + } + Search.startPulse(); // index already loaded, the browser was quick! - if (this.hasIndex()) - this.query(query); - else - this.deferQuery(query); + if (Search.hasIndex()) Search.query(query); + else Search.deferQuery(query); }, /** * execute search (requires search index to be loaded) */ - query : function(query) { - var i; - - // stem the searchterms and add them to the correct list - var stemmer = new Stemmer(); - var searchterms = []; - var excluded = []; - var hlterms = []; - var tmp = splitQuery(query); - var objectterms = []; - for (i = 0; i < tmp.length; i++) { - if (tmp[i] !== "") { - objectterms.push(tmp[i].toLowerCase()); - } + query: (query) => { + // stem the search terms and add them to the correct list + const stemmer = new Stemmer(); + const searchTerms = new Set(); + const excludedTerms = new Set(); + const highlightTerms = new Set(); + const objectTerms = new Set(splitQuery(query.toLowerCase().trim())); + splitQuery(query.trim()).forEach((queryTerm) => { + const queryTermLower = queryTerm.toLowerCase(); + + // maybe skip this "word" + // stopwords array is from language_data.js + if ( + stopwords.indexOf(queryTermLower) !== -1 || + queryTerm.match(/^\d+$/) + ) + return; - if ($u.indexOf(stopwords, tmp[i].toLowerCase()) != -1 || tmp[i] === "") { - // skip this "word" - continue; - } // stem the word - var word = stemmer.stemWord(tmp[i].toLowerCase()); - // prevent stemmer from cutting word smaller than two chars - if(word.length < 3 && tmp[i].length >= 3) { - word = tmp[i]; - } - var toAppend; + let word = stemmer.stemWord(queryTermLower); // select the correct list - if (word[0] == '-') { - toAppend = excluded; - word = word.substr(1); - } + if (word[0] === "-") excludedTerms.add(word.substr(1)); else { - toAppend = searchterms; - hlterms.push(tmp[i].toLowerCase()); + searchTerms.add(word); + highlightTerms.add(queryTermLower); } - // only add if not already in the list - if (!$u.contains(toAppend, word)) - toAppend.push(word); - } - var highlightstring = '?highlight=' + $.urlencode(hlterms.join(" ")); - - // console.debug('SEARCH: searching for:'); - // console.info('required: ', searchterms); - // console.info('excluded: ', excluded); + }); - // prepare search - var terms = this._index.terms; - var titleterms = this._index.titleterms; + // console.debug("SEARCH: searching for:"); + // console.info("required: ", [...searchTerms]); + // console.info("excluded: ", [...excludedTerms]); - // array of [filename, title, anchor, descr, score] - var results = []; - $('#search-progress').empty(); + // array of [docname, title, anchor, descr, score, filename] + let results = []; + _removeChildren(document.getElementById("search-progress")); // lookup as object - for (i = 0; i < objectterms.length; i++) { - var others = [].concat(objectterms.slice(0, i), - objectterms.slice(i+1, objectterms.length)); - results = results.concat(this.performObjectSearch(objectterms[i], others)); - } + objectTerms.forEach((term) => + results.push(...Search.performObjectSearch(term, objectTerms)) + ); // lookup as search terms in fulltext - results = results.concat(this.performTermsSearch(searchterms, excluded, terms, titleterms)); + results.push(...Search.performTermsSearch(searchTerms, excludedTerms)); // let the scorer override scores with a custom scoring function - if (Scorer.score) { - for (i = 0; i < results.length; i++) - results[i][4] = Scorer.score(results[i]); - } + if (Scorer.score) results.forEach((item) => (item[4] = Scorer.score(item))); // now sort the results by score (in opposite order of appearance, since the // display function below uses pop() to retrieve items) and then // alphabetically - results.sort(function(a, b) { - var left = a[4]; - var right = b[4]; - if (left > right) { - return 1; - } else if (left < right) { - return -1; - } else { + results.sort((a, b) => { + const leftScore = a[4]; + const rightScore = b[4]; + if (leftScore === rightScore) { // same score: sort alphabetically - left = a[1].toLowerCase(); - right = b[1].toLowerCase(); - return (left > right) ? -1 : ((left < right) ? 1 : 0); + const leftTitle = a[1].toLowerCase(); + const rightTitle = b[1].toLowerCase(); + if (leftTitle === rightTitle) return 0; + return leftTitle > rightTitle ? -1 : 1; // inverted is intentional } + return leftScore > rightScore ? 1 : -1; }); + // remove duplicate search results + // note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept + let seen = new Set(); + results = results.reverse().reduce((acc, result) => { + let resultStr = result.slice(0, 4).concat([result[5]]).map(v => String(v)).join(','); + if (!seen.has(resultStr)) { + acc.push(result); + seen.add(resultStr); + } + return acc; + }, []); + + results = results.reverse(); + // for debugging //Search.lastresults = results.slice(); // a copy - //console.info('search results:', Search.lastresults); + // console.info("search results:", Search.lastresults); // print the results - var resultCount = results.length; - function displayNextItem() { - // results left, load the summary and display it - if (results.length) { - var item = results.pop(); - var listItem = $('<li></li>'); - var requestUrl = ""; - var linkUrl = ""; - if (DOCUMENTATION_OPTIONS.BUILDER === 'dirhtml') { - // dirhtml builder - var dirname = item[0] + '/'; - if (dirname.match(/\/index\/$/)) { - dirname = dirname.substring(0, dirname.length-6); - } else if (dirname == 'index/') { - dirname = ''; - } - requestUrl = DOCUMENTATION_OPTIONS.URL_ROOT + dirname; - linkUrl = requestUrl; - - } else { - // normal html builders - requestUrl = DOCUMENTATION_OPTIONS.URL_ROOT + item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX; - linkUrl = item[0] + DOCUMENTATION_OPTIONS.LINK_SUFFIX; - } - listItem.append($('<a/>').attr('href', - linkUrl + - highlightstring + item[2]).html(item[1])); - if (item[3]) { - listItem.append($('<span> (' + item[3] + ')</span>')); - Search.output.append(listItem); - setTimeout(function() { - displayNextItem(); - }, 5); - } else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) { - $.ajax({url: requestUrl, - dataType: "text", - complete: function(jqxhr, textstatus) { - var data = jqxhr.responseText; - if (data !== '' && data !== undefined) { - var summary = Search.makeSearchSummary(data, searchterms, hlterms); - if (summary) { - listItem.append(summary); - } - } - Search.output.append(listItem); - setTimeout(function() { - displayNextItem(); - }, 5); - }}); - } else { - // no source available, just display title - Search.output.append(listItem); - setTimeout(function() { - displayNextItem(); - }, 5); - } - } - // search finished, update title and status message - else { - Search.stopPulse(); - Search.title.text(_('Search Results')); - if (!resultCount) - Search.status.text(_('Your search did not match any documents. Please make sure that all words are spelled correctly and that you\'ve selected enough categories.')); - else - Search.status.text(_('Search finished, found %s page(s) matching the search query.').replace('%s', resultCount)); - Search.status.fadeIn(500); - } - } - displayNextItem(); + _displayNextItem(results, results.length, highlightTerms, searchTerms); }, /** * search for object names */ - performObjectSearch : function(object, otherterms) { - var filenames = this._index.filenames; - var docnames = this._index.docnames; - var objects = this._index.objects; - var objnames = this._index.objnames; - var titles = this._index.titles; - - var i; - var results = []; - - for (var prefix in objects) { - for (var iMatch = 0; iMatch != objects[prefix].length; ++iMatch) { - var match = objects[prefix][iMatch]; - var name = match[4]; - var fullname = (prefix ? prefix + '.' : '') + name; - var fullnameLower = fullname.toLowerCase() - if (fullnameLower.indexOf(object) > -1) { - var score = 0; - var parts = fullnameLower.split('.'); - // check for different match types: exact matches of full name or - // "last name" (i.e. last dotted part) - if (fullnameLower == object || parts[parts.length - 1] == object) { - score += Scorer.objNameMatch; - // matches in last name - } else if (parts[parts.length - 1].indexOf(object) > -1) { - score += Scorer.objPartialMatch; - } - var objname = objnames[match[1]][2]; - var title = titles[match[0]]; - // If more than one term searched for, we require other words to be - // found in the name/title/description - if (otherterms.length > 0) { - var haystack = (prefix + ' ' + name + ' ' + - objname + ' ' + title).toLowerCase(); - var allfound = true; - for (i = 0; i < otherterms.length; i++) { - if (haystack.indexOf(otherterms[i]) == -1) { - allfound = false; - break; - } - } - if (!allfound) { - continue; - } - } - var descr = objname + _(', in ') + title; - - var anchor = match[3]; - if (anchor === '') - anchor = fullname; - else if (anchor == '-') - anchor = objnames[match[1]][1] + '-' + fullname; - // add custom score for some objects according to scorer - if (Scorer.objPrio.hasOwnProperty(match[2])) { - score += Scorer.objPrio[match[2]]; - } else { - score += Scorer.objPrioDefault; - } - results.push([docnames[match[0]], fullname, '#'+anchor, descr, score, filenames[match[0]]]); - } + performObjectSearch: (object, objectTerms) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const objects = Search._index.objects; + const objNames = Search._index.objnames; + const titles = Search._index.titles; + + const results = []; + + const objectSearchCallback = (prefix, match) => { + const name = match[4] + const fullname = (prefix ? prefix + "." : "") + name; + const fullnameLower = fullname.toLowerCase(); + if (fullnameLower.indexOf(object) < 0) return; + + let score = 0; + const parts = fullnameLower.split("."); + + // check for different match types: exact matches of full name or + // "last name" (i.e. last dotted part) + if (fullnameLower === object || parts.slice(-1)[0] === object) + score += Scorer.objNameMatch; + else if (parts.slice(-1)[0].indexOf(object) > -1) + score += Scorer.objPartialMatch; // matches in last name + + const objName = objNames[match[1]][2]; + const title = titles[match[0]]; + + // If more than one term searched for, we require other words to be + // found in the name/title/description + const otherTerms = new Set(objectTerms); + otherTerms.delete(object); + if (otherTerms.size > 0) { + const haystack = `${prefix} ${name} ${objName} ${title}`.toLowerCase(); + if ( + [...otherTerms].some((otherTerm) => haystack.indexOf(otherTerm) < 0) + ) + return; } - } + let anchor = match[3]; + if (anchor === "") anchor = fullname; + else if (anchor === "-") anchor = objNames[match[1]][1] + "-" + fullname; + + const descr = objName + _(", in ") + title; + + // add custom score for some objects according to scorer + if (Scorer.objPrio.hasOwnProperty(match[2])) + score += Scorer.objPrio[match[2]]; + else score += Scorer.objPrioDefault; + + results.push([ + docNames[match[0]], + fullname, + "#" + anchor, + descr, + score, + filenames[match[0]], + ]); + }; + Object.keys(objects).forEach((prefix) => + objects[prefix].forEach((array) => + objectSearchCallback(prefix, array) + ) + ); return results; }, - /** - * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions - */ - escapeRegExp : function(string) { - return string.replace(/[.*+\-?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string - }, - /** * search for full-text terms in the index */ - performTermsSearch : function(searchterms, excluded, terms, titleterms) { - var docnames = this._index.docnames; - var filenames = this._index.filenames; - var titles = this._index.titles; + performTermsSearch: (searchTerms, excludedTerms) => { + // prepare search + const terms = Search._index.terms; + const titleTerms = Search._index.titleterms; + const docNames = Search._index.docnames; + const filenames = Search._index.filenames; + const titles = Search._index.titles; - var i, j, file; - var fileMap = {}; - var scoreMap = {}; - var results = []; + const scoreMap = new Map(); + const fileMap = new Map(); // perform the search on the required terms - for (i = 0; i < searchterms.length; i++) { - var word = searchterms[i]; - var files = []; - var _o = [ - {files: terms[word], score: Scorer.term}, - {files: titleterms[word], score: Scorer.title} + searchTerms.forEach((word) => { + const files = []; + const arr = [ + { files: terms[word], score: Scorer.term }, + { files: titleTerms[word], score: Scorer.title }, ]; // add support for partial matches if (word.length > 2) { - var word_regex = this.escapeRegExp(word); - for (var w in terms) { - if (w.match(word_regex) && !terms[word]) { - _o.push({files: terms[w], score: Scorer.partialTerm}) - } - } - for (var w in titleterms) { - if (w.match(word_regex) && !titleterms[word]) { - _o.push({files: titleterms[w], score: Scorer.partialTitle}) - } - } + const escapedWord = _escapeRegExp(word); + Object.keys(terms).forEach((term) => { + if (term.match(escapedWord) && !terms[word]) + arr.push({ files: terms[term], score: Scorer.partialTerm }); + }); + Object.keys(titleTerms).forEach((term) => { + if (term.match(escapedWord) && !titleTerms[word]) + arr.push({ files: titleTerms[word], score: Scorer.partialTitle }); + }); } // no match but word was a required one - if ($u.every(_o, function(o){return o.files === undefined;})) { - break; - } + if (arr.every((record) => record.files === undefined)) return; + // found search word in contents - $u.each(_o, function(o) { - var _files = o.files; - if (_files === undefined) - return - - if (_files.length === undefined) - _files = [_files]; - files = files.concat(_files); - - // set score for the word in each file to Scorer.term - for (j = 0; j < _files.length; j++) { - file = _files[j]; - if (!(file in scoreMap)) - scoreMap[file] = {}; - scoreMap[file][word] = o.score; - } + arr.forEach((record) => { + if (record.files === undefined) return; + + let recordFiles = record.files; + if (recordFiles.length === undefined) recordFiles = [recordFiles]; + files.push(...recordFiles); + + // set score for the word in each file + recordFiles.forEach((file) => { + if (!scoreMap.has(file)) scoreMap.set(file, {}); + scoreMap.get(file)[word] = record.score; + }); }); // create the mapping - for (j = 0; j < files.length; j++) { - file = files[j]; - if (file in fileMap && fileMap[file].indexOf(word) === -1) - fileMap[file].push(word); - else - fileMap[file] = [word]; - } - } + files.forEach((file) => { + if (fileMap.has(file) && fileMap.get(file).indexOf(word) === -1) + fileMap.get(file).push(word); + else fileMap.set(file, [word]); + }); + }); // now check if the files don't contain excluded terms - for (file in fileMap) { - var valid = true; - + const results = []; + for (const [file, wordList] of fileMap) { // check if all requirements are matched - var filteredTermCount = // as search terms with length < 3 are discarded: ignore - searchterms.filter(function(term){return term.length > 2}).length + + // as search terms with length < 3 are discarded + const filteredTermCount = [...searchTerms].filter( + (term) => term.length > 2 + ).length; if ( - fileMap[file].length != searchterms.length && - fileMap[file].length != filteredTermCount - ) continue; + wordList.length !== searchTerms.size && + wordList.length !== filteredTermCount + ) + continue; // ensure that none of the excluded terms is in the search result - for (i = 0; i < excluded.length; i++) { - if (terms[excluded[i]] == file || - titleterms[excluded[i]] == file || - $u.contains(terms[excluded[i]] || [], file) || - $u.contains(titleterms[excluded[i]] || [], file)) { - valid = false; - break; - } - } + if ( + [...excludedTerms].some( + (term) => + terms[term] === file || + titleTerms[term] === file || + (terms[term] || []).includes(file) || + (titleTerms[term] || []).includes(file) + ) + ) + break; - // if we have still a valid result we can add it to the result list - if (valid) { - // select one (max) score for the file. - // for better ranking, we should calculate ranking by using words statistics like basic tf-idf... - var score = $u.max($u.map(fileMap[file], function(w){return scoreMap[file][w]})); - results.push([docnames[file], titles[file], '', null, score, filenames[file]]); - } + // select one (max) score for the file. + const score = Math.max(...wordList.map((w) => scoreMap.get(file)[w])); + // add result to the result list + results.push([ + docNames[file], + titles[file], + "", + null, + score, + filenames[file], + ]); } return results; }, @@ -496,34 +499,33 @@ var Search = { /** * helper function to return a node containing the * search summary for a given text. keywords is a list - * of stemmed words, hlwords is the list of normal, unstemmed + * of stemmed words, highlightWords is the list of normal, unstemmed * words. the first one is used to find the occurrence, the * latter for highlighting it. */ - makeSearchSummary : function(htmlText, keywords, hlwords) { - var text = Search.htmlToText(htmlText); - if (text == "") { - return null; - } - var textLower = text.toLowerCase(); - var start = 0; - $.each(keywords, function() { - var i = textLower.indexOf(this.toLowerCase()); - if (i > -1) - start = i; - }); - start = Math.max(start - 120, 0); - var excerpt = ((start > 0) ? '...' : '') + - $.trim(text.substr(start, 240)) + - ((start + 240 - text.length) ? '...' : ''); - var rv = $('<p class="context"></p>').text(excerpt); - $.each(hlwords, function() { - rv = rv.highlightText(this, 'highlighted'); - }); - return rv; - } + makeSearchSummary: (htmlText, keywords, highlightWords) => { + const text = Search.htmlToText(htmlText).toLowerCase(); + if (text === "") return null; + + const actualStartPosition = [...keywords] + .map((k) => text.indexOf(k.toLowerCase())) + .filter((i) => i > -1) + .slice(-1)[0]; + const startWithContext = Math.max(actualStartPosition - 120, 0); + + const top = startWithContext === 0 ? "" : "..."; + const tail = startWithContext + 240 < text.length ? "..." : ""; + + let summary = document.createElement("div"); + summary.classList.add("context"); + summary.innerText = top + text.substr(startWithContext, 240).trim() + tail; + + highlightWords.forEach((highlightWord) => + _highlightText(summary, highlightWord, "highlighted") + ); + + return summary; + }, }; -$(document).ready(function() { - Search.init(); -}); +_ready(Search.init); diff --git a/docs/build/html/binary_c_parameters.html b/docs/build/html/binary_c_parameters.html index 7fe4e66bf..829930da2 100644 --- a/docs/build/html/binary_c_parameters.html +++ b/docs/build/html/binary_c_parameters.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -108,14 +109,14 @@ } </style> <section id="binary-c-parameters"> -<h1>Binary_c parameters<a class="headerlink" href="#binary-c-parameters" title="Permalink to this headline">ïƒ</a></h1> +<h1>Binary_c parameters<a class="headerlink" href="#binary-c-parameters" title="Permalink to this heading">ïƒ</a></h1> <p>The following chapter contains all the parameters that the current version of binary_c can handle, along with their descriptions and other properties.</p> <dl class="simple"> -<dt>This information was obtained by the following binary_c build:</dt><dd><p><strong>binary_c git branch</strong>: HEAD <strong>binary_c git revision</strong>: 5853:20220225:db09898b6 <strong>Built on</strong>: Feb 25 2022 19:21:31</p> +<dt>This information was obtained by the following binary_c build:</dt><dd><p><strong>binary_c git branch</strong>: branch_david <strong>binary_c git revision</strong>: 6072:20220603:69cdd3f72 <strong>Built on</strong>: Jun 3 2022 14:44:39</p> </dd> </dl> <section id="section-stars"> -<h2>Section: stars<a class="headerlink" href="#section-stars" title="Permalink to this headline">ïƒ</a></h2> +<h2>Section: stars<a class="headerlink" href="#section-stars" title="Permalink to this heading">ïƒ</a></h2> <div class="line-block"> <div class="line"><strong>Parameter</strong>: metallicity</div> <div class="line"><strong>Description</strong>: This sets the metallicity of the stars, i.e. the amount (by mass) of matter which is not hydrogen or helium. If you are using the BSE algorithm, this must be 1e-4 <= metallicity <= 0.03. See also nucsyn_metallicity and effective_metallicity.</div> @@ -689,6 +690,13 @@ <div class="line"><strong>Extra</strong>: Ignore</div> </div> <div class="line-block"> +<div class="line"><strong>Parameter</strong>: PPISN_massloss_multiplier</div> +<div class="line"><strong>Description</strong>: (Pulsational) Pair-Instability Supernova CO massloss multiplier: Value by which the (P)PISN massloss is multiplied. Currently only works with the new prescription. THe additional mass loss is not affected multiplied by this.</div> +<div class="line"><strong>Parameter input type</strong>: Float</div> +<div class="line"><strong>Default value</strong>: 1</div> +<div class="line"><strong>Extra</strong>: Ignore</div> +</div> +<div class="line-block"> <div class="line"><strong>Parameter</strong>: use_LWN_fallback</div> <div class="line"><strong>Description</strong>: Flag whether to use the Nazehdin-Lovegrove-Woosley hydrogen envelope ejection at failed supernova.</div> <div class="line"><strong>Parameter input type</strong>: Integer</div> @@ -1498,7 +1506,7 @@ </div> </section> <section id="section-binary"> -<h2>Section: binary<a class="headerlink" href="#section-binary" title="Permalink to this headline">ïƒ</a></h2> +<h2>Section: binary<a class="headerlink" href="#section-binary" title="Permalink to this heading">ïƒ</a></h2> <div class="line-block"> <div class="line"><strong>Parameter</strong>: separation</div> <div class="line"><strong>Description</strong>: Set the orbital separation (actually the semi-major axis) of the binary (internal index 0, stellar indices 0 and 1) in solar radii. Note that if the orbital period is given, it is used to calculate the separation. So if you want to set the separation instead, either do not set the orbital period or set the orbital period to zero (0.0).</div> @@ -2660,7 +2668,7 @@ </div> </section> <section id="section-nucsyn"> -<h2>Section: nucsyn<a class="headerlink" href="#section-nucsyn" title="Permalink to this headline">ïƒ</a></h2> +<h2>Section: nucsyn<a class="headerlink" href="#section-nucsyn" title="Permalink to this heading">ïƒ</a></h2> <div class="line-block"> <div class="line"><strong>Parameter</strong>: third_dup</div> <div class="line"><strong>Description</strong>: If True, enables third dredge up. Requires NUCSYN and NUCSYN_THIRD_DREDGE_UP.</div> @@ -2923,11 +2931,39 @@ </div> </section> <section id="section-output"> -<h2>Section: output<a class="headerlink" href="#section-output" title="Permalink to this headline">ïƒ</a></h2> +<h2>Section: output<a class="headerlink" href="#section-output" title="Permalink to this heading">ïƒ</a></h2> <div class="line-block"> <div class="line"><strong>Parameter</strong>: david_logging_function</div> <div class="line"><strong>Description</strong>: Function to choose which kind of information gets logged Requires DAVID. Choices are: 0= None, >0 for custom logging functions</div> <div class="line"><strong>Parameter input type</strong>: Integer</div> +<div class="line"><strong>Default value</strong>: -1</div> +<div class="line"><strong>Extra</strong>: Ignore</div> +</div> +<div class="line-block"> +<div class="line"><strong>Parameter</strong>: david_tzo_logging</div> +<div class="line"><strong>Description</strong>: Flag to enable logging for TZO project</div> +<div class="line"><strong>Parameter input type</strong>: Integer</div> +<div class="line"><strong>Default value</strong>: 0</div> +<div class="line"><strong>Extra</strong>: Ignore</div> +</div> +<div class="line-block"> +<div class="line"><strong>Parameter</strong>: david_ppisn_logging</div> +<div class="line"><strong>Description</strong>: Flag to enable logging for PPISN project</div> +<div class="line"><strong>Parameter input type</strong>: Integer</div> +<div class="line"><strong>Default value</strong>: 0</div> +<div class="line"><strong>Extra</strong>: Ignore</div> +</div> +<div class="line-block"> +<div class="line"><strong>Parameter</strong>: david_rlof_episode_logging</div> +<div class="line"><strong>Description</strong>: Flag to enable the RLOF episode logging</div> +<div class="line"><strong>Parameter input type</strong>: Integer</div> +<div class="line"><strong>Default value</strong>: 0</div> +<div class="line"><strong>Extra</strong>: Ignore</div> +</div> +<div class="line-block"> +<div class="line"><strong>Parameter</strong>: david_rlof_ensemble_logging</div> +<div class="line"><strong>Description</strong>: Flag to enable the RLOF ensemble logging</div> +<div class="line"><strong>Parameter input type</strong>: Integer</div> <div class="line"><strong>Default value</strong>: 0</div> <div class="line"><strong>Extra</strong>: Ignore</div> </div> @@ -3217,7 +3253,7 @@ </div> </section> <section id="section-input"> -<h2>Section: input<a class="headerlink" href="#section-input" title="Permalink to this headline">ïƒ</a></h2> +<h2>Section: input<a class="headerlink" href="#section-input" title="Permalink to this heading">ïƒ</a></h2> <div class="line-block"> <div class="line"><strong>Parameter</strong>: MINT_dir</div> <div class="line"><strong>Description</strong>: Location of MINT algorithm data.</div> @@ -3334,7 +3370,7 @@ </div> </section> <section id="section-i-o"> -<h2>Section: i/o<a class="headerlink" href="#section-i-o" title="Permalink to this headline">ïƒ</a></h2> +<h2>Section: i/o<a class="headerlink" href="#section-i-o" title="Permalink to this heading">ïƒ</a></h2> <div class="line-block"> <div class="line"><strong>Parameter</strong>: go</div> <div class="line"><strong>Description</strong>: batchmode control command</div> @@ -3397,7 +3433,7 @@ </div> </section> <section id="section-algorithms"> -<h2>Section: algorithms<a class="headerlink" href="#section-algorithms" title="Permalink to this headline">ïƒ</a></h2> +<h2>Section: algorithms<a class="headerlink" href="#section-algorithms" title="Permalink to this heading">ïƒ</a></h2> <div class="line-block"> <div class="line"><strong>Parameter</strong>: repeat</div> <div class="line"><strong>Description</strong>: If > 1, repeats the system as many times as required. Handy if you’re using Monte-Carlo kicks and want to sample the parameter space well. Also, if you are running speed tests this is good to give a statistically more reasonable result. (See e.g. ‘tbse pgo’).</div> @@ -3412,7 +3448,7 @@ </div> </section> <section id="section-misc"> -<h2>Section: misc<a class="headerlink" href="#section-misc" title="Permalink to this headline">ïƒ</a></h2> +<h2>Section: misc<a class="headerlink" href="#section-misc" title="Permalink to this heading">ïƒ</a></h2> <div class="line-block"> <div class="line"><strong>Parameter</strong>: random_seed</div> <div class="line"><strong>Description</strong>: Random number seed, usually a (possibly negative) integer. Useful for exactly reproducing the evolution of a system which involves a kick (which is a Monte-Carlo, i.e. pseudorandom, process).</div> @@ -3506,9 +3542,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/custom_logging_functions.html b/docs/build/html/custom_logging_functions.html index 10354b9c3..f3a605924 100644 --- a/docs/build/html/custom_logging_functions.html +++ b/docs/build/html/custom_logging_functions.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.custom_logging_functions"> -<span id="custom-logging-functions-module"></span><h1>custom_logging_functions module<a class="headerlink" href="#module-binarycpython.utils.custom_logging_functions" title="Permalink to this headline">ïƒ</a></h1> +<span id="custom-logging-functions-module"></span><h1>custom_logging_functions module<a class="headerlink" href="#module-binarycpython.utils.custom_logging_functions" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing functions for the custom logging functionality. The functions here make it possible for the user to define binaryc output logs on runtime</p> <dl class="py function"> @@ -329,9 +330,9 @@ I recommend using this in function in combination with a function that generates provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/dicts.html b/docs/build/html/dicts.html index 82e477f4e..fca7c720e 100644 --- a/docs/build/html/dicts.html +++ b/docs/build/html/dicts.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.dicts"> -<span id="dicts-module"></span><h1>dicts module<a class="headerlink" href="#module-binarycpython.utils.dicts" title="Permalink to this headline">ïƒ</a></h1> +<span id="dicts-module"></span><h1>dicts module<a class="headerlink" href="#module-binarycpython.utils.dicts" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing functions that binary_c-python uses to modify dictionaries.</p> <dl class="py class"> <dt class="sig sig-object py" id="binarycpython.utils.dicts.AutoVivificationDict"> @@ -525,9 +526,9 @@ so that they don’t have to be calculated each time.</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/ensemble.html b/docs/build/html/ensemble.html index cf2b64e23..204462b0c 100644 --- a/docs/build/html/ensemble.html +++ b/docs/build/html/ensemble.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -124,13 +125,13 @@ } </style> <section id="module-binarycpython.utils.ensemble"> -<span id="ensemble-module"></span><h1>ensemble module<a class="headerlink" href="#module-binarycpython.utils.ensemble" title="Permalink to this headline">ïƒ</a></h1> +<span id="ensemble-module"></span><h1>ensemble module<a class="headerlink" href="#module-binarycpython.utils.ensemble" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing functions to interact with binary_c’s population ensemble using the binarycpython package</p> <dl class="py class"> <dt class="sig sig-object py" id="binarycpython.utils.ensemble.BinarycDecoder"> <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">binarycpython.utils.ensemble.</span></span><span class="sig-name descname"><span class="pre">BinarycDecoder</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">object_hook</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">parse_float</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">parse_int</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">parse_constant</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">strict</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">object_pairs_hook</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/ensemble.html#BinarycDecoder"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.ensemble.BinarycDecoder" title="Permalink to this definition">ïƒ</a></dt> -<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">json.decoder.JSONDecoder</span></code></p> +<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">JSONDecoder</span></code></p> <p>Custom decoder to transform the numbers that are strings to actual floats</p> <dl class="py method"> <dt class="sig sig-object py" id="binarycpython.utils.ensemble.BinarycDecoder.decode"> @@ -143,7 +144,7 @@ population ensemble using the binarycpython package</p> <dl class="py class"> <dt class="sig sig-object py" id="binarycpython.utils.ensemble.BinarycEncoder"> <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">binarycpython.utils.ensemble.</span></span><span class="sig-name descname"><span class="pre">BinarycEncoder</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">skipkeys</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ensure_ascii</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">check_circular</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">allow_nan</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sort_keys</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">indent</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">separators</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">default</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/ensemble.html#BinarycEncoder"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.ensemble.BinarycEncoder" title="Permalink to this definition">ïƒ</a></dt> -<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">json.encoder.JSONEncoder</span></code></p> +<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">JSONEncoder</span></code></p> <p>Encoding class function to attempt to convert things to strings.</p> <dl class="py method"> <dt class="sig sig-object py" id="binarycpython.utils.ensemble.BinarycEncoder.default"> @@ -275,9 +276,9 @@ and return its contents to as a Python dictionary.</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/example_notebooks.html b/docs/build/html/example_notebooks.html index 652d02922..7a9ce6483 100644 --- a/docs/build/html/example_notebooks.html +++ b/docs/build/html/example_notebooks.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -112,7 +113,7 @@ } </style> <section id="example-notebooks"> -<h1>Example notebooks<a class="headerlink" href="#example-notebooks" title="Permalink to this headline">ïƒ</a></h1> +<h1>Example notebooks<a class="headerlink" href="#example-notebooks" title="Permalink to this heading">ïƒ</a></h1> <p>We have a set of notebooks that explain and show the usage of the binarycpython features. The notebooks are also stored in the examples/ directory in the <a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python/-/tree/master/examples">repository</a></p> <p>The order of the notebooks below is more or less the recommended order to read. The last couple of notebooks are example usecases</p> <div class="toctree-wrapper compound"> @@ -214,9 +215,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_BHBH.html b/docs/build/html/examples/notebook_BHBH.html index 651e15593..8f303bd92 100644 --- a/docs/build/html/examples/notebook_BHBH.html +++ b/docs/build/html/examples/notebook_BHBH.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -300,7 +301,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -361,14 +362,13 @@ div.rendered_html tbody tr:hover { } </style> <section id="Example-use-case:-Binary-black-hole-systems"> -<h1>Example use case: Binary black hole systems<a class="headerlink" href="#Example-use-case:-Binary-black-hole-systems" title="Permalink to this headline">ïƒ</a></h1> +<h1>Example use case: Binary black hole systems<a class="headerlink" href="#Example-use-case:-Binary-black-hole-systems" title="Permalink to this heading">ïƒ</a></h1> <p>TODO: introduce the notebook</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">temp_dir</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.run_system_wrapper</span> <span class="kn">import</span> <span class="n">run_system</span> <span class="n">TMP_DIR</span> <span class="o">=</span> <span class="n">temp_dir</span><span class="p">(</span><span class="s2">"notebooks"</span><span class="p">,</span> <span class="s2">"notebook_BHBH"</span><span class="p">)</span> @@ -379,8 +379,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">log_filename</span> <span class="o">=</span> <span class="s2">"log_file"</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">log_filename</span> <span class="o">=</span> <span class="s2">"log_file"</span> <span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span><span class="n">M_1</span><span class="o">=</span><span class="mi">60</span><span class="p">,</span> <span class="n">BH_prescription</span><span class="o">=</span><span class="s1">'BH_BELCZYNSKI'</span><span class="p">,</span> <span class="n">log_filename</span><span class="o">=</span><span class="n">log_filename</span><span class="p">,</span> @@ -417,8 +416,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span><span class="n">M_1</span><span class="o">=</span><span class="mi">60</span><span class="p">,</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span><span class="n">M_1</span><span class="o">=</span><span class="mi">60</span><span class="p">,</span> <span class="n">M_2</span><span class="o">=</span><span class="mi">40</span><span class="p">,</span> <span class="n">orbital_period</span><span class="o">=</span><span class="mi">2000</span><span class="p">,</span> <span class="c1"># days</span> <span class="n">BH_prescription</span><span class="o">=</span><span class="s1">'BH_BELCZYNSKI'</span><span class="p">,</span> @@ -635,9 +633,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> - -<span></span><span class="c1"># BHBH detector : returns BHBH system data, or None if not found</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><br/><span></span><span class="c1"># BHBH detector : returns BHBH system data, or None if not found</span> <span class="k">def</span> <span class="nf">BHBH</span><span class="p">(</span><span class="n">filename</span><span class="p">):</span> <span class="n">vb</span> <span class="o">=</span> <span class="kc">False</span> <span class="c1"># set to True for debugging</span> <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">filename</span><span class="p">,</span> <span class="s1">'r'</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span> @@ -687,8 +683,7 @@ BHBH system is unbound <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="k">def</span> <span class="nf">search_for_BHBH</span><span class="p">(</span><span class="n">maxcount</span><span class="p">,</span><span class="o">**</span><span class="n">opts</span><span class="p">):</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">search_for_BHBH</span><span class="p">(</span><span class="n">maxcount</span><span class="p">,</span><span class="o">**</span><span class="n">opts</span><span class="p">):</span> <span class="nb">print</span><span class="p">(</span><span class="n">opts</span><span class="p">)</span> <span class="n">found</span> <span class="o">=</span> <span class="kc">False</span> <span class="n">count</span> <span class="o">=</span> <span class="mi">0</span> @@ -724,8 +719,7 @@ BHBH system is unbound <span class="n">wind_mass_loss</span><span class="o">=</span><span class="s1">'WIND_ALGORITHM_BINARY_C_2020'</span><span class="p">,</span> <span class="p">)</span> <span class="n">search_for_BHBH</span><span class="p">(</span><span class="mi">100</span><span class="p">,</span><span class="o">**</span><span class="n">args</span><span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> <div class="nboutput nblast docutils container"> @@ -1040,8 +1034,7 @@ System 100 has separation -154.61 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">args</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">args</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span> <span class="n">M_1</span><span class="o">=</span><span class="mi">60</span><span class="p">,</span> <span class="n">M_2</span><span class="o">=</span><span class="mi">40</span><span class="p">,</span> <span class="n">orbital_period</span><span class="o">=</span><span class="mi">2000</span><span class="p">,</span> <span class="c1"># days</span> @@ -1266,8 +1259,7 @@ Found bound BHBH system <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">args</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">args</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span> <span class="n">M_1</span><span class="o">=</span><span class="mi">60</span><span class="p">,</span> <span class="n">M_2</span><span class="o">=</span><span class="mi">40</span><span class="p">,</span> <span class="n">metallicity</span><span class="o">=</span><span class="mf">0.001</span><span class="p">,</span> @@ -1339,8 +1331,7 @@ closer, more grvitationally-bound systems).</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">args</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">args</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span> <span class="n">M_1</span><span class="o">=</span><span class="mi">60</span><span class="p">,</span> <span class="n">M_2</span><span class="o">=</span><span class="mi">40</span><span class="p">,</span> <span class="n">metallicity</span><span class="o">=</span><span class="mf">0.0001</span><span class="p">,</span> @@ -1370,8 +1361,7 @@ System 1 has separation -3069.7 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">args</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">args</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span> <span class="n">M_1</span><span class="o">=</span><span class="mi">60</span><span class="p">,</span> <span class="n">M_2</span><span class="o">=</span><span class="mi">40</span><span class="p">,</span> <span class="n">metallicity</span><span class="o">=</span><span class="mf">0.001</span><span class="p">,</span> @@ -1386,8 +1376,7 @@ System 1 has separation -3069.7 <span class="n">d</span> <span class="o">=</span> <span class="n">search_for_BHBH</span><span class="p">(</span><span class="mi">100</span><span class="p">,</span><span class="o">**</span><span class="n">args</span><span class="p">)</span> <span class="k">if</span> <span class="n">d</span> <span class="o">!=</span> <span class="kc">None</span> <span class="ow">and</span> <span class="n">d</span><span class="p">[</span><span class="s1">'separation'</span><span class="p">]</span> <span class="o"><</span> <span class="mf">10.0</span><span class="p">:</span> <span class="n">found</span> <span class="o">=</span> <span class="kc">True</span> - -</pre></div> +<br/></pre></div> </div> </div> <div class="nboutput nblast docutils container"> @@ -5548,8 +5537,7 @@ system 2 / 100 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -5574,9 +5562,9 @@ system 2 / 100 provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_HRD.html b/docs/build/html/examples/notebook_HRD.html index 61c302a40..b73f4b633 100644 --- a/docs/build/html/examples/notebook_HRD.html +++ b/docs/build/html/examples/notebook_HRD.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -307,7 +308,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -368,14 +369,13 @@ div.rendered_html tbody tr:hover { } </style> <section id="Example-use-case:-Hertzsprung-Russell-diagrams"> -<h1>Example use case: Hertzsprung-Russell diagrams<a class="headerlink" href="#Example-use-case:-Hertzsprung-Russell-diagrams" title="Permalink to this headline">ïƒ</a></h1> +<h1>Example use case: Hertzsprung-Russell diagrams<a class="headerlink" href="#Example-use-case:-Hertzsprung-Russell-diagrams" title="Permalink to this heading">ïƒ</a></h1> <p>In this notebook we compute Hertzsprung-Russell diagrams (HRDs) of single and binary stars.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">import</span> <span class="nn">math</span> <span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> @@ -383,20 +383,18 @@ div.rendered_html tbody tr:hover { <span class="kn">from</span> <span class="nn">binarycpython.utils.grid</span> <span class="kn">import</span> <span class="n">Population</span> <span class="n">TMP_DIR</span> <span class="o">=</span> <span class="n">temp_dir</span><span class="p">(</span><span class="s2">"notebooks"</span><span class="p">,</span> <span class="s2">"notebook_HRD"</span><span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> <section id="Setting-up-the-Population-object"> -<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this heading">ïƒ</a></h2> <p>First we set up a new population object. Our stars evolve to <span class="math notranslate nohighlight">\(13.7\mathrm{Gyr}\)</span>, the age of the Universe, and we assume the metallicity <span class="math notranslate nohighlight">\(Z=0.02\)</span>. These are rough approximations: a real population was born some finite time ago, so cannot possibly evolve to <span class="math notranslate nohighlight">\(13.7\mathrm{Gyr}\)</span>, and stars are not really born with a metallicity of <span class="math notranslate nohighlight">\(0.02\)</span>. These approximations only affect very low mass stars, so we assume all our stars have mass <span class="math notranslate nohighlight">\(M\geq 1 \mathrm{M}_\odot\)</span>, and metallicity does not change evolution too much except in massive stars through the dependence of their winds on metallicity, so we limit our study to <span class="math notranslate nohighlight">\(M\leq 10 \mathrm{M}_\odot\)</span>.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create population object</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create population object</span> <span class="n">population</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="c1"># Setting values can be done via .set(<parameter_name>=<value>)</span> @@ -410,20 +408,18 @@ does not change evolution too much except in massive stars through the dependenc <span class="n">tmp_dir</span><span class="o">=</span><span class="n">TMP_DIR</span><span class="p">,</span> <span class="n">verbosity</span><span class="o">=</span><span class="mi">1</span> <span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> </section> <section id="Stellar-Grid"> -<h2>Stellar Grid<a class="headerlink" href="#Stellar-Grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>Stellar Grid<a class="headerlink" href="#Stellar-Grid" title="Permalink to this heading">ïƒ</a></h2> <p>We now construct a grid of stars, varying the mass from <span class="math notranslate nohighlight">\(1\)</span> to <span class="math notranslate nohighlight">\(10\mathrm{M}_\odot\)</span> in nine steps (so the masses are integers).</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> <span class="c1"># Set resolution and mass range that we simulate</span> <span class="n">resolution</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"M_1"</span><span class="p">:</span> <span class="mi">10</span><span class="p">}</span> <span class="n">massrange</span> <span class="o">=</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">11</span><span class="p">)</span> @@ -472,15 +468,14 @@ Added grid variable: { </div> </section> <section id="Setting-logging-and-handling-the-output"> -<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this heading">ïƒ</a></h2> <p>We now construct the HRD output.</p> <p>We choose stars prior to and including the thermally-pulsing asymptotic giant branch (TPAGB) phase that have <span class="math notranslate nohighlight">\(>0.1\mathrm{M}_\odot\)</span> of material in their outer hydrogen envelope (remember the core of an evolved star is made of helium or carbon/oxygen/neon). This prevents us showing the post-AGB phase which is a bit messy and we avoid the white-dwarf cooling track.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">custom_logging_statement</span> <span class="o">=</span> <span class="s2">"""</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">custom_logging_statement</span> <span class="o">=</span> <span class="s2">"""</span> <span class="s2">Foreach_star(star)</span> <span class="s2">{</span> <span class="s2"> if(star->stellar_type <= TPAGB &&</span> @@ -505,8 +500,7 @@ Added grid variable: { <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">C_logging_code</span><span class="o">=</span><span class="n">custom_logging_statement</span> <span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> <div class="nboutput nblast docutils container"> @@ -542,8 +536,7 @@ Foreach_star(star) <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">datalinedict</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">datalinedict</span> <span class="kn">import</span> <span class="nn">re</span> <span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">output</span><span class="p">):</span> @@ -591,7 +584,7 @@ adding: parse_function=<function parse_function at 0x14bf2250fdc0> to grid </div> </section> <section id="Evolving-the-grid"> -<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this heading">ïƒ</a></h2> <p>Now that we configured all the main parts of the population object, we can actually run the population! Doing this is straightforward: <code class="docutils literal notranslate"><span class="pre">population.evolve()</span></code></p> <p>This will start up the processing of all the systems. We can control how many cores are used by settings <code class="docutils literal notranslate"><span class="pre">num_cores</span></code>. By setting the <code class="docutils literal notranslate"><span class="pre">verbosity</span></code> of the population object to a higher value we can get a lot of verbose information about the run, but for now we will set it to 0.</p> <p>There are many grid_options that can lead to different behaviour of the evolution of the grid. Please do have a look at the [grid options docs] (<a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/grid_options_descriptions.html">https://ri0005.pages.surrey.ac.uk/binary_c-python/grid_options_descriptions.html</a>) for more details.</p> @@ -599,8 +592,7 @@ adding: parse_function=<function parse_function at 0x14bf2250fdc0> to grid <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># set number of threads</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># set number of threads</span> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="c1"># verbose output at level 1 is sufficient</span> <span class="n">verbosity</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> @@ -741,8 +733,7 @@ dict_keys([1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0]) <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> </pre></div> </div> </div> @@ -758,8 +749,7 @@ dict_keys([1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0]) <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># make an HRD using Seaborn and Pandas</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># make an HRD using Seaborn and Pandas</span> <span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span> <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> <span class="n">pd</span><span class="o">.</span><span class="n">set_option</span><span class="p">(</span><span class="s2">"display.max_rows"</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="s2">"display.max_columns"</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span> @@ -799,8 +789,7 @@ dict_keys([1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0]) <span class="n">p</span><span class="o">.</span><span class="n">invert_xaxis</span><span class="p">()</span> <span class="n">p</span><span class="o">.</span><span class="n">set_xlabel</span><span class="p">(</span><span class="s2">"$\log_</span><span class="si">{10}</span><span class="s2"> (T_\mathrm</span><span class="si">{eff}</span><span class="s2"> / \mathrm</span><span class="si">{K}</span><span class="s2">)$"</span><span class="p">)</span> <span class="n">p</span><span class="o">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="s2">"$\log_</span><span class="si">{10}</span><span class="s2"> (L/$L$_{☉})$"</span><span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> <div class="nboutput docutils container"> @@ -839,14 +828,13 @@ Text(0, 0.5, '$\\log_{10} (L/$L$_{☉})$') <p>We now have an HRD. It took longer to make the plot than to run the stars with <em>binary_c</em>!</p> </section> <section id="Binary-stars"> -<h2>Binary stars<a class="headerlink" href="#Binary-stars" title="Permalink to this headline">ïƒ</a></h2> +<h2>Binary stars<a class="headerlink" href="#Binary-stars" title="Permalink to this heading">ïƒ</a></h2> <p>Now we put a secondary star of mass <span class="math notranslate nohighlight">\(0.5\mathrm{M}_\odot\)</span> at a distance of <span class="math notranslate nohighlight">\(10\mathrm{R}_\odot\)</span> to see how this changes things. Then we rerun the population. At such short separations, we expect mass transfer to begin on or shortly after the main sequence.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">M_2</span> <span class="o">=</span> <span class="mf">0.5</span><span class="p">,</span> <span class="c1"># Msun</span> <span class="n">separation</span> <span class="o">=</span> <span class="mi">10</span><span class="p">,</span> <span class="c1"># Rsun</span> <span class="n">multiplicity</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span> <span class="c1"># binaries</span> @@ -980,9 +968,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> - -<span></span><span class="n">hrd</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'HRD'</span><span class="p">]</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><br/><span></span><span class="n">hrd</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'HRD'</span><span class="p">]</span> <span class="k">for</span> <span class="n">nstar</span> <span class="ow">in</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">hrd</span><span class="p">):</span> <span class="nb">print</span><span class="p">(</span><span class="s2">"star "</span><span class="p">,</span><span class="n">nstar</span><span class="p">)</span> @@ -1055,8 +1041,7 @@ Text(0, 0.5, '$\\log_{10} (L/$L$_{☉})$') <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">M_2</span> <span class="o">=</span> <span class="mi">1</span><span class="p">,</span> <span class="c1"># Msun</span> <span class="n">separation</span> <span class="o">=</span> <span class="mi">100</span><span class="p">,</span> <span class="c1"># Rsun</span> <span class="n">multiplicity</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span> <span class="c1"># binaries</span> @@ -1192,8 +1177,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[12]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">hrd</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'HRD'</span><span class="p">]</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">hrd</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'HRD'</span><span class="p">]</span> <span class="k">for</span> <span class="n">nstar</span> <span class="ow">in</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">hrd</span><span class="p">):</span> <span class="nb">print</span><span class="p">(</span><span class="s2">"star "</span><span class="p">,</span><span class="n">nstar</span><span class="p">)</span> @@ -1266,8 +1250,7 @@ Text(0, 0.5, '$\\log_{10} (L/$L$_{☉})$') <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[13]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">hrd</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'HRD'</span><span class="p">]</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">hrd</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'HRD'</span><span class="p">]</span> <span class="k">for</span> <span class="n">nstar</span> <span class="ow">in</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">hrd</span><span class="p">):</span> <span class="nb">print</span><span class="p">(</span><span class="s2">"star "</span><span class="p">,</span><span class="n">nstar</span><span class="p">)</span> @@ -1339,8 +1322,7 @@ very start.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -1366,9 +1348,9 @@ very start.</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_api_functionality.html b/docs/build/html/examples/notebook_api_functionality.html index 38d274dc3..d1338c7a1 100644 --- a/docs/build/html/examples/notebook_api_functionality.html +++ b/docs/build/html/examples/notebook_api_functionality.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -307,7 +308,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -368,7 +369,7 @@ div.rendered_html tbody tr:hover { } </style> <section id="Tutorial:-Using-the-API-functionality-of-binary_c-python"> -<h1>Tutorial: Using the API functionality of binary_c-python<a class="headerlink" href="#Tutorial:-Using-the-API-functionality-of-binary_c-python" title="Permalink to this headline">ïƒ</a></h1> +<h1>Tutorial: Using the API functionality of binary_c-python<a class="headerlink" href="#Tutorial:-Using-the-API-functionality-of-binary_c-python" title="Permalink to this heading">ïƒ</a></h1> <p>This notebook shows how to use the API functions that interface with binary_c. It usually is better to use wrapper functions that internally use these API functions, because most of the output here is very raw</p> <p>Binarycpython uses the Python-C extension framework to interface Python with C. The sourcecode for this is contained in <code class="docutils literal notranslate"><span class="pre">src/binary_c_python.c</span></code>, and the functions are available via <code class="docutils literal notranslate"><span class="pre">from</span> <span class="pre">binarycpython</span> <span class="pre">import</span> <span class="pre">_binary_c_bindings</span></code>.</p> <p>The following functions are available through the API: (run cell below)</p> @@ -376,8 +377,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">_binary_c_bindings</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">_binary_c_bindings</span> <span class="n">help</span><span class="p">(</span><span class="n">_binary_c_bindings</span><span class="p">)</span> </pre></div> </div> @@ -500,15 +500,14 @@ FILE </li> </ul> <section id="Example-usage:"> -<h2>Example usage:<a class="headerlink" href="#Example-usage:" title="Permalink to this headline">ïƒ</a></h2> +<h2>Example usage:<a class="headerlink" href="#Example-usage:" title="Permalink to this heading">ïƒ</a></h2> <section id="Setting-up,-using-and-freeing-store"> -<h3>Setting up, using and freeing store<a class="headerlink" href="#Setting-up,-using-and-freeing-store" title="Permalink to this headline">ïƒ</a></h3> +<h3>Setting up, using and freeing store<a class="headerlink" href="#Setting-up,-using-and-freeing-store" title="Permalink to this heading">ïƒ</a></h3> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># allocating store memory</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># allocating store memory</span> <span class="n">store_memaddr</span> <span class="o">=</span> <span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_store_memaddr</span><span class="p">()</span> <span class="nb">print</span><span class="p">(</span><span class="n">store_memaddr</span><span class="p">)</span> @@ -544,14 +543,13 @@ SINGLE_STAR_LIFETIME 10 28.4838 </div> </section> <section id="Getting-information-from-binary_c"> -<h3>Getting information from binary_c<a class="headerlink" href="#Getting-information-from-binary_c" title="Permalink to this headline">ïƒ</a></h3> +<h3>Getting information from binary_c<a class="headerlink" href="#Getting-information-from-binary_c" title="Permalink to this heading">ïƒ</a></h3> <p>We can get information for a parameter via return_help(parameter_name): This will return an unparsed output</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="nb">print</span><span class="p">(</span><span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_help</span><span class="p">(</span><span class="s1">'M_1'</span><span class="p">))</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_help</span><span class="p">(</span><span class="s1">'M_1'</span><span class="p">))</span> </pre></div> </div> </div> @@ -576,8 +574,7 @@ Default : 0 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="nb">print</span><span class="p">(</span><span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_help_all</span><span class="p">()</span><span class="o">.</span><span class="n">splitlines</span><span class="p">()[:</span><span class="mi">10</span><span class="p">]))</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_help_all</span><span class="p">()</span><span class="o">.</span><span class="n">splitlines</span><span class="p">()[:</span><span class="mi">10</span><span class="p">]))</span> <span class="nb">print</span><span class="p">(</span><span class="s2">"(abridged)"</span><span class="p">)</span> </pre></div> </div> @@ -605,8 +602,7 @@ M_4 : The initial mass of star four (in solar units, internally this is star ind <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="nb">print</span><span class="p">(</span><span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_arglines</span><span class="p">()</span><span class="o">.</span><span class="n">splitlines</span><span class="p">()[:</span><span class="mi">4</span><span class="p">]))</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_arglines</span><span class="p">()</span><span class="o">.</span><span class="n">splitlines</span><span class="p">()[:</span><span class="mi">4</span><span class="p">]))</span> <span class="nb">print</span><span class="p">(</span><span class="s2">"(abridged)"</span><span class="p">)</span> </pre></div> </div> @@ -628,8 +624,7 @@ M_1 = 0 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Here we set up the argument string that is passed to the bindings</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Here we set up the argument string that is passed to the bindings</span> <span class="n">argstring</span> <span class="o">=</span> <span class="s2">"""</span> <span class="s2">binary_c M_1 </span><span class="si">{M_1}</span><span class="s2"> orbital_period </span><span class="si">{orbital_period}</span><span class="s2"> eccentricity </span><span class="si">{eccentricity}</span><span class="s2"> metallicity </span><span class="si">{metallicity}</span><span class="s2"> max_evolution_time </span><span class="si">{max_evolution_time}</span><span class="s2"></span> <span class="s2">"""</span><span class="o">.</span><span class="n">format</span><span class="p">(</span> @@ -660,8 +655,7 @@ MINIMUM PERIOD 0.00632092 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Here we set up the argument string that is passed to the bindings</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Here we set up the argument string that is passed to the bindings</span> <span class="n">argstring</span> <span class="o">=</span> <span class="s2">"""</span> <span class="s2">binary_c M_1 </span><span class="si">{M_1}</span><span class="s2"> orbital_period </span><span class="si">{orbital_period}</span><span class="s2"> eccentricity </span><span class="si">{eccentricity}</span><span class="s2"> metallicity </span><span class="si">{metallicity}</span><span class="s2"> max_evolution_time </span><span class="si">{max_evolution_time}</span><span class="s2"></span> <span class="s2">"""</span><span class="o">.</span><span class="n">format</span><span class="p">(</span> @@ -692,8 +686,7 @@ MAXIMUM MASS RATIO 0.0141 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -720,9 +713,9 @@ MAXIMUM MASS RATIO 0.0141 provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_common_envelope_evolution.html b/docs/build/html/examples/notebook_common_envelope_evolution.html index d60de9b8c..f706a0f6a 100644 --- a/docs/build/html/examples/notebook_common_envelope_evolution.html +++ b/docs/build/html/examples/notebook_common_envelope_evolution.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -306,7 +307,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -367,15 +368,14 @@ div.rendered_html tbody tr:hover { } </style> <section id="Example-use-case:-Common-envelope-evolution"> -<h1>Example use case: Common-envelope evolution<a class="headerlink" href="#Example-use-case:-Common-envelope-evolution" title="Permalink to this headline">ïƒ</a></h1> +<h1>Example use case: Common-envelope evolution<a class="headerlink" href="#Example-use-case:-Common-envelope-evolution" title="Permalink to this heading">ïƒ</a></h1> <p>In this notebook we look at how common-envelope evolution (CEE) alters binary-star orbits. We construct a population of low- and intermediate-mass binaries and compare their orbital periods before and after CEE. Not all stars evolve into this phase, so we have to run a whole population to find those that do. We then have to construct the pre- and post-CEE distributions and plot them.</p> <p>First, we import a few required Python modules.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">import</span> <span class="nn">math</span> <span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">temp_dir</span> @@ -385,14 +385,13 @@ div.rendered_html tbody tr:hover { </div> </div> <section id="Setting-up-the-Population-object"> -<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this heading">ïƒ</a></h2> <p>We set up a new population object. Our stars evolve to <span class="math notranslate nohighlight">\(13.7\text{ }\mathrm{Gyr}\)</span>, the age of the Universe, and we assume the metallicity <span class="math notranslate nohighlight">\(Z=0.02\)</span>. We also set the common-envelope ejection efficiency <span class="math notranslate nohighlight">\(\alpha_\mathrm{CE}=1\)</span> and the envelope structure parameter <span class="math notranslate nohighlight">\(\lambda=0.5\)</span>. More complex options are available in <em>binary_c</em>, such as <span class="math notranslate nohighlight">\(\lambda\)</span> based on stellar mass, but this is just a demonstration example so let’s keep things simple.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create population object</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create population object</span> <span class="n">population</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="c1"># grid options</span> @@ -423,14 +422,13 @@ adding: lambda_ce=0.5 to BSE_options </div> </section> <section id="Stellar-Grid"> -<h2>Stellar Grid<a class="headerlink" href="#Stellar-Grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>Stellar Grid<a class="headerlink" href="#Stellar-Grid" title="Permalink to this heading">ïƒ</a></h2> <p>We now construct a grid of stars, varying the mass from <span class="math notranslate nohighlight">\(1\)</span> to <span class="math notranslate nohighlight">\(6\text{ }\mathrm{M}_\odot\)</span>. We avoid massive stars for now, and focus on the (more common) low- and intermediate-mass stars. We also limit the period range to <span class="math notranslate nohighlight">\(10^4\text{ }\mathrm{d}\)</span> because systems with longer orbital periods will probably not undergo Roche-lobe overflow and hence common-envelope evolution is impossible.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> <span class="c1"># Set resolution and mass range that we simulate</span> <span class="n">resolution</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"M_1"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span> <span class="s2">"q"</span> <span class="p">:</span> <span class="mi">10</span><span class="p">,</span> <span class="s2">"per"</span><span class="p">:</span> <span class="mi">10</span><span class="p">}</span> <span class="n">massrange</span> <span class="o">=</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">6</span><span class="p">]</span> @@ -550,14 +548,13 @@ Added grid variable: { </div> </section> <section id="Logging-and-handling-the-output"> -<h2>Logging and handling the output<a class="headerlink" href="#Logging-and-handling-the-output" title="Permalink to this headline">ïƒ</a></h2> +<h2>Logging and handling the output<a class="headerlink" href="#Logging-and-handling-the-output" title="Permalink to this heading">ïƒ</a></h2> <p>We now construct the pre- and post-common envelope evolution data for the first common envelope that forms in each binary. We look at the comenv_count variable, we can see that when it increases from 0 to 1 we have found our object. If this happens, we stop evolution of the system to save CPU time.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">custom_logging_statement</span> <span class="o">=</span> <span class="s2">"""</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">custom_logging_statement</span> <span class="o">=</span> <span class="s2">"""</span> <span class="s2">/*</span> <span class="s2"> * Detect when the comenv_count increased</span> @@ -589,8 +586,7 @@ Added grid variable: { <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">C_logging_code</span><span class="o">=</span><span class="n">custom_logging_statement</span> <span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> <div class="nboutput nblast docutils container"> @@ -633,8 +629,7 @@ if(stardata->model.comenv_count == 1 && <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">bin_data</span><span class="p">,</span><span class="n">datalinedict</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">bin_data</span><span class="p">,</span><span class="n">datalinedict</span> <span class="kn">import</span> <span class="nn">re</span> <span class="c1"># log-period distribution bin width (dex)</span> @@ -691,14 +686,13 @@ adding: parse_function=<function parse_function at 0x149c95c56c10> to grid </div> </section> <section id="Evolving-the-grid"> -<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this heading">ïƒ</a></h2> <p>Now we actually run the population. This may take a little while. You can set num_cores higher if you have a powerful machine.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># set number of threads</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># set number of threads</span> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="c1"># set number of threads (i.e. number of CPU cores we use)</span> <span class="n">num_cores</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> @@ -1005,8 +999,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> </pre></div> </div> </div> @@ -1022,8 +1015,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># make a plot of the distributions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># make a plot of the distributions</span> <span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span> <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> <span class="kn">import</span> <span class="nn">copy</span> @@ -1069,8 +1061,7 @@ There were no errors found in this run. <span class="n">p</span><span class="o">.</span><span class="n">set_xlabel</span><span class="p">(</span><span class="s2">"$\log_</span><span class="si">{10}</span><span class="s2"> (P_\mathrm</span><span class="si">{orb}</span><span class="s2"> / \mathrm</span><span class="si">{day}</span><span class="s2">)$"</span><span class="p">)</span> <span class="n">p</span><span class="o">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="s2">"Number of stars"</span><span class="p">)</span> <span class="c1">#p.set(xlim=(-5,5)) # might be necessary?</span> - -</pre></div> +<br/></pre></div> </div> </div> <div class="nboutput docutils container"> @@ -1131,9 +1122,9 @@ Text(0, 0.5, 'Number of stars') provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_custom_logging.html b/docs/build/html/examples/notebook_custom_logging.html index 96daa798c..19bed65d7 100644 --- a/docs/build/html/examples/notebook_custom_logging.html +++ b/docs/build/html/examples/notebook_custom_logging.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -312,7 +313,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -373,14 +374,13 @@ div.rendered_html tbody tr:hover { } </style> <section id="Tutorial:-Using-custom-logging-routines-with-binary_c-python"> -<h1>Tutorial: Using custom logging routines with binary_c-python<a class="headerlink" href="#Tutorial:-Using-custom-logging-routines-with-binary_c-python" title="Permalink to this headline">ïƒ</a></h1> +<h1>Tutorial: Using custom logging routines with binary_c-python<a class="headerlink" href="#Tutorial:-Using-custom-logging-routines-with-binary_c-python" title="Permalink to this heading">ïƒ</a></h1> <p>In this notebook you’ll learn how to use the custom logging functionality</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">_binary_c_bindings</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">_binary_c_bindings</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.custom_logging_functions</span> <span class="kn">import</span> <span class="p">(</span> <span class="n">autogen_C_logging_code</span><span class="p">,</span> <span class="n">binary_c_log_code</span><span class="p">,</span> @@ -403,14 +403,13 @@ div.rendered_html tbody tr:hover { <p>The custom logging functionality can be used when running systems via <code class="docutils literal notranslate"><span class="pre">run_system()</span></code>, via <code class="docutils literal notranslate"><span class="pre">Population.evolve()</span></code> and <code class="docutils literal notranslate"><span class="pre">Population.evolve_single()</span></code>, and directly via the API</p> <p>Within the logging statement we can access information from the stardata object, as well as use logical statements to determine when to log information. What we cannot do, however, is access functions that are not <em>publicly available</em>. For very elaborate printing routines it is still advised to actually hardcode the print statement into binary_c itself.</p> <section id="Usage"> -<h2>Usage<a class="headerlink" href="#Usage" title="Permalink to this headline">ïƒ</a></h2> +<h2>Usage<a class="headerlink" href="#Usage" title="Permalink to this heading">ïƒ</a></h2> <p>There are two methods to create the C-code that will be compiled: - Automatically generate the print statement and use the wrapper to generate the full function string, by using <code class="docutils literal notranslate"><span class="pre">autogen_C_logging_code</span></code> - Create your custom print statement and use the wrapper to generate the full function string, by writing out the print statement. Here the logging statement obviously has to be valid C code</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># generate logging lines. Here you can choose whatever you want to have logged, and with what header</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># generate logging lines. Here you can choose whatever you want to have logged, and with what header</span> <span class="c1"># this generates working print statements</span> <span class="n">logging_line</span> <span class="o">=</span> <span class="n">autogen_C_logging_code</span><span class="p">(</span> <span class="p">{</span> @@ -433,8 +432,7 @@ Printf("MY_STELLAR_DATA %g %g\n",((double)stardata->model.time),((dou <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># You can also decide to `write` your own logging_line, which allows you to write a more complex logging statement with conditionals.</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># You can also decide to `write` your own logging_line, which allows you to write a more complex logging statement with conditionals.</span> <span class="n">logging_line</span> <span class="o">=</span> <span class="s1">'Printf("MY_STELLAR_DATA time=</span><span class="si">%g</span><span class="s1"> mass=</span><span class="si">%g</span><span class="se">\\</span><span class="s1">n", stardata->model.time, stardata->star[0].mass)'</span> <span class="nb">print</span><span class="p">(</span><span class="n">logging_line</span><span class="p">)</span> </pre></div> @@ -452,8 +450,7 @@ Printf("MY_STELLAR_DATA time=%g mass=%g\n", stardata->model.time, sta <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Generate the entire 'script' by wrapping the logging line</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Generate the entire 'script' by wrapping the logging line</span> <span class="n">custom_logging_code</span> <span class="o">=</span> <span class="n">binary_c_log_code</span><span class="p">(</span><span class="n">logging_line</span><span class="p">)</span> <span class="nb">print</span><span class="p">(</span><span class="n">custom_logging_code</span><span class="p">)</span> </pre></div> @@ -489,8 +486,7 @@ void binary_c_API_function custom_output_function(struct stardata_t * stardata) <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># logging statement</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># logging statement</span> <span class="n">logging_line</span> <span class="o">=</span> <span class="s1">'Printf("MY_STELLAR_DATA time=</span><span class="si">%g</span><span class="s1"> mass=</span><span class="si">%g</span><span class="se">\\</span><span class="s1">n", stardata->model.time, stardata->star[0].mass)'</span> <span class="c1"># Entire script</span> @@ -516,14 +512,13 @@ MY_STELLAR_DATA time=2e-06 mass=2 </pre></div></div> </div> <section id="Using-custom-logging-with-the-population-object"> -<h3>Using custom logging with the population object<a class="headerlink" href="#Using-custom-logging-with-the-population-object" title="Permalink to this headline">ïƒ</a></h3> +<h3>Using custom logging with the population object<a class="headerlink" href="#Using-custom-logging-with-the-population-object" title="Permalink to this heading">ïƒ</a></h3> <p>Custom logging can be used for a whole population by setting the print statement (so not the entire logging script) in <code class="docutils literal notranslate"><span class="pre">C_logging_code</span></code></p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Set up population</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Set up population</span> <span class="n">pop</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="c1"># Set some BSE parameters</span> @@ -575,14 +570,13 @@ EXAMPLE_POST_MS 1.045084306856e+02 4.99191 4.99192 9.57443 7.81395 2 </div> </section> <section id="Using-custom-logging-when-running-directly-from-the-API"> -<h3>Using custom logging when running directly from the API<a class="headerlink" href="#Using-custom-logging-when-running-directly-from-the-API" title="Permalink to this headline">ïƒ</a></h3> +<h3>Using custom logging when running directly from the API<a class="headerlink" href="#Using-custom-logging-when-running-directly-from-the-API" title="Permalink to this heading">ïƒ</a></h3> <p>When running a system directly with the API we need to manually load the custom logging into memory (via <code class="docutils literal notranslate"><span class="pre">create_and_load_logging_function</span></code>) and pass the memory address to the binary_c binding via <code class="docutils literal notranslate"><span class="pre">_binary_c_bindings.run_system(argstring,</span> <span class="pre">custom_logging_func_memaddr=custom_logging_memaddr)</span></code></p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># generate logging lines</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># generate logging lines</span> <span class="n">logging_line</span> <span class="o">=</span> <span class="n">autogen_C_logging_code</span><span class="p">(</span> <span class="p">{</span> <span class="s2">"MY_STELLAR_DATA"</span><span class="p">:</span> <span class="p">[</span><span class="s2">"model.time"</span><span class="p">,</span> <span class="s2">"star[0].mass"</span><span class="p">],</span> @@ -637,17 +631,16 @@ MY_STELLAR_DATA 2e-06 15 </section> </section> <section id="Examples-of-logging-strings"> -<h2>Examples of logging strings<a class="headerlink" href="#Examples-of-logging-strings" title="Permalink to this headline">ïƒ</a></h2> +<h2>Examples of logging strings<a class="headerlink" href="#Examples-of-logging-strings" title="Permalink to this heading">ïƒ</a></h2> <p>Below are some examples of logging strings</p> <section id="Compact-object"> -<h3>Compact object<a class="headerlink" href="#Compact-object" title="Permalink to this headline">ïƒ</a></h3> +<h3>Compact object<a class="headerlink" href="#Compact-object" title="Permalink to this heading">ïƒ</a></h3> <p>This logging will print the timestep when the star becomes a compact object. After it does, we change the maximum time to be the current time, effectively terminating the evolution</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">example_logging_string_CO</span> <span class="o">=</span> <span class="s2">"""</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">example_logging_string_CO</span> <span class="o">=</span> <span class="s2">"""</span> <span class="s2">if(stardata->star[0].stellar_type>=NS)</span> <span class="s2">{</span> <span class="s2"> if (stardata->model.time < stardata->model.max_evolution_time)</span> @@ -693,14 +686,13 @@ EXAMPLE_LOG_CO 2.848380621869e+01 1.33469 9.1865 1.72498e-05 724.338 </div> </section> <section id="Logging-mass-evolution-and-the-supernova"> -<h3>Logging mass evolution and the supernova<a class="headerlink" href="#Logging-mass-evolution-and-the-supernova" title="Permalink to this headline">ïƒ</a></h3> +<h3>Logging mass evolution and the supernova<a class="headerlink" href="#Logging-mass-evolution-and-the-supernova" title="Permalink to this heading">ïƒ</a></h3> <p>This logging code prints the mass evolution and the moment the star goes supernova</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">example_logging_string_CO</span> <span class="o">=</span> <span class="s2">"""</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">example_logging_string_CO</span> <span class="o">=</span> <span class="s2">"""</span> <span class="s2">Printf("EXAMPLE_MASSLOSS </span><span class="si">%30.12e</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%d</span><span class="s2"> </span><span class="si">%g</span><span class="se">\\</span><span class="s2">n",</span> <span class="s2"> //</span> <span class="s2"> stardata->model.time, // 1</span> @@ -766,8 +758,7 @@ EXAMPLE_SN 1.050651207308e+01 1.59452 9.34213 20 12 13 5 1 6.55458 4 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -794,9 +785,9 @@ EXAMPLE_SN 1.050651207308e+01 1.59452 9.34213 20 12 13 5 1 6.55458 4 provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_ensembles.html b/docs/build/html/examples/notebook_ensembles.html index 76a2cae54..78b0174ea 100644 --- a/docs/build/html/examples/notebook_ensembles.html +++ b/docs/build/html/examples/notebook_ensembles.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -283,7 +284,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -347,8 +348,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -369,9 +369,9 @@ div.rendered_html tbody tr:hover { provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_extra_features.html b/docs/build/html/examples/notebook_extra_features.html index b9f9214ad..a2c13b252 100644 --- a/docs/build/html/examples/notebook_extra_features.html +++ b/docs/build/html/examples/notebook_extra_features.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -306,7 +307,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -367,15 +368,14 @@ div.rendered_html tbody tr:hover { } </style> <section id="Tutorial:-Extra-features-and-functionality-of-binary_c-python"> -<h1>Tutorial: Extra features and functionality of binary_c-python<a class="headerlink" href="#Tutorial:-Extra-features-and-functionality-of-binary_c-python" title="Permalink to this headline">ïƒ</a></h1> +<h1>Tutorial: Extra features and functionality of binary_c-python<a class="headerlink" href="#Tutorial:-Extra-features-and-functionality-of-binary_c-python" title="Permalink to this heading">ïƒ</a></h1> <p>In this notebook we’ll go over some of the extra features and functionality that was not covered in the other notebooks.</p> <p>Within the module <code class="docutils literal notranslate"><span class="pre">binarycpython.utils.functions</span></code> there are many functions that can be useful when using binarycpython. We can see which functions are in there, again by using the <code class="docutils literal notranslate"><span class="pre">help()</span></code></p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">Population</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">Population</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="p">(</span> <span class="n">get_help</span><span class="p">,</span> <span class="n">get_help_all</span><span class="p">,</span> @@ -387,7 +387,7 @@ div.rendered_html tbody tr:hover { </div> </div> <section id="getting-extra-information-about-binary_c-parameters"> -<h2>getting extra information about binary_c parameters<a class="headerlink" href="#getting-extra-information-about-binary_c-parameters" title="Permalink to this headline">ïƒ</a></h2> +<h2>getting extra information about binary_c parameters<a class="headerlink" href="#getting-extra-information-about-binary_c-parameters" title="Permalink to this heading">ïƒ</a></h2> <p>There are several functions that can be used to get information about the parameters in binary_c:</p> <ul class="simple"> <li><p><code class="docutils literal notranslate"><span class="pre">get_help(parameter)</span></code>: Function to get information about the specific input parameter. Prints the output on default but returns a dictionary containing the information.</p></li> @@ -399,8 +399,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">get_help</span><span class="p">(</span><span class="s1">'M_1'</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">get_help</span><span class="p">(</span><span class="s1">'M_1'</span><span class="p">)</span> </pre></div> </div> </div> @@ -435,8 +434,7 @@ default: <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># get_help_all()</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># get_help_all()</span> </pre></div> </div> </div> @@ -444,8 +442,7 @@ default: <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># get_help_super()</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># get_help_super()</span> </pre></div> </div> </div> @@ -453,21 +450,19 @@ default: <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># get_defaults()</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># get_defaults()</span> </pre></div> </div> </div> </section> <section id="Build-information-of-binary_c"> -<h2>Build information of binary_c<a class="headerlink" href="#Build-information-of-binary_c" title="Permalink to this headline">ïƒ</a></h2> +<h2>Build information of binary_c<a class="headerlink" href="#Build-information-of-binary_c" title="Permalink to this heading">ïƒ</a></h2> <p>It can be useful to fetch the information with which the current version of binary_c has been configured with. We can do that through the Population object, by calling the instance method <code class="docutils literal notranslate"><span class="pre">return_binary_c_version_info</span></code>. This function will parse the version info of binary_c and return a dictionary with all the settings.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">version_info</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span><span class="o">.</span><span class="n">return_binary_c_version_info</span><span class="p">(</span><span class="n">parsed</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">version_info</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span><span class="o">.</span><span class="n">return_binary_c_version_info</span><span class="p">(</span><span class="n">parsed</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span> <span class="nb">print</span><span class="p">(</span><span class="n">version_info</span><span class="o">.</span><span class="n">keys</span><span class="p">())</span> </pre></div> </div> @@ -482,20 +477,19 @@ dict_keys(['networks', 'isotopes', 'argpairs', 'ense </div> </section> <section id="Example-parse-function"> -<h2>Example parse function<a class="headerlink" href="#Example-parse-function" title="Permalink to this headline">ïƒ</a></h2> +<h2>Example parse function<a class="headerlink" href="#Example-parse-function" title="Permalink to this heading">ïƒ</a></h2> <p>TODO: In the functions module there is an example parse function that can be used in conjunction with run_system.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> </section> <section id="Dictionary-modification"> -<h2>Dictionary modification<a class="headerlink" href="#Dictionary-modification" title="Permalink to this headline">ïƒ</a></h2> +<h2>Dictionary modification<a class="headerlink" href="#Dictionary-modification" title="Permalink to this heading">ïƒ</a></h2> <ul class="simple"> <li><p>merge_dicts</p></li> <li><p>update_dicts</p></li> @@ -524,9 +518,9 @@ dict_keys(['networks', 'isotopes', 'argpairs', 'ense provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_individual_systems.html b/docs/build/html/examples/notebook_individual_systems.html index 642efceba..2131fceaa 100644 --- a/docs/build/html/examples/notebook_individual_systems.html +++ b/docs/build/html/examples/notebook_individual_systems.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -305,7 +306,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -366,11 +367,11 @@ div.rendered_html tbody tr:hover { } </style> <section id="Tutorial:-Running-individual-systems-with-binary_c-python"> -<h1>Tutorial: Running individual systems with binary_c-python<a class="headerlink" href="#Tutorial:-Running-individual-systems-with-binary_c-python" title="Permalink to this headline">ïƒ</a></h1> +<h1>Tutorial: Running individual systems with binary_c-python<a class="headerlink" href="#Tutorial:-Running-individual-systems-with-binary_c-python" title="Permalink to this heading">ïƒ</a></h1> <p>This notebook will show you how to run single systems and analyze their results.</p> <p>It can be useful to have some functions to quickly run a single system to, for example, inspect what evolutionary steps a specific system goes through, to plot the mass loss evolution of a single system, etc.</p> <section id="Single-system-with-run_system_wrapper"> -<h2>Single system with run_system_wrapper<a class="headerlink" href="#Single-system-with-run_system_wrapper" title="Permalink to this headline">ïƒ</a></h2> +<h2>Single system with run_system_wrapper<a class="headerlink" href="#Single-system-with-run_system_wrapper" title="Permalink to this heading">ïƒ</a></h2> <p>The simplest method to run a single system is to use the run_system wrapper. This function deals with setting up the argument string, makes sure all the required parameters are included and handles setting and cleaning up the custom logging functionality (see notebook_custom_logging).</p> <p>As arguments to this function we can add any of the parameters that binary_c itself actually knows, as well as:</p> <ul class="simple"> @@ -382,8 +383,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">temp_dir</span> <span class="n">TMP_DIR</span> <span class="o">=</span> <span class="n">temp_dir</span><span class="p">(</span><span class="s2">"notebooks"</span><span class="p">,</span> <span class="s2">"notebook_individual_systems"</span><span class="p">)</span> </pre></div> @@ -393,8 +393,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.run_system_wrapper</span> <span class="kn">import</span> <span class="n">run_system</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.run_system_wrapper</span> <span class="kn">import</span> <span class="n">run_system</span> <span class="c1"># help(run_system) # Uncomment to see the docstring</span> </pre></div> </div> @@ -403,8 +402,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span><span class="n">M_1</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span><span class="n">M_1</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span> <span class="nb">print</span><span class="p">(</span><span class="n">output</span><span class="p">)</span> </pre></div> </div> @@ -423,8 +421,7 @@ SINGLE_STAR_LIFETIME 1 12461.1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">log_filename</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">TMP_DIR</span><span class="p">,</span> <span class="s1">'test_logfile.txt'</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">log_filename</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">TMP_DIR</span><span class="p">,</span> <span class="s1">'test_logfile.txt'</span><span class="p">)</span> <span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span><span class="n">M_1</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">log_filename</span><span class="o">=</span><span class="n">log_filename</span><span class="p">,</span> <span class="n">api_log_filename_prefix</span><span class="o">=</span><span class="n">TMP_DIR</span><span class="p">)</span> <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">log_filename</span><span class="p">,</span> <span class="s1">'r'</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span> <span class="nb">print</span><span class="p">(</span><span class="n">f</span><span class="o">.</span><span class="n">read</span><span class="p">())</span> @@ -455,8 +452,7 @@ SINGLE_STAR_LIFETIME 1 12461.1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.custom_logging_functions</span> <span class="kn">import</span> <span class="n">binary_c_log_code</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.custom_logging_functions</span> <span class="kn">import</span> <span class="n">binary_c_log_code</span> <span class="c1"># Create the print statement</span> <span class="n">custom_logging_print_statement</span> <span class="o">=</span> <span class="s2">"""</span> @@ -494,8 +490,7 @@ EXAMPLE_MASSLOSS 2.000000000000e-06 1 1 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="n">output</span><span class="p">):</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="n">output</span><span class="p">):</span> <span class="sd">"""</span> <span class="sd"> Example function to parse the output of binary_c</span> <span class="sd"> """</span> @@ -536,8 +531,7 @@ EXAMPLE_MASSLOSS 2.000000000000e-06 1 1 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> <span class="c1"># Load data into dataframe</span> <span class="n">example_df</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">DataFrame</span><span class="p">(</span><span class="n">output</span><span class="p">)</span> @@ -573,14 +567,13 @@ EXAMPLE_MASSLOSS 2.000000000000e-06 1 1 1 </div> </section> <section id="Single-system-via-population-object"> -<h2>Single system via population object<a class="headerlink" href="#Single-system-via-population-object" title="Permalink to this headline">ïƒ</a></h2> +<h2>Single system via population object<a class="headerlink" href="#Single-system-via-population-object" title="Permalink to this heading">ïƒ</a></h2> <p>When setting up your population object (see notebook_population), and configuring all the parameters, it is possible to run a single system using that same configuration. It will use the parse_function if set, and running a single system is a good method to test if everything works accordingly.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.grid</span> <span class="kn">import</span> <span class="n">Population</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.grid</span> <span class="kn">import</span> <span class="n">Population</span> <span class="c1"># help(Population) # Uncomment to see the docstring</span> </pre></div> </div> @@ -590,8 +583,7 @@ EXAMPLE_MASSLOSS 2.000000000000e-06 1 1 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create the population object</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create the population object</span> <span class="n">example_pop</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="c1"># Set some parameters</span> @@ -626,8 +618,7 @@ SINGLE_STAR_LIFETIME 10 28.4838 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">custom_logging_print_statement</span> <span class="o">=</span> <span class="s2">"""</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">custom_logging_print_statement</span> <span class="o">=</span> <span class="s2">"""</span> <span class="s2">Printf("EXAMPLE_MASSLOSS </span><span class="si">%30.12e</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%d</span><span class="se">\\</span><span class="s2">n",</span> <span class="s2"> //</span> <span class="s2"> stardata->model.time, // 1</span> @@ -679,8 +670,7 @@ EXAMPLE_MASSLOSS 2.000000000000e-06 10 10 10 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">import</span> <span class="nn">json</span> <span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span> @@ -729,8 +719,7 @@ EXAMPLE_MASSLOSS 2.000000000000e-06 10 10 10 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[12]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">example_pop</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">example_pop</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">parse_function</span><span class="o">=</span><span class="n">object_parse_function</span><span class="p">,</span> <span class="n">output_dir</span><span class="o">=</span><span class="n">TMP_DIR</span><span class="p">,</span> <span class="n">api_log_filename_prefix</span><span class="o">=</span><span class="n">TMP_DIR</span> @@ -763,7 +752,7 @@ dict_keys(['time', 'mass', 'initial_mass', 'stellar_ </div> </section> <section id="Single-system-via-API-functionality"> -<h2>Single system via API functionality<a class="headerlink" href="#Single-system-via-API-functionality" title="Permalink to this headline">ïƒ</a></h2> +<h2>Single system via API functionality<a class="headerlink" href="#Single-system-via-API-functionality" title="Permalink to this heading">ïƒ</a></h2> <p>It is possible to construct your own functionality to run a single system by directly calling the API function to run a system. Under the hood all the other functions and wrappers actually use this API.</p> <p>There are fewer failsafes for this method, so this make sure the input is correct and binary_c knows all the arguments you pass in.</p> <p>for more details on this API function see <code class="docutils literal notranslate"><span class="pre">notebook_api_functions</span></code></p> @@ -772,8 +761,7 @@ dict_keys(['time', 'mass', 'initial_mass', 'stellar_ <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[13]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># For a binary system we need to pass in these arguments</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># For a binary system we need to pass in these arguments</span> <span class="n">M_1</span> <span class="o">=</span> <span class="mf">15.0</span> <span class="c1"># Msun</span> <span class="n">M_2</span> <span class="o">=</span> <span class="mf">14.0</span> <span class="c1"># Msun</span> <span class="n">separation</span> <span class="o">=</span> <span class="mi">0</span> <span class="c1"># 0 = ignored, use period</span> @@ -836,9 +824,9 @@ SINGLE_STAR_LIFETIME 15 14.9927 provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_luminosity_function_binaries.html b/docs/build/html/examples/notebook_luminosity_function_binaries.html index e2425a1a0..e52372bd1 100644 --- a/docs/build/html/examples/notebook_luminosity_function_binaries.html +++ b/docs/build/html/examples/notebook_luminosity_function_binaries.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -306,7 +307,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -367,7 +368,7 @@ div.rendered_html tbody tr:hover { } </style> <section id="Example-use-case:-Zero-age-stellar-luminosity-function-in-binaries"> -<h1>Example use case: Zero-age stellar luminosity function in binaries<a class="headerlink" href="#Example-use-case:-Zero-age-stellar-luminosity-function-in-binaries" title="Permalink to this headline">ïƒ</a></h1> +<h1>Example use case: Zero-age stellar luminosity function in binaries<a class="headerlink" href="#Example-use-case:-Zero-age-stellar-luminosity-function-in-binaries" title="Permalink to this heading">ïƒ</a></h1> <p>In this notebook we compute the luminosity function of the zero-age main-sequence by running a population of binary stars using binary_c.</p> <p>Before you go through this notebook, you should look at notebook_luminosity_function.ipynb which is for the - conceptually more simple - single stars.</p> <p>We start by loading in some standard Python modules and the binary_c module.</p> @@ -375,8 +376,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">import</span> <span class="nn">math</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.grid</span> <span class="kn">import</span> <span class="n">Population</span> @@ -385,15 +385,14 @@ div.rendered_html tbody tr:hover { </div> </div> <section id="Setting-up-the-Population-object"> -<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this heading">ïƒ</a></h2> <p>To set up and configure the population object we need to make a new instance of the <code class="docutils literal notranslate"><span class="pre">Population</span></code> object and configure it with the <code class="docutils literal notranslate"><span class="pre">.set()</span></code> function.</p> <p>In our case, we only need to set the maximum evolution time to something short, because we care only about zero-age main sequence stars which have, by definition, age zero.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create population object</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create population object</span> <span class="n">population</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="c1"># If you want verbosity, set this before other things</span> @@ -424,7 +423,7 @@ verbosity is 1 </div> </section> <section id="Adding-grid-variables"> -<h2>Adding grid variables<a class="headerlink" href="#Adding-grid-variables" title="Permalink to this headline">ïƒ</a></h2> +<h2>Adding grid variables<a class="headerlink" href="#Adding-grid-variables" title="Permalink to this heading">ïƒ</a></h2> <p>The main purpose of the Population object is to handle the population synthesis side of running a set of stars. The main method to do this with binarycpython, as is the case with Perl binarygrid, is to use grid variables. These are loops over a predefined range of values, where a probability will be assigned to the systems based on the chosen probability distributions.</p> <p>Usually we use either 1 mass grid variable, or a trio of mass, mass ratio and period (other notebooks cover these examples). We can, however, also add grid sampling for e.g. eccentricity, metallicity or other parameters.</p> <p>To add a grid variable to the population object we use <code class="docutils literal notranslate"><span class="pre">population.add_grid_variable</span></code></p> @@ -432,8 +431,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># help(population.add_grid_variable)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># help(population.add_grid_variable)</span> </pre></div> </div> </div> @@ -442,8 +440,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> <span class="c1"># help(binarycpython.utils.distribution_functions)</span> </pre></div> </div> @@ -459,8 +456,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Set resolution and mass range that we simulate</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Set resolution and mass range that we simulate</span> <span class="n">resolution</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"M_1"</span><span class="p">:</span> <span class="mi">40</span><span class="p">}</span> <span class="c1"># start with resolution = 10, and increase later if you want "more accurate" data</span> <span class="n">massrange</span> <span class="o">=</span> <span class="p">(</span><span class="mf">0.07</span><span class="p">,</span> <span class="mf">100.0</span><span class="p">)</span> <span class="c1"># we work with stars of mass 0.07 to 100 Msun</span> <span class="n">total_probability</span> <span class="o">=</span> <span class="mf">1.0</span> <span class="c1"># theoretical integral of the mass probability density function over all masses</span> @@ -475,8 +471,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Set up the binary grid in "cubic" M1 - M2=q*M1 - log10 period space</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Set up the binary grid in "cubic" M1 - M2=q*M1 - log10 period space</span> <span class="n">population</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> @@ -533,7 +528,7 @@ verbosity is 1 </div> </section> <section id="Setting-logging-and-handling-the-output"> -<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this heading">ïƒ</a></h2> <p>By default, binary_c will not output anything (except for ‘SINGLE STAR LIFETIME’). It is up to us to determine what will be printed. We can either do that by hardcoding the print statements into <code class="docutils literal notranslate"><span class="pre">binary_c</span></code> (see documentation binary_c) or we can use the custom logging functionality of binarycpython (see notebook <code class="docutils literal notranslate"><span class="pre">notebook_custom_logging.ipynb</span></code>), which is faster to set up and requires no recompilation of binary_c, but is somewhat more limited in its functionality. For our current purposes, it works perfectly well.</p> <p>After configuring what will be printed, we need to make a function to parse the output. This can be done by setting the parse_function parameter in the population object (see also notebook <code class="docutils literal notranslate"><span class="pre">notebook_individual_systems.ipynb</span></code>).</p> @@ -542,8 +537,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create custom logging statement</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create custom logging statement</span> <span class="c1">#</span> <span class="c1"># we check that the model number is zero, i.e. we're on the first timestep (stars are born on the ZAMS)</span> <span class="c1"># we make sure that the stellar type is <= MAIN_SEQUENCE, i.e. the star is a main-sequence star</span> @@ -605,8 +599,7 @@ works perfectly well.</p> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">C_logging_code</span><span class="o">=</span><span class="n">custom_logging_statement</span> <span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> <p>The parse function must now catch lines that start with “ZERO_AGE_MAIN_SEQUENCE_STAR†and process the associated data.</p> @@ -614,8 +607,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># import the bin_data function so we can construct finite-resolution probability distributions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># import the bin_data function so we can construct finite-resolution probability distributions</span> <span class="c1"># import the datalinedict to make a dictionary from each line of data from binary_c</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">bin_data</span><span class="p">,</span><span class="n">datalinedict</span> <span class="kn">import</span> <span class="nn">re</span> @@ -661,7 +653,7 @@ works perfectly well.</p> </div> </section> <section id="Evolving-the-grid"> -<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this heading">ïƒ</a></h2> <p>Now that we configured all the main parts of the population object, we can actually run the population! Doing this is straightforward: <code class="docutils literal notranslate"><span class="pre">population.evolve()</span></code></p> <p>This will start up the processing of all the systems. We can control how many cores are used by settings <code class="docutils literal notranslate"><span class="pre">num_cores</span></code>. By setting the <code class="docutils literal notranslate"><span class="pre">verbosity</span></code> of the population object to a higher value we can get a lot of verbose information about the run, but for now we will set it to 0.</p> <p>There are many grid_options that can lead to different behaviour of the evolution of the grid. Please do have a look at those: <a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/grid_options_descriptions.html">grid options docs</a>, and try</p> @@ -669,8 +661,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># set number of threads</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># set number of threads</span> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="c1"># verbose output is not required</span> <span class="n">verbosity</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> @@ -1084,8 +1075,7 @@ Done population run! <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> </pre></div> </div> </div> @@ -1101,8 +1091,7 @@ Done population run! <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># make a plot of the luminosity distribution using Seaborn and Pandas</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># make a plot of the luminosity distribution using Seaborn and Pandas</span> <span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span> <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">pad_output_distribution</span> @@ -1171,8 +1160,7 @@ Done population run! <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -1198,9 +1186,9 @@ Done population run! provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_luminosity_function_single.html b/docs/build/html/examples/notebook_luminosity_function_single.html index 9ea09290e..7bcc07b38 100644 --- a/docs/build/html/examples/notebook_luminosity_function_single.html +++ b/docs/build/html/examples/notebook_luminosity_function_single.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -308,7 +309,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -369,15 +370,14 @@ div.rendered_html tbody tr:hover { } </style> <section id="Example-use-case:-Zero-age-stellar-luminosity-function"> -<h1>Example use case: Zero-age stellar luminosity function<a class="headerlink" href="#Example-use-case:-Zero-age-stellar-luminosity-function" title="Permalink to this headline">ïƒ</a></h1> +<h1>Example use case: Zero-age stellar luminosity function<a class="headerlink" href="#Example-use-case:-Zero-age-stellar-luminosity-function" title="Permalink to this heading">ïƒ</a></h1> <p>In this notebook we compute the luminosity function of the zero-age main-sequence by running a population of single stars using binary_c.</p> <p>We start by loading in some standard Python modules and the binary_c module.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">import</span> <span class="nn">math</span> <span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> @@ -391,15 +391,14 @@ div.rendered_html tbody tr:hover { </div> </div> <section id="Setting-up-the-Population-object"> -<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this heading">ïƒ</a></h2> <p>To set up and configure the population object we need to make a new instance of the <code class="docutils literal notranslate"><span class="pre">Population</span></code> object and configure it with the <code class="docutils literal notranslate"><span class="pre">.set()</span></code> function.</p> <p>In our case, we only need to set the maximum evolution time to something short, because we care only about zero-age main sequence stars which have, by definition, age zero.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create population object</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create population object</span> <span class="n">population</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="c1"># If you want verbosity, set this before other things</span> @@ -432,7 +431,7 @@ verbosity is 1 </div> </section> <section id="Adding-grid-variables"> -<h2>Adding grid variables<a class="headerlink" href="#Adding-grid-variables" title="Permalink to this headline">ïƒ</a></h2> +<h2>Adding grid variables<a class="headerlink" href="#Adding-grid-variables" title="Permalink to this heading">ïƒ</a></h2> <p>The main purpose of the Population object is to handle the population synthesis side of running a set of stars. The main method to do this with binarycpython, as is the case with Perl binarygrid, is to use grid variables. These are loops over a predefined range of values, where a probability will be assigned to the systems based on the chosen probability distributions.</p> <p>Usually we use either 1 mass grid variable, or a trio of mass, mass ratio and period (other notebooks cover these examples). We can, however, also add grid sampling for e.g. eccentricity, metallicity or other parameters.</p> <p>To add a grid variable to the population object we use <code class="docutils literal notranslate"><span class="pre">population.add_grid_variable</span></code></p> @@ -440,8 +439,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># help(population.add_grid_variable)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># help(population.add_grid_variable)</span> </pre></div> </div> </div> @@ -450,8 +448,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> <span class="c1"># help(binarycpython.utils.distribution_functions)</span> </pre></div> </div> @@ -467,8 +464,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Set resolution and mass range that we simulate</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Set resolution and mass range that we simulate</span> <span class="n">resolution</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"M_1"</span><span class="p">:</span> <span class="mi">40</span><span class="p">}</span> <span class="c1"># start with resolution = 10, and increase later if you want "more accurate" data</span> <span class="n">massrange</span> <span class="o">=</span> <span class="p">(</span><span class="mf">0.07</span><span class="p">,</span> <span class="mf">100.0</span><span class="p">)</span> <span class="c1"># we work with stars of mass 0.07 to 100 Msun</span> <span class="n">total_probability</span> <span class="o">=</span> <span class="mf">1.0</span> <span class="c1"># theoretical integral of the mass probability density function over all masses</span> @@ -483,8 +479,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Mass</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Mass</span> <span class="n">population</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">tmp_dir</span><span class="o">=</span><span class="n">TMP_DIR</span><span class="p">,</span> @@ -521,7 +516,7 @@ verbosity is 1 </div> </section> <section id="Setting-logging-and-handling-the-output"> -<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this heading">ïƒ</a></h2> <p>By default, binary_c will not output anything (except for ‘SINGLE STAR LIFETIME’). It is up to us to determine what will be printed. We can either do that by hardcoding the print statements into <code class="docutils literal notranslate"><span class="pre">binary_c</span></code> (see documentation binary_c) or we can use the custom logging functionality of binarycpython (see notebook <code class="docutils literal notranslate"><span class="pre">notebook_custom_logging.ipynb</span></code>), which is faster to set up and requires no recompilation of binary_c, but is somewhat more limited in its functionality. For our current purposes, it works perfectly well.</p> <p>After configuring what will be printed, we need to make a function to parse the output. This can be done by setting the parse_function parameter in the population object (see also notebook <code class="docutils literal notranslate"><span class="pre">notebook_individual_systems.ipynb</span></code>).</p> @@ -530,8 +525,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create custom logging statement</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create custom logging statement</span> <span class="c1">#</span> <span class="c1"># we check that the model number is zero, i.e. we're on the first timestep (stars are born on the ZAMS)</span> <span class="c1"># we make sure that the stellar type is <= MAIN_SEQUENCE, i.e. the star is a main-sequence star</span> @@ -558,8 +552,7 @@ works perfectly well.</p> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">C_logging_code</span><span class="o">=</span><span class="n">custom_logging_statement</span> <span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> <p>The parse function must now catch lines that start with “ZERO_AGE_MAIN_SEQUENCE_STAR†and process the associated data.</p> @@ -567,8 +560,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># import the bin_data function so we can construct finite-resolution probability distributions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># import the bin_data function so we can construct finite-resolution probability distributions</span> <span class="c1"># import the datalinedict to make a dictionary from each line of data from binary_c</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">bin_data</span><span class="p">,</span><span class="n">datalinedict</span> @@ -609,7 +601,7 @@ works perfectly well.</p> </div> </section> <section id="Evolving-the-grid"> -<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this heading">ïƒ</a></h2> <p>Now that we configured all the main parts of the population object, we can actually run the population! Doing this is straightforward: <code class="docutils literal notranslate"><span class="pre">population.evolve()</span></code></p> <p>This will start up the processing of all the systems. We can control how many cores are used by settings <code class="docutils literal notranslate"><span class="pre">num_cores</span></code>. By setting the <code class="docutils literal notranslate"><span class="pre">verbosity</span></code> of the population object to a higher value we can get a lot of verbose information about the run, but for now we will set it to 0.</p> <p>There are many grid_options that can lead to different behaviour of the evolution of the grid. Please do have a look at those: <a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/grid_options_descriptions.html">grid options docs</a>, and try</p> @@ -617,8 +609,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># set number of threads</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># set number of threads</span> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="c1"># verbose output is not required</span> <span class="n">verbosity</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> @@ -639,8 +630,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> </pre></div> </div> </div> @@ -648,8 +638,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># make a plot of the luminosity distribution using Seaborn and Pandas</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># make a plot of the luminosity distribution using Seaborn and Pandas</span> <span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span> <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">pad_output_distribution</span> @@ -682,14 +671,13 @@ works perfectly well.</p> <p>Does this look like a reasonable stellar luminosity function to you? The implication is that the most likely stellar luminosity is 105.8 L☉! Clearly, this is not very realistic… let’s see what went wrong.</p> </section> <section id="ZAMS-Luminosity-distribution-with-the-initial-mass-function"> -<h2>ZAMS Luminosity distribution with the initial mass function<a class="headerlink" href="#ZAMS-Luminosity-distribution-with-the-initial-mass-function" title="Permalink to this headline">ïƒ</a></h2> +<h2>ZAMS Luminosity distribution with the initial mass function<a class="headerlink" href="#ZAMS-Luminosity-distribution-with-the-initial-mass-function" title="Permalink to this heading">ïƒ</a></h2> <p>In the previous example, all the stars in our grid had an equal weighting. This is very unlikely to be true in reality: indeed, we know that low mass stars are far more likely than high mass stars. So we now include an initial mass function as a three-part power law based on Kroupa (2001). Kroupa’s distribution is a three-part power law: we have a function that does this for us (it’s very common to use power laws in astrophysics).</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Update the probability distribution to use the three-part power law IMF</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Update the probability distribution to use the three-part power law IMF</span> <span class="n">population</span><span class="o">.</span><span class="n">update_grid_variable</span><span class="p">(</span> <span class="n">name</span><span class="o">=</span><span class="s2">"M_1"</span><span class="p">,</span> <span class="n">probdist</span><span class="o">=</span><span class="s2">"three_part_powerlaw(M_1, 0.1, 0.5, 1.0, 150, -1.3, -2.3, -2.3)"</span><span class="p">,</span> @@ -701,8 +689,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Clean and re-evolve the population</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Clean and re-evolve the population</span> <span class="n">population</span><span class="o">.</span><span class="n">clean</span><span class="p">()</span> <span class="n">analytics</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">evolve</span><span class="p">()</span> @@ -715,8 +702,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># plot luminosity distribution</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># plot luminosity distribution</span> <span class="n">ldist</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'luminosity distribution'</span><span class="p">]</span> <span class="c1"># pad the distribution with zeros where data is missing</span> @@ -739,15 +725,14 @@ works perfectly well.</p> <p>We could simply increase the resolution to compensate, but this is very CPU intensive and a complete waste of time and resources. Instead, let’s try sampling the masses of the stars in a smarter way.</p> </section> <section id="A-better-sampled-grid"> -<h2>A better-sampled grid<a class="headerlink" href="#A-better-sampled-grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>A better-sampled grid<a class="headerlink" href="#A-better-sampled-grid" title="Permalink to this heading">ïƒ</a></h2> <p>The IMF has many more low-mass stars than high-mass stars. So, instead of sampling M1 linearly, we can sample it in log space.</p> <p>To do this we first rename the mass grid variable so that it is clear we are working in (natural) logarithmic phase space.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Rename the old variable (M_1) because we want it to be called lnM_1 now</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Rename the old variable (M_1) because we want it to be called lnM_1 now</span> <span class="n">population</span><span class="o">.</span><span class="n">rename_grid_variable</span><span class="p">(</span><span class="s2">"M_1"</span><span class="p">,</span><span class="s2">"lnM_1"</span><span class="p">)</span> </pre></div> </div> @@ -757,8 +742,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># update the sampling, note that the IMF is dprob/dM1, and the phase</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># update the sampling, note that the IMF is dprob/dM1, and the phase</span> <span class="c1"># space is now sampled in lnM1, so we multiply by M_1 to</span> <span class="c1"># because M * dprob/dM = dprob/dlnM</span> <span class="n">population</span><span class="o">.</span><span class="n">update_grid_variable</span><span class="p">(</span> @@ -777,8 +761,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Clean and re-evolve the population</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Clean and re-evolve the population</span> <span class="n">population</span><span class="o">.</span><span class="n">clean</span><span class="p">()</span> <span class="n">analytics</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">evolve</span><span class="p">()</span> @@ -792,8 +775,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># plot luminosity distribution</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># plot luminosity distribution</span> <span class="n">ldist</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'luminosity distribution'</span><span class="p">]</span> <span class="c1"># pad the distribution with zeros where data is missing</span> @@ -828,8 +810,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -855,9 +836,9 @@ works perfectly well.</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_massive_remnants.html b/docs/build/html/examples/notebook_massive_remnants.html index be30de976..362517d94 100644 --- a/docs/build/html/examples/notebook_massive_remnants.html +++ b/docs/build/html/examples/notebook_massive_remnants.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -308,7 +309,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -369,15 +370,14 @@ div.rendered_html tbody tr:hover { } </style> <section id="Example-use-case:-Massive-star-luminosity"> -<h1>Example use case: Massive star luminosity<a class="headerlink" href="#Example-use-case:-Massive-star-luminosity" title="Permalink to this headline">ïƒ</a></h1> +<h1>Example use case: Massive star luminosity<a class="headerlink" href="#Example-use-case:-Massive-star-luminosity" title="Permalink to this heading">ïƒ</a></h1> <p>In this notebook we compute the luminosity function of the zero-age main-sequence by running a population of single stars using binary_c.</p> <p>We start by loading in some standard Python modules and the binary_c module.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">import</span> <span class="nn">math</span> <span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> @@ -391,15 +391,14 @@ div.rendered_html tbody tr:hover { </div> </div> <section id="Setting-up-the-Population-object"> -<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this heading">ïƒ</a></h2> <p>To set up and configure the population object we need to make a new instance of the <code class="docutils literal notranslate"><span class="pre">Population</span></code> object and configure it with the <code class="docutils literal notranslate"><span class="pre">.set()</span></code> function.</p> <p>In our case, we only need to set the maximum evolution time to something short, because we care only about zero-age main sequence stars which have, by definition, age zero.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create population object</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create population object</span> <span class="n">population</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="c1"># If you want verbosity, set this before other things</span> @@ -432,7 +431,7 @@ verbosity is 1 </div> </section> <section id="Adding-grid-variables"> -<h2>Adding grid variables<a class="headerlink" href="#Adding-grid-variables" title="Permalink to this headline">ïƒ</a></h2> +<h2>Adding grid variables<a class="headerlink" href="#Adding-grid-variables" title="Permalink to this heading">ïƒ</a></h2> <p>The main purpose of the Population object is to handle the population synthesis side of running a set of stars. The main method to do this with binarycpython, as is the case with Perl binarygrid, is to use grid variables. These are loops over a predefined range of values, where a probability will be assigned to the systems based on the chosen probability distributions.</p> <p>Usually we use either 1 mass grid variable, or a trio of mass, mass ratio and period (other notebooks cover these examples). We can, however, also add grid sampling for e.g. eccentricity, metallicity or other parameters.</p> <p>To add a grid variable to the population object we use <code class="docutils literal notranslate"><span class="pre">population.add_grid_variable</span></code></p> @@ -440,8 +439,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># help(population.add_grid_variable)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># help(population.add_grid_variable)</span> </pre></div> </div> </div> @@ -450,8 +448,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">binarycpython.utils.distribution_functions</span> <span class="c1"># help(binarycpython.utils.distribution_functions)</span> </pre></div> </div> @@ -467,8 +464,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Set resolution and mass range that we simulate</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Set resolution and mass range that we simulate</span> <span class="n">resolution</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"M_1"</span><span class="p">:</span> <span class="mi">40</span><span class="p">}</span> <span class="c1"># start with resolution = 10, and increase later if you want "more accurate" data</span> <span class="n">massrange</span> <span class="o">=</span> <span class="p">(</span><span class="mf">0.07</span><span class="p">,</span> <span class="mf">100.0</span><span class="p">)</span> <span class="c1"># we work with stars of mass 0.07 to 100 Msun</span> <span class="n">total_probability</span> <span class="o">=</span> <span class="mf">1.0</span> <span class="c1"># theoretical integral of the mass probability density function over all masses</span> @@ -483,8 +479,7 @@ verbosity is 1 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Mass</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Mass</span> <span class="n">population</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">tmp_dir</span><span class="o">=</span><span class="n">TMP_DIR</span><span class="p">,</span> @@ -504,7 +499,7 @@ verbosity is 1 </div> </section> <section id="Setting-logging-and-handling-the-output"> -<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this heading">ïƒ</a></h2> <p>By default, binary_c will not output anything (except for ‘SINGLE STAR LIFETIME’). It is up to us to determine what will be printed. We can either do that by hardcoding the print statements into <code class="docutils literal notranslate"><span class="pre">binary_c</span></code> (see documentation binary_c) or we can use the custom logging functionality of binarycpython (see notebook <code class="docutils literal notranslate"><span class="pre">notebook_custom_logging.ipynb</span></code>), which is faster to set up and requires no recompilation of binary_c, but is somewhat more limited in its functionality. For our current purposes, it works perfectly well.</p> <p>After configuring what will be printed, we need to make a function to parse the output. This can be done by setting the parse_function parameter in the population object (see also notebook <code class="docutils literal notranslate"><span class="pre">notebook_individual_systems.ipynb</span></code>).</p> @@ -513,8 +508,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create custom logging statement</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create custom logging statement</span> <span class="c1">#</span> <span class="c1"># we check that the model number is zero, i.e. we're on the first timestep (stars are born on the ZAMS)</span> <span class="c1"># we make sure that the stellar type is <= MAIN_SEQUENCE, i.e. the star is a main-sequence star</span> @@ -541,8 +535,7 @@ works perfectly well.</p> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="n">C_logging_code</span><span class="o">=</span><span class="n">custom_logging_statement</span> <span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> <p>The parse function must now catch lines that start with “ZERO_AGE_MAIN_SEQUENCE_STAR†and process the associated data.</p> @@ -550,8 +543,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># import the bin_data function so we can construct finite-resolution probability distributions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># import the bin_data function so we can construct finite-resolution probability distributions</span> <span class="c1"># import the datalinedict to make a dictionary from each line of data from binary_c</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">bin_data</span><span class="p">,</span><span class="n">datalinedict</span> @@ -592,7 +584,7 @@ works perfectly well.</p> </div> </section> <section id="Evolving-the-grid"> -<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this heading">ïƒ</a></h2> <p>Now that we configured all the main parts of the population object, we can actually run the population! Doing this is straightforward: <code class="docutils literal notranslate"><span class="pre">population.evolve()</span></code></p> <p>This will start up the processing of all the systems. We can control how many cores are used by settings <code class="docutils literal notranslate"><span class="pre">num_cores</span></code>. By setting the <code class="docutils literal notranslate"><span class="pre">verbosity</span></code> of the population object to a higher value we can get a lot of verbose information about the run, but for now we will set it to 0.</p> <p>There are many grid_options that can lead to different behaviour of the evolution of the grid. Please do have a look at those: <a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/grid_options_descriptions.html">grid options docs</a>, and try</p> @@ -600,8 +592,7 @@ works perfectly well.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># set number of threads</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># set number of threads</span> <span class="n">population</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> <span class="c1"># verbose output is not required</span> <span class="n">verbosity</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> @@ -647,8 +638,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> </pre></div> </div> </div> @@ -664,8 +654,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># make a plot of the luminosity distribution using Seaborn and Pandas</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># make a plot of the luminosity distribution using Seaborn and Pandas</span> <span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span> <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">pad_output_distribution</span> @@ -714,14 +703,13 @@ There were no errors found in this run. <p>Does this look like a reasonable stellar luminosity function to you? The implication is that the most likely stellar luminosity is 105.8 L☉! Clearly, this is not very realistic… let’s see what went wrong.</p> </section> <section id="ZAMS-Luminosity-distribution-with-the-initial-mass-function"> -<h2>ZAMS Luminosity distribution with the initial mass function<a class="headerlink" href="#ZAMS-Luminosity-distribution-with-the-initial-mass-function" title="Permalink to this headline">ïƒ</a></h2> +<h2>ZAMS Luminosity distribution with the initial mass function<a class="headerlink" href="#ZAMS-Luminosity-distribution-with-the-initial-mass-function" title="Permalink to this heading">ïƒ</a></h2> <p>In the previous example, all the stars in our grid had an equal weighting. This is very unlikely to be true in reality: indeed, we know that low mass stars are far more likely than high mass stars. So we now include an initial mass function as a three-part power law based on Kroupa (2001). Kroupa’s distribution is a three-part power law: we have a function that does this for us (it’s very common to use power laws in astrophysics).</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[12]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Update the probability distribution to use the three-part power law IMF</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Update the probability distribution to use the three-part power law IMF</span> <span class="n">population</span><span class="o">.</span><span class="n">update_grid_variable</span><span class="p">(</span> <span class="n">name</span><span class="o">=</span><span class="s2">"M_1"</span><span class="p">,</span> <span class="n">probdist</span><span class="o">=</span><span class="s2">"three_part_powerlaw(M_1, 0.1, 0.5, 1.0, 150, -1.3, -2.3, -2.3)"</span><span class="p">,</span> @@ -733,8 +721,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[13]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Clean and re-evolve the population</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Clean and re-evolve the population</span> <span class="n">population</span><span class="o">.</span><span class="n">clean</span><span class="p">()</span> <span class="n">analytics</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">evolve</span><span class="p">()</span> @@ -772,8 +759,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[14]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># plot luminosity distribution</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># plot luminosity distribution</span> <span class="n">ldist</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'luminosity distribution'</span><span class="p">]</span> <span class="c1"># pad the distribution with zeros where data is missing</span> @@ -812,15 +798,14 @@ There were no errors found in this run. <p>We could simply increase the resolution to compensate, but this is very CPU intensive and a complete waste of time and resources. Instead, let’s try sampling the masses of the stars in a smarter way.</p> </section> <section id="A-better-sampled-grid"> -<h2>A better-sampled grid<a class="headerlink" href="#A-better-sampled-grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>A better-sampled grid<a class="headerlink" href="#A-better-sampled-grid" title="Permalink to this heading">ïƒ</a></h2> <p>The IMF has many more low-mass stars than high-mass stars. So, instead of sampling M1 linearly, we can sample it in log space.</p> <p>To do this we first rename the mass grid variable so that it is clear we are working in (natural) logarithmic phase space.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[15]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Rename the old variable (M_1) because we want it to be called lnM_1 now</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Rename the old variable (M_1) because we want it to be called lnM_1 now</span> <span class="n">population</span><span class="o">.</span><span class="n">rename_grid_variable</span><span class="p">(</span><span class="s2">"M_1"</span><span class="p">,</span><span class="s2">"lnM_1"</span><span class="p">)</span> </pre></div> </div> @@ -830,8 +815,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[16]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># update the sampling, note that the IMF is dprob/dM1, and the phase</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># update the sampling, note that the IMF is dprob/dM1, and the phase</span> <span class="c1"># space is now sampled in lnM1, so we multiply by M_1 to</span> <span class="c1"># because M * dprob/dM = dprob/dlnM</span> <span class="n">population</span><span class="o">.</span><span class="n">update_grid_variable</span><span class="p">(</span> @@ -850,8 +834,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[17]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Clean and re-evolve the population</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Clean and re-evolve the population</span> <span class="n">population</span><span class="o">.</span><span class="n">clean</span><span class="p">()</span> <span class="n">analytics</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">evolve</span><span class="p">()</span> @@ -890,8 +873,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[18]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># plot luminosity distribution</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># plot luminosity distribution</span> <span class="n">ldist</span> <span class="o">=</span> <span class="n">population</span><span class="o">.</span><span class="n">grid_results</span><span class="p">[</span><span class="s1">'luminosity distribution'</span><span class="p">]</span> <span class="c1"># pad the distribution with zeros where data is missing</span> @@ -933,8 +915,7 @@ There were no errors found in this run. <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -960,9 +941,9 @@ There were no errors found in this run. provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_population.html b/docs/build/html/examples/notebook_population.html index edb81b7a6..e80d93be6 100644 --- a/docs/build/html/examples/notebook_population.html +++ b/docs/build/html/examples/notebook_population.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -312,7 +313,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -373,7 +374,7 @@ div.rendered_html tbody tr:hover { } </style> <section id="Tutorial:-Running-populations-with-binary_c-python"> -<h1>Tutorial: Running populations with binary_c-python<a class="headerlink" href="#Tutorial:-Running-populations-with-binary_c-python" title="Permalink to this headline">ïƒ</a></h1> +<h1>Tutorial: Running populations with binary_c-python<a class="headerlink" href="#Tutorial:-Running-populations-with-binary_c-python" title="Permalink to this heading">ïƒ</a></h1> <p>This notebook will show you how to evolve a population of stars</p> <p>Much of the code in the binarycpython package is written to evolve a population of stars through the Population object, rather than running a single system. Let’s go through the functionality of this object step by step and set up some example populations.</p> <p>At the bottom of this notebook there are some complete example scripts</p> @@ -381,8 +382,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.custom_logging_functions</span> <span class="kn">import</span> <span class="n">temp_dir</span> <span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">Population</span> @@ -394,7 +394,7 @@ div.rendered_html tbody tr:hover { </div> </div> <section id="Setting-up-the-Population-object"> -<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting up the Population object<a class="headerlink" href="#Setting-up-the-Population-object" title="Permalink to this heading">ïƒ</a></h2> <p>To set up and configure the population object we need to make an object instance of the <code class="docutils literal notranslate"><span class="pre">Population</span></code> object, and add configuration via the <code class="docutils literal notranslate"><span class="pre">.set()</span></code> function.</p> <p>There are three categories of options that the Population object can set: - BSE options: these options will be used for the binary_c calls, and are recognized by comparing the arguments to a known list of available arguments of binary_c. To see which options are available, see section <code class="docutils literal notranslate"><span class="pre">`binary_c</span> <span class="pre">parameters</span></code> in the documentation <<a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/binary_c_parameters.html">https://ri0005.pages.surrey.ac.uk/binary_c-python/binary_c_parameters.html</a>>`__. You can access these through <code class="docutils literal notranslate"><span class="pre">population.bse_options['<bse</span> <span class="pre">option</span> <span class="pre">name>']</span></code> after you have set them.</p> @@ -406,8 +406,7 @@ have set them.</p> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create population object</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create population object</span> <span class="n">example_pop</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> <span class="c1"># If you want verbosity, set this before other things</span> @@ -470,8 +469,7 @@ example_pop.dat <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">example_pop</span><span class="o">.</span><span class="n">export_all_info</span><span class="p">()</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">example_pop</span><span class="o">.</span><span class="n">export_all_info</span><span class="p">()</span> </pre></div> </div> </div> @@ -498,7 +496,7 @@ ok ret </div> </section> <section id="Adding-grid-variables"> -<h2>Adding grid variables<a class="headerlink" href="#Adding-grid-variables" title="Permalink to this headline">ïƒ</a></h2> +<h2>Adding grid variables<a class="headerlink" href="#Adding-grid-variables" title="Permalink to this heading">ïƒ</a></h2> <p>The main purpose of the Population object is to handle the population synthesis side of running a set of stars. The main method to do this with binarycpython, as is the case with Perl binarygrid, is to use grid variables. These are loops over a predefined range of values, where a probability will be assigned to the systems based on the chosen probability distributions.</p> <p>Usually we use either 1 mass grid variable, or a trio of mass, mass ratio and period (See below for full examples of all of these). We can, however, also add grid sampling for e.g. eccentricity, metallicity or other parameters.</p> <p>In some cases it could be easier to set up a for loop that sets that parameter and calls the evolve function several times, e.g. when you want to vary a prescription (usually a discrete, unweighted parameter)</p> @@ -508,8 +506,7 @@ ok ret <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">help</span><span class="p">(</span><span class="n">example_pop</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">help</span><span class="p">(</span><span class="n">example_pop</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">)</span> </pre></div> </div> </div> @@ -628,8 +625,7 @@ add_grid_variable(name: str, parameter_name: str, longname: str, valuerange: Uni <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># import binarycpython.utils.distribution_functions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># import binarycpython.utils.distribution_functions</span> <span class="c1"># help(binarycpython.utils.distribution_functions)</span> </pre></div> </div> @@ -639,8 +635,7 @@ add_grid_variable(name: str, parameter_name: str, longname: str, valuerange: Uni <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Add grid variables</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Add grid variables</span> <span class="n">resolution</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"M_1"</span><span class="p">:</span> <span class="mi">20</span><span class="p">}</span> <span class="c1"># Mass</span> @@ -683,13 +678,12 @@ add_grid_variable(name: str, parameter_name: str, longname: str, valuerange: Uni <span class="c1"># parameter_name="orbital_period",</span> <span class="c1"># dphasevol="dlog10per",</span> <span class="c1"># )</span> - -</pre></div> +<br/></pre></div> </div> </div> </section> <section id="Setting-logging-and-handling-the-output"> -<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this headline">ïƒ</a></h2> +<h2>Setting logging and handling the output<a class="headerlink" href="#Setting-logging-and-handling-the-output" title="Permalink to this heading">ïƒ</a></h2> <p>On default, binary_c will not output anything (except for ‘SINGLE STAR LIFETIME’). It is up to us to determine what will be printed. We can either do that by hardcoding the print statements into <code class="docutils literal notranslate"><span class="pre">binary_c</span></code> (see documentation binary_c). Or, we can use the custom logging functionality of binarycpython (see notebook <code class="docutils literal notranslate"><span class="pre">notebook_custom_logging.ipynb</span></code>), which is faster to set up and requires no recompilation of binary_c, but is somewhat more limited in its functionality.</p> <p>After configuring what will be printed, we need to make a function to parse the output. This can be done by setting the parse_function parameter in the population object (see also notebook <code class="docutils literal notranslate"><span class="pre">notebook_individual_systems.ipynb</span></code>).</p> <p>In the code below we will set up both the custom logging, and a parse function to handle that output</p> @@ -697,8 +691,7 @@ add_grid_variable(name: str, parameter_name: str, longname: str, valuerange: Uni <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># Create custom logging statement: in this case we will log when the star turns into a compact object, and then terminate the evolution.</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create custom logging statement: in this case we will log when the star turns into a compact object, and then terminate the evolution.</span> <span class="n">custom_logging_code</span> <span class="o">=</span> <span class="s2">"""</span> <span class="s2">if(stardata->star[0].stellar_type >= 13)</span> <span class="s2">{</span> @@ -754,8 +747,7 @@ if(stardata->star[0].stellar_type >= 13) <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">output</span><span class="p">):</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">output</span><span class="p">):</span> <span class="sd">"""</span> <span class="sd"> Example parse function</span> <span class="sd"> """</span> @@ -811,7 +803,7 @@ adding: parse_function=<function parse_function at 0x7f2b6ca163a0> to grid </div> </section> <section id="Evolving-the-grid"> -<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this headline">ïƒ</a></h2> +<h2>Evolving the grid<a class="headerlink" href="#Evolving-the-grid" title="Permalink to this heading">ïƒ</a></h2> <p>Now that we configured all the main parts of the population object, we can actually run the population! Doing this is straightforward: <code class="docutils literal notranslate"><span class="pre">example_pop.evolve()</span></code></p> <p>This will start up the processing of all the systems. We can control how many cores are used by settings <code class="docutils literal notranslate"><span class="pre">num_cores</span></code>. By setting the <code class="docutils literal notranslate"><span class="pre">verbosity</span></code> of the population object to a higher value we can get a lot of verbose information about the run, but for now we will set it to 0.</p> <p>There are many grid_options that can lead to different behaviour of the evolution of the grid. Please do have a look at those: <a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/grid_options_descriptions.html">grid options docs</a>, and try</p> @@ -819,8 +811,7 @@ adding: parse_function=<function parse_function at 0x7f2b6ca163a0> to grid <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># change verbosity</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># change verbosity</span> <span class="n">example_pop</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="n">verbosity</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> <span class="c1">## Executing a population</span> @@ -877,8 +868,7 @@ Added analytics to metadata <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="n">analytics</span><span class="p">)</span> </pre></div> </div> </div> @@ -892,14 +882,13 @@ Added analytics to metadata </div> </section> <section id="Noteworthy-functionality"> -<h2>Noteworthy functionality<a class="headerlink" href="#Noteworthy-functionality" title="Permalink to this headline">ïƒ</a></h2> +<h2>Noteworthy functionality<a class="headerlink" href="#Noteworthy-functionality" title="Permalink to this heading">ïƒ</a></h2> <p>Some extra features that are available from via the population object are: - write_binary_c_calls_to_file: Function to write the calls that would be passed to binary_c to a file</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">help</span><span class="p">(</span><span class="n">example_pop</span><span class="o">.</span><span class="n">write_binary_c_calls_to_file</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">help</span><span class="p">(</span><span class="n">example_pop</span><span class="o">.</span><span class="n">write_binary_c_calls_to_file</span><span class="p">)</span> </pre></div> </div> </div> @@ -935,8 +924,7 @@ write_binary_c_calls_to_file(output_dir: Optional[str] = None, output_filename: <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[12]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">example_pop</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="n">verbosity</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">example_pop</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="n">verbosity</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span> <span class="n">calls_filename</span> <span class="o">=</span> <span class="n">example_pop</span><span class="o">.</span><span class="n">write_binary_c_calls_to_file</span><span class="p">()</span> <span class="nb">print</span><span class="p">(</span><span class="n">calls_filename</span><span class="p">)</span> @@ -969,16 +957,15 @@ binary_c M_1 4.430329401616038 eccentricity 0.02 max_evolution_time 15000 orbita </div> </section> <section id="Full-examples-of-population-scripts"> -<h2>Full examples of population scripts<a class="headerlink" href="#Full-examples-of-population-scripts" title="Permalink to this headline">ïƒ</a></h2> +<h2>Full examples of population scripts<a class="headerlink" href="#Full-examples-of-population-scripts" title="Permalink to this heading">ïƒ</a></h2> <section id="Single-star-population"> -<h3>Single star population<a class="headerlink" href="#Single-star-population" title="Permalink to this headline">ïƒ</a></h3> +<h3>Single star population<a class="headerlink" href="#Single-star-population" title="Permalink to this heading">ïƒ</a></h3> <p>Below is a full setup for a population of single stars</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[13]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">output</span><span class="p">):</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">output</span><span class="p">):</span> <span class="sd">"""</span> <span class="sd"> Example parsing function</span> <span class="sd"> """</span> @@ -1166,14 +1153,13 @@ time mass zams_mass probability radius stellar_type </div> </section> <section id="Binary-star-population"> -<h3>Binary star population<a class="headerlink" href="#Binary-star-population" title="Permalink to this headline">ïƒ</a></h3> +<h3>Binary star population<a class="headerlink" href="#Binary-star-population" title="Permalink to this heading">ïƒ</a></h3> <p>We can also set up a population that samples binary systems, by adding extra grid variables. Below is an example of a full script that runs a binary population and registers when a double compact object is formed. The logging is rather compact and should be expanded to be more useful. Also note that we run very little systems in the following example, as its just intended to show how the code works.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[14]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">output</span><span class="p">):</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">output</span><span class="p">):</span> <span class="sd">"""</span> <span class="sd"> Example parsing function</span> <span class="sd"> """</span> @@ -1418,9 +1404,9 @@ time mass_1 zams_mass_1 mass_2 zams_mass_2 stellar_type_1 prev_stellar_type_1 st provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/notebook_solar_system.html b/docs/build/html/examples/notebook_solar_system.html index 756a185e7..8c10e67ab 100644 --- a/docs/build/html/examples/notebook_solar_system.html +++ b/docs/build/html/examples/notebook_solar_system.html @@ -14,10 +14,11 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> @@ -300,7 +301,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -361,15 +362,14 @@ div.rendered_html tbody tr:hover { } </style> <section id="Example-use-case:-Solar-system-using-the-API-functionality"> -<h1>Example use case: Solar system using the API functionality<a class="headerlink" href="#Example-use-case:-Solar-system-using-the-API-functionality" title="Permalink to this headline">ïƒ</a></h1> +<h1>Example use case: Solar system using the API functionality<a class="headerlink" href="#Example-use-case:-Solar-system-using-the-API-functionality" title="Permalink to this heading">ïƒ</a></h1> <p>We use the API interface to construct a model of the Solar system.</p> <p>First we must construct the argument string that we pass to binary_c</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">os</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> <span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">temp_dir</span> <span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">_binary_c_bindings</span> @@ -414,8 +414,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[13]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">re</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">re</span> <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> <span class="kn">import</span> <span class="nn">math</span> <span class="c1">#pd.set_option("display.max_rows", None, "display.max_columns", None)</span> @@ -460,8 +459,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">dataframes</span> <span class="o">=</span> <span class="p">{}</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">dataframes</span> <span class="o">=</span> <span class="p">{}</span> <span class="k">for</span> <span class="n">planet</span> <span class="ow">in</span> <span class="n">data</span><span class="p">:</span> <span class="n">dataframes</span><span class="p">[</span><span class="n">planet</span><span class="p">]</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">DataFrame</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="n">planet</span><span class="p">],</span> <span class="n">dtype</span><span class="o">=</span><span class="nb">float</span><span class="p">,</span> <span class="c1"># required! argh!</span> @@ -485,9 +483,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[12]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> - -<span></span><span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><br/><span></span><span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span> <span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> <span class="c1"># set up seaborn for use in the notebook</span> @@ -542,9 +538,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> - -<span></span><span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><br/><span></span><span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span> <span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> <span class="c1"># set up seaborn for use in the notebook</span> @@ -614,9 +608,9 @@ div.rendered_html tbody tr:hover { provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/old/basic_example.html b/docs/build/html/examples/old/basic_example.html index bd9957495..5cc325ecf 100644 --- a/docs/build/html/examples/old/basic_example.html +++ b/docs/build/html/examples/old/basic_example.html @@ -14,10 +14,11 @@ <script data-url_root="../../" id="documentation_options" src="../../_static/documentation_options.js"></script> <script src="../../_static/jquery.js"></script> <script src="../../_static/underscore.js"></script> + <script src="../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../../_static/js/theme.js"></script> <link rel="index" title="Index" href="../../genindex.html" /> <link rel="search" title="Search" href="../../search.html" /> @@ -283,7 +284,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -344,14 +345,13 @@ div.rendered_html tbody tr:hover { } </style> <section id="Basic-example"> -<h1>Basic example<a class="headerlink" href="#Basic-example" title="Permalink to this headline">ïƒ</a></h1> +<h1>Basic example<a class="headerlink" href="#Basic-example" title="Permalink to this heading">ïƒ</a></h1> <p>Running a single system</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> <span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span> <span class="kn">import</span> <span class="nn">binarycpython</span> @@ -365,8 +365,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="c1"># You can decide to `write` your own logging_line, which allows you to write a more complex logging statement with conditionals.</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># You can decide to `write` your own logging_line, which allows you to write a more complex logging statement with conditionals.</span> <span class="n">logging_line</span> <span class="o">=</span> <span class="s1">'Printf("MY_STELLAR_DATA time=</span><span class="si">%g</span><span class="s1"> radius=</span><span class="si">%g</span><span class="se">\\</span><span class="s1">n",stardata->model.time,stardata->star[0].radius)'</span> <span class="c1"># Generate entire shared lib code around logging lines</span> @@ -405,8 +404,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -430,8 +428,7 @@ div.rendered_html tbody tr:hover { <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -453,9 +450,9 @@ div.rendered_html tbody tr:hover { provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/examples/old/workshop_example_notebook.html b/docs/build/html/examples/old/workshop_example_notebook.html index 55957aa98..e4f7632ee 100644 --- a/docs/build/html/examples/old/workshop_example_notebook.html +++ b/docs/build/html/examples/old/workshop_example_notebook.html @@ -14,10 +14,11 @@ <script data-url_root="../../" id="documentation_options" src="../../_static/documentation_options.js"></script> <script src="../../_static/jquery.js"></script> <script src="../../_static/underscore.js"></script> + <script src="../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> - <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script> + <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <script src="../../_static/js/theme.js"></script> <link rel="index" title="Index" href="../../genindex.html" /> <link rel="search" title="Search" href="../../search.html" /> @@ -283,7 +284,7 @@ div.nboutput.container div.output_area > div[class^='highlight']{ } /* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */ -.prompt a.copybtn { +.prompt .copybtn { display: none; } @@ -344,29 +345,27 @@ div.rendered_html tbody tr:hover { } </style> <section id="Binary_c-and-python-example-notebook"> -<h1>Binary_c and python example notebook<a class="headerlink" href="#Binary_c-and-python-example-notebook" title="Permalink to this headline">ïƒ</a></h1> +<h1>Binary_c and python example notebook<a class="headerlink" href="#Binary_c-and-python-example-notebook" title="Permalink to this heading">ïƒ</a></h1> <p>The following notebook servers as an example of how the binary_c python wrapper works and how it could be used.</p> <p>By: David Hendriks 30 nov 2019</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[16]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">binarycpython</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="nn">binary_c_python_api</span> </pre></div> </div> </div> <section id="Core-api-wrapper-functions:"> -<h2>Core api wrapper functions:<a class="headerlink" href="#Core-api-wrapper-functions:" title="Permalink to this headline">ïƒ</a></h2> +<h2>Core api wrapper functions:<a class="headerlink" href="#Core-api-wrapper-functions:" title="Permalink to this heading">ïƒ</a></h2> <section id="run_binary()"> -<h3>run_binary()<a class="headerlink" href="#run_binary()" title="Permalink to this headline">ïƒ</a></h3> +<h3>run_binary()<a class="headerlink" href="#run_binary()" title="Permalink to this heading">ïƒ</a></h3> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[17]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="n">m1</span> <span class="o">=</span> <span class="mf">15.0</span> <span class="c1"># Msun</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">m1</span> <span class="o">=</span> <span class="mf">15.0</span> <span class="c1"># Msun</span> <span class="n">m2</span> <span class="o">=</span> <span class="mf">14.0</span> <span class="c1"># Msun</span> <span class="n">separation</span> <span class="o">=</span> <span class="mi">0</span> <span class="c1"># 0 = ignored, use period</span> <span class="n">orbital_period</span> <span class="o">=</span> <span class="mf">4530.0</span> <span class="c1"># days</span> @@ -415,13 +414,12 @@ example_header_2 2e-07 15 14 1 1 3540.3 0 </div> </section> <section id="run_binary_with_log"> -<h3>run_binary_with_log<a class="headerlink" href="#run_binary_with_log" title="Permalink to this headline">ïƒ</a></h3> +<h3>run_binary_with_log<a class="headerlink" href="#run_binary_with_log" title="Permalink to this heading">ïƒ</a></h3> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[18]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">tempfile</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">tempfile</span> <span class="kn">import</span> <span class="nn">os</span> <span class="n">m1</span> <span class="o">=</span> <span class="mf">15.0</span> <span class="c1"># Msun</span> @@ -490,13 +488,12 @@ Probability : 1 </div> </section> <section id="run-binary-with-custom-logging-line"> -<h3>run binary with custom logging line<a class="headerlink" href="#run-binary-with-custom-logging-line" title="Permalink to this headline">ïƒ</a></h3> +<h3>run binary with custom logging line<a class="headerlink" href="#run-binary-with-custom-logging-line" title="Permalink to this heading">ïƒ</a></h3> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[19]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython.utils</span> <span class="kn">import</span> <span class="n">custom_logging_functions</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython.utils</span> <span class="kn">import</span> <span class="n">custom_logging_functions</span> <span class="c1"># generate logging lines. Here you can choose whatever you want to have logged, and with what header</span> <span class="c1"># this generates working print statements</span> <span class="n">logging_line</span> <span class="o">=</span> <span class="n">custom_logging_functions</span><span class="o">.</span><span class="n">autogen_C_logging_code</span><span class="p">(</span> @@ -567,10 +564,10 @@ MY_STELLAR_DATA time=4e-07 mass=15 </section> </section> <section id="Using-utils-functions"> -<h2>Using utils functions<a class="headerlink" href="#Using-utils-functions" title="Permalink to this headline">ïƒ</a></h2> +<h2>Using utils functions<a class="headerlink" href="#Using-utils-functions" title="Permalink to this heading">ïƒ</a></h2> <p>In the utils.functions there are some functions that make it easier to interact with the core api functions.</p> <section id="run_system()"> -<h3>run_system()<a class="headerlink" href="#run_system()" title="Permalink to this headline">ïƒ</a></h3> +<h3>run_system()<a class="headerlink" href="#run_system()" title="Permalink to this heading">ïƒ</a></h3> <p>This function serves as an example on the function run_system and parse_output. There is more functionality with this method and several tasks are done behind the scene.</p> <p>Requires pandas, numpy to run.</p> <p>run_system: mostly just makes passing arguments to the function easier. It also loads all the necessary defaults in the background parse_output: Takes the raw output of binary_c and selects those lines that start with the given header. Note, if you dont use the custom_logging functionality binary_c should be configured to have output that starts with that given header</p> @@ -579,8 +576,7 @@ MY_STELLAR_DATA time=4e-07 mass=15 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[20]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">run_system</span><span class="p">,</span> <span class="n">parse_output</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">run_system</span><span class="p">,</span> <span class="n">parse_output</span> <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> <span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span> @@ -609,8 +605,7 @@ MY_STELLAR_DATA time=4e-07 mass=15 <span class="n">df2</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">DataFrame</span><span class="o">.</span><span class="n">from_dict</span><span class="p">(</span><span class="n">result_example_header_2</span><span class="p">,</span> <span class="n">dtype</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span> <span class="n">df2</span><span class="o">.</span><span class="n">columns</span><span class="o">=</span><span class="p">[</span><span class="s1">'time'</span><span class="p">,</span> <span class="s1">'mass_1'</span><span class="p">,</span> <span class="s1">'mass_2'</span><span class="p">,</span> <span class="s1">'st1'</span><span class="p">,</span> <span class="s1">'st2'</span><span class="p">,</span> <span class="s1">'sep'</span><span class="p">,</span> <span class="s1">'ecc'</span><span class="p">]</span> <span class="nb">print</span><span class="p">(</span><span class="n">df2</span><span class="p">)</span> - -</pre></div> +<br/></pre></div> </div> </div> <div class="nboutput nblast docutils container"> @@ -663,14 +658,13 @@ example_header_2 2e-07 10 20 1 1 2.81762e+08 0 </div> </section> <section id="run_system()-and-custom-logging"> -<h3>run_system() and custom logging<a class="headerlink" href="#run_system()-and-custom-logging" title="Permalink to this headline">ïƒ</a></h3> +<h3>run_system() and custom logging<a class="headerlink" href="#run_system()-and-custom-logging" title="Permalink to this heading">ïƒ</a></h3> <p>Function that will use a automatically generated piece of logging code. Compile it, load it into memory and run a binary system. See run_system on how several things are done in the background here.</p> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[21]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.custom_logging_functions</span> <span class="kn">import</span> <span class="p">(</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">binarycpython.utils.custom_logging_functions</span> <span class="kn">import</span> <span class="p">(</span> <span class="n">autogen_C_logging_code</span><span class="p">,</span> <span class="n">binary_c_log_code</span><span class="p">,</span> <span class="p">)</span> @@ -736,14 +730,13 @@ example_header_2 2e-07 10 20 1 1 2.81762e+08 0 </section> </section> <section id="Other-example"> -<h2>Other example<a class="headerlink" href="#Other-example" title="Permalink to this headline">ïƒ</a></h2> +<h2>Other example<a class="headerlink" href="#Other-example" title="Permalink to this heading">ïƒ</a></h2> <p>Checking how much mass stars lose on the main sequence.</p> <div class="nbinput nblast docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[12]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="k">def</span> <span class="nf">run_and_calc_mass</span><span class="p">(</span><span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">run_and_calc_mass</span><span class="p">(</span><span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="sd">"""</span> <span class="sd"> Function to run a given system and look at the mass lost in the main sequence of the star</span> <span class="sd"> """</span> @@ -780,16 +773,14 @@ example_header_2 2e-07 10 20 1 1 2.81762e+08 0 <span class="c1"># Return the mass fraction (wrt initial mass)</span> <span class="k">return</span> <span class="n">fraction</span> - -</pre></div> +<br/></pre></div> </div> </div> <div class="nbinput docutils container"> <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[13]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">time</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">time</span> <span class="n">metallicity_002</span> <span class="o">=</span> <span class="mf">0.02</span> <span class="n">metallicity_001</span> <span class="o">=</span> <span class="mf">0.01</span> @@ -838,8 +829,7 @@ Took 14.214274644851685s <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[22]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span><span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> <span class="n">fig</span><span class="p">,</span> <span class="n">ax</span> <span class="o">=</span> <span class="n">plt</span><span class="o">.</span><span class="n">subplots</span><span class="p">(</span><span class="n">nrows</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">ncols</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">12</span><span class="p">,</span><span class="mi">8</span><span class="p">))</span> @@ -868,8 +858,7 @@ Took 14.214274644851685s <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]: </pre></div> </div> -<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre> -<span></span> +<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span> </pre></div> </div> </div> @@ -892,9 +881,9 @@ Took 14.214274644851685s provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/functions.html b/docs/build/html/functions.html index 793a0acc5..a0f437cbb 100644 --- a/docs/build/html/functions.html +++ b/docs/build/html/functions.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.functions"> -<span id="functions-module"></span><h1>functions module<a class="headerlink" href="#module-binarycpython.utils.functions" title="Permalink to this headline">ïƒ</a></h1> +<span id="functions-module"></span><h1>functions module<a class="headerlink" href="#module-binarycpython.utils.functions" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing most of the utility functions for the binarycpython package</p> <p>Functions here are mostly functions used in other classes/functions, or useful functions for the user</p> @@ -732,9 +733,9 @@ of all the binary_c parameters.</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/genindex.html b/docs/build/html/genindex.html index 600fdd60a..4cc0a541e 100644 --- a/docs/build/html/genindex.html +++ b/docs/build/html/genindex.html @@ -13,6 +13,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -1087,9 +1088,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/grid.html b/docs/build/html/grid.html index 0a83dfaa8..3b7d545b8 100644 --- a/docs/build/html/grid.html +++ b/docs/build/html/grid.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.grid"> -<span id="population-class-module"></span><h1>Population class module<a class="headerlink" href="#module-binarycpython.utils.grid" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-module"></span><h1>Population class module<a class="headerlink" href="#module-binarycpython.utils.grid" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing the Population grid class object.</p> <p>Here all the functionality of a Population object is defined.</p> <p>TODO: the save_snapshots and save_snapshot, are they actually distinct?</p> @@ -146,10 +147,11 @@ </ul> </dd> </dl> +<p>TODO: Some of the methods that we have defined in the (mixin) class are designed to be used as a portal to information (return_binary_c_version_info for example.) THe current design is that they are all instance methods, but that is not always necessary. We can decorate them with @staticmethod, or @classmethod to make it easier to use them (<a class="reference external" href="https://realpython.com/instance-class-and-static-methods-demystified/">https://realpython.com/instance-class-and-static-methods-demystified/</a>)</p> <dl class="py class"> <dt class="sig sig-object py" id="binarycpython.utils.grid.Population"> <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">binarycpython.utils.grid.</span></span><span class="sig-name descname"><span class="pre">Population</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/grid.html#Population"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.grid.Population" title="Permalink to this definition">ïƒ</a></dt> -<dd><p>Bases: <a class="reference internal" href="population_extensions/analytics.html#binarycpython.utils.population_extensions.analytics.analytics" title="binarycpython.utils.population_extensions.analytics.analytics"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.analytics.analytics</span></code></a>, <a class="reference internal" href="population_extensions/cache.html#binarycpython.utils.population_extensions.cache.cache" title="binarycpython.utils.population_extensions.cache.cache"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.cache.cache</span></code></a>, <a class="reference internal" href="population_extensions/dataIO.html#binarycpython.utils.population_extensions.dataIO.dataIO" title="binarycpython.utils.population_extensions.dataIO.dataIO"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.dataIO.dataIO</span></code></a>, <a class="reference internal" href="population_extensions/distribution_functions.html#binarycpython.utils.population_extensions.distribution_functions.distribution_functions" title="binarycpython.utils.population_extensions.distribution_functions.distribution_functions"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.distribution_functions.distribution_functions</span></code></a>, <a class="reference internal" href="population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging" title="binarycpython.utils.population_extensions.grid_logging.grid_logging"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.grid_logging.grid_logging</span></code></a>, <a class="reference internal" href="population_extensions/grid_options_defaults.html#binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults" title="binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults</span></code></a>, <a class="reference internal" href="population_extensions/gridcode.html#binarycpython.utils.population_extensions.gridcode.gridcode" title="binarycpython.utils.population_extensions.gridcode.gridcode"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.gridcode.gridcode</span></code></a>, <a class="reference internal" href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC" title="binarycpython.utils.population_extensions.HPC.HPC"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.HPC.HPC</span></code></a>, <a class="reference internal" href="population_extensions/metadata.html#binarycpython.utils.population_extensions.metadata.metadata" title="binarycpython.utils.population_extensions.metadata.metadata"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.metadata.metadata</span></code></a>, <a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017" title="binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017</span></code></a>, <a class="reference internal" href="population_extensions/spacing_functions.html#binarycpython.utils.population_extensions.spacing_functions.spacing_functions" title="binarycpython.utils.population_extensions.spacing_functions.spacing_functions"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.spacing_functions.spacing_functions</span></code></a>, <a class="reference internal" href="population_extensions/version_info.html#binarycpython.utils.population_extensions.version_info.version_info" title="binarycpython.utils.population_extensions.version_info.version_info"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.version_info.version_info</span></code></a></p> +<dd><p>Bases: <a class="reference internal" href="population_extensions/analytics.html#binarycpython.utils.population_extensions.analytics.analytics" title="binarycpython.utils.population_extensions.analytics.analytics"><code class="xref py py-class docutils literal notranslate"><span class="pre">analytics</span></code></a>, <a class="reference internal" href="population_extensions/cache.html#binarycpython.utils.population_extensions.cache.cache" title="binarycpython.utils.population_extensions.cache.cache"><code class="xref py py-class docutils literal notranslate"><span class="pre">cache</span></code></a>, <a class="reference internal" href="population_extensions/dataIO.html#binarycpython.utils.population_extensions.dataIO.dataIO" title="binarycpython.utils.population_extensions.dataIO.dataIO"><code class="xref py py-class docutils literal notranslate"><span class="pre">dataIO</span></code></a>, <a class="reference internal" href="population_extensions/distribution_functions.html#binarycpython.utils.population_extensions.distribution_functions.distribution_functions" title="binarycpython.utils.population_extensions.distribution_functions.distribution_functions"><code class="xref py py-class docutils literal notranslate"><span class="pre">distribution_functions</span></code></a>, <a class="reference internal" href="population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging" title="binarycpython.utils.population_extensions.grid_logging.grid_logging"><code class="xref py py-class docutils literal notranslate"><span class="pre">grid_logging</span></code></a>, <a class="reference internal" href="population_extensions/grid_options_defaults.html#binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults" title="binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults"><code class="xref py py-class docutils literal notranslate"><span class="pre">grid_options_defaults</span></code></a>, <a class="reference internal" href="population_extensions/gridcode.html#binarycpython.utils.population_extensions.gridcode.gridcode" title="binarycpython.utils.population_extensions.gridcode.gridcode"><code class="xref py py-class docutils literal notranslate"><span class="pre">gridcode</span></code></a>, <a class="reference internal" href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC" title="binarycpython.utils.population_extensions.HPC.HPC"><code class="xref py py-class docutils literal notranslate"><span class="pre">HPC</span></code></a>, <a class="reference internal" href="population_extensions/metadata.html#binarycpython.utils.population_extensions.metadata.metadata" title="binarycpython.utils.population_extensions.metadata.metadata"><code class="xref py py-class docutils literal notranslate"><span class="pre">metadata</span></code></a>, <a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017" title="binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017"><code class="xref py py-class docutils literal notranslate"><span class="pre">Moe_di_Stefano_2017</span></code></a>, <a class="reference internal" href="population_extensions/spacing_functions.html#binarycpython.utils.population_extensions.spacing_functions.spacing_functions" title="binarycpython.utils.population_extensions.spacing_functions.spacing_functions"><code class="xref py py-class docutils literal notranslate"><span class="pre">spacing_functions</span></code></a>, <a class="reference internal" href="population_extensions/version_info.html#binarycpython.utils.population_extensions.version_info.version_info" title="binarycpython.utils.population_extensions.version_info.version_info"><code class="xref py py-class docutils literal notranslate"><span class="pre">version_info</span></code></a></p> <p>Population Object. Contains all the necessary functions to set up, run and process a population of systems</p> <dl class="py method"> @@ -376,9 +378,9 @@ in the self.grid_options</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/grid_options_descriptions.html b/docs/build/html/grid_options_descriptions.html index 3278ba4b7..58e959378 100644 --- a/docs/build/html/grid_options_descriptions.html +++ b/docs/build/html/grid_options_descriptions.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -102,11 +103,11 @@ } </style> <section id="population-grid-code-options"> -<h1>Population grid code options<a class="headerlink" href="#population-grid-code-options" title="Permalink to this headline">ïƒ</a></h1> +<h1>Population grid code options<a class="headerlink" href="#population-grid-code-options" title="Permalink to this heading">ïƒ</a></h1> <p>The following chapter contains all grid code options, along with their descriptions There are 29 options that are not described yet.</p> <section id="public-options"> -<h2>Public options<a class="headerlink" href="#public-options" title="Permalink to this headline">ïƒ</a></h2> +<h2>Public options<a class="headerlink" href="#public-options" title="Permalink to this heading">ïƒ</a></h2> <p>The following options are meant to be changed by the user.</p> <div class="line-block"> <div class="line"><strong>C_auto_logging</strong>: Dictionary containing parameters to be logged by binary_c. The structure of this dictionary is as follows: the key is used as the headline which the user can then catch. The value at that key is a list of binary_c system parameters (like star[0].mass)</div> @@ -443,7 +444,7 @@ There are 29 options that are not described yet.</p> </div> </section> <section id="moe-di-stefano-sampler-options"> -<h2>Moe & di Stefano sampler options<a class="headerlink" href="#moe-di-stefano-sampler-options" title="Permalink to this headline">ïƒ</a></h2> +<h2>Moe & di Stefano sampler options<a class="headerlink" href="#moe-di-stefano-sampler-options" title="Permalink to this heading">ïƒ</a></h2> <p>The following options are meant to be changed by the user.</p> <div class="line-block"> <div class="line"><strong>JSON</strong>: No description available yet</div> @@ -530,7 +531,7 @@ q extrapolation (below 0.15) method </div> </section> <section id="private-options"> -<h2>Private options<a class="headerlink" href="#private-options" title="Permalink to this headline">ïƒ</a></h2> +<h2>Private options<a class="headerlink" href="#private-options" title="Permalink to this heading">ïƒ</a></h2> <p>The following options are not meant to be changed by the user, as these options are used and set internally by the object itself. The description still is provided, but just for documentation purposes.</p> <div class="line-block"> <div class="line"><strong>_Moe2017_JSON_data</strong>: Location to store the loaded Moe&diStefano2017 dataset</div> @@ -646,9 +647,9 @@ q extrapolation (below 0.15) method provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/index.html b/docs/build/html/index.html index 27543889c..390650c73 100644 --- a/docs/build/html/index.html +++ b/docs/build/html/index.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -97,37 +98,32 @@ } </style> <section id="welcome-to-binary-c-python-s-documentation"> -<h1>Welcome to binary_c-python’s documentation!<a class="headerlink" href="#welcome-to-binary-c-python-s-documentation" title="Permalink to this headline">ïƒ</a></h1> +<h1>Welcome to binary_c-python’s documentation!<a class="headerlink" href="#welcome-to-binary-c-python-s-documentation" title="Permalink to this heading">ïƒ</a></h1> </section> <section id="python-module-for-binary-c"> -<h1>Python module for binary_c<a class="headerlink" href="#python-module-for-binary-c" title="Permalink to this headline">ïƒ</a></h1> +<h1>Python module for binary_c<a class="headerlink" href="#python-module-for-binary-c" title="Permalink to this heading">ïƒ</a></h1> <p>Docstring coverage:</p> <a class="reference external image-reference" href="./badges/docstring_coverage.svg"><img alt="docstring coverage" src="_images/docstring_coverage.svg" /></a> <p>Test coverage:</p> <a class="reference external image-reference" href="./badges/test_coverage.svg"><img alt="test coverage" src="_images/test_coverage.svg" /></a> +<p>Powered by:</p> +<a class="reference external image-reference" href="http://www.astropy.org/"><img alt="" src="http://www.astropy.org/" /></a> <p>Binary population synthesis code that interfaces with binary_c. Based on a original work by Jeff Andrews. Updated and extended for Python3 by David Hendriks, Robert Izzard.</p> <p>The current release is version <a class="reference external" href="VERSION">version</a>, make sure to use that version number when installing!</p> -<section id="requirements"> -<h2>Requirements<a class="headerlink" href="#requirements" title="Permalink to this headline">ïƒ</a></h2> +<section id="installation"> +<h2>Installation<a class="headerlink" href="#installation" title="Permalink to this heading">ïƒ</a></h2> +<p>To install binary_c-python we need to make sure we meet the requirements of installation, and</p> +<section id="python-requirements"> +<h3>Python requirements<a class="headerlink" href="#python-requirements" title="Permalink to this heading">ïƒ</a></h3> <p>To run this code you need to at least have installations of:</p> <ul class="simple"> -<li><p>Python 3.6 or higher</p></li> -<li><p>binary_c version 2.1.7 or higher</p></li> -</ul> -<p>And the following python packages (which will get installed automatically when installing with pip):</p> -<ul class="simple"> -<li><p>numpy</p></li> -<li><p>pytest</p></li> -<li><p>h5py</p></li> -<li><p>pathos</p></li> -<li><p>pandas</p></li> -<li><p>astropy</p></li> -<li><p>matplotlib</p></li> -<li><p>py_rinterpolate</p></li> +<li><p>Python 3.7 or higher (3.6 is EOL, and we are using 3.9 for development)</p></li> +<li><p>binary_c version 2.2.0 or higher</p></li> </ul> +<p>The packages that are required for this code to run are listed in the requirements.txt, which automatically gets read out by setup.py</p> </section> <section id="environment-variables"> -<h2>Environment variables<a class="headerlink" href="#environment-variables" title="Permalink to this headline">ïƒ</a></h2> +<h3>Environment variables<a class="headerlink" href="#environment-variables" title="Permalink to this heading">ïƒ</a></h3> <p>Before compilation you need to have certain environment variables:</p> <p>Required:</p> <ul class="simple"> @@ -138,55 +134,77 @@ </ul> </section> <section id="build-instructions"> -<h2>Build instructions<a class="headerlink" href="#build-instructions" title="Permalink to this headline">ïƒ</a></h2> +<h3>Build instructions<a class="headerlink" href="#build-instructions" title="Permalink to this heading">ïƒ</a></h3> <p>First, make sure you have built binary_c (See <code class="docutils literal notranslate"><span class="pre">$BINARY_C/doc/binary_c2.pdf</span></code> section: installation for all the installation instructions for <code class="docutils literal notranslate"><span class="pre">binary_c</span></code>)) and that it functions correctly.</p> +</section> <section id="installation-via-pip"> -<h3>Installation via PIP:<a class="headerlink" href="#installation-via-pip" title="Permalink to this headline">ïƒ</a></h3> +<h3>Installation via PIP:<a class="headerlink" href="#installation-via-pip" title="Permalink to this heading">ïƒ</a></h3> <p>To install this package via pip:</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">pip</span> <span class="n">install</span> <span class="n">binarycpython</span> </pre></div> </div> -<p>This will install the latest stable installation that is available on pip.</p> +<p>This will install the latest stable installation that is available on Pip. The version on the master branch should be the same version as the latest stable version on Pip</p> </section> <section id="installation-from-source"> -<h3>Installation from source:<a class="headerlink" href="#installation-from-source" title="Permalink to this headline">ïƒ</a></h3> -<p>We can also install the package from source, which is useful for development versions and when you want to modify the code. It is recommended that you install this into a virtual environment. From within the root directory, run</p> +<h3>Installation from source:<a class="headerlink" href="#installation-from-source" title="Permalink to this heading">ïƒ</a></h3> +<p>We can also install the package from source, which is useful for development versions and when you want to modify the code. It is recommended that you install this into a virtual environment. From within the <code class="docutils literal notranslate"><span class="pre">commands/</span></code> directory, run</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">install</span><span class="o">.</span><span class="n">sh</span> </pre></div> </div> -<p>This will install the package, along with all the dependencies.</p> +<p>This will install the package, along with all the dependencies, into the current active (virtual) python environment.</p> <p>If this is not the first time you install the package, but rather rebuild it because you made changes in either binary_c or binarycpython, you can run</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">install_without_dependencies</span><span class="o">.</span><span class="n">sh</span> </pre></div> </div> <p>to reinstall just binarycpython.</p> <section id="after-installation"> -<h4>After installation<a class="headerlink" href="#after-installation" title="Permalink to this headline">ïƒ</a></h4> +<h4>After installation<a class="headerlink" href="#after-installation" title="Permalink to this heading">ïƒ</a></h4> <p>After installing the code via source it is useful to run the test suite before doing any programming with it. The test suite is stored in <code class="docutils literal notranslate"><span class="pre">binarycpython/tests</span></code> and running <code class="docutils literal notranslate"><span class="pre">python</span> <span class="pre">main.py</span></code> in there will run all the tests.</p> </section> </section> </section> +<section id="usage"> +<h2>Usage<a class="headerlink" href="#usage" title="Permalink to this heading">ïƒ</a></h2> <section id="examples"> -<h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">ïƒ</a></h2> +<h3>Examples<a class="headerlink" href="#examples" title="Permalink to this heading">ïƒ</a></h3> <p>See the examples/ directory for example scripts and notebooks. The documentation contains example pages as well.</p> </section> <section id="usage-notes"> -<h2>Usage notes<a class="headerlink" href="#usage-notes" title="Permalink to this headline">ïƒ</a></h2> +<h3>Usage notes<a class="headerlink" href="#usage-notes" title="Permalink to this heading">ïƒ</a></h3> <p>Make sure that with every change/recompilation you make in <code class="docutils literal notranslate"><span class="pre">binary_c</span></code>, you also rebuild this package. Whenever you change the sourcecode of this package, you need to reinstall it into your virtualenvironment as well</p> </section> <section id="documentation"> -<h2>Documentation<a class="headerlink" href="#documentation" title="Permalink to this headline">ïƒ</a></h2> +<h3>Documentation<a class="headerlink" href="#documentation" title="Permalink to this heading">ïƒ</a></h3> <p>Look in the docs/ directory. Within the build/html/ there is the html version of the documentation. The</p> </section> +</section> <section id="development"> -<h2>Development:<a class="headerlink" href="#development" title="Permalink to this headline">ïƒ</a></h2> +<h2>Development:<a class="headerlink" href="#development" title="Permalink to this heading">ïƒ</a></h2> <p>If you want to contribute to the code, then it is recommended that you install the packages in <code class="docutils literal notranslate"><span class="pre">development_requirements.txt</span></code>:</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">pip</span> <span class="n">install</span> <span class="o">-</span><span class="n">r</span> <span class="n">development_requirements</span><span class="o">.</span><span class="n">txt</span> </pre></div> </div> +<p>Please do not hesitate to contact us to discuss any developments.</p> +<section id="building-documentation"> +<h3>Building documentation<a class="headerlink" href="#building-documentation" title="Permalink to this heading">ïƒ</a></h3> +<p>To build the documentation manually, run</p> +<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">generate_docs</span><span class="o">.</span><span class="n">sh</span> +</pre></div> +</div> +<p>from within the <code class="docutils literal notranslate"><span class="pre">commands/</span></code> directory</p> +</section> +<section id="running-unit-tests"> +<h3>Running unit tests<a class="headerlink" href="#running-unit-tests" title="Permalink to this heading">ïƒ</a></h3> +<p>To generate the unit test and docstring coverage report, run</p> +<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">generate_reports</span><span class="o">.</span><span class="n">sh</span> +</pre></div> +</div> +<p>from within the <code class="docutils literal notranslate"><span class="pre">commands/</span></code> directory</p> +</section> </section> <section id="faq-issues"> -<h2>FAQ/Issues:<a class="headerlink" href="#faq-issues" title="Permalink to this headline">ïƒ</a></h2> +<h2>FAQ/Issues:<a class="headerlink" href="#faq-issues" title="Permalink to this heading">ïƒ</a></h2> +<p>Here we provide a non-exhaustive list of some issues we encountered and solutions for these:</p> <p>Building issues with binary_c itself:</p> <ul class="simple"> <li><p>see the documentation of binary_c (in doc/).</p></li> @@ -208,12 +226,8 @@ <p class="caption" role="heading"><span class="caption-text">Contents:</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="readme_link.html">Python module for binary_c</a><ul> -<li class="toctree-l2"><a class="reference internal" href="readme_link.html#requirements">Requirements</a></li> -<li class="toctree-l2"><a class="reference internal" href="readme_link.html#environment-variables">Environment variables</a></li> -<li class="toctree-l2"><a class="reference internal" href="readme_link.html#build-instructions">Build instructions</a></li> -<li class="toctree-l2"><a class="reference internal" href="readme_link.html#examples">Examples</a></li> -<li class="toctree-l2"><a class="reference internal" href="readme_link.html#usage-notes">Usage notes</a></li> -<li class="toctree-l2"><a class="reference internal" href="readme_link.html#documentation">Documentation</a></li> +<li class="toctree-l2"><a class="reference internal" href="readme_link.html#installation">Installation</a></li> +<li class="toctree-l2"><a class="reference internal" href="readme_link.html#usage">Usage</a></li> <li class="toctree-l2"><a class="reference internal" href="readme_link.html#development">Development:</a></li> <li class="toctree-l2"><a class="reference internal" href="readme_link.html#faq-issues">FAQ/Issues:</a></li> </ul> @@ -283,7 +297,7 @@ </section> </section> <section id="indices-and-tables"> -<h1>Indices and tables<a class="headerlink" href="#indices-and-tables" title="Permalink to this headline">ïƒ</a></h1> +<h1>Indices and tables<a class="headerlink" href="#indices-and-tables" title="Permalink to this heading">ïƒ</a></h1> <ul class="simple"> <li><p><a class="reference internal" href="genindex.html"><span class="std std-ref">Index</span></a></p></li> <li><p><a class="reference internal" href="py-modindex.html"><span class="std std-ref">Module Index</span></a></p></li> @@ -309,9 +323,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/modules.html b/docs/build/html/modules.html index 42d63fe44..e549cd6e9 100644 --- a/docs/build/html/modules.html +++ b/docs/build/html/modules.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -123,7 +124,7 @@ } </style> <section id="binarycpython-code"> -<h1>Binarycpython code<a class="headerlink" href="#binarycpython-code" title="Permalink to this headline">ïƒ</a></h1> +<h1>Binarycpython code<a class="headerlink" href="#binarycpython-code" title="Permalink to this heading">ïƒ</a></h1> <p>This chapter contains the (auto)documentation for all the functions and modules in the source code of binarycpython</p> <div class="toctree-wrapper compound"> <ul> @@ -173,9 +174,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/objects.inv b/docs/build/html/objects.inv index 78075ad6aaeb850cb4fc53841a12889ef640b72f..0e2adadbe69a117ae80b5890f11c2d83f5cb4c1f 100644 GIT binary patch delta 11573 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 delta 11474 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 diff --git a/docs/build/html/plot_functions.html b/docs/build/html/plot_functions.html index 5829713b7..8df452016 100644 --- a/docs/build/html/plot_functions.html +++ b/docs/build/html/plot_functions.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.plot_functions"> -<span id="plot-functions-module"></span><h1>plot_functions module<a class="headerlink" href="#module-binarycpython.utils.plot_functions" title="Permalink to this headline">ïƒ</a></h1> +<span id="plot-functions-module"></span><h1>plot_functions module<a class="headerlink" href="#module-binarycpython.utils.plot_functions" title="Permalink to this heading">ïƒ</a></h1> <p>Module that contains functionality to plot some properties of (binary) systems.</p> <p>Different routines are defined here to plot orbits, masses, angular momenta etc.</p> <dl class="simple"> @@ -377,9 +378,9 @@ This is not included in all the plotting routines.</p></li> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/HPC.html b/docs/build/html/population_extensions/HPC.html index f3ba0ac7e..5bc9d2ee7 100644 --- a/docs/build/html/population_extensions/HPC.html +++ b/docs/build/html/population_extensions/HPC.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.HPC"> -<span id="population-class-extension-hpc-module"></span><h1>Population class extension: HPC module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.HPC" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-hpc-module"></span><h1>Population class extension: HPC module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.HPC" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing the functions to HPC functionality</p> <p>These functions form a single API through which you can access HPC resources.</p> <p>Generally, you should call an HPC function rather than the Slurm or Condor interface @@ -135,7 +136,7 @@ Condor API.</p> <dl class="py class"> <dt class="sig sig-object py" id="binarycpython.utils.population_extensions.HPC.HPC"> <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">binarycpython.utils.population_extensions.HPC.</span></span><span class="sig-name descname"><span class="pre">HPC</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/HPC.html#HPC"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.HPC.HPC" title="Permalink to this definition">ïƒ</a></dt> -<dd><p>Bases: <a class="reference internal" href="condor.html#binarycpython.utils.population_extensions.condor.condor" title="binarycpython.utils.population_extensions.condor.condor"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.condor.condor</span></code></a>, <a class="reference internal" href="slurm.html#binarycpython.utils.population_extensions.slurm.slurm" title="binarycpython.utils.population_extensions.slurm.slurm"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.slurm.slurm</span></code></a></p> +<dd><p>Bases: <a class="reference internal" href="condor.html#binarycpython.utils.population_extensions.condor.condor" title="binarycpython.utils.population_extensions.condor.condor"><code class="xref py py-class docutils literal notranslate"><span class="pre">condor</span></code></a>, <a class="reference internal" href="slurm.html#binarycpython.utils.population_extensions.slurm.slurm" title="binarycpython.utils.population_extensions.slurm.slurm"><code class="xref py py-class docutils literal notranslate"><span class="pre">slurm</span></code></a></p> <p>Extension to the population grid object that contains functionality to handle handle the Moe & distefano distributions</p> <dl class="py method"> <dt class="sig sig-object py" id="binarycpython.utils.population_extensions.HPC.HPC.HPC_can_join"> @@ -374,9 +375,9 @@ and (if given) the string passed in.</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/Moe_di_Stefano_2017.html b/docs/build/html/population_extensions/Moe_di_Stefano_2017.html index d37b69167..149ef3e36 100644 --- a/docs/build/html/population_extensions/Moe_di_Stefano_2017.html +++ b/docs/build/html/population_extensions/Moe_di_Stefano_2017.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.Moe_di_Stefano_2017"> -<span id="population-class-extension-moe-di-stefano-2017-module"></span><h1>Population class extension: Moe_di_Stefano_2017 module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.Moe_di_Stefano_2017" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-moe-di-stefano-2017-module"></span><h1>Population class extension: Moe_di_Stefano_2017 module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.Moe_di_Stefano_2017" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing the functions to handle the Moe&Distrefano data</p> <p>This class object is an extension to the population grid object</p> <dl class="py class"> @@ -192,9 +193,9 @@ then set the distribution functions</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/analytics.html b/docs/build/html/population_extensions/analytics.html index f7664a723..1a0fa6f4d 100644 --- a/docs/build/html/population_extensions/analytics.html +++ b/docs/build/html/population_extensions/analytics.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.analytics"> -<span id="population-class-extension-analytics-module"></span><h1>Population class extension: analytics module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.analytics" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-analytics-module"></span><h1>Population class extension: analytics module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.analytics" title="Permalink to this heading">ïƒ</a></h1> <p>The class extension for the population object that contains analytics functionality</p> <dl class="py class"> <dt class="sig sig-object py" id="binarycpython.utils.population_extensions.analytics.analytics"> @@ -181,9 +182,9 @@ the time elapsed if otherwise or if force is True</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/cache.html b/docs/build/html/population_extensions/cache.html index 65b41b49e..6f3b0bf61 100644 --- a/docs/build/html/population_extensions/cache.html +++ b/docs/build/html/population_extensions/cache.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.cache"> -<span id="population-class-extension-cache-module"></span><h1>Population class extension: cache module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.cache" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-cache-module"></span><h1>Population class extension: cache module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.cache" title="Permalink to this heading">ïƒ</a></h1> <p>File containing the class extension for the population object that contains cache functionality</p> <p>Module containing (e.g. LRU) cache functionality for binary_c-python.</p> <p>We use cachetools when possible because this allows us to set up the @@ -138,7 +139,7 @@ Please see the LRU_* options in there.</p> <dl class="py class"> <dt class="sig sig-object py" id="binarycpython.utils.population_extensions.cache.cache.NullCache"> <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">NullCache</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/cache.html#cache.NullCache"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.cache.cache.NullCache" title="Permalink to this definition">ïƒ</a></dt> -<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">cachetools.Cache</span></code></p> +<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Cache</span></code></p> <p>A cachetools cache object that does as little as possible and never matches.</p> <dl class="py method"> <dt class="sig sig-object py" id="binarycpython.utils.population_extensions.cache.cache.NullCache.__delitem__"> @@ -215,9 +216,9 @@ given caches of size self.grid_options[‘function_cache_size’][func]</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/condor.html b/docs/build/html/population_extensions/condor.html index 908266942..73872ab04 100644 --- a/docs/build/html/population_extensions/condor.html +++ b/docs/build/html/population_extensions/condor.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.condor"> -<span id="population-class-extension-condor-module"></span><h1>Population class extension: condor module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.condor" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-condor-module"></span><h1>Population class extension: condor module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.condor" title="Permalink to this heading">ïƒ</a></h1> <p>The class extension for the population object that contains the Condor functionality</p> <p>TODO: there are many uses of $<variable name> in this file but this is not perl and we should replace them by actual format placeholders</p> <dl class="py class"> @@ -234,9 +235,9 @@ TODO: Comment this function better</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/dataIO.html b/docs/build/html/population_extensions/dataIO.html index 412aa2aff..5e625963f 100644 --- a/docs/build/html/population_extensions/dataIO.html +++ b/docs/build/html/population_extensions/dataIO.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.dataIO"> -<span id="population-class-extension-dataio-module"></span><h1>Population class extension: dataIO module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.dataIO" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-dataio-module"></span><h1>Population class extension: dataIO module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.dataIO" title="Permalink to this heading">ïƒ</a></h1> <p>File containing the class extension for the population object that contains data input-output (IO) functions</p> <dl class="py class"> <dt class="sig sig-object py" id="binarycpython.utils.population_extensions.dataIO.dataIO"> @@ -393,9 +394,9 @@ passed to json.dumps)</p></li> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/distribution_functions.html b/docs/build/html/population_extensions/distribution_functions.html index f1d6fcc16..2a08d81af 100644 --- a/docs/build/html/population_extensions/distribution_functions.html +++ b/docs/build/html/population_extensions/distribution_functions.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.distribution_functions"> -<span id="population-class-extension-distribution-functions-module"></span><h1>Population class extension: distribution_functions module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.distribution_functions" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-distribution-functions-module"></span><h1>Population class extension: distribution_functions module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.distribution_functions" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing the predefined distribution functions</p> <p>The user can use any of these distribution functions to generate probability distributions for sampling populations</p> @@ -340,7 +341,7 @@ TODO: fix description to be correct for python</p> <dd class="field-even"><p>returns 0</p> </dd> <dt class="field-odd">Return type</dt> -<dd class="field-odd"><p>returns the value of 1/(max_bound-min_bound) If val is provided, it will check whether min_bound < val <= max_bound. if not</p> +<dd class="field-odd"><p>returns the value of 1/(max_bound-min_bound). If val is provided, it will check whether min_bound < val <= max_bound. if not</p> </dd> </dl> </dd></dl> @@ -833,9 +834,9 @@ and is be given by dp/dlogP ~ (logP)^p for all other binary configurations (defa provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/grid_logging.html b/docs/build/html/population_extensions/grid_logging.html index 87fc47987..368d37c4a 100644 --- a/docs/build/html/population_extensions/grid_logging.html +++ b/docs/build/html/population_extensions/grid_logging.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.grid_logging"> -<span id="population-class-extension-grid-logging-module"></span><h1>Population class extension: grid_logging module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.grid_logging" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-grid-logging-module"></span><h1>Population class extension: grid_logging module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.grid_logging" title="Permalink to this heading">ïƒ</a></h1> <p>The class extension for the population object that contains logging functionality</p> <dl class="py class"> <dt class="sig sig-object py" id="binarycpython.utils.population_extensions.grid_logging.grid_logging"> @@ -179,9 +180,9 @@ system_number: the system number</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/grid_options_defaults.html b/docs/build/html/population_extensions/grid_options_defaults.html index 70b90c9d1..0ce8ebc57 100644 --- a/docs/build/html/population_extensions/grid_options_defaults.html +++ b/docs/build/html/population_extensions/grid_options_defaults.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.grid_options_defaults"> -<span id="population-class-extension-grid-options-defaults-module"></span><h1>Population class extension: grid_options_defaults module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.grid_options_defaults" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-grid-options-defaults-module"></span><h1>Population class extension: grid_options_defaults module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.grid_options_defaults" title="Permalink to this heading">ïƒ</a></h1> <dl class="simple"> <dt>Module that contains the default options for the population grid code along with the description for these options, in the form of dictionaries:</dt><dd><ul class="simple"> <li><p>grid_options_defaults_dict: dictionary containing the default values for all the options</p></li> @@ -242,9 +243,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/gridcode.html b/docs/build/html/population_extensions/gridcode.html index 848265f27..843b91740 100644 --- a/docs/build/html/population_extensions/gridcode.html +++ b/docs/build/html/population_extensions/gridcode.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.gridcode"> -<span id="population-class-extension-gridcode-module"></span><h1>Population class extension: gridcode module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.gridcode" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-gridcode-module"></span><h1>Population class extension: gridcode module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.gridcode" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing the gridcode generation functions for the binarycpython package.</p> <p>This class object is an extension to the population grid object</p> <dl class="py class"> @@ -298,9 +299,9 @@ of the self.grid_options[“_grid_variablesâ€] dictionary.</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/metadata.html b/docs/build/html/population_extensions/metadata.html index ce11c6cd3..1ca5312d6 100644 --- a/docs/build/html/population_extensions/metadata.html +++ b/docs/build/html/population_extensions/metadata.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.metadata"> -<span id="population-class-extension-metadata-module"></span><h1>Population class extension: metadata module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.metadata" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-metadata-module"></span><h1>Population class extension: metadata module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.metadata" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing the metadata functions for the binarycpython package.</p> <p>This class object is an extension to the population grid object</p> <dl class="py class"> @@ -167,9 +168,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/slurm.html b/docs/build/html/population_extensions/slurm.html index 2fca66f7e..65a436b2d 100644 --- a/docs/build/html/population_extensions/slurm.html +++ b/docs/build/html/population_extensions/slurm.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.slurm"> -<span id="population-class-extension-slurm-module"></span><h1>Population class extension: slurm module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.slurm" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-slurm-module"></span><h1>Population class extension: slurm module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.slurm" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing the Slurm functions for the binarycpython package.</p> <p>This class object is an extension to the population grid object</p> <dl class="py class"> @@ -235,9 +236,9 @@ TODO: Comment this function better</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/spacing_functions.html b/docs/build/html/population_extensions/spacing_functions.html index 186fcce7c..7f33a16dc 100644 --- a/docs/build/html/population_extensions/spacing_functions.html +++ b/docs/build/html/population_extensions/spacing_functions.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.spacing_functions"> -<span id="population-class-extension-spacing-functions-module"></span><h1>Population class extension: spacing_functions module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.spacing_functions" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-spacing-functions-module"></span><h1>Population class extension: spacing_functions module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.spacing_functions" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing the spacing functions for the binarycpython package. Very under-populated at the moment, but more are likely to come soon</p> <p>This class object is an extension to the population grid object</p> <dl class="simple"> @@ -322,9 +323,9 @@ not that the integral is 1.0</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/population_extensions/version_info.html b/docs/build/html/population_extensions/version_info.html index a9bc813c4..82fab3d95 100644 --- a/docs/build/html/population_extensions/version_info.html +++ b/docs/build/html/population_extensions/version_info.html @@ -14,6 +14,7 @@ <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="../_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.population_extensions.version_info"> -<span id="population-class-extension-version-info-module"></span><h1>Population class extension: version_info module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.version_info" title="Permalink to this headline">ïƒ</a></h1> +<span id="population-class-extension-version-info-module"></span><h1>Population class extension: version_info module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.version_info" title="Permalink to this heading">ïƒ</a></h1> <p>File containing the class object containing the functions to handle binary_c version info.</p> <p>This class will be used to extend the population object</p> <p>NOTE: could these functions not just be normal functions rather than class methods? I see hardly any use of the self</p> @@ -199,9 +200,9 @@ dictionary</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/py-modindex.html b/docs/build/html/py-modindex.html index f194b6c66..bcd57d756 100644 --- a/docs/build/html/py-modindex.html +++ b/docs/build/html/py-modindex.html @@ -13,6 +13,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -222,9 +223,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/readme_link.html b/docs/build/html/readme_link.html index 435d699be..7465f5537 100644 --- a/docs/build/html/readme_link.html +++ b/docs/build/html/readme_link.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -41,9 +42,10 @@ <p class="caption" role="heading"><span class="caption-text">Contents:</span></p> <ul class="current"> <li class="toctree-l1 current"><a class="current reference internal" href="#">Python module for binary_c</a><ul> -<li class="toctree-l2"><a class="reference internal" href="#requirements">Requirements</a></li> -<li class="toctree-l2"><a class="reference internal" href="#environment-variables">Environment variables</a></li> -<li class="toctree-l2"><a class="reference internal" href="#build-instructions">Build instructions</a><ul> +<li class="toctree-l2"><a class="reference internal" href="#installation">Installation</a><ul> +<li class="toctree-l3"><a class="reference internal" href="#python-requirements">Python requirements</a></li> +<li class="toctree-l3"><a class="reference internal" href="#environment-variables">Environment variables</a></li> +<li class="toctree-l3"><a class="reference internal" href="#build-instructions">Build instructions</a></li> <li class="toctree-l3"><a class="reference internal" href="#installation-via-pip">Installation via PIP:</a></li> <li class="toctree-l3"><a class="reference internal" href="#installation-from-source">Installation from source:</a><ul> <li class="toctree-l4"><a class="reference internal" href="#after-installation">After installation</a></li> @@ -51,10 +53,17 @@ </li> </ul> </li> -<li class="toctree-l2"><a class="reference internal" href="#examples">Examples</a></li> -<li class="toctree-l2"><a class="reference internal" href="#usage-notes">Usage notes</a></li> -<li class="toctree-l2"><a class="reference internal" href="#documentation">Documentation</a></li> -<li class="toctree-l2"><a class="reference internal" href="#development">Development:</a></li> +<li class="toctree-l2"><a class="reference internal" href="#usage">Usage</a><ul> +<li class="toctree-l3"><a class="reference internal" href="#examples">Examples</a></li> +<li class="toctree-l3"><a class="reference internal" href="#usage-notes">Usage notes</a></li> +<li class="toctree-l3"><a class="reference internal" href="#documentation">Documentation</a></li> +</ul> +</li> +<li class="toctree-l2"><a class="reference internal" href="#development">Development:</a><ul> +<li class="toctree-l3"><a class="reference internal" href="#building-documentation">Building documentation</a></li> +<li class="toctree-l3"><a class="reference internal" href="#running-unit-tests">Running unit tests</a></li> +</ul> +</li> <li class="toctree-l2"><a class="reference internal" href="#faq-issues">FAQ/Issues:</a></li> </ul> </li> @@ -115,34 +124,29 @@ } </style> <section id="python-module-for-binary-c"> -<h1>Python module for binary_c<a class="headerlink" href="#python-module-for-binary-c" title="Permalink to this headline">ïƒ</a></h1> +<h1>Python module for binary_c<a class="headerlink" href="#python-module-for-binary-c" title="Permalink to this heading">ïƒ</a></h1> <p>Docstring coverage:</p> <a class="reference external image-reference" href="./badges/docstring_coverage.svg"><img alt="docstring coverage" src="_images/docstring_coverage.svg" /></a> <p>Test coverage:</p> <a class="reference external image-reference" href="./badges/test_coverage.svg"><img alt="test coverage" src="_images/test_coverage.svg" /></a> +<p>Powered by:</p> +<a class="reference external image-reference" href="http://www.astropy.org/"><img alt="" src="http://www.astropy.org/" /></a> <p>Binary population synthesis code that interfaces with binary_c. Based on a original work by Jeff Andrews. Updated and extended for Python3 by David Hendriks, Robert Izzard.</p> <p>The current release is version <a class="reference external" href="VERSION">version</a>, make sure to use that version number when installing!</p> -<section id="requirements"> -<h2>Requirements<a class="headerlink" href="#requirements" title="Permalink to this headline">ïƒ</a></h2> +<section id="installation"> +<h2>Installation<a class="headerlink" href="#installation" title="Permalink to this heading">ïƒ</a></h2> +<p>To install binary_c-python we need to make sure we meet the requirements of installation, and</p> +<section id="python-requirements"> +<h3>Python requirements<a class="headerlink" href="#python-requirements" title="Permalink to this heading">ïƒ</a></h3> <p>To run this code you need to at least have installations of:</p> <ul class="simple"> -<li><p>Python 3.6 or higher</p></li> -<li><p>binary_c version 2.1.7 or higher</p></li> -</ul> -<p>And the following python packages (which will get installed automatically when installing with pip):</p> -<ul class="simple"> -<li><p>numpy</p></li> -<li><p>pytest</p></li> -<li><p>h5py</p></li> -<li><p>pathos</p></li> -<li><p>pandas</p></li> -<li><p>astropy</p></li> -<li><p>matplotlib</p></li> -<li><p>py_rinterpolate</p></li> +<li><p>Python 3.7 or higher (3.6 is EOL, and we are using 3.9 for development)</p></li> +<li><p>binary_c version 2.2.0 or higher</p></li> </ul> +<p>The packages that are required for this code to run are listed in the requirements.txt, which automatically gets read out by setup.py</p> </section> <section id="environment-variables"> -<h2>Environment variables<a class="headerlink" href="#environment-variables" title="Permalink to this headline">ïƒ</a></h2> +<h3>Environment variables<a class="headerlink" href="#environment-variables" title="Permalink to this heading">ïƒ</a></h3> <p>Before compilation you need to have certain environment variables:</p> <p>Required:</p> <ul class="simple"> @@ -153,55 +157,77 @@ </ul> </section> <section id="build-instructions"> -<h2>Build instructions<a class="headerlink" href="#build-instructions" title="Permalink to this headline">ïƒ</a></h2> +<h3>Build instructions<a class="headerlink" href="#build-instructions" title="Permalink to this heading">ïƒ</a></h3> <p>First, make sure you have built binary_c (See <code class="docutils literal notranslate"><span class="pre">$BINARY_C/doc/binary_c2.pdf</span></code> section: installation for all the installation instructions for <code class="docutils literal notranslate"><span class="pre">binary_c</span></code>)) and that it functions correctly.</p> +</section> <section id="installation-via-pip"> -<h3>Installation via PIP:<a class="headerlink" href="#installation-via-pip" title="Permalink to this headline">ïƒ</a></h3> +<h3>Installation via PIP:<a class="headerlink" href="#installation-via-pip" title="Permalink to this heading">ïƒ</a></h3> <p>To install this package via pip:</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">pip</span> <span class="n">install</span> <span class="n">binarycpython</span> </pre></div> </div> -<p>This will install the latest stable installation that is available on pip.</p> +<p>This will install the latest stable installation that is available on Pip. The version on the master branch should be the same version as the latest stable version on Pip</p> </section> <section id="installation-from-source"> -<h3>Installation from source:<a class="headerlink" href="#installation-from-source" title="Permalink to this headline">ïƒ</a></h3> -<p>We can also install the package from source, which is useful for development versions and when you want to modify the code. It is recommended that you install this into a virtual environment. From within the root directory, run</p> +<h3>Installation from source:<a class="headerlink" href="#installation-from-source" title="Permalink to this heading">ïƒ</a></h3> +<p>We can also install the package from source, which is useful for development versions and when you want to modify the code. It is recommended that you install this into a virtual environment. From within the <code class="docutils literal notranslate"><span class="pre">commands/</span></code> directory, run</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">install</span><span class="o">.</span><span class="n">sh</span> </pre></div> </div> -<p>This will install the package, along with all the dependencies.</p> +<p>This will install the package, along with all the dependencies, into the current active (virtual) python environment.</p> <p>If this is not the first time you install the package, but rather rebuild it because you made changes in either binary_c or binarycpython, you can run</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">install_without_dependencies</span><span class="o">.</span><span class="n">sh</span> </pre></div> </div> <p>to reinstall just binarycpython.</p> <section id="after-installation"> -<h4>After installation<a class="headerlink" href="#after-installation" title="Permalink to this headline">ïƒ</a></h4> +<h4>After installation<a class="headerlink" href="#after-installation" title="Permalink to this heading">ïƒ</a></h4> <p>After installing the code via source it is useful to run the test suite before doing any programming with it. The test suite is stored in <code class="docutils literal notranslate"><span class="pre">binarycpython/tests</span></code> and running <code class="docutils literal notranslate"><span class="pre">python</span> <span class="pre">main.py</span></code> in there will run all the tests.</p> </section> </section> </section> +<section id="usage"> +<h2>Usage<a class="headerlink" href="#usage" title="Permalink to this heading">ïƒ</a></h2> <section id="examples"> -<h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">ïƒ</a></h2> +<h3>Examples<a class="headerlink" href="#examples" title="Permalink to this heading">ïƒ</a></h3> <p>See the examples/ directory for example scripts and notebooks. The documentation contains example pages as well.</p> </section> <section id="usage-notes"> -<h2>Usage notes<a class="headerlink" href="#usage-notes" title="Permalink to this headline">ïƒ</a></h2> +<h3>Usage notes<a class="headerlink" href="#usage-notes" title="Permalink to this heading">ïƒ</a></h3> <p>Make sure that with every change/recompilation you make in <code class="docutils literal notranslate"><span class="pre">binary_c</span></code>, you also rebuild this package. Whenever you change the sourcecode of this package, you need to reinstall it into your virtualenvironment as well</p> </section> <section id="documentation"> -<h2>Documentation<a class="headerlink" href="#documentation" title="Permalink to this headline">ïƒ</a></h2> +<h3>Documentation<a class="headerlink" href="#documentation" title="Permalink to this heading">ïƒ</a></h3> <p>Look in the docs/ directory. Within the build/html/ there is the html version of the documentation. The</p> </section> +</section> <section id="development"> -<h2>Development:<a class="headerlink" href="#development" title="Permalink to this headline">ïƒ</a></h2> +<h2>Development:<a class="headerlink" href="#development" title="Permalink to this heading">ïƒ</a></h2> <p>If you want to contribute to the code, then it is recommended that you install the packages in <code class="docutils literal notranslate"><span class="pre">development_requirements.txt</span></code>:</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">pip</span> <span class="n">install</span> <span class="o">-</span><span class="n">r</span> <span class="n">development_requirements</span><span class="o">.</span><span class="n">txt</span> </pre></div> </div> +<p>Please do not hesitate to contact us to discuss any developments.</p> +<section id="building-documentation"> +<h3>Building documentation<a class="headerlink" href="#building-documentation" title="Permalink to this heading">ïƒ</a></h3> +<p>To build the documentation manually, run</p> +<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">generate_docs</span><span class="o">.</span><span class="n">sh</span> +</pre></div> +</div> +<p>from within the <code class="docutils literal notranslate"><span class="pre">commands/</span></code> directory</p> +</section> +<section id="running-unit-tests"> +<h3>Running unit tests<a class="headerlink" href="#running-unit-tests" title="Permalink to this heading">ïƒ</a></h3> +<p>To generate the unit test and docstring coverage report, run</p> +<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">generate_reports</span><span class="o">.</span><span class="n">sh</span> +</pre></div> +</div> +<p>from within the <code class="docutils literal notranslate"><span class="pre">commands/</span></code> directory</p> +</section> </section> <section id="faq-issues"> -<h2>FAQ/Issues:<a class="headerlink" href="#faq-issues" title="Permalink to this headline">ïƒ</a></h2> +<h2>FAQ/Issues:<a class="headerlink" href="#faq-issues" title="Permalink to this heading">ïƒ</a></h2> +<p>Here we provide a non-exhaustive list of some issues we encountered and solutions for these:</p> <p>Building issues with binary_c itself:</p> <ul class="simple"> <li><p>see the documentation of binary_c (in doc/).</p></li> @@ -241,9 +267,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/run_system_wrapper.html b/docs/build/html/run_system_wrapper.html index 3aacb64f0..191f406e2 100644 --- a/docs/build/html/run_system_wrapper.html +++ b/docs/build/html/run_system_wrapper.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.run_system_wrapper"> -<span id="run-system-wrapper-module"></span><h1>run_system_wrapper module<a class="headerlink" href="#module-binarycpython.utils.run_system_wrapper" title="Permalink to this headline">ïƒ</a></h1> +<span id="run-system-wrapper-module"></span><h1>run_system_wrapper module<a class="headerlink" href="#module-binarycpython.utils.run_system_wrapper" title="Permalink to this heading">ïƒ</a></h1> <p>Module containing the utility function run_system, which handles a lot of things by analysing the passed kwargs</p> <dl class="py function"> @@ -193,9 +194,9 @@ and returns what the parse_function returns</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/search.html b/docs/build/html/search.html index e478c8d05..72c37cfa0 100644 --- a/docs/build/html/search.html +++ b/docs/build/html/search.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -100,9 +101,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js index f18524f46..439a3710d 100644 --- a/docs/build/html/searchindex.js +++ b/docs/build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["binary_c_parameters","custom_logging_functions","dicts","ensemble","example_notebooks","examples/notebook_BHBH","examples/notebook_HRD","examples/notebook_api_functionality","examples/notebook_common_envelope_evolution","examples/notebook_custom_logging","examples/notebook_ensembles","examples/notebook_extra_features","examples/notebook_individual_systems","examples/notebook_luminosity_function_binaries","examples/notebook_luminosity_function_single","examples/notebook_massive_remnants","examples/notebook_population","examples/notebook_solar_system","examples/old/basic_example","examples/old/workshop_example_notebook","functions","grid","grid_options_descriptions","index","modules","plot_functions","population_extensions/HPC","population_extensions/Moe_di_Stefano_2017","population_extensions/analytics","population_extensions/cache","population_extensions/condor","population_extensions/dataIO","population_extensions/distribution_functions","population_extensions/grid_logging","population_extensions/grid_options_defaults","population_extensions/gridcode","population_extensions/metadata","population_extensions/slurm","population_extensions/spacing_functions","population_extensions/version_info","readme_link","run_system_wrapper","stellar_types","useful_funcs"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1,nbsphinx:3,sphinx:56},filenames:["binary_c_parameters.rst","custom_logging_functions.rst","dicts.rst","ensemble.rst","example_notebooks.rst","examples/notebook_BHBH.ipynb","examples/notebook_HRD.ipynb","examples/notebook_api_functionality.ipynb","examples/notebook_common_envelope_evolution.ipynb","examples/notebook_custom_logging.ipynb","examples/notebook_ensembles.ipynb","examples/notebook_extra_features.ipynb","examples/notebook_individual_systems.ipynb","examples/notebook_luminosity_function_binaries.ipynb","examples/notebook_luminosity_function_single.ipynb","examples/notebook_massive_remnants.ipynb","examples/notebook_population.ipynb","examples/notebook_solar_system.ipynb","examples/old/basic_example.ipynb","examples/old/workshop_example_notebook.ipynb","functions.rst","grid.rst","grid_options_descriptions.rst","index.rst","modules.rst","plot_functions.rst","population_extensions/HPC.rst","population_extensions/Moe_di_Stefano_2017.rst","population_extensions/analytics.rst","population_extensions/cache.rst","population_extensions/condor.rst","population_extensions/dataIO.rst","population_extensions/distribution_functions.rst","population_extensions/grid_logging.rst","population_extensions/grid_options_defaults.rst","population_extensions/gridcode.rst","population_extensions/metadata.rst","population_extensions/slurm.rst","population_extensions/spacing_functions.rst","population_extensions/version_info.rst","readme_link.rst","run_system_wrapper.rst","stellar_types.rst","useful_funcs.rst"],objects:{"binarycpython.utils":[[1,0,0,"-","custom_logging_functions"],[2,0,0,"-","dicts"],[3,0,0,"-","ensemble"],[20,0,0,"-","functions"],[21,0,0,"-","grid"],[25,0,0,"-","plot_functions"],[41,0,0,"-","run_system_wrapper"],[42,0,0,"-","stellar_types"],[43,0,0,"-","useful_funcs"]],"binarycpython.utils.custom_logging_functions":[[1,1,1,"","autogen_C_logging_code"],[1,1,1,"","binary_c_log_code"],[1,1,1,"","binary_c_write_log_code"],[1,1,1,"","compile_shared_lib"],[1,1,1,"","create_and_load_logging_function"],[1,1,1,"","from_binary_c_config"],[1,1,1,"","return_compilation_dict"]],"binarycpython.utils.dicts":[[2,2,1,"","AutoVivificationDict"],[2,1,1,"","count_keys_recursive"],[2,1,1,"","custom_sort_dict"],[2,1,1,"","filter_dict"],[2,1,1,"","filter_dict_through_values"],[2,1,1,"","inspect_dict"],[2,1,1,"","keys_to_floats"],[2,1,1,"","merge_dicts"],[2,1,1,"","multiply_float_values"],[2,1,1,"","multiply_values_dict"],[2,1,1,"","normalize_dict"],[2,1,1,"","prepare_dict"],[2,1,1,"","recursive_change_key_to_float"],[2,1,1,"","recursive_change_key_to_string"],[2,1,1,"","set_opts"],[2,1,1,"","subtract_dicts"],[2,1,1,"","update_dicts"]],"binarycpython.utils.dicts.AutoVivificationDict":[[2,3,1,"","__getitem__"],[2,3,1,"","__iadd__"]],"binarycpython.utils.ensemble":[[3,2,1,"","BinarycDecoder"],[3,2,1,"","BinarycEncoder"],[3,1,1,"","binaryc_json_serializer"],[3,1,1,"","ensemble_compression"],[3,1,1,"","ensemble_file_type"],[3,1,1,"","ensemble_setting"],[3,1,1,"","extract_ensemble_json_from_string"],[3,1,1,"","format_ensemble_results"],[3,1,1,"","handle_ensemble_string_to_json"],[3,1,1,"","load_ensemble"],[3,1,1,"","open_ensemble"]],"binarycpython.utils.ensemble.BinarycDecoder":[[3,3,1,"","decode"]],"binarycpython.utils.ensemble.BinarycEncoder":[[3,3,1,"","default"]],"binarycpython.utils.functions":[[20,2,1,"","Capturing"],[20,1,1,"","bin_data"],[20,1,1,"","call_binary_c_config"],[20,2,1,"","catchtime"],[20,1,1,"","check_if_in_shell"],[20,1,1,"","command_string_from_list"],[20,1,1,"","conv_time_units"],[20,1,1,"","convert_bytes"],[20,1,1,"","convfloat"],[20,1,1,"","create_arg_string"],[20,1,1,"","create_hdf5"],[20,1,1,"","datalinedict"],[20,1,1,"","example_parse_output"],[20,1,1,"","filter_arg_dict"],[20,1,1,"","format_number"],[20,1,1,"","get_ANSI_colours"],[20,1,1,"","get_arg_keys"],[20,1,1,"","get_defaults"],[20,1,1,"","get_help"],[20,1,1,"","get_help_all"],[20,1,1,"","get_help_super"],[20,1,1,"","get_size"],[20,1,1,"","get_username"],[20,1,1,"","imports"],[20,1,1,"","is_capsule"],[20,1,1,"","isfloat"],[20,1,1,"","isint"],[20,1,1,"","load_logfile"],[20,1,1,"","make_build_text"],[20,1,1,"","mem_use"],[20,1,1,"","now"],[20,1,1,"","output_lines"],[20,1,1,"","pad_output_distribution"],[20,1,1,"","quotewrap"],[20,1,1,"","remove_file"],[20,1,1,"","temp_dir"],[20,1,1,"","timedelta"],[20,1,1,"","trem"],[20,1,1,"","verbose_print"],[20,1,1,"","write_binary_c_parameter_descriptions_to_rst_file"]],"binarycpython.utils.functions.Capturing":[[20,3,1,"","__enter__"],[20,3,1,"","__exit__"]],"binarycpython.utils.functions.catchtime":[[20,3,1,"","__enter__"],[20,3,1,"","__exit__"]],"binarycpython.utils.grid":[[21,2,1,"","Population"]],"binarycpython.utils.grid.Population":[[21,3,1,"","clean"],[21,3,1,"","evolve"],[21,3,1,"","evolve_single"],[21,3,1,"","exit"],[21,3,1,"","export_all_info"],[21,3,1,"","jobID"],[21,3,1,"","parse_cmdline"],[21,3,1,"","return_all_info"],[21,3,1,"","return_binary_c_defaults"],[21,3,1,"","return_population_settings"],[21,3,1,"","set"],[21,3,1,"","was_killed"]],"binarycpython.utils.plot_functions":[[25,1,1,"","color_by_index"],[25,1,1,"","dummy"],[25,1,1,"","parse_function_hr_diagram"],[25,1,1,"","parse_function_masses"],[25,1,1,"","parse_function_orbit"],[25,1,1,"","plot_HR_diagram"],[25,1,1,"","plot_masses"],[25,1,1,"","plot_orbit"],[25,1,1,"","plot_system"]],"binarycpython.utils.population_extensions":[[26,0,0,"-","HPC"],[27,0,0,"-","Moe_di_Stefano_2017"],[28,0,0,"-","analytics"],[29,0,0,"-","cache"],[30,0,0,"-","condor"],[31,0,0,"-","dataIO"],[32,0,0,"-","distribution_functions"],[33,0,0,"-","grid_logging"],[34,0,0,"-","grid_options_defaults"],[35,0,0,"-","gridcode"],[36,0,0,"-","metadata"],[37,0,0,"-","slurm"],[38,0,0,"-","spacing_functions"],[39,0,0,"-","version_info"]],"binarycpython.utils.population_extensions.HPC":[[26,2,1,"","HPC"]],"binarycpython.utils.population_extensions.HPC.HPC":[[26,3,1,"","HPC_can_join"],[26,3,1,"","HPC_check_requirements"],[26,3,1,"","HPC_dir"],[26,3,1,"","HPC_dirs"],[26,3,1,"","HPC_dump_status"],[26,3,1,"","HPC_get_status"],[26,3,1,"","HPC_grid"],[26,3,1,"","HPC_id_filename"],[26,3,1,"","HPC_id_from_dir"],[26,3,1,"","HPC_job"],[26,3,1,"","HPC_jobID"],[26,3,1,"","HPC_jobID_tuple"],[26,3,1,"","HPC_job_id_range"],[26,3,1,"","HPC_job_task"],[26,3,1,"","HPC_job_type"],[26,3,1,"","HPC_join_from_files"],[26,3,1,"","HPC_join_previous"],[26,3,1,"","HPC_joinlist"],[26,3,1,"","HPC_load_joinfiles_list"],[26,3,1,"","HPC_make_joiningfile"],[26,3,1,"","HPC_njobs"],[26,3,1,"","HPC_path"],[26,3,1,"","HPC_queue_stats"],[26,3,1,"","HPC_restore"],[26,3,1,"","HPC_set_status"],[26,3,1,"","HPC_snapshot_filename"],[26,3,1,"","HPC_status"],[26,3,1,"","HPC_touch"]],"binarycpython.utils.population_extensions.Moe_di_Stefano_2017":[[27,2,1,"","Moe_di_Stefano_2017"]],"binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017":[[27,3,1,"","Moe_di_Stefano_2017"],[27,3,1,"","get_Moe_di_Stefano_2017_default_options"],[27,3,1,"","get_Moe_di_Stefano_2017_default_options_description"],[27,3,1,"","get_moe_di_stefano_dataset"],[27,3,1,"","set_moe_di_stefano_settings"]],"binarycpython.utils.population_extensions.analytics":[[28,2,1,"","analytics"]],"binarycpython.utils.population_extensions.analytics.analytics":[[28,3,1,"","CPU_time"],[28,3,1,"","make_analytics_dict"],[28,3,1,"","set_time"],[28,3,1,"","time_elapsed"]],"binarycpython.utils.population_extensions.cache":[[29,2,1,"","cache"]],"binarycpython.utils.population_extensions.cache.cache":[[29,2,1,"","NullCache"],[29,3,1,"","default_cache_dir"],[29,3,1,"","setup_function_cache"],[29,3,1,"","test_caches"]],"binarycpython.utils.population_extensions.cache.cache.NullCache":[[29,3,1,"","__delitem__"],[29,3,1,"","__getitem__"],[29,3,1,"","__setitem__"],[29,3,1,"","popitem"]],"binarycpython.utils.population_extensions.condor":[[30,2,1,"","condor"]],"binarycpython.utils.population_extensions.condor.condor":[[30,3,1,"","condorID"],[30,3,1,"","condor_check_requirements"],[30,3,1,"","condor_dirs"],[30,3,1,"","condor_grid"],[30,3,1,"","condor_outfile"],[30,3,1,"","condor_queue_stats"],[30,3,1,"","condor_status_file"],[30,3,1,"","condorpath"],[30,3,1,"","get_condor_status"],[30,3,1,"","make_condor_dirs"],[30,3,1,"","set_condor_status"]],"binarycpython.utils.population_extensions.dataIO":[[31,2,1,"","dataIO"]],"binarycpython.utils.population_extensions.dataIO.dataIO":[[31,3,1,"","NFS_flush_hack"],[31,3,1,"","NFSpath"],[31,3,1,"","compression_type"],[31,3,1,"","dir_ok"],[31,3,1,"","load_population_object"],[31,3,1,"","load_snapshot"],[31,3,1,"","locked_close"],[31,3,1,"","locked_open_for_write"],[31,3,1,"","merge_populations"],[31,3,1,"","merge_populations_from_file"],[31,3,1,"","open"],[31,3,1,"","save_population_object"],[31,3,1,"","save_snapshot"],[31,3,1,"","set_status"],[31,3,1,"","snapshot_filename"],[31,3,1,"","wait_for_unlock"],[31,3,1,"","write_binary_c_calls_to_file"],[31,3,1,"","write_ensemble"]],"binarycpython.utils.population_extensions.distribution_functions":[[32,2,1,"","distribution_functions"]],"binarycpython.utils.population_extensions.distribution_functions.distribution_functions":[[32,3,1,"","Arenou2010_binary_fraction"],[32,3,1,"","Izzard2012_period_distribution"],[32,3,1,"","Kroupa2001"],[32,3,1,"","Moe_di_Stefano_2017_multiplicity_fractions"],[32,3,1,"","Moe_di_Stefano_2017_pdf"],[32,3,1,"","build_q_table"],[32,3,1,"","calc_P_integral"],[32,3,1,"","calc_e_integral"],[32,3,1,"","calc_total_probdens"],[32,3,1,"","calculate_constants_three_part_powerlaw"],[32,3,1,"","const_distribution"],[32,3,1,"","cosmic_SFH_madau_dickinson2014"],[32,3,1,"","duquennoy1991"],[32,3,1,"","fill_data"],[32,3,1,"","flat"],[32,3,1,"","flatsections"],[32,3,1,"","gaussian"],[32,3,1,"","gaussian_func"],[32,3,1,"","gaussian_normalizing_const"],[32,3,1,"","get_integration_constant_q"],[32,3,1,"","get_max_multiplicity"],[32,3,1,"","imf_chabrier2003"],[32,3,1,"","imf_scalo1986"],[32,3,1,"","imf_scalo1998"],[32,3,1,"","imf_tinsley1980"],[32,3,1,"","interpolate_in_mass_izzard2012"],[32,3,1,"","ktg93"],[32,3,1,"","linear_extrapolation_q"],[32,3,1,"","merge_multiplicities"],[32,3,1,"","number"],[32,3,1,"","poisson"],[32,3,1,"","powerlaw"],[32,3,1,"","powerlaw_constant"],[32,3,1,"","powerlaw_constant_nocache"],[32,3,1,"","powerlaw_extrapolation_q"],[32,3,1,"","raghavan2010_binary_fraction"],[32,3,1,"","sana12"],[32,3,1,"","three_part_powerlaw"]],"binarycpython.utils.population_extensions.grid_logging":[[33,2,1,"","grid_logging"]],"binarycpython.utils.population_extensions.grid_logging.grid_logging":[[33,3,1,"","vb1print"],[33,3,1,"","vb2print"],[33,3,1,"","verbose_print"]],"binarycpython.utils.population_extensions.grid_options_defaults":[[34,2,1,"","grid_options_defaults"]],"binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults":[[34,3,1,"","default_cache_dir"],[34,3,1,"","get_grid_options_defaults_dict"],[34,3,1,"","get_grid_options_descriptions"],[34,3,1,"","grid_options_description_checker"],[34,3,1,"","grid_options_help"],[34,3,1,"","print_option_descriptions"],[34,3,1,"","write_grid_options_to_rst_file"]],"binarycpython.utils.population_extensions.gridcode":[[35,2,1,"","gridcode"]],"binarycpython.utils.population_extensions.gridcode.gridcode":[[35,3,1,"","add_grid_variable"],[35,3,1,"","delete_grid_variable"],[35,3,1,"","rename_grid_variable"],[35,3,1,"","update_grid_variable"]],"binarycpython.utils.population_extensions.metadata":[[36,2,1,"","metadata"]],"binarycpython.utils.population_extensions.metadata.metadata":[[36,3,1,"","add_ensemble_metadata"],[36,3,1,"","add_system_metadata"]],"binarycpython.utils.population_extensions.slurm":[[37,2,1,"","slurm"]],"binarycpython.utils.population_extensions.slurm.slurm":[[37,3,1,"","get_slurm_status"],[37,3,1,"","make_slurm_dirs"],[37,3,1,"","set_slurm_status"],[37,3,1,"","slurmID"],[37,3,1,"","slurm_check_requirements"],[37,3,1,"","slurm_dirs"],[37,3,1,"","slurm_grid"],[37,3,1,"","slurm_outfile"],[37,3,1,"","slurm_queue_stats"],[37,3,1,"","slurm_status_file"],[37,3,1,"","slurmpath"]],"binarycpython.utils.population_extensions.spacing_functions":[[38,2,1,"","spacing_functions"]],"binarycpython.utils.population_extensions.spacing_functions.spacing_functions":[[38,3,1,"","const_dt"],[38,3,1,"","const_int"],[38,3,1,"","const_linear"],[38,3,1,"","const_ranges"],[38,3,1,"","gaussian_zoom"],[38,3,1,"","peak_normalized_gaussian_func"]],"binarycpython.utils.population_extensions.version_info":[[39,2,1,"","version_info"]],"binarycpython.utils.population_extensions.version_info.version_info":[[39,3,1,"","minimum_stellar_mass"],[39,3,1,"","parse_binary_c_version_info"],[39,3,1,"","return_binary_c_version_info"]],"binarycpython.utils.run_system_wrapper":[[41,1,1,"","run_system"]],"binarycpython.utils.useful_funcs":[[43,1,1,"","calc_period_from_sep"],[43,1,1,"","calc_sep_from_period"],[43,1,1,"","maximum_mass_ratio_for_RLOF"],[43,1,1,"","minimum_period_for_RLOF"],[43,1,1,"","minimum_separation_for_RLOF"],[43,1,1,"","ragb"],[43,1,1,"","roche_lobe"],[43,1,1,"","rzams"],[43,1,1,"","zams_collision"]]},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method"},terms:{"0":[0,1,2,5,6,7,8,9,11,12,13,14,15,16,17,18,19,20,22,26,27,29,32,35,38,43],"00":[5,12,13,16,19],"000":[5,12,19],"0000":[5,12,19],"00000":19,"000000":19,"000000000000e":12,"000000e":19,"000001":12,"000002":12,"000003":12,"0001":[5,7,43],"000100925":16,"00013561":16,"000182216":16,"000193036":16,"000244839":16,"000328983":16,"000339963":16,"000442046":16,"000593966":16,"0007":32,"000798096":16,"001":[0,5],"00107238":16,"0013":5,"00144093":16,"00182":5,"00193614":16,"002":[5,18,19],"0021272":5,"00215604":5,"00235329":5,"00237669":5,"00239838":5,"00242158":5,"00247821":5,"00247864":5,"00248439":5,"00254115":5,"00254512":5,"00256681":5,"00261516":5,"00268237":5,"00280816":5,"00283345":5,"00286793":5,"00288661":5,"00294":5,"00296406":5,"003":5,"00300971":5,"00303761":5,"00311757":5,"00317508":5,"00319483":5,"0034":5,"004":5,"004696962123378559":16,"005":5,"00518983":5,"0055":5,"00585495":5,"006":5,"006311182276049824":16,"00632092":7,"00666382":5,"007":[5,17],"00707417":5,"00712":5,"00730797":5,"0074":5,"008":5,"0081514":5,"00832":5,"008480166685456411":16,"0087":5,"009":[5,17],"00984861":5,"00e":13,"01":[0,5,6,8,9,13,16,19],"010":5,"0102":5,"011":5,"011394572976608001":16,"0118":5,"012":5,"0122109":5,"0128":5,"013":5,"0131145":5,"014":5,"0141":7,"0143651":5,"0143896":8,"014832":5,"015":5,"0152545":5,"0153961":5,"0155":5,"0156":5,"01561":5,"0156945":5,"0159":5,"016":5,"0162":5,"016309":8,"0163656":8,"0164":5,"0165":5,"0166":5,"0168":5,"0169":5,"017":[5,17],"0171":5,"0175264":8,"0176575":6,"01791":5,"018":5,"0182":5,"0184":5,"0187":5,"019":5,"0192009":5,"019715467199999996":8,"01e":13,"01t09":[6,8,13],"01t10":13,"02":[0,5,6,7,8,9,12,13,16,17,19,32,43],"020":5,"0208":5,"021":5,"0211592":16,"0214":5,"0214824":5,"022":5,"023":5,"0232618":5,"02379":5,"024":5,"0241634":5,"0245":5,"024684":5,"02473":5,"025":5,"0250231":5,"0251003":5,"0259932":5,"026":5,"0261496":5,"027":5,"0276":5,"02786":5,"0278672":5,"028":5,"02823":5,"0283541":5,"029":5,"0290733":5,"0295":5,"0298011":5,"0298364":5,"02e":[8,13],"03":[0,1,5,7,8,13],"030":5,"0303129":5,"031":5,"0316266":5,"0319":5,"032":5,"03221":5,"033":5,"0335":5,"0335017":5,"034":5,"03493":5,"03499999999999":15,"035":5,"03502960360000004":8,"03507":5,"036":5,"0367878":5,"037":5,"0385396":5,"039":5,"0393944":5,"0394":5,"0399":5,"03996e":5,"03e":13,"04":[0,5,13,19],"040":5,"041":5,"0411":5,"0414":5,"04198":5,"042":5,"0425":5,"043":5,"044":5,"0440989":5,"044142002936e":9,"044387171445641534":16,"0443872":16,"044572277695e":9,"044654032097e":9,"0448877":5,"0449442":5,"045":5,"045084306856e":9,"0459174":5,"046":5,"0461":5,"0469097":5,"047":[5,17],"0474164":5,"0474572":5,"048":[5,17,19],"049":5,"04924":5,"04e":13,"05":[0,5,8,9,13,16],"0501":5,"050651207308e":9,"051":[5,6],"0511173":5,"0512":5,"052":5,"0523":5,"0528412":5,"053":5,"0531294":5,"0533803":5,"0535":5,"0536749":5,"054":[5,32],"0547419":5,"055":5,"055188":5,"056":[5,17],"0563088":5,"057":5,"0570946":19,"0572914":5,"057949":5,"058":5,"0583837":5,"0585":5,"059":5,"05e":13,"06":[0,5,8,9,12,13],"0608":5,"061":5,"061141":5,"061259":12,"0613":5,"062":5,"0621119":5,"0625403":5,"06257":5,"0626266":5,"063":5,"064":5,"0641":5,"06459059967730083":8,"0645906":8,"0649":5,"065":5,"06527":5,"066":5,"06696":5,"067":5,"0670735":5,"068":5,"0683196":5,"069":5,"06987":5,"06e":13,"07":[5,13,14,15,19,32,38],"070":5,"0701913":5,"071":5,"07108":5,"0714679":5,"0717":5,"0719":5,"072":5,"0722":5,"0727126":5,"0727584":5,"074":5,"0744186":5,"0745":5,"07484":5,"075":5,"075416":5,"0755737":5,"076":5,"077":5,"0770302":5,"0772021":5,"0772781":5,"078":5,"0784":5,"0784722":5,"0787729":5,"0789786":5,"079":[5,6],"0791":5,"07e":13,"08":[0,5,8,13,19],"0808":5,"081":[5,6],"081024":6,"082":5,"0820":0,"0823499":5,"0831":5,"0834973":19,"0837":5,"084":5,"0849409":5,"085":5,"086":5,"086004":5,"0868":5,"087":5,"0877":5,"0877243":5,"0878":5,"088":5,"089":5,"0890815":5,"0896":5,"08e":13,"08msun":0,"09":[5,6,8,13],"090":5,"0900":19,"0902":0,"0907":5,"0907537":5,"091":5,"0910814":5,"0913095":5,"09164":5,"092":5,"09295167374":13,"093":[6,17],"0931922":5,"094":[5,8],"095":5,"0958704":5,"096":5,"09665":5,"097":5,"09706e":5,"09786":5,"098":[5,6],"0987206":5,"099":5,"0991059":5,"0993":5,"099417":8,"0995":5,"0eb5c0c9abd34607a6ee060b26a7e32f":16,"0fa4c2b8707741a5ab41d209ef95a3a4":16,"0m":13,"0mb":[8,13],"0msun":38,"0x149c95c56c10":8,"0x14bf2250fdc0":6,"0x7f2b6ca163a0":16,"0x7f35b603e9d0":12,"0x7fc1f0c3ff00":7,"1":[0,1,2,5,6,7,8,9,11,12,13,14,15,16,17,18,19,22,23,25,26,30,31,32,33,35,37,38,40,41,43],"10":[0,2,5,6,7,8,9,12,13,14,15,16,17,18,19,22,32,38,41],"100":[0,5,6,8,13,14,15,32,38],"1000":[0,8,22,38],"100000000000":[18,19],"1001":13,"1005":5,"101":5,"101038":5,"1012":5,"101323":5,"101955":5,"102":5,"1021":5,"1024mb":22,"1025":13,"102750e":19,"103":5,"1035":5,"103702":5,"103789":5,"104":[5,8],"1043":5,"104427":5,"104997":5,"105":[5,14,15],"105082":5,"10522":5,"105704":5,"106":[5,16],"1062":5,"106368":5,"106545":5,"10689":5,"107":5,"107187":5,"1075":5,"10782":5,"108":5,"1082":5,"1085":12,"108571":5,"10877":5,"1088":5,"109":[5,8],"10941":5,"109679":5,"1098":5,"1099":5,"10e":13,"11":[0,5,6,8,9,12,13,15,16,17,19],"110":5,"11003":12,"1104":5,"1108":5,"111":5,"111023":5,"111583":5,"11182":5,"112":5,"11239":5,"1124":5,"113":5,"1130":5,"11346":5,"113492":19,"1135":5,"11376":5,"114":5,"114678":5,"11491":5,"115":[5,32],"11506":5,"115297":5,"11558":5,"115722":5,"11582":12,"116":5,"11686":5,"11695":5,"117":5,"11707":5,"1173":5,"1178":5,"118":5,"11802":5,"118229":5,"11854":5,"119":5,"1193":5,"1199":5,"11e":13,"12":[0,5,6,9,12,13,15,16,17,19,20,32],"120":5,"120000":0,"120066":5,"1204":[5,19],"121":5,"121263":5,"12136":5,"1219":5,"122":5,"1222":5,"123":5,"123048":5,"12325":12,"123635":5,"1237":5,"1239555":8,"124":5,"1241251901":17,"124379":19,"124496":5,"12457":12,"12460":12,"12461":12,"124931":5,"12495":5,"125":[0,5,16],"1250":12,"12500":0,"1251":12,"1252":12,"12522":5,"1253":12,"1254":[5,12],"12548":5,"125553":5,"125886":5,"125968":5,"126":5,"126532":5,"127":5,"12741":5,"127442":5,"127957":5,"128":5,"12806":5,"129":5,"12974":5,"129879":5,"12e":[1,6,9,12,13,14,15,16],"13":[0,5,6,8,9,12,13,15,16,17,19],"130":5,"1301":12,"1302":12,"1306":5,"130725":5,"131":5,"13108":19,"1314":5,"131680e":19,"132":5,"132057":5,"1326":5,"13267":5,"1327":5,"13298":5,"133":[5,16],"1334":5,"134":5,"13416":5,"13461":12,"135":5,"135101":5,"135164":5,"1354":13,"1355":13,"13567":9,"136":5,"1360":5,"13607":5,"137":5,"13700":[6,8],"137502":5,"1379":5,"13796e":5,"138":5,"1380":19,"139":5,"139044":5,"1392":5,"139732":5,"1398":5,"13e3":0,"14":[0,5,6,9,12,13,15,16,17,19],"140":5,"1403":32,"141":5,"14112":5,"141361":5,"1415":5,"142":5,"14212":5,"143":5,"144":5,"144141":5,"14439":5,"14461":12,"1449":[5,13],"145":5,"145296":5,"145632":5,"146":5,"1468":5,"146844":5,"147":5,"1471":5,"1473":5,"14764":5,"1478":5,"148":[5,19],"1485":5,"148721":5,"149":5,"1490":12,"149038":12,"1492":5,"1494":13,"1498":5,"14e":13,"15":[0,5,8,9,12,13,15,16,17,19,22,32],"150":[5,8,13,14,15,16],"15000":[0,5,7,9,12,16,17,19],"1502":5,"150217":5,"15042":5,"150681":5,"151":5,"1514":5,"151616":5,"1517":5,"15186":5,"152":5,"1521":5,"1527":5,"153":5,"153329":5,"153852":5,"1539":13,"154":5,"155":5,"1551":5,"1553":5,"155342":5,"155662":13,"155678":8,"15594":5,"156":[5,8,19],"1560":5,"1567":5,"1569":5,"157":5,"1571":5,"1575":5,"158":5,"1585":13,"1586":5,"158640":8,"15884":5,"159":[5,8],"15907":5,"1599":5,"15e":13,"15msun":32,"16":[0,5,8,13,15,17,19,32],"160":5,"1606":5,"160675":13,"161":5,"1610":5,"1612":5,"1618":5,"162":5,"162006":5,"162038":5,"1622":5,"1624":[5,13],"162454":13,"16265":5,"162941":5,"163":[5,8],"1631":5,"1633":5,"163481":8,"1635760192":6,"1635760194":6,"1635760256":8,"1635760377":8,"1635760613":13,"1635760806":15,"1635760813":15,"1635761189":13,"1637":5,"164":5,"1646563001":16,"1646563002":16,"164714":5,"165":5,"16539":5,"16564":5,"166":[5,8],"1663":5,"166559":5,"167":[5,13],"1670":5,"16729":5,"16733":5,"1674":[5,13],"1678":5,"168":[5,8],"16833":5,"16837":5,"168379":8,"168558":5,"168972":5,"169":5,"1691":5,"1695":5,"169775":13,"17":[5,6,8,13,15,16,17,19],"170":5,"1703":13,"1708":5,"171":5,"171096":5,"1713":5,"1715":5,"172":5,"172014":5,"1722":5,"1729":5,"173":5,"1736":5,"174":5,"174169":5,"1747":5,"1749":13,"175":5,"175004":5,"1753":5,"17588":5,"176":5,"176751":13,"177":[5,8],"177444":5,"1775":5,"177551":5,"177727":5,"178":5,"1780":13,"1781":5,"1783":5,"1784":5,"1786":5,"179":5,"179142":5,"1792":5,"17932":5,"1796":5,"18":[5,13,15,17,19],"180":5,"1804":5,"180453":5,"1806":5,"1807":5,"1808":5,"1809":5,"181":5,"1810":5,"18108":5,"1811":5,"1812":5,"181244":5,"1813":5,"18139":5,"1814":[5,13],"18148":5,"1815":5,"1816":5,"1817":5,"181795":5,"1818":5,"1819":5,"182":5,"1821":5,"1822":5,"1823":5,"1824":5,"1825":5,"1826":5,"1827":5,"1828":5,"1829":5,"183":5,"1830":5,"183048":5,"1831":5,"1833":5,"1834":5,"1835":5,"1838":5,"1839":5,"183974":5,"184":5,"1841":5,"1843":5,"1844":5,"184464":5,"1845":5,"1846":5,"1847":5,"184829":5,"185":5,"1851":[5,13],"1854":5,"1858":5,"186":[5,13],"1865":9,"187":5,"1876":5,"187694":5,"1877":5,"1879":13,"187993":5,"188":5,"1882":5,"189":5,"189239":5,"19":[0,5,8,13,16,19],"190":[0,5,19],"19097":5,"191":5,"1910":13,"1915":5,"191543":5,"192":5,"1920":5,"1923":5,"193":5,"193528":5,"19366":5,"19393":5,"194":5,"1947":13,"195":5,"1951":0,"19521":5,"196":5,"196046":5,"196177":5,"19622":5,"196311":5,"1967":5,"1968":13,"197":5,"1972":0,"1973":5,"1975":0,"1977":5,"197729":5,"197x":0,"198":5,"1980":32,"1983":43,"1986":[0,32],"1987":5,"1989":[0,13],"199":5,"19907":5,"1991":32,"1992":0,"1993":0,"1996":43,"1998":[0,5,32],"1999":0,"19e":13,"1aearth":17,"1ajupit":17,"1amar":17,"1amercuri":17,"1aneptun":17,"1apluto":17,"1asaturn":17,"1auranu":17,"1avenu":17,"1ckzg0p9":[23,40],"1dex":[13,14,15],"1e":[0,7,8,9,12,13,19],"1e2":0,"1e9":0,"1gyr":38,"1m":13,"1mb":[8,13],"1mearth":17,"1mjupit":17,"1mmar":17,"1mmercuri":17,"1mneptun":17,"1mpluto":17,"1msaturn":17,"1msun":38,"1muranu":17,"1mvenu":17,"1s":[8,13],"1y":0,"2":[0,1,2,5,6,7,8,9,11,12,13,14,15,16,17,19,20,22,23,25,26,30,32,37,38,40],"20":[0,5,6,8,9,13,14,15,16,17,19,38],"200":[0,5],"2000":[0,5],"2001":[14,15,32],"2002":0,"2003":[0,32],"2004":[0,5],"2005":[0,5],"2008":5,"2009":0,"201":5,"2010":[0,22,32],"2012":[0,32],"2013":0,"2014":[0,5,32],"2015":[0,5],"2016":0,"2017":[0,13,16,22,32],"2018":[0,1,5],"2019":[0,5,19],"202":5,"2020":0,"2021":[5,6,8,13],"202196":5,"2022":0,"20220225":0,"202339":5,"202569":5,"20265":5,"202750e":19,"2029":5,"203":5,"2033":5,"204":5,"2044":5,"20447":5,"204663":5,"2048":13,"205":5,"2053":5,"205353":5,"205527":5,"205537":5,"2057":5,"205711924468e":16,"206":[5,17],"2063":5,"20677":5,"207":5,"2071":13,"2075":5,"208":5,"2081":5,"208169":5,"208453":5,"20887":5,"208923":5,"209":5,"2091":13,"209274":5,"20938":5,"20980":5,"20e":[8,13],"21":[0,1,5,6,13,16,19],"210":[5,19],"21043":5,"211":[5,15],"2112":5,"2118":19,"212":5,"212034":5,"2122":13,"2127":5,"213":5,"2132":5,"21333":5,"213396":5,"2135":5,"213854":5,"214":5,"214274644851685":19,"2143":13,"2147":5,"215":5,"215504":5,"2156":5,"215638":5,"2157":5,"216":5,"21603":5,"216067":5,"2164":13,"216496":5,"216951":5,"217":5,"21764":5,"218":5,"2182":5,"218222":15,"21824":5,"2183":13,"21844":5,"219":5,"219058":5,"2191":5,"21927":5,"21948":5,"21e":13,"22":[5,13,19],"220":5,"22036":5,"2206":13,"22065":12,"22098":5,"221":5,"2210":5,"2214":5,"2216":5,"221832":5,"222":5,"2221":5,"2224":5,"22281":5,"223":5,"2232":13,"2234":5,"224":5,"2245":13,"224923":5,"225":5,"225135":5,"22518":5,"22543":5,"2258":13,"226":5,"2261":5,"22611318083528548":8,"226424":5,"2266":5,"2268":5,"2269":13,"227":5,"22723621650191106":16,"22723621650191117":16,"227249":5,"2275":5,"22787":5,"228":5,"2282":13,"228555":5,"229":5,"2291":5,"22936":5,"2295":5,"229591":5,"22e":8,"23":[5,13,16],"230":5,"2300":13,"230102":5,"2305":5,"230955":5,"231":5,"231680e":19,"231704":5,"232":5,"2329":13,"233":5,"2332":5,"2333":5,"2338":5,"234":[5,8],"2348":13,"235":[5,6],"23513":5,"2352":5,"235464":5,"235689312423":8,"236":[5,19],"2365":[13,19],"237":5,"2371":5,"237203":5,"237951":5,"238":5,"2383":13,"238584":5,"23894":5,"239":5,"239197":5,"239704":5,"24":[5,8,13],"240":5,"2400":13,"2406":5,"2406484012210224":16,"24098":5,"241":5,"2413":5,"24165":5,"242":5,"2421":5,"242151":5,"2423":13,"242309":5,"242397939068e":16,"2424":12,"243":[5,6],"243214":5,"243583":5,"2437":5,"2438":13,"2439":5,"244":[5,17],"2444":17,"244645":5,"245":5,"245209":5,"245223":5,"2454":13,"246":5,"2466":13,"246604":5,"246625":5,"246671":6,"247":[5,16],"2472":5,"2477":[5,13],"248":[5,8],"248871":5,"249":5,"249106":5,"2492":13,"2493":5,"249848":5,"24e":13,"25":[0,5,8,13,19],"250":5,"25014bc73b334765a1c09a4e4a97ed66":13,"251":[5,8],"2514":5,"2516":13,"25164":5,"252":5,"2528":5,"252877":5,"2529":5,"253":5,"2535":16,"2537":13,"253705":5,"254":5,"255":[0,5],"2551":5,"2552":5,"2554":13,"2556":5,"256":[5,6,22],"256488":5,"256783":5,"25694":5,"257":[5,43],"2570":13,"257278":5,"257437":5,"258":[5,8],"2583":5,"259":5,"2590":13,"25msun":0,"26":[5,13],"260":5,"26051":5,"260676":5,"261":5,"2613":5,"261343":5,"26171201413c43f5b91552a374879940":6,"2618":5,"262":5,"2622":[5,13],"2626":5,"2629":5,"263":5,"263079":5,"2632":5,"263235":5,"2636":13,"264":5,"26416":5,"26441":5,"26456":5,"2646":19,"265":5,"2652":13,"266":5,"2663":5,"26637":5,"2664":5,"266485":5,"2666":13,"267":[5,8],"2670":5,"2671":5,"2672":5,"2673":5,"2674":5,"2676":5,"2677":5,"2678":5,"2679":5,"268":5,"2680":5,"2681":5,"2682":5,"2683":5,"2684":5,"2685":5,"2686":5,"2687":5,"2688":5,"2689":5,"269":5,"2690":5,"2691":[5,13],"2692":5,"2693":5,"2694":5,"2695":5,"2696":5,"2697":5,"2698":5,"2699":5,"27":[5,8,13,16],"270":5,"2700":5,"2701":5,"2702":5,"27025":5,"2703":5,"2704":5,"2705":5,"2706":5,"2707":5,"2708":5,"2709":5,"271":5,"2710":5,"2711":5,"2712":5,"2713":5,"2714":5,"2715":5,"2716":5,"2717":5,"2718":5,"2719":5,"272":5,"2720":5,"2721":5,"2722":5,"2723":5,"2724":5,"2725":5,"2726":5,"2727":5,"2728":5,"2729":5,"272943":5,"273":5,"2730":5,"2731":5,"2732":5,"2733":[5,13],"2734":5,"274":5,"274206":5,"274445":5,"2746":13,"274854":5,"275":5,"2754":5,"27569e":5,"2757":13,"276":5,"2767":5,"277":5,"2773":5,"27734":5,"2775":13,"27767":5,"278":5,"27829":5,"279":5,"2791":5,"2795":13,"28":[5,7,8,9,12,13],"280":5,"2800":5,"2801":5,"2802":5,"28060251":32,"280723":5,"280749":5,"281":[5,43],"281309":5,"28133908148630704":16,"2816":5,"2819":5,"282":5,"282234":5,"2823":5,"282623":5,"283":5,"2831":13,"2834":5,"2835":5,"2836":5,"28369":5,"283972":5,"284":5,"2845":13,"2846":5,"285":5,"2857":16,"286":5,"2861":13,"287":5,"2871":5,"2873":5,"2875":13,"2878":5,"288":5,"2881":5,"288353":5,"28867":5,"289":5,"2891":13,"2898":5,"28984":5,"28e":8,"29":[5,8,13,22],"290":5,"290684":5,"291":5,"29136":5,"2914":5,"292":5,"2921":5,"2924":5,"292641":5,"2927":5,"293":[5,16],"2930":13,"2934e":19,"293512":5,"294":[5,6],"2947":13,"295":5,"295543":5,"296":5,"2961":5,"2965":13,"296544":5,"2967":5,"2969346":32,"297":5,"297187":5,"297506":5,"298":5,"29816":5,"298194":5,"2982":13,"299":[5,16],"2991":5,"2996":5,"29e":13,"2b66f805db424c48a1d29c45092b6e3c":8,"2d":0,"2e":[9,13,19],"2f":19,"2m":[8,13],"2mb":[8,13],"2msun":0,"2s":13,"3":[0,1,2,5,6,7,8,9,11,12,13,14,15,16,19,20,22,23,30,32,37,38,40],"30":[1,5,6,8,9,12,13,14,15,16,17,19],"300":[5,16,38],"3000":[0,17],"3002":5,"3008":5,"301":5,"3010":13,"301129":5,"301483":5,"3017":5,"302":[5,19],"3025":5,"302750e":19,"303":5,"3034":5,"3035":13,"303533":5,"3038":5,"30388e":5,"304":5,"3042":5,"30441":5,"3046":5,"3048":5,"305":5,"305334":5,"3059":13,"30592":16,"306":5,"3065":5,"306619":5,"3069":5,"307199":5,"3078":13,"308":5,"3081e":19,"3082":5,"308203":5,"3084":5,"309":5,"309361":5,"309461":5,"3096":5,"30975":5,"30e4":0,"31":[0,5,7,8,13,19],"310":5,"3100":[5,13],"310029":5,"3101":5,"311":5,"312":[5,6],"3124":13,"312637":5,"3127":5,"313":5,"313623":13,"314":5,"31408":5,"314533":5,"3148":13,"315":5,"315124":5,"315223":5,"3154":5,"315404":5,"315903":5,"315973":5,"316":[5,8],"316118":5,"317":5,"3171":5,"3172":5,"3174":13,"3176":5,"317663":5,"317921":5,"318":5,"3185":5,"318753":5,"319":5,"3192":5,"3193":5,"31958":5,"3197":13,"31e":13,"32":[5,8,13,20,22],"320":5,"3205":16,"32076":5,"321":5,"321082":5,"3211":5,"32118":5,"3216":5,"321643":5,"322":5,"3223":5,"3228":5,"32282":5,"323":5,"3231":[5,13],"323359":8,"3235":5,"324":5,"3243":5,"3244":5,"3246":5,"3247":5,"3248":5,"325":5,"325197":5,"3256":13,"325743":5,"325965":5,"326":5,"326147":5,"32620":5,"32631":5,"3264":5,"326601":5,"32684":5,"327":5,"3273":[5,13],"328":5,"328066":5,"3282":5,"328512":5,"329":[5,8],"3294":13,"32e":13,"33":[5,13],"330":5,"331":5,"331680e":19,"332":5,"332091":5,"3321":13,"332251":5,"332777":5,"33295":5,"333":5,"333032":5,"3331":5,"334":5,"33451":5,"33469":9,"3348":13,"335":5,"335153":5,"3352":5,"335342":5,"335428":5,"33552":5,"335642":5,"335847":5,"336":5,"336295":5,"3368":5,"337":5,"33719":5,"337249":5,"3373":13,"338":[5,9],"33817":19,"33879":5,"339":5,"3394":13,"339587":5,"3396":5,"34":[5,6,7,8,9,12,13,14,16,17],"340":5,"34018":5,"340477":5,"34081":5,"341":5,"3412":5,"34126":5,"34175":5,"3419":5,"342":[5,13],"34213":9,"342134":5,"3422":13,"342474":5,"3429":5,"343":5,"3438":5,"344":5,"34421":19,"3445":13,"344772":5,"3448":5,"345":5,"34537":5,"345842":13,"346":5,"3461":5,"3462":5,"3464":13,"3469":5,"347":5,"3471":5,"347169":5,"347405":5,"347623":5,"348":[5,8],"3483":13,"34870":5,"349":5,"3495":5,"3497":5,"34e":8,"35":[5,8,13,32],"350":[5,13],"3502":5,"35051":5,"3507":5,"3509":13,"351":5,"351532":5,"3518":5,"352":5,"3529":5,"353":5,"3533":13,"353432":5,"3536":5,"354":5,"3540":19,"354576":5,"35487":5,"354981":5,"355":5,"3550":13,"35505":5,"355513":5,"3559":5,"356":5,"3563":5,"3568":13,"356812":5,"357":5,"358":5,"3583":5,"35842":16,"3588":13,"3589":5,"35895":5,"359":5,"3591":5,"359784":5,"359881":5,"3599":5,"36":[5,8,13],"360":5,"360093":5,"36016":5,"361":5,"3616":5,"362":5,"3622":13,"362601":5,"36298":5,"363":5,"3630":19,"3631":19,"36314":5,"3632":19,"36323":5,"3633":19,"3634":19,"3635":19,"364":5,"3640":13,"364017":5,"36403":5,"364747":5,"3649":5,"365":5,"3657":13,"365763":5,"365949":5,"366":5,"366259":5,"366392":5,"367":5,"367268":5,"3674":5,"36747":5,"3676":13,"367793":5,"368":5,"368345":5,"3688":5,"369":5,"3695":5,"36957":5,"3698":5,"36e":13,"37":[5,8,13],"370":5,"3702e":19,"3706":13,"371":5,"371427":5,"371458":5,"371625":5,"3719":5,"372":5,"3726":[5,13],"3729":5,"373":5,"373282":5,"374":5,"37409":5,"3746":13,"374905":5,"375":5,"3752":5,"375537":5,"3757":5,"375712":5,"3758":5,"376":5,"376059":5,"3763":13,"376604":5,"3767":5,"377":5,"3771":5,"378":5,"3781":5,"378266748188e":16,"3786":13,"37874":5,"379":5,"379292":5,"37e":13,"38":[0,5,8,13,16],"380":5,"38009":5,"380393":5,"380887":5,"381":5,"3811":13,"382":5,"382144":5,"382472":5,"383":5,"38316":5,"3832":13,"384":5,"3849":13,"385":5,"386":5,"387":5,"3875":13,"388":5,"388321":5,"389":5,"38908":5,"389208":5,"38921":5,"389749":5,"38m":13,"39":[5,6,7,8,11,12,13,14,15,16,17,18],"390":5,"3905":13,"391":5,"3914":19,"39152e":5,"391798":5,"392":[5,19],"392194":5,"392487":5,"3927":19,"3928":[5,19],"3929":19,"393":5,"3930":[13,19],"3931":[13,19],"3932":19,"393886":5,"393982410080e":16,"394":5,"395":5,"39521":5,"3954":13,"3957":5,"3959":5,"396":5,"3963":5,"396470605248e":16,"3967":5,"397":5,"3971":5,"3977":13,"397754":5,"3978":5,"398":5,"39831":5,"39834":5,"398381":5,"398419":5,"398927":5,"399":5,"399005684057e":16,"3995":5,"3999999999996":15,"3d":0,"3e":19,"3m":13,"3mb":[8,13],"3msun":32,"3s":[8,13],"4":[0,1,5,6,7,8,9,11,12,13,14,15,16,17,19,21,31,32,38],"40":[5,8,13,14,15],"400":5,"4000":[0,13],"40049":5,"401":5,"4011":5,"401263":5,"4013":5,"401414766976e":16,"401728":5,"4018":5,"402":5,"40238":5,"402750e":19,"402961":5,"403":5,"40339":5,"404":5,"4046":5,"4048":5,"404962":5,"405":5,"405068":5,"405577":5,"406":[5,13,16],"407":5,"40735":5,"4076":5,"408":5,"409":5,"4098":5,"40e":13,"41":[5,13],"410":[5,19],"4101":5,"4102":5,"4108":5,"410828":5,"411":5,"411151":5,"412":5,"41238":5,"413":[5,6],"413467":5,"414":5,"41436":16,"41457":5,"4146":5,"41485":5,"414875":5,"415":5,"416":5,"416141":6,"4162":5,"417":5,"41726":5,"4176":5,"418":5,"418029":5,"4182":5,"4183":5,"4184":5,"4186":5,"41862":5,"418757":5,"4188":5,"419":5,"4192":5,"4197":5,"41996":5,"41e":13,"42":[0,5,8,13,16],"420":5,"420182":5,"4202":5,"420316":5,"4205":5,"42052":5,"42097":5,"421":5,"421365":5,"421436":5,"421475":5,"4218":5,"4219":5,"422":5,"422436":5,"42266":5,"4229":5,"422997711686e":16,"423":5,"42362":5,"424":[5,6],"4243":5,"424712":5,"424924":5,"425":5,"4251":5,"4256":5,"425788":5,"426":5,"427":5,"42785":5,"428":5,"428699":5,"429":[5,13],"429122":5,"429398":5,"42e":13,"42msun":0,"43":[5,13],"430":5,"430329401616038":16,"4304":5,"431":5,"4311":5,"43124":16,"431313":5,"431680e":19,"43173":5,"432":5,"4321":5,"432729":5,"433":5,"4330":5,"433207":13,"4333":5,"433477":5,"434":5,"435":5,"4357":5,"435809":5,"436":5,"43618":5,"4365":5,"4369":5,"436983545111e":16,"437":[5,13],"4379":5,"438":5,"4380":5,"4385":5,"438686":5,"4387":5,"438861":5,"439":5,"44":[5,13],"440":5,"441":5,"441158":5,"44170":5,"442":5,"44211":5,"4422":5,"44223e":5,"443":5,"4433":5,"443375325717e":16,"4438":5,"444":[5,19],"445":5,"4454":5,"4455":5,"44558":5,"445821":5,"446":5,"447":5,"447918":5,"448":5,"4480088":16,"448242":5,"448401":5,"44852":5,"449":[5,13],"4493":5,"44e":13,"44msun":0,"45":[5,6,8,13],"450":5,"4500":7,"45000000080":16,"4501":5,"450629":5,"4507":5,"450818":5,"4509":5,"451":[5,8],"45114":5,"451195752942e":16,"451732":5,"452":5,"452661646076e":16,"453":5,"4530":[9,12,19],"453059":13,"453348":5,"453412":5,"453932":5,"454":5,"4540":5,"454013":5,"454268":5,"454409":5,"455":5,"45534":5,"455552":5,"456":13,"456313":5,"456519":5,"457":5,"45757":5,"457987":5,"458":5,"458064":5,"458272":19,"4588":5,"45889":5,"459":5,"459382":5,"45msun":0,"46":[5,8,13,16],"460":5,"460081":5,"46057":5,"46089":5,"462":[5,19],"4622":5,"46220":5,"4623":5,"463":5,"463455":5,"464":5,"464494":5,"465":5,"465133":5,"465867":5,"46607":5,"4666":5,"4670":5,"4673":5,"467851":5,"468":5,"4680":8,"46822":5,"4683":5,"469":5,"46901":5,"469056":5,"469524":5,"47":[5,8,13],"470":5,"471":5,"4710":5,"471379":5,"4714":5,"472":[15,19],"472105":5,"472318":5,"4734":5,"473762":5,"474":5,"47419":5,"475":5,"4752":5,"475287":5,"47534":5,"4755":5,"4759":5,"476":5,"4764":5,"476589":5,"477":5,"477089":5,"4773":5,"477535":5,"477791":5,"478":5,"478253":5,"478315":5,"4788":5,"478807":5,"479":5,"47946":5,"4797":5,"479973":5,"48":[5,13],"480":5,"480045":5,"48046":5,"4807":5,"4809":5,"481":5,"482":5,"4822":5,"4825":5,"482668":5,"483":5,"48336":5,"4838":[7,9,12],"484":5,"4845":5,"485":5,"48586":5,"486":5,"4862":5,"4865":5,"4867":5,"4872":5,"48749":5,"4877":5,"488":5,"48809":5,"489":5,"489077":5,"48926":5,"48e":[8,13],"49":[5,6,13],"490":5,"491":5,"491811":5,"492":5,"492242":5,"492302":5,"492484":5,"492707":5,"492818":5,"493":5,"493648":5,"493975":5,"494":5,"4945":5,"4949":5,"495":5,"4957":5,"4959":5,"495924":5,"496":5,"4961":5,"496312":5,"4966016":15,"497":5,"497008":5,"497294":5,"498":5,"4981":5,"498232":5,"499":5,"49e":13,"4b8c7f4a86e445099d73f27dffaad94b":15,"4e":[0,19],"4e3":0,"4m":13,"4mb":[8,13],"4s":[8,13],"5":[0,1,5,6,7,8,9,11,12,13,14,15,16,17,19,20,29,31,32,35],"50":[0,5,8,13,15,16],"500":[0,5],"500000e":19,"501":5,"5017":5,"502":5,"502451":5,"502775":5,"502841":5,"503":5,"503726":5,"504":5,"5043":5,"5046":5,"505":5,"5051":5,"50537":5,"506":5,"5064":5,"50652":5,"5066257":15,"50682":5,"50687":5,"507":5,"507104":5,"507443":5,"508":5,"5089":5,"509":5,"5094":5,"50973":5,"50e":13,"51":[5,8,13],"510":5,"511":5,"511114":5,"51114e":16,"5112":5,"5114":5,"5117":5,"512":5,"512561":5,"512617":5,"512mb":22,"513":5,"514":5,"514087":5,"51478":5,"514898":5,"514916":5,"515":13,"515062":5,"5164":5,"517":5,"51742":5,"517454":5,"5175":5,"518":5,"51803":9,"51809":5,"51819":5,"518397":5,"518757914":14,"518851":5,"519":5,"51e":13,"52":[5,6,8,13],"52058":5,"5208":5,"520903":5,"5217":5,"522":5,"5221":5,"523":5,"523485":5,"523561":5,"524":5,"52416":16,"5244":5,"524629":19,"524755":5,"525":5,"526":5,"527":5,"528":5,"528102":5,"5286":5,"529":5,"5297876799548944":16,"52e":13,"53":[5,6,8,13,16],"530":5,"5301":5,"5309":5,"531":[5,16],"531293":5,"531411":5,"5317":5,"532":5,"5324":5,"533":5,"5333":5,"534":5,"534699":5,"535":5,"5358":5,"536":5,"536373523810e":16,"5366":5,"53715":5,"5374":5,"537743":5,"538":5,"53854":5,"539":5,"539343":5,"539941":5,"53e":13,"54":[5,13],"54027":5,"5403":5,"541":5,"541792":5,"542":5,"5423":5,"542419":5,"543":5,"54307":5,"54371":5,"544":5,"54439":5,"544482":5,"545":5,"5456":5,"545743":5,"546":5,"5462":5,"547002":5,"547729":5,"548":5,"548589":5,"548864":5,"549":5,"5493":5,"54949":5,"55":[5,6,8,13,15,16,32],"550575":5,"551":[5,6],"551072":5,"552":5,"552711":5,"5528":5,"553":5,"5532":5,"554":5,"55458":9,"55473":5,"555":[5,8],"5556":5,"5557":5,"557":5,"558":5,"559":5,"5593":5,"55982":5,"559889":5,"55e":13,"56":[5,8,13],"560118":5,"5603":5,"561":5,"5612":5,"5619":5,"562":5,"562029":19,"56228":5,"564":5,"565":5,"56518":5,"5652":5,"566":[5,19],"566263":5,"56631":5,"566495":5,"567":5,"567303":5,"567898":5,"568":5,"5681":5,"56865":5,"569":5,"569581":5,"5696":5,"56e":13,"57":[5,6,8,13],"570":5,"570222":5,"5703":5,"57062":5,"57093":5,"571":5,"5712":5,"57141":5,"572":5,"573":5,"5734":5,"5735":5,"573703":5,"5738":5,"573874":5,"574":5,"57443":9,"574826":5,"575":5,"57538":5,"576":5,"577":5,"57739":5,"5775":5,"577826":5,"578":5,"57878":5,"579":5,"5791":5,"5794":5,"5795":5,"5796":5,"5798":5,"58":[5,13],"581":5,"5812":5,"581558":5,"58166":5,"582":5,"582318":5,"583":5,"58332":5,"583346":5,"583436":5,"584622":5,"585":5,"58504":5,"5853":0,"585985":5,"586":5,"587":[5,15],"588":5,"588396":5,"5885":5,"589":5,"58e":8,"59":[5,6,13],"590":5,"5904":5,"590877":5,"591":5,"5919":5,"592":5,"592309":5,"592733":5,"593":5,"594":5,"59429":5,"59452":9,"595":5,"596":[5,13],"59616":5,"596161":5,"597":5,"5977":5,"598":5,"5982":5,"598268106227e":16,"59867":5,"59e":[13,16],"5dex":[8,13,14,15],"5e":13,"5m":13,"5mb":[8,13],"5msun":0,"5s":13,"6":[0,1,5,6,7,8,9,11,12,13,14,15,16,19,23,40],"60":[5,13,31],"600":5,"6000":0,"600000":0,"600258":5,"600593":5,"6008":5,"601":5,"60101":5,"602":5,"603":[5,13],"6032":5,"604":5,"60468":5,"605":5,"60547":5,"6058":5,"606":[5,13],"606169":5,"60636":5,"607":13,"608":[5,13],"608269":5,"608402":19,"608485":5,"608655":5,"60876":5,"609":5,"6094":5,"61":[5,13,16],"610184":5,"610285":5,"611":[5,13],"61117":5,"611632":5,"611763":5,"611785":5,"612":[5,13],"612281":5,"613":[5,13],"613167":5,"614":[5,13],"6145":5,"615":5,"615165":5,"61521":5,"616":[5,13],"6161":5,"616737":5,"61679":5,"617":[5,13],"617224":5,"6179":5,"618":5,"6181":5,"6182":5,"618382":5,"618445":5,"6185":5,"618705":5,"619":[5,13],"619099":5,"61e":13,"62":[0,5,13],"620":13,"621":15,"6212":5,"62124":19,"621375":5,"6215":5,"622":5,"62200":5,"622081":5,"622494":5,"6225":5,"623":13,"623052":5,"623232":5,"623354":5,"62366":5,"624":[5,13],"624125":5,"625":[0,5],"62549":5,"626":[5,13],"627748":19,"628":[5,13],"628169":5,"629":[5,13],"63":[5,8,13],"630":13,"631":[5,8],"63153":5,"632":[5,13],"6328":5,"633":5,"633148":5,"633684":5,"634":[5,13],"634261":5,"6344":5,"634667":19,"635":[0,13],"63566e":5,"635703":5,"636":13,"636985":5,"637":[5,13],"637666":5,"637754":5,"6379":5,"638":[5,13],"63818":5,"6384":5,"6388":5,"639":[5,13,19],"63923":5,"639951":5,"63e":13,"64":[5,13],"640":[5,13],"6409":5,"641":13,"6413":5,"64137":5,"642":13,"64207":5,"64265":5,"6429":5,"643":13,"64359":5,"6438124832773024":13,"644":[5,13],"64463":5,"645":[5,13,19],"645286":5,"645339":5,"645763":5,"646":5,"64611":5,"646273":5,"647":5,"647161":5,"64724":5,"6474":5,"6475":5,"648":5,"648549":5,"6485656144116352":13,"648566":13,"6489":5,"649":16,"6492":5,"6493":5,"64932":5,"649327":5,"64e":13,"65":[5,13,38],"651":5,"6514":5,"6515":5,"65262":5,"652638":13,"652755":5,"653":5,"6548":5,"6550":5,"6552":5,"655371":5,"6556":5,"6559":5,"656":5,"6562":5,"657":5,"6571":5,"6579":5,"658":5,"6588":5,"659":5,"659393":5,"659448":5,"659469":5,"659526":5,"659581":5,"659743":5,"65976":5,"65e":13,"66":[5,13],"66016":5,"66025":5,"6602514":13,"6604":5,"660415":5,"661":5,"661725":5,"662":5,"6626":5,"66293":16,"663":5,"663251":5,"663976":5,"664":5,"664546":5,"6649":5,"665406":5,"66554":5,"665969":5,"666661":5,"667":5,"6674":5,"668":5,"668328":5,"669":5,"66914":16,"66915":5,"669442":5,"66e":13,"67":[5,13,16],"670":5,"67023":5,"670337":5,"670413":5,"670422":5,"67059":5,"671":5,"671001":5,"671551":5,"67179":5,"672":5,"67245":5,"673":5,"674":[5,16],"6745":5,"674645":5,"6747":5,"6749":5,"675":5,"675689":5,"6758":5,"676":5,"676181":5,"676215":5,"6764":5,"6765":5,"677":5,"6771":5,"677623":5,"678":[5,12],"678026":12,"679":[5,8],"679223":5,"6797":5,"67e":13,"68":[5,8,13,16],"681":5,"681473":5,"681487":5,"6816":5,"682":[5,8],"6822":5,"683":5,"6831":5,"6832":5,"6834":5,"683467":5,"68376":5,"684":[5,8],"684890":13,"685":[8,13],"685255":5,"685872":5,"686":5,"686591":5,"687":[5,8],"68746":5,"688":[5,8],"6883":5,"6885":5,"689":5,"689781":5,"689835":5,"68e":13,"69":[5,13],"690":13,"690157944401e":16,"690194":13,"690203":5,"6905":5,"690746":5,"6908":5,"6909":5,"691":[5,8],"691586":5,"692":5,"693":[5,8],"693128":5,"693321":5,"6934":5,"693944":5,"694":[5,8,13],"6944":0,"694517":13,"695":5,"6952":5,"695505":5,"69569":5,"696":5,"696003":19,"696284":5,"697":5,"6975":5,"697827":5,"698":[5,13],"69808":5,"698517":5,"6989":5,"699":5,"6e":[8,13],"6e1":32,"6e5":0,"6m":13,"6mb":[8,13],"6msun":0,"6s":[8,13],"7":[0,1,5,6,7,8,9,12,13,14,15,16,18,19,23,32,40],"70":[5,8,13,32],"700":[5,19],"70005":5,"700359":5,"70043":5,"70052":5,"70054":5,"701":5,"702":5,"70235":5,"7028":5,"703":5,"703545":5,"70365":5,"704":5,"70429":5,"7046":5,"705":[5,19],"7052":5,"705715":5,"706":5,"7060":5,"706029":5,"706126":5,"706483":5,"706780":13,"7069":5,"706984":5,"707":[5,13],"708":5,"7085":5,"7087":19,"709":5,"7093":5,"709965":5,"70e":13,"71":[5,13],"710":5,"7106":19,"7107":5,"7108":5,"711":5,"7114":5,"712":5,"712414":5,"713946":5,"714712":5,"7151":16,"716":5,"71662":9,"71746":5,"71818":5,"7184":5,"718549":5,"718593":12,"7188":5,"719058":5,"7193637":16,"71e":13,"72":[5,13],"720749":5,"721":5,"7210":5,"7214":5,"7219":5,"722":5,"72386":5,"724":[5,9],"72498e":[9,16],"725":5,"725718":5,"726":19,"726002":5,"72611":5,"72617":5,"7267":5,"7269":5,"727":5,"727196":5,"72764":5,"728":[5,8],"7282":5,"728237":5,"72832e":5,"7286450862884521":16,"728797":5,"729":5,"729193":5,"7292":5,"7296":5,"72983":5,"72e":13,"73":[5,13,16],"730":5,"731":5,"7315":5,"7319":5,"732":5,"7322":5,"732244":8,"7324":5,"7326":5,"732818":5,"732953":5,"732983":5,"7335":5,"734":5,"7342":5,"734534":5,"735":5,"7354":5,"7359":5,"736":[5,8],"736112":5,"7365":5,"737":5,"7370":5,"73729":16,"737411":5,"73765":16,"738":5,"7380":5,"7381":5,"738399":5,"7384":5,"7385":5,"738524":5,"7386":5,"739":5,"7390":5,"7394":16,"739962":5,"73e":13,"74":[5,13],"740":5,"740494":5,"740929":5,"7413":5,"741346":5,"741448":5,"7418":5,"7419":5,"742":5,"7420":5,"7421":5,"7422":5,"7423":5,"7424":5,"7425":5,"7426":5,"7427":5,"7428":5,"7429":5,"743":5,"7430":5,"7431":5,"743118":5,"7432":5,"7433":5,"7434":5,"7435":5,"7436":5,"7437":5,"7438":5,"743837":5,"7439":5,"744":5,"7440":5,"7446":5,"7447":5,"7448":5,"7449":5,"745":5,"7450":5,"7451":5,"7452":5,"7453":5,"7454":5,"7455":5,"7456":5,"7457":5,"7458":5,"74583":5,"7459":5,"746":5,"7460":5,"7461":5,"7462":5,"747":5,"7472":5,"748":[5,19],"748832":5,"749":5,"75":[0,5,8,13],"750":[5,6],"7500":5,"75005":5,"750149":5,"750806":5,"7509":19,"751305":5,"752":5,"752134":5,"752438":5,"7527":5,"753":5,"7530":5,"7536":5,"7537":5,"754":5,"754141":5,"7544":5,"755":5,"75508":5,"755323":5,"7554":5,"7557":5,"756":5,"7564":5,"7566":5,"756794139032e":16,"756795":5,"757":[5,8],"757025":5,"7572":5,"758":[5,19],"7582":5,"7589":5,"759":5,"75921":5,"75931":5,"7595":5,"7598":5,"75988":16,"75e":13,"76":[5,13],"760064":5,"760389":5,"7605":5,"7607":5,"761":5,"7612":5,"7613":5,"76134":5,"761478":5,"7617":5,"7619":0,"7620":5,"7622":5,"7626":5,"7629":5,"763":[5,32],"7631":5,"7633":5,"7635":5,"764":5,"76416e":5,"7644":5,"7645":5,"764629":5,"7647":5,"764989":5,"765":5,"7650":5,"7657":5,"7659":5,"766":5,"766094":5,"7666":5,"7669":5,"767":5,"7671":5,"7675":5,"7677":5,"7678":5,"7679":5,"768":5,"7683":5,"768339":5,"7684":5,"768655":5,"7689":5,"769":5,"7690":5,"7691":5,"769195":5,"7695":19,"76e":8,"77":[5,13,15],"7705":5,"770532":5,"7706":5,"7709":5,"7714":5,"7717":5,"7718":5,"772":5,"7720":5,"7721":5,"7722":5,"7727":5,"7728":5,"773":5,"7730":5,"7731":5,"773166":5,"7734":5,"7735":5,"7736":5,"7737":5,"774":[5,12],"7741":5,"77416":5,"7742":5,"7743":5,"7745":5,"77455":5,"7748":5,"774954":5,"774969":5,"775":[5,19],"7750":5,"77505":5,"7751":5,"7752":5,"77541":5,"7757":5,"7759":5,"776":[5,19],"7761":5,"77624":5,"776263":5,"77631":5,"7764":5,"7765":5,"776523":5,"7766":5,"7767":5,"776818":5,"7769":5,"777":5,"7772":5,"7773":[5,19],"7774":5,"77766":5,"7779":5,"778":5,"7781":5,"7782":5,"7785":5,"7789":5,"779":5,"7790":5,"7792":5,"7795":5,"7797":5,"78":[5,13],"78012":5,"7803":5,"7806":5,"781":5,"781046":5,"78125":0,"7813":5,"7817":5,"7819":5,"782":5,"7823":5,"7825":5,"7826":5,"7827":5,"7828":5,"783":[5,12],"7831":5,"7836":5,"783746":5,"783792":5,"784":5,"7840":5,"7842":5,"7843":5,"7844":5,"7845":5,"7848":5,"78488":5,"784972":5,"785":5,"7852":5,"785539":5,"7856":5,"7858":5,"786":5,"786062":5,"7861":5,"7863":5,"7864":5,"7868":5,"786e":19,"787":5,"7871":5,"787102":5,"787368":5,"7874":5,"7875":5,"78767":16,"7877":5,"787705":5,"7879":5,"788":5,"78817":19,"7882":5,"7883":5,"7886":5,"7887":5,"789":5,"789064":5,"7891":5,"789188":5,"7893":5,"7898":5,"789859":5,"7899":5,"78e":13,"79":[5,13],"7901":5,"7902":5,"7903":5,"7905":5,"7907":5,"7909":5,"790941":5,"791":5,"7911":5,"7912":5,"791274":5,"7913":5,"791478":5,"7916":5,"7918":5,"7919":5,"791991":5,"792":5,"7920":5,"7925":5,"7926":5,"79264":5,"7927":5,"792721":5,"792744":5,"7928":5,"7933":5,"7934":5,"7936":5,"793832":5,"7941":5,"79412":5,"7942":5,"7943":5,"7944":5,"795":[5,32],"795024":5,"7958":5,"796":5,"7960":5,"7962":5,"7964":5,"796455":19,"7965":5,"7967":5,"7968":5,"7969":5,"797":5,"7973":5,"7974":5,"7975":5,"7979":5,"798":5,"7980":5,"7982":5,"7988":5,"799":5,"7990":5,"79911":5,"7996":5,"7997":5,"7998":16,"799889":5,"79e":13,"7a2e4301f5224b2cb8939d2297df0aad":15,"7e":13,"7m":13,"7mb":13,"7s":8,"8":[0,3,5,6,8,9,12,13,14,15,16,19,31,32],"80":[5,13,32,38],"800":6,"8000":5,"8001":5,"8003":5,"8004":5,"8008":5,"8009":5,"801":5,"8010":5,"8012":5,"8013":5,"802":5,"802706":6,"803":5,"8031":5,"8034":5,"8039":5,"804":5,"80402":5,"8043":5,"8044":5,"8047":5,"8048":5,"804961":5,"805":5,"8050":5,"8053":5,"8055":5,"805733":5,"8058":5,"8059":5,"806":5,"8060":5,"80602":19,"8062":5,"806431":5,"8065":5,"8066":5,"8067":5,"806722":5,"80677":16,"807":5,"8071":5,"8073":5,"807331":5,"807361":5,"8074":5,"807403":5,"8076":5,"8079":5,"808":5,"808134":5,"809":[5,6],"8091":5,"8095":5,"80954":5,"809662":5,"80e":13,"80msol":32,"81":[5,8,13],"810":8,"8101":5,"8104":5,"8105":5,"8107":5,"8108":5,"8109":5,"811":5,"8111":5,"8115":5,"812":5,"8121":5,"812296769855663":16,"8123":5,"8124797":6,"813":5,"81352":5,"8138":5,"81395":9,"814":5,"8140":5,"8141":5,"814387":5,"815":5,"8151":5,"81543":16,"8155":5,"81559":16,"81562":5,"8158":5,"816":5,"8163":5,"81645":16,"816958":5,"817":[5,12],"81705":5,"817432":5,"817608462595e":16,"817620e":19,"81762e":19,"8178":16,"817843":5,"817888":5,"818":5,"8182":5,"818294":5,"819":5,"8194":5,"8195":5,"8196":5,"819715":5,"8199":5,"81e":13,"82":[5,13],"8200":5,"8202":5,"82041":16,"8205":5,"82064":5,"821":5,"82104":16,"82129":16,"821301":5,"821367":5,"82164":16,"82171":16,"822":5,"82224":5,"8224":5,"82245":5,"823":5,"82325":5,"8234":5,"823767":5,"824494":5,"8245":5,"8247":5,"82479":16,"824848":5,"82486":5,"8249":5,"825":5,"8250":5,"825086":5,"8251":5,"8252":5,"8254":5,"82563":13,"825648":5,"826":5,"8261":5,"8263":5,"82642":5,"826771":5,"8268":5,"826831":5,"827":5,"8271":5,"8276":5,"82797":5,"828":5,"8280":5,"828241":5,"828858":5,"829":5,"829017":5,"8292":5,"8293":5,"8295":5,"829668":5,"829726":5,"829757":5,"8299":5,"82e":13,"83":[5,8,13],"830":[5,19],"8300":5,"8303":5,"830541":5,"831236":5,"832":5,"832981":5,"833":5,"8339":5,"834303":5,"834483":5,"835":5,"8354":5,"836":[5,6],"836621":5,"83672":5,"836783":5,"837":5,"8372":5,"83762":5,"8377":5,"837816":5,"8379":5,"838":[5,6],"838411":6,"838423":5,"83843":5,"839":5,"8399":5,"83e":13,"84":[5,8,13,16],"840":5,"84029":5,"84071":5,"840796":5,"840994":5,"841":5,"841284":5,"841718":5,"8427e":19,"8429":5,"843":5,"8435":5,"8435e":19,"844":[5,6],"8441":5,"84428":5,"8443":5,"845":5,"84502":5,"8452":5,"845387":5,"845641":5,"846":[5,6],"846045":6,"847":5,"847153":5,"84827":5,"848380621869e":9,"848866":5,"8493":5,"85":[5,8,13,38],"850":5,"850309":5,"851":5,"851646":5,"852":5,"852252":5,"8523":5,"852712":5,"853":5,"8533":5,"854":5,"85406e":5,"8544":5,"8545":5,"854649":5,"855":5,"856":[5,13],"85661":19,"8569":5,"857":5,"8573":5,"857699":5,"8577":5,"858":[5,6],"8585":5,"859":5,"8596":5,"859753":5,"8598":5,"859977":5,"86":[5,8,13],"860402":5,"8605":5,"861":5,"861368":5,"863":[5,8],"86323":5,"86334":5,"8635":5,"8638":5,"865":5,"8653":5,"8654":5,"865806":5,"866":5,"8664":5,"867":5,"86728":5,"8674":5,"8678":5,"86794":5,"868":5,"8683":5,"86878":5,"869":5,"86918":5,"8694":5,"869544":5,"87":[5,13],"870":5,"8704":5,"8706":5,"8708":5,"871":5,"872":5,"872312":5,"872316":5,"873":5,"8731":5,"873639":5,"874":5,"874638":5,"875":5,"876":5,"876084":5,"876382":5,"877":5,"877963":5,"878":5,"87813":5,"878253":5,"879":5,"8791":5,"87e":13,"88":[5,13],"880":5,"8805":5,"880528":5,"881":5,"8813":5,"882017":5,"8828":5,"883":5,"883252":5,"88343":5,"8837":5,"884":5,"8840":5,"8843":5,"88441":5,"884461":5,"8846":5,"8848":5,"885":5,"8851":5,"8853":5,"8855":5,"885537":5,"8856":5,"8858":5,"88581":5,"886":5,"8860":5,"8862":5,"8864":5,"8866":5,"8867":5,"8868":5,"8869":5,"887":5,"8870":5,"8871":5,"8872":5,"8873":5,"8874":5,"8875":5,"8876":5,"8877":5,"8878":5,"888":5,"8880":5,"8881":5,"888123":5,"8882":5,"8884":5,"8886":5,"888613":5,"8887":5,"8889":5,"889":5,"8891":5,"8892":5,"8893":5,"8894":5,"8896":5,"8897":5,"8898":5,"8899":5,"89":[5,6,13,15,16],"890":5,"8901":5,"8902":5,"8903":5,"8904":5,"8906":5,"8907":5,"8908":5,"8909":5,"891":5,"8910":5,"891056":5,"8911":5,"8912":5,"8917":5,"892":5,"89211":19,"8924":5,"8926":5,"893":5,"8934":5,"8935":5,"8939":5,"893941":5,"894":5,"894041":5,"8941":5,"8949":5,"895":5,"8955":12,"895821":5,"896":5,"8961":5,"896110e":19,"896196":5,"896286":5,"8972":5,"8975":5,"897612":5,"898":5,"8982":5,"898786":5,"899":5,"8992":5,"899464":5,"8a7d52edc59346ce991063d9e05e9ba7":6,"8e":0,"8m":[8,13],"8mb":13,"8s":[8,13],"9":[0,5,6,7,8,9,12,13,15,16,19],"90":[5,8,13],"900":5,"901":5,"901988":5,"902":5,"903":5,"9032":5,"9036":5,"9038":5,"904":5,"9043":5,"9046":5,"9047":5,"905":5,"905447944397":16,"9057":5,"906":5,"906059":5,"906299":5,"90695":5,"907":5,"9071":5,"90716":5,"9073":5,"9074":5,"908":5,"9087":5,"909":5,"9093":5,"9098":5,"90e":13,"91":[5,8,13],"910419":5,"9105":5,"910817":5,"910981":5,"911":5,"9110":5,"911093":5,"9113":5,"912":5,"912238":5,"912283":5,"912289":5,"912327":5,"9127":5,"912919":5,"913":5,"9139":5,"914":5,"9147":5,"9148":5,"915":[5,8],"915148":5,"915221":5,"9153":5,"91548":5,"916":5,"916093":5,"916207":5,"917":5,"917439":5,"9179":5,"918":5,"918543":5,"9189":5,"919":5,"9196":5,"91e":13,"92":[5,13],"920":5,"9203":5,"9206":5,"920832":5,"921":5,"9214":5,"922":5,"922199":5,"923":5,"92382":5,"924":5,"924056":19,"925":5,"9253":5,"9255":5,"9256":5,"925761":5,"926":5,"9263":5,"9264":5,"927":5,"929":5,"929511":5,"92995":5,"92e":13,"93":[5,13],"930":[5,15],"930282":5,"9304":5,"93044":5,"9308":5,"9309":5,"930943":5,"931":5,"9310":5,"932":5,"9323":5,"932839":5,"933":5,"9339":5,"934":5,"9342":5,"935":5,"935069":5,"9351":5,"9357":5,"935816":5,"936":5,"936532":5,"936762":5,"937":5,"9373e":19,"938":5,"938568":5,"938576":5,"93898":5,"939":5,"939376":5,"939378":5,"939757":5,"93e":13,"94":[5,6,8,13,20],"941":[5,8],"9411":5,"941478":5,"942":5,"942154":5,"9423":5,"9427":5,"942854":5,"943":5,"944":5,"9445":5,"94464":5,"945":5,"9452":5,"946":5,"946468":5,"946757":5,"947":5,"9471":5,"947719":5,"947774":5,"94797":5,"948":5,"949":5,"95":[5,13,15],"950":5,"9505":5,"950733":5,"9508":16,"951":5,"951344":5,"951597":5,"952":5,"9524":5,"952496":5,"953":5,"953182":5,"9537":5,"953738":5,"953798":5,"954":5,"954624":5,"9548":5,"954848":5,"955":5,"9557":5,"956":5,"9561":5,"956619":5,"957":5,"9573":5,"95783":5,"957894":5,"958":5,"959":5,"959422":5,"959492":5,"9595":5,"9598":5,"95e":8,"96":[5,6,8,13],"960":5,"9603":5,"9606":5,"960734":5,"961":5,"9610":5,"96112":5,"96161":5,"962":5,"962482":5,"962876":5,"963":[5,8],"964":5,"9648":5,"965":5,"9650":5,"965167":5,"96557e":5,"966":5,"966681":5,"967":5,"968":5,"969":5,"96963":5,"96e":13,"97":[5,13],"970":5,"970206":5,"970505":5,"970783":5,"971":5,"9713":16,"971686":5,"971941":5,"972":5,"9725":5,"973":[5,13],"973135":5,"97316":5,"9739":5,"9739752":8,"974":5,"9743":5,"9749":5,"975":5,"9757":5,"9758":5,"975864":5,"976":5,"976041":5,"977":5,"9779":5,"97797":5,"978":5,"979":5,"9794":5,"9797":5,"97e":[8,13],"98":[5,13,15],"98061":5,"98081":5,"98096":5,"981":5,"981292":5,"9814":5,"981555":5,"9816":5,"982":5,"9825":5,"983":5,"983229":5,"984":[5,15],"9841":5,"9842":5,"9844":16,"985":5,"9851":5,"985359":5,"9859":5,"986":[5,8],"9869":5,"987":5,"988":5,"988755":5,"989":5,"98e":13,"99":[5,13,15],"990":5,"9900":5,"9902":5,"9909":16,"991":5,"9912":5,"991224":5,"991657":8,"99191":9,"99192":9,"99194":9,"992":5,"99203":5,"9927":[5,12],"993":5,"994":5,"994118":5,"9948":16,"995":5,"995631":15,"995687":5,"995824":5,"996":[5,8],"996798":5,"997":5,"9977":5,"997751":5,"998":5,"998023":5,"99808":5,"998563":5,"999":5,"999122":5,"9999999999999998":15,"99e":13,"9e":8,"9m":13,"9mb":[8,13],"9s":[8,13],"abstract":41,"boolean":[0,2,7,20,21,22,25,39,43],"break":0,"case":[0,2,4,7,16,20,22,23,26,31,38],"catch":[6,8,12,13,14,15,16,19,20,22],"char":22,"class":[2,3,20,23,24],"const":[6,8,13,14,15],"default":[0,1,2,3,6,7,9,11,13,14,15,16,19,20,21,22,26,27,29,30,31,32,34,37,38,39,41],"do":[0,1,2,5,6,7,8,9,11,13,14,15,16,19,21,22,23,25,26,31,32,34,38,40,43],"export":[3,16,20,21,31],"final":[5,8,13,14,15,19],"float":[0,2,3,5,7,11,12,17,20,32,33,38,43],"function":[0,1,2,3,4,5,6,8,9,18,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,43],"import":[5,6,7,8,9,11,12,13,14,15,16,17,18,19,20,35],"int":[0,1,2,5,7,13,16,20,21,22,26,32,33,34,35,38,43],"krtickov\u00e1":0,"kub\u00e1t":0,"long":[0,6,8,16,22,28,31,35,39,42],"new":[0,2,6,8,12,13,14,15,16,20,21,26,31,32,35],"null":[0,6,7,8,20],"paczy\u0144ski":0,"public":[13,14,15,16,23],"return":[1,2,3,5,6,7,8,11,12,13,14,15,16,19,20,21,22,25,26,27,28,29,30,31,32,34,35,37,38,39,41,43],"short":[0,6,8,13,14,15,42],"super":0,"switch":0,"throw":[23,40],"true":[0,2,3,5,6,8,11,13,14,15,16,18,19,20,21,22,25,26,28,30,31,34,35,37,38,39],"try":[0,2,5,8,12,13,14,15,16,23,26,31,35,40],"void":9,"while":[0,5,6,7,8,13],A:[0,2,4,16,29,43],And:[23,34,40,43],As:[0,6,8,12,13,14,15,16],At:[6,16],But:12,By:[0,6,13,14,15,16,19,22],For:[0,2,9,12,13,14,15,25],If:[0,2,6,7,8,13,14,15,16,20,21,22,23,25,26,27,28,30,31,32,35,37,40,41,43],In:[0,2,6,8,9,11,12,13,14,15,16,19,22,31,38],It:[0,6,7,8,11,12,13,14,15,16,17,19,22,23,31,34,40],Its:22,NO:22,NOT:[0,35,38,41],No:[5,7,16,22,23,40],Not:[6,8],OR:[2,19],On:[0,16,20,31],One:[0,22],Or:[16,19],Such:8,That:[0,6],The:[0,1,2,3,4,6,7,8,9,11,12,13,14,15,16,17,19,20,21,22,23,25,26,28,29,30,31,32,33,35,37,38,40,41],Then:[2,6,20,23,40],There:[6,7,8,9,11,12,13,14,15,16,17,19,21,22,25,32,34],These:[6,7,13,14,15,16,20,22,25,26],To:[0,7,12,13,14,15,16,22,23,31,32,40],Will:[0,20,22,41],With:34,_1:[13,14,15],_:[6,8,13,14,15,22,34],__:16,__arg_begin:7,__attribute__:9,__delitem__:29,__enter__:20,__exit__:20,__getitem__:[2,29],__iadd__:2,__setitem__:29,_actually_evolve_system:22,_binary_c_bind:[7,9,12,17,39,43],_binary_c_config_execut:22,_binary_c_dir:22,_binary_c_execut:22,_binary_c_shared_librari:22,_commandline_input:22,_count:22,_custom_logging_shared_library_fil:22,_end_time_evolut:22,_errors_exceed:22,_errors_found:22,_evolution_type_opt:22,_failed_count:22,_failed_prob:22,_failed_systems_error_cod:22,_generate_grid_cod:22,_grid_vari:[14,15,22,35],_kill:22,_loaded_moe2017_data:22,_main_pid:22,_moe2017_json_data:22,_population_id:22,_pre_run_setup:21,_probtot:22,_process_run_population_grid:22,_queue_don:22,_repeat:22,_restart_dir:26,_set:21,_set_moe2017_grid:22,_start_time_evolut:22,_store_memaddr:22,_system_gener:22,_total_mass_run:22,_total_probability_weighted_mass_run:22,_total_starcount:22,_zero_prob_stars_skip:22,a173:0,a_in:5,a_out:5,ab:[0,20],abat:0,abbrevi:42,abl:7,about:[4,6,8,13,14,15,16,20,21,22,26,31,34,43],abov:[0,6,9,12,14,15,16,20,21,32],abridg:[7,9,16],absolut:[0,20,38],abund:0,ac:[6,16],acceler:0,accept:[16,20,27],access:[2,9,12,13,14,15,16,22,26,31],accord:[0,6,31,32,38],accordingli:[12,14,15,16],account:[0,22,32],accret:[0,5],accretion_limit_dynamical_multipli:0,accretion_limit_eddington_lmms_multipli:0,accretion_limit_eddington_steady_multipli:0,accretion_limit_eddington_wd_to_remnant_multipli:0,accretion_limit_thermal_multipli:0,accretor:[0,5,43],accur:[13,14,15],acquir:5,act:[0,14,15,16,22],activ:[0,22],actual:[0,3,6,8,9,12,13,14,15,16,21,22,23,25,30,32,38,40],ad:[2,4,6,8,12,31,35],adam:0,adapt:[0,14,15],add:[0,2,6,8,9,12,13,14,15,16,21,22,25,32,35,36,38],add_ensemble_metadata:36,add_grid_valu:38,add_grid_vari:[6,8,13,14,15,16,35],add_system_metadata:36,addit:0,address:[1,7,9,22,43],admittedli:25,adress:[7,9,43],advis:9,af:5,affect:[0,6],after:[0,6,8,9,13,14,15,16,21,22,31,35,38],ag89:0,ag:[0,4,5,6,8,15,23,38],again:[2,3,6,11,12,20,22],against:25,agb:[0,6],agb_3dup_algorithm:0,agb_core_algorithm:0,agb_core_algorithm_default:0,agb_core_algorithm_hurlei:0,agb_core_algorithm_karaka:0,agb_luminosity_algorithm:0,agb_luminosity_algorithm_default:0,agb_luminosity_algorithm_hurlei:0,agb_luminosity_algorithm_karaka:0,agb_radius_algorithm:0,agb_radius_algorithm_default:0,agb_radius_algorithm_hurlei:0,agb_radius_algorithm_karaka:0,agb_third_dredge_up_algorithm_default:0,agb_third_dredge_up_algorithm_hurlei:0,agb_third_dredge_up_algorithm_karaka:0,agb_third_dredge_up_algorithm_stancliff:0,ago:6,al:[0,32,43],albedo:0,algorithm:[7,23],algothim:0,all:[0,1,2,3,6,7,8,11,12,13,14,15,16,18,19,20,21,22,23,24,25,26,27,31,32,34,38,39,40,41],all_info:21,alloc:[7,38],allow:[0,2,9,18,19,22,29,32],allow_nan:3,almost:22,along:[0,22,23,34,40],alpha:[0,5],alpha_:8,alpha_c:[0,5,6,8],alpha_ej:5,alphacb:0,alreadi:[6,16,17,26,31,35],also:[0,4,5,6,7,8,9,13,14,15,16,19,20,21,22,23,26,28,31,34,39,40,43],alter:[8,13,35],altern:[0,22],although:17,alwai:[0,22,32,38],amanda:0,amax:32,amin:32,amount:[0,2,7],amp:[6,8],an:[0,2,3,6,7,8,11,12,13,14,15,16,19,20,22,23,26,27,30,31,32,33,34,35,36,37,38,41],analys:41,analyt:[6,8,13,14,15,16,21,23,24],analyz:12,andrew:[23,40],andronov:0,angelou_lithium_cheb_decay_tim:0,angelou_lithium_cheb_massfrac:0,angelou_lithium_cheb_tim:0,angelou_lithium_decay_funct:0,angelou_lithium_decay_tim:0,angelou_lithium_eagb_decay_tim:0,angelou_lithium_eagb_massfrac:0,angelou_lithium_eagb_tim:0,angelou_lithium_gb_decay_tim:0,angelou_lithium_gb_massfrac:0,angelou_lithium_gb_tim:0,angelou_lithium_hg_decay_tim:0,angelou_lithium_hg_massfrac:0,angelou_lithium_hg_tim:0,angelou_lithium_lmms_decay_tim:0,angelou_lithium_lmms_massfrac:0,angelou_lithium_lmms_tim:0,angelou_lithium_ms_decay_tim:0,angelou_lithium_ms_massfrac:0,angelou_lithium_ms_tim:0,angelou_lithium_tpagb_decay_tim:0,angelou_lithium_tpagb_massfrac:0,angelou_lithium_tpagb_tim:0,angelou_lithium_vrot_trigg:0,angelou_lithium_vrotfrac_trigg:0,angular:[0,17,25],ani:[0,3,12,16,20,21,23,26,32,35,39,40],anoth:[0,26],ansi:[0,20],ansi_colour:0,anyth:[0,13,14,15,16,20,22,38],anywai:[12,16,32,35],api:[0,4,20,23,26],api_log_filename_prefix:[0,5,12,17],appear:22,append:[1,2,6,12,13,14,15,17],appli:0,apply_darwin_radau_correct:0,appropri:[0,16,22,26,29,30,31,35,37],approxim:[0,6,8],ar:[0,1,2,3,4,6,7,8,9,11,12,13,14,15,16,17,19,20,21,22,23,25,29,30,31,32,34,35,37,38,39,40,43],arang:19,aren:[22,32],arenou2010_binary_fract:32,arg:[5,7,16,20,29,32,33],arg_dict:[2,20],argh:17,argopt:0,argpair:[11,39],argstr:[7,9,12,17,19],argument:[0,2,7,12,14,16,17,18,19,20,21,22,26,27,32,39,41],argument_of_periastron:0,argument_of_periastron_quadrupl:0,argument_of_periastron_tripl:0,aritif:8,around:[0,9,12,18,19],arrai:[12,16,19,20,22,32,35,38],arrow:0,artefact:[14,15],artifici:0,artificial_accretion_end_tim:0,artificial_accretion_ignor:0,artificial_accretion_start_tim:0,artificial_angular_momentum_accretion_r:0,artificial_mass_accretion_r:0,artificial_mass_accretion_rate_by_stellar_typ:0,artificial_orbital_angular_momentum_accretion_r:0,arxiv:[0,32],ask:[0,7,43],asplund:0,assign:[13,14,15,16,35],associ:[6,8,13,14,15,30,37],assum:[0,6,8,13,17,25,38],ast871:0,astronomi:0,astrophys:[8,14,15],astropi:[23,25,40],asymptot:6,atom:39,attempt:[3,20,21],au:17,auto:[1,24],autogen_c_logging_cod:[1,9,19],autogener:19,automat:[0,1,9,16,18,19,22,23,29,31,34,35,40],autoviv:2,autovivif:2,autovivificationdict:2,avaibl:[23,40],avail:[0,7,8,9,13,14,15,16,20,22,23,28,40],avoid:[6,7,8],awai:[0,13],ax:19,axessubplot:18,axi:[0,25],b6213f2eb7f94d3196cf966b7b76b9f9:15,b:[22,31],b_1:0,b_2:0,b_3:0,b_4:0,b_inclination1:0,b_inclination2:0,b_inclination3:0,b_inclination4:0,back:[0,2,5],background:19,backward:0,bagb:0,bar:[14,15],barn:0,base:[0,2,3,8,13,14,15,16,20,21,23,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,43],base_filenam:[16,21],bash:22,basic:[16,31],batch:22,batchmod:0,batchnam:22,bb:0,bbox_inch:19,beasor:0,becaus:[0,2,6,7,8,12,13,14,15,17,19,21,22,23,29,31,32,40],becom:[0,1,2,5,9,14,15,17,20,22],been:[0,2,11,21,22,26,28,30,37],befor:[0,2,5,6,8,13,14,15,16,21,22,23,31,32,40],beg_bss:5,beg_rch:5,beg_symb:5,begin:6,behaviour:[2,6,13,14,15,16,41],behind:19,being:[30,37],belczynski:0,below:[0,4,6,7,8,9,13,14,15,16,22,32],berro:0,bertolami:0,best:[5,21,22],beta:0,beta_reverse_nova:0,beta_reverse_novae_geometri:0,better:[0,2,4,7,16,26,30,31,37,43],between:[0,7,22,32,38],bewar:[16,31,35],beyond:17,bh:[0,5,8],bh_belczynski:[0,5],bh_bh:5,bh_fryer12_delai:0,bh_fryer12_rapid:[0,5],bh_fryer12_startrack:0,bh_hurley2002:0,bh_prescript:[0,5],bh_spera2015:0,bhbh:5,big:[0,22],bin:[0,8,13,14,15,20,22,23,38,40],bin_data:[8,13,14,15,20],binari:[4,7,8,12,14,15,22,23,25,32,35,40,43],binary_c2:[23,40],binary_c:[1,2,3,4,6,8,13,14,15,17,20,21,22,25,29,31,32,35,39,41],binary_c_api_funct:9,binary_c_cal:[16,31],binary_c_default:16,binary_c_grid:[6,8,13,16],binary_c_grid_25014bc73b334765a1c09a4e4a97ed66:13,binary_c_grid_26171201413c43f5b91552a374879940:6,binary_c_grid_2b66f805db424c48a1d29c45092b6e3c:8,binary_c_grid_8a7d52edc59346ce991063d9e05e9ba7:6,binary_c_grid_ce756bb317f64099a459bf8b55a746ac:16,binary_c_grid_f4e5925effeb42e69b5be956f400ae41:6,binary_c_inline_config:1,binary_c_log_cod:[1,9,12,18,19],binary_c_macro:0,binary_c_output:3,binary_c_paramet:[0,6,13,14,15,16],binary_c_python:[6,7,8,12,13,14,15,16,20],binary_c_python_api:19,binary_c_task_:0,binary_c_write_log_cod:1,binary_grid:0,binary_star:43,binaryc:[1,20,41],binaryc_config:1,binaryc_json_seri:3,binarycdecod:3,binarycencod:3,binarycpython3:7,binarycpython:[1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17,18,19,20,21,23,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,43],binarygrid:[13,14,15,16],bind:[0,7,9,12,17],binned_log_luminos:[13,14,15],binned_post_period:8,binned_pre_period:8,binwidth:[8,13,14,15,20],birth:0,bit:[6,13],bivari:0,black:[0,4,6,23],black_hol:0,block:[16,35],bloecker:0,blog:1,boltzman:25,boltzmann:0,bondi:0,bondi_hoyle_accretion_factor:0,bool:[2,16,20,21,25,31,34,35,39],born:[0,6,13,14,15],bosswissam:20,both:[0,2,7,13,14,15,16],bottom:[0,16,35],bottomcod:[6,8,16,35],bound:[5,32,38],boundari:32,brake:0,branch:[0,6,20,39],branchcod:[6,8,16,35],branchpoint:[6,8,16,35],breakup:0,brighten:[14,15],broken:0,bse:[0,7,9,16,32],bse_opt:[6,8,13,14,15,16,21,38],bsf:0,buffer:[0,31],build:[0,1,4,7,20,26,32],build_q_tabl:32,built:[0,1,20,23,40],burn:0,busso:0,bye:0,bz2:31,c13_eff:0,c2:32,c:[0,1,5,7,9,12,16,41],c_auto_log:22,c_log:0,c_logging_cod:[6,8,9,12,13,14,15,16,22],cach:[21,22,23,24,28,34,38],cache_dir:[22,38],cachedir:38,cachetool:[22,29],cachetyp:29,calc_e_integr:32,calc_p_integr:32,calc_period_from_sep:43,calc_sep_from_period:[8,13,16,43],calc_total_probden:32,calcul:[0,2,6,8,13,14,15,16,20,22,28,32,35,43],calculate_constants_three_part_powerlaw:32,call:[0,1,2,11,12,14,15,16,17,20,21,22,25,26,30,31,33,35,37,38,39,41],call_binary_c_config:20,calls_filenam:16,can:[0,1,2,5,6,7,8,9,11,12,13,14,15,16,18,19,20,21,22,23,25,26,31,32,35,40,41,43],candid:8,cannot:[6,9,16,29,31,34],canon:22,cap:0,capit:[13,14,15],capsul:[1,7,20],captur:[0,20],carbon:[0,5,6],carbon_oxygen_white_dwarf:0,care:[6,13,14,15,22],carlo:[0,22],carrasco:0,carri:0,carriag:[20,22],cast:[19,20],catchtim:20,categor:7,categori:[7,16],categoris:20,caught:[12,20,39],caus:[5,13,43],cbdisc:0,cbdisc_albedo:0,cbdisc_alpha:0,cbdisc_eccentricity_pumping_dermin:0,cbdisc_eccentricity_pumping_method:0,cbdisc_eccentricity_pumping_non:0,cbdisc_end_evolution_after_disc:0,cbdisc_fail_ring_inside_separ:0,cbdisc_gamma:0,cbdisc_init_djdm:0,cbdisc_init_dm:0,cbdisc_inner_edge_strip:0,cbdisc_inner_edge_stripping_timescal:0,cbdisc_kappa:0,cbdisc_mass_loss_constant_r:0,cbdisc_mass_loss_fuv_multipli:0,cbdisc_mass_loss_inner_l2_cross_multipli:0,cbdisc_mass_loss_inner_viscous_accretion_method:0,cbdisc_mass_loss_inner_viscous_accretion_method_equ:0,cbdisc_mass_loss_inner_viscous_accretion_method_gerosa_2015:0,cbdisc_mass_loss_inner_viscous_accretion_method_non:0,cbdisc_mass_loss_inner_viscous_accretion_method_young_clarke_2015:0,cbdisc_mass_loss_inner_viscous_angular_momentum_multipli:0,cbdisc_mass_loss_inner_viscous_multipli:0,cbdisc_mass_loss_ism_pressur:0,cbdisc_mass_loss_ism_ram_pressure_multipli:0,cbdisc_mass_loss_xray_multipli:0,cbdisc_max_lifetim:0,cbdisc_minimum_evaporation_timescal:0,cbdisc_minimum_fr:0,cbdisc_minimum_luminos:0,cbdisc_minimum_mass:0,cbdisc_no_wind_if_cbdisc:0,cbdisc_outer_edge_strip:0,cbdisc_outer_edge_stripping_timescal:0,cbdisc_resonance_damp:0,cbdisc_resonance_multipli:0,cbdisc_torquef:0,cbdisc_viscous_l2_coupl:0,cbdisc_viscous_photoevaporative_coupl:0,cbdisc_viscous_photoevaporative_coupling_inst:0,cbdisc_viscous_photoevaporative_coupling_non:0,cbdisc_viscous_photoevaporative_coupling_visc:0,ce756bb317f64099a459bf8b55a746ac:16,ce:[0,8],cee:[0,8],cell:[7,13,14,15,16],cemp:0,cemp_cfe_minimum:0,centr:[8,16,35],central:17,central_object:0,centralis:41,certain:[22,23,40],certainli:22,cf:0,cf_amanda_log:0,cflag:[23,40],chabrier:32,challeng:[14,15],chandrasekhar:0,chandrasekhar_mass:0,chang:[0,1,2,5,6,8,9,13,14,15,16,19,20,21,22,23,34,35,40],chapter:[0,22,24],charact:[20,22,31],cheb:0,check:[0,6,8,13,14,15,16,19,20,21,22,26,30,31,32,34,37,41,43],check_circular:3,check_if_in_shel:20,chemic:[0,38],chen:0,child:20,child_dir:20,choic:[0,25,32],choos:[0,6,8,9,13,19,25,26,31],chose:12,chosen:[13,14,15,16,35],chunk:[30,37],ci:17,circular:[0,5],circumbinari:0,circumstanti:0,cl:3,claei:0,clark:0,clean:[1,6,12,14,15,21],clean_up_custom_logging_fil:21,clear:[14,15,39],clearli:[14,15],clock:20,close:[0,5,8,14,15,17,31],closedir:31,closefd:31,closer:5,cloud:0,clusterid:[22,30],cmdline_str:33,co2:[14,15],co:[0,5],coalesc:5,code:[0,1,6,8,9,12,13,14,15,16,18,19,21,23,25,30,31,32,34,35,37,38,40,41,43],collaps:0,collapsar:0,collect:43,collid:43,color:[20,25],color_by_index:25,colour:0,colour_log:0,column:[6,8,12,16,17,19,25],column_nam:12,com:[1,20,32],combin:[1,2,9,20,21,22],combine_ensemble_with_thread_join:22,combined_output_dict:36,come:[2,23,38,40],comenv:[5,8],comenv_bs:0,comenv_count:8,comenv_disc_angmom_fract:0,comenv_disc_mass_fract:0,comenv_ejection_spin_method:0,comenv_ejection_spin_method_do_noth:0,comenv_ejection_spin_method_sychron:0,comenv_ejection_spin_method_synchron:0,comenv_merger_spin_method:0,comenv_merger_spin_method_breakup:0,comenv_merger_spin_method_conserve_angmom:0,comenv_merger_spin_method_conserve_omega:0,comenv_merger_spin_method_specif:0,comenv_ms_accret:0,comenv_ms_accretion_fract:0,comenv_ms_accretion_mass:0,comenv_nandez2016:0,comenv_nelemans_tout:0,comenv_ns_accret:0,comenv_ns_accretion_fract:0,comenv_ns_accretion_mass:0,comenv_post_eccentr:0,comenv_prescript:0,comenv_splitmass:0,comenv_undef:0,comma:38,command:[0,1,16,20,21,22,23,31,40],command_lin:22,command_string_from_list:20,commandlin:16,comment:[16,26,30,37],common:[0,4,5,6,9,12,13,14,15,16,23],compact:[8,16],companion:[0,5,19,31],compar:[0,8,13,16,22],compens:[14,15],compil:[1,9,16,19,23,40],compile_shared_lib:1,complaint:31,complet:[6,8,13,14,15,16],complex:[2,8,9,18,19,22],compon:[20,25],compress:[3,31],compress_pickl:31,compression_typ:31,compresslevel:31,comput:[0,6,13,14,15],concaten:2,conceptu:13,concurr:22,condit:[6,8,9,13,14,15,16,18,19,35],condor:[22,23,24,26],condor_bash:22,condor_batchnam:22,condor_check_requir:30,condor_clusterid:[22,30],condor_d:22,condor_dir:[22,26,30,37],condor_env:22,condor_extra_set:22,condor_getenv:22,condor_grid:30,condor_initial_dir:22,condor_kill_sig:22,condor_memori:22,condor_njob:22,condor_outfil:30,condor_postpone_join:22,condor_postpone_submit:22,condor_process:[22,30],condor_pwd:22,condor_q:22,condor_queue_stat:30,condor_requir:22,condor_should_transfer_fil:22,condor_snapshot_on_kil:22,condor_status_fil:30,condor_stream_error:22,condor_stream_output:22,condor_submit:22,condor_univers:22,condor_warn_max_memori:22,condor_when_to_transfer_output:22,condorid:30,condorpath:30,config:[1,20,22,23,40],config_fil:1,configur:[6,11,12,13,14,15,16,19,22,27,32],confirm:31,conjunct:11,conserv:0,consid:[0,1,2,13,14,15,21,22,25,33,34,38],const_distribut:32,const_dt:38,const_dt_cach:38,const_int:38,const_linear:[16,35,38],const_rang:38,constant:[0,2,14,15,25,32,38],construct:[0,1,6,8,12,13,14,15,17,19,22],contact:5,contain:[0,1,2,3,7,11,12,13,14,15,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],content:[2,3,7,20,21,26],context:20,continu:[16,30,35,37],contribut:[23,40],control:[0,6,13,14,15,16,22],conv_time_unit:20,convect:0,conveni:20,converg:0,convers:2,convert:[2,3,6,8,17,20,21,31,32,38],convert_byt:20,convert_float_kei:3,convfloat:20,convfrac:5,cool:[0,6],copi:[0,8,14,15,22,43],core:[0,6,8,13,14,15,16,22,25],core_co:9,core_h:9,core_helium_burn:0,core_mass:[0,9],correct:[0,12,21,25,32,33,43],correctli:[12,19,23,40],correspon:[30,37],correspond:[16,25,30,35,37],corretor:0,cosmic:32,cosmic_sfh_madau_dickinson2014:32,cost:[13,14,15],could:[0,3,14,15,16,19,20,39],count:[2,5,6,19,20,22],count_keys_recurs:2,counter:22,coupl:[0,4],cours:[6,25],cover:[11,13,14,15],coverag:[23,40],cowd:0,cpu:[0,6,8,13,14,15,16,22,28],cpu_tim:28,cpython:7,crap_paramet:0,creat:[3,6,8,9,12,13,14,15,16,20,21,28,31,32,35,37],create_and_load_logging_funct:[1,9,19],create_arg_str:20,create_hdf5:20,creation:7,critic:0,cross:0,crunch:[6,8,13,14,15],cs1:17,ctype:1,cube:13,cubic:13,cuntz:0,current:[0,2,8,9,11,13,14,15,20,23,26,31,40],curv:[8,14,15],custom:[0,1,2,3,4,6,7,8,12,13,14,15,16,20,21,22,23,25,32,41],custom_format:[2,20],custom_gener:22,custom_log:[12,19,21,22],custom_logging_cod:[1,9,12,16,18,19,41],custom_logging_func_memaddr:[7,9,22],custom_logging_funct:[9,12,16,18,19,22,23,24],custom_logging_info:21,custom_logging_memaddr:9,custom_logging_print_stat:12,custom_logging_stat:[6,8,13,14,15],custom_opt:[6,12,13,14,15,16,21,31],custom_output_funct:9,custom_sort_dict:2,custom_tmp_dir:1,customis:25,cut:19,cvode:0,d48r:19,d:[0,1,5,6,8,9,12,13,16,17,20,38],d_:20,dai:[0,5,8,9,12,13,16,19,32,43],damp:0,darwin:0,dat:[0,16,20],data:[0,3,5,6,7,8,12,13,14,15,16,17,19,20,22,26,27,31,32,35,41,43],data_dict:32,data_dir:[16,20,21,22,31],datadir:[16,31],datafram:[6,8,12,13,14,15,17,18,19,25],dataio:[16,21,23,24],datalinedict:[6,8,13,14,15,20],datamodel:2,dataset:[16,22,26,27],date:[20,21,22],david:[0,2,7,12,16,19,23,40],david_logging_funct:0,db09898b6:0,dd7:0,de:[0,5],deactiv:0,deal:[3,12],dear:5,death:0,debug:[0,5,6,8,13,14,15,16,22,33],decai:0,decid:[0,2,9,18,19,20,21,22,26],decod:3,decompress:3,decreas:0,deepcopi:8,deeper:[16,35],def:[5,6,8,12,13,14,15,16,19],default_cache_dir:[29,34],default_to_metal:[0,7],defaultdict:20,defer:0,defin:[0,1,16,17,21,25,32,35],definit:[1,13,14,15,43],degener:0,degenerate_core_helium_merger_ignit:0,degenerate_core_merger_dredgeup_fract:0,degenerate_core_merger_nucsyn:0,degner:0,degre:0,del:8,delai:[0,22],delet:[29,35],delete_grid_vari:35,delta:[20,38],delta_mcmin:0,demonstr:8,den:0,densiti:[13,14,15,32],depend:[0,6,20,22,23,25,32,40],deprec:[0,21],depth:38,dermin:0,describ:[0,19,22,32],descript:[0,7,11,20,22,27,32,34],design:[2,25],desir:0,destruct:[16,35],detail:[0,6,12,20,22],detect:[0,5,8,17],detector:5,determin:[0,7,9,13,14,15,16,21,32,35,43],deton:0,dev:0,develop:1,development_requir:[23,40],deviat:[32,38],dewi:0,dex:[0,8,38],df2:19,df:[17,18,19,25],di:[16,23,27,32],diagnost:22,diagram:[0,4,23,25],dickonson:32,dict2:2,dict:[1,3,5,6,12,13,14,15,16,17,20,21,22,23,24,26,27,29,31,32,34,39,42],dict_1:2,dict_2:2,dict_kei:[6,11,12],dictionari:[1,2,3,4,6,8,13,14,15,16,20,21,22,25,27,28,31,32,34,35,39,42],did:[20,23,40],differ:[0,6,7,8,13,14,15,16,19,20,22,23,25,38,40],differenti:20,dimmer:[0,13],dir:[23,30,40],dir_ok:31,direct:[0,21],directli:[2,12,22,26,31],director:22,directori:[0,4,16,20,21,22,23,26,29,30,31,34,37,40],disabl:[0,16],disable_debug:0,disable_end_log:0,disable_ev:0,disc:[0,17],disc_legacy_log:0,disc_log2d:0,disc_log:0,disc_log_directori:0,disc_log_dt:0,disc_log_level_non:0,disc_log_level_norm:0,disc_log_level_normal_first_disc_onli:0,disc_log_level_subtimestep:0,disc_log_level_subtimestep_first_disc_onli:0,disc_n_monte_carlo_guess:0,disc_stripping_timescale_infinit:0,disc_stripping_timescale_inst:0,disc_stripping_timescale_orbit:0,disc_stripping_timescale_visc:0,disc_timestep_factor:0,discret:16,discs_circumbinary_from_comenv:0,discs_circumbinary_from_wind:0,disk:[0,21],dispers:[0,38],displai:[0,6,8,17],disrupt:[0,5,19],dist:20,distanc:[6,17],distant:17,distefano2017:22,distefano:[26,27,32],distinct:21,distrefano:27,distribut:[0,2,4,8,13,16,20,26,27,32,38],distribution_funct:[6,8,13,14,15,16,21,23,24],divid:2,dj:0,dlnm1:[8,13,16],dlnm:[14,15],dlnm_1:[14,15,16,35],dlog10per:[8,13,16],dlogp:32,dlogt:38,dm1:[6,14,15],dm:[0,5,14,15,32,38],dm_1:[6,14,15],dn:[20,32],do_analyt:22,do_dry_run:22,doc:[2,6,13,14,15,16,20,23,34,40],doc_fetch:32,docstr:[12,23,25,40],document:[13,14,15,16,22,24,31,34],doe:[0,2,6,7,9,11,12,13,14,15,16,21,22,29,31,32,35,43],doesn:[6,22],doesnt:[19,34],don:[2,6,20,22,26],done:[0,2,5,6,13,14,15,16,19,22,23,31,40],donor:[0,5,43],donor_limit_dynamical_multipli:0,donor_limit_envelope_multipli:0,donor_limit_thermal_multipli:0,donor_rate_algorithm_bs:0,donor_rate_algorithm_claeys2014:0,dont:[7,19],doubl:[6,9,16,20],down:16,dp:32,dphasevol:[6,8,13,14,15,16,35],dprob:[6,8,14,15],dq:[8,13,16],dr2:0,dr3:0,drai:0,dredg:0,drop:12,dry:[6,8,13,15,16,22,35],dry_parallel:[16,35],dry_run:[6,8,13,16],dry_run_hook:22,dry_run_num_cor:22,dstep:32,dt:[0,1,20,29,38],dt_limit:11,dtfac:0,dtlimit:39,dtm:[1,9,16],dtype:[17,18,19],due:[23,40],dummi:[22,25,32],dump:[0,3,12,21,31],dumpvers:0,duquennoi:32,duquennoy1991:32,dure:[0,5,19],dust:0,dwarf:[0,6,14,15],dx:0,dynam:0,e2:0,e2_hurley_2002:0,e2_izzard:0,e2_mint:0,e2_prescript:0,e:[0,2,5,6,7,8,9,12,13,14,15,16,20,21,22,23,26,29,30,31,32,35,37,38,40,43],each:[0,2,8,13,14,15,16,17,20,22,26,35,38],eagb:[0,5],eagb_wind_beasor_etal_2020:0,eagb_wind_bs:0,eagb_wind_goldman_etal_2017:0,eagbwind:0,eagbwindfac:0,earli:0,early_asymptotic_giant_branch:0,earth:17,easi:[3,12],easier:[16,19,20],ebindi:5,ecc2:32,ecc3:32,ecc:[5,12,16,19,31,32],eccentr:[0,7,9,12,13,14,15,16,17,19,25,32,43],eccentric_rlof_model:0,eccentricity_quadrupl:0,eccentricity_tripl:0,echo:0,eddington:0,edg:[0,6,16,35],edit:9,edu:0,eej:5,eff:6,effect:[0,5,7,9,13,22,32],effective_metal:[0,7,19],effici:[0,6,8],egg:[23,40],eggleton:[0,43],either:[0,2,3,13,14,15,16,19,21,22,23,35,39,40,41],eject:[0,8,17],el:[12,16],elabor:9,elaps:28,eld:0,eldridg:0,electon:0,electron:0,element:[0,1,11,17,22,25,39],els:[2,5,8,20,22],email:39,emp:0,emp_feh_maximum:0,emp_logg_maximum:0,emp_minimum_ag:0,empti:[2,12,30,34,37],enabl:[0,7],encod:[3,16,31],encount:22,end:[0,5,20,22,28,32],end_bss:5,end_index:32,end_rch:5,end_symb:5,end_timestamp:[6,8,13,15,16],energi:0,enhanc:0,enlarg:0,enough:32,ensembl:[0,7,11,22,23,24,31,35,36,39],ensemble_compress:3,ensemble_def:0,ensemble_dictionari:3,ensemble_dt:0,ensemble_factor_in_probability_weighted_mass:22,ensemble_file_typ:3,ensemble_filt:11,ensemble_filter_:0,ensemble_filters_off:0,ensemble_json:3,ensemble_legacy_ensembl:0,ensemble_list:21,ensemble_logdt:0,ensemble_logtim:0,ensemble_macro:0,ensemble_output_:22,ensemble_set:3,ensemble_startlogtim:0,ensemebl:3,ensure_ascii:[3,21,31],enter:[0,22],enthalpi:0,entir:[9,12,18,19],entri:[3,20,21],env:[22,25],envelop:[0,4,5,6,23],environ:22,eorbf:5,eorbi:5,ep:19,epoch:33,equal:[0,2,14,15,16,20],equat:0,equation_of_state_algorithm:0,equation_of_state_paczynski:0,equatori:0,equival:[13,22,26],errno:[23,40],error:[0,2,6,8,13,14,15,20,22,23,26,31,40],error_on_overwit:26,error_on_overwrit:26,errors_exceed:[6,8,13,15,16],errors_found:[6,8,13,15,16],esa:32,escap:0,escape_fract:0,escape_veloc:0,estim:[6,17,20,22],et:[0,32,43],eta:[0,8,13],etal:0,etc:[0,7,12,14,15,16,20,21,22,23,25,31,32,40,41],etf:[8,13],euler:0,evalu:[16,32,35,38,43],evan:0,evapor:0,evaporate_escaped_orbiting_object:0,even:[3,11,14,15],event:[0,5,6],everi:[0,8,20,22,23,40],everyth:[12,16,21,22],everytim:[23,40],evid:0,evolut:[0,1,4,5,6,7,12,13,14,15,16,19,22,23,25,38],evolution_split:0,evolution_splitting_maxdepth:0,evolution_splitting_sn_eccentricity_threshold:0,evolution_splitting_sn_n:0,evolution_stop:8,evolution_typ:[6,8,13,15,16,22],evolutionari:[0,12],evolv:[0,4,7,9,21,22],evolve_popul:16,evolve_singl:[9,12,21],exact:[1,2,22],exactli:[0,14,15],exampl:[1,2,12,20,32,35,38,41],example_compact_object:16,example_dco:16,example_df:12,example_head:20,example_header_1:19,example_header_2:19,example_log:41,example_log_co:[1,9],example_logging_string_co:9,example_logging_string_post_m:9,example_massloss:[9,12],example_output:12,example_parse_output:[18,20],example_pop:[12,16],example_pop_set:16,example_post_m:9,example_python_population_result:16,example_sn:9,exc_tb:20,exc_typ:20,exc_val:20,exce:[0,13],except:[2,5,6,7,13,14,15,16,22,25,34],excess:22,excit:8,exclud:26,execut:[0,16,22,35],exist:[0,2,6,16,19,22,26,31,34,35],exist_ok:[16,20],exists_ok:31,exit:[0,20,21,22,26,30,31,37],exit_after_dry_run:22,exit_cod:22,exp:[8,13,14,15,16,35],expand:16,expect:[6,7,8,13,14,15,22,23,40],experiment:[0,20],explain:[4,39],explicitli:[0,1],explod:[0,5],explor:17,explos:[0,5,6,19],expoenti:0,expon:[0,20],export_all_info:[16,21],express:[0,20],extend:[0,8,23,39,40],extens:[3,7,23,24],extern:0,extra:[0,4,16,22,23,33,35,41],extra_text:34,extract:[3,16],extract_ensemble_json_from_str:3,extrapol:[22,32],ey:33,f4e5925effeb42e69b5be956f400ae41:6,f:[0,5,12,16,19,32],fa:32,fabian:0,fabian_imf_log:0,fabian_imf_log_tim:0,fabian_imf_log_timestep:0,factor:[0,2,22,38],fade:0,fail:[0,6,8,13,16,20,22,23,31,40],fail_sil:20,failed_count:[6,8,13,15,16],failed_prob:[6,8,13,15,16],failed_system:22,failed_system_log:22,failed_systems_error_cod:[6,8,13,15,16],failed_systems_threshold:22,failsaf:12,failur:[0,20,26],fallback:0,fals:[0,3,5,6,8,13,15,16,17,20,21,22,25,26,28,29,30,31,35,37,38,39],fancy_parsing_funct:41,far:[0,5,6,14,15,17],farmer:0,fase:16,fast:0,faster:[2,13,14,15,16],fatal_open_error:31,favorit:12,fe:0,featur:[2,4,16,23],feb:0,feed:22,ferguson:0,fetch:[11,12],few:[0,8],fewer:12,field:0,fifocach:22,fig:[0,19,32],figsiz:[6,8,13,14,15,17,19],figur:[6,8,13,14,15,17,25],file:[0,1,3,5,7,12,16,20,21,22,23,25,26,29,30,31,34,35,37,39,40,41],file_log:0,file_object:31,filehandl:34,filenam:[0,1,3,5,12,16,20,21,22,26,30,31,37,41],filenotfounderror:[23,40],filepath:1,fill:[12,20],fill_data:32,filter:[0,2,20],filter_arg_dict:20,filter_dict:2,filter_dict_through_valu:2,filter_list:2,filter_valu:20,fin:0,final_mass:19,final_tim:19,find:[2,5,8,16,20,22,29,34],finish:[6,8,13,15,16,20,25,31],finit:[6,8,13,14,15],first:[0,2,6,8,12,13,14,15,16,17,20,23,26,31,32,40,43],first_giant_branch:0,fishlock:0,fit:[0,2,12,32,43],fix:[0,5,12,20,21,25,31,32,33],flag:[0,1,21,22,31,38,39],flash:0,flat:[22,32],flatsect:[8,13,16,32],flaw:21,float64:[18,19],float_overflow_check:0,flto:[23,40],flufl:31,flush:[3,21,31],fo:22,focu:8,fold:32,follow:[0,7,9,16,19,20,22,23,25,32,38,40],font_scal:[6,8,13,14,15,17],fontsiz:19,forc:[0,5,22,28],force_circularization_on_rlof:0,force_corotation_of_primary_and_orbit:0,foreach_star:[6,13],form:[0,6,7,8,13,14,15,16,21,26,31,34,39],formal:0,format:[0,2,3,5,7,8,9,12,13,14,15,16,17,19,20,22,30,31,32,35,38],format_ensemble_result:3,format_numb:20,format_stat:31,former:5,formula:[0,20],forward:0,found:[5,6,8,13,15,16,30,32,37],four:[0,7],fourth:17,fraction:[0,13,19,22,32],fractions_z0002:19,fractions_z001:19,fractions_z002:19,framework:7,free:[6,8,13],free_persistent_data_memaddr_and_return_json_output:7,free_store_memaddr:7,frequenc:[0,17],friction:0,fring:0,from:[0,2,3,5,6,8,11,12,13,14,15,16,17,18,19,20,21,22,25,26,30,31,32,35,37,39,43],from_binary_c_config:1,from_dict:[8,13,14,15,18,19],fryer:0,fsampl:38,ftz:[23,40],full:[4,9,17,20,22,30,37],full_path:20,func:29,func_memaddr:19,function_cach:22,function_cache_default_maxs:22,function_cache_default_typ:22,function_cache_funct:[22,29],function_cache_s:29,function_cache_ttl:22,further:16,futur:17,fuv:0,g:[0,1,2,5,6,8,9,12,13,14,15,16,18,19,20,22,23,26,29,30,31,32,37,38,40],ga:0,gaia:[0,32],gaia_colour_transform_method:0,gaia_conversion_ubvri_bivariate_jordi2010:0,gaia_conversion_ubvri_riello2020:0,gaia_conversion_ubvri_univariate_evans2018:0,gaia_conversion_ubvri_univariate_jordi2010:0,gaia_conversion_ugriz_bivariate_jordi2010:0,gaia_conversion_ugriz_riello2020:0,gaia_conversion_ugriz_univariate_evans2018:0,gaia_conversion_ugriz_univariate_jordi2010:0,gaia_l_binwidth:0,gaia_teff_binwidth:0,galact:[0,38],gallino:0,gamma:0,gap:0,garcia:0,gauss:0,gaussian:[32,38],gaussian_func:32,gaussian_normalizing_const:32,gaussian_zoom:38,gb:0,gb_reimers_eta:0,gb_wind_beasor_etal_2020:0,gb_wind_goldman_etal_2017:0,gb_wind_reim:0,gb_wind_schroeder_cuntz_2005:0,gbwind:0,gbwindfac:0,gcc:[1,23,40],gce:0,gener:[0,1,6,7,8,9,12,13,15,16,18,19,20,21,22,25,26,31,32,34,35,38],general_info:2,generalis:32,geometr:0,geq:6,gerosa:0,get:[0,2,3,4,6,9,12,13,14,15,16,17,19,20,21,23,26,27,30,32,34,35,37,40,41,43],get_ansi_colour:20,get_arg_kei:20,get_condor_statu:30,get_default:[11,20],get_grid_options_defaults_dict:34,get_grid_options_descript:34,get_help:[11,20],get_help_al:[11,20,21],get_help_sup:[11,20],get_integration_constant_q:32,get_max_multipl:32,get_moe_di_stefano_2017_default_opt:27,get_moe_di_stefano_2017_default_options_descript:27,get_moe_di_stefano_dataset:27,get_siz:20,get_slurm_statu:37,get_usernam:20,getitem:2,gettempdir:19,getter:29,giant:[0,6,17],giant_branch:0,git:[0,13,14,15,16,20],git_branch:39,git_build:39,github:[20,31],gitlab:23,give:[0,5,8,20,21,32,43],given:[0,1,3,7,13,14,15,18,19,20,21,22,26,29,30,31,32,35,37,38,41,43],global:[0,2,13,14,15,20,32,38],global_dict:2,gmax:32,gmin:32,gnu:7,go:[0,6,11,13,16,21,23,25,40],goal:32,goe:[0,2,9,12,25],gogo:0,goldman:0,gonna:32,good:[0,12,13,14,15,16,22,43],got:[14,15],gov:0,gravit:[0,6,8,16],gravitational_const:6,gravitational_radiation_bs:0,gravitational_radiation_bse_when_no_rlof:0,gravitational_radiation_landau_lifshitz:0,gravitational_radiation_landau_lifshitz_when_no_rlof:0,gravitational_radiation_model:0,gravitational_radiation_modulator_:0,gravitational_radiation_modulator_j:0,gravitational_radiation_non:0,grb:0,great:[0,14,15,22],greater:0,grevess:0,grid:[0,4,12,20,21,23,26,27,30,31,32,33,34,35,36,37,38,43],grid_cod:21,grid_ensemble_result:[31,36],grid_log:[21,23,24],grid_opt:[6,8,12,13,14,15,16,21,26,29,30,31,35,36,37,38],grid_options_default:[21,23,24,29],grid_options_defaults_dict:34,grid_options_descript:[6,16,34],grid_options_description_check:34,grid_options_help:34,grid_result:[6,8,13,14,15,22],grid_vari:[16,22],grid_variable_numb:[6,8,35],gridcod:[16,21,23,24],gridcode_filenam:22,gridtyp:[6,8,16,35],group:[6,13,17,39],grvitation:5,gsl:[23,40],gsl_dir:[23,40],gt:[5,6,7,8,9,12,14,16,17,18,19],guess:[0,32],gyr:[5,6,8],gz:[16,31],gzip:31,h5py:[23,40],h:[0,5,9,20],ha:[0,1,2,5,6,8,9,11,13,14,15,16,19,20,22,28,31,35],hachisu:0,hachisu_disk_wind:0,hachisu_ignore_qcrit:0,hachisu_qcrit:0,hack:34,had:[6,8,13,14,15,21],half:[0,32],hall:0,handi:0,handl:[0,2,3,4,7,12,20,21,22,26,27,35,36,39,41,43],handle_ensemble_string_to_json:3,happen:[0,6,8],hardcod:[9,13,14,15,16],hardli:39,have:[0,2,3,4,5,6,7,8,9,12,13,14,15,16,19,20,21,22,23,25,26,30,31,34,37,40,41],haven:6,hbb:0,hbbtfac:0,hd:25,hdf5:20,hdf5file:20,he:[0,5],head:[0,17],header:[1,6,8,9,12,13,14,15,16,19,20],headerlin:16,headlin:22,hegb:[0,5],hehg:0,height:[8,13,16,32],held:[30,37],helium:[0,6,7],helium_flash_mass_loss:0,helium_white_dwarf:0,help:[0,5,7,11,12,13,14,15,16,20,34],help_al:0,hem:0,henc:[0,8,14,15,17],hendrik:[0,19,23,40],here:[1,6,7,9,12,13,14,15,17,19,20,21,22,25,32,41],hertzsprung:[0,4,23],hertzsprung_gap:0,hertzstrpung:0,heuvel:0,hewd:0,hewd_hewd_ignition_mass:0,hex:22,hg:0,hi:32,high:[0,14,15,32],higher:[0,6,8,13,14,15,16,20,22,23,32,40],highlight:2,histogram:8,histori:32,hole:[0,4,6,23],home:7,homogen:0,hood:12,hook:22,hopefulli:0,hot:0,hour:20,how:[0,2,5,6,7,8,9,12,13,14,15,16,19,22,28,32,35],howev:[0,9,13,14,15,16],hoyl:0,hpc:[21,22,23,24,30,37],hpc_can_join:26,hpc_check_requir:26,hpc_dir:26,hpc_dump_statu:26,hpc_force_join:22,hpc_get_statu:26,hpc_grid:26,hpc_id_filenam:26,hpc_id_from_dir:26,hpc_job:26,hpc_job_id_rang:26,hpc_job_task:26,hpc_job_typ:26,hpc_jobid:[21,26],hpc_jobid_tupl:26,hpc_join_from_fil:26,hpc_join_previ:26,hpc_joinlist:26,hpc_load_joinfiles_list:26,hpc_make_joiningfil:26,hpc_njob:26,hpc_path:26,hpc_queue_stat:26,hpc_rebuild_joinlist:[22,26],hpc_restor:26,hpc_set_statu:26,hpc_snapshot_filenam:26,hpc_statu:26,hpc_task:26,hpc_touch:26,hr:25,hr_diagram:25,hrd:[0,6,8],hrdiag:0,hrdiag_output:0,htcondor:22,html:[2,6,16,23,31,40],http:[0,1,2,6,16,20,31,32],human:20,hurlei:0,hut:0,hybrid:0,hydro:0,hydrogen:[0,6,7],i:[1,2,5,6,7,8,9,12,13,14,15,16,17,20,21,22,23,26,32,35,39,40,43],ia:[0,8],iadd:2,ib:[0,5],ibc:0,id:[21,22,26,30,31,32,33,37],id_cor:9,idea:[16,25],ident:2,idum:0,ignit:[0,6],ignor:[0,2,9,12,16,19,22,32,35],ii:[0,19],iia:0,iloc:[12,19],images:22,imf:[0,14,15,32],imf_chabrier2003:32,imf_scalo1986:32,imf_scalo1998:32,imf_tinsley1980:32,immedi:[0,6,22],implement:[0,2,22],impli:0,implic:[14,15],impos:[6,8,13,14,15,16],imposs:8,improv:[32,38],inclin:0,inclination1:0,inclination2:0,inclination3:0,inclination4:0,inclini:0,incliniation_quadrupl:0,incliniation_tripl:0,includ:[0,1,2,6,9,12,14,15,16,17,20,21,23,25,31,32,40],include_binary_c_default:[16,21],include_binary_c_help_al:[16,21],include_binary_c_version_info:[16,21],include_default:[16,31],include_popul:16,include_population_set:21,incom:0,increas:[0,5,8,13,14,15],inde:[0,14,15],indent:[2,3,12,21,31],independ:32,index:[0,7,11,12,16,17,22,23,26,32,35],indic:[0,32],individu:[4,13,23],individual_nova:0,induc:0,inertia:0,info:[7,11,16,20,21,23,25,39,40],inform:[0,1,3,4,6,9,12,13,14,15,16,20,21,22,25,26,32,34,36,39],init:21,init_abund:0,init_abund_dex:0,init_abund_mult:0,init_abunds_onli:0,initi:[0,4,5,7,11,12,19,21,32],initial_abundance_hash:21,initial_abundance_mix:0,initial_abunds_onli:0,initial_grid:19,initial_mass:[12,19],initial_tim:19,inlin:19,inner:[0,17],input:[1,2,3,7,11,12,20,21,22,23,25,27,31,32,33,34,41,43],input_dict:2,insert:[16,35],insid:0,inspect:[2,12,25],inspect_dict:2,inspir:[1,25,43],instabl:0,instal:[22,43],install_without_depend:[23,40],instanc:[2,11,12,13,14,15,16,32],instant:0,instantli:0,instead:[0,5,14,15,20,22],integ:[0,6,22,38,43],integr:[13,14,15,32,38],integrals_str:32,intend:16,intens:[14,15],interact:[0,3,5,6,8,17,19,34],interfac:[7,17,20,23,26,40],interfer:[23,40],intermedi:8,intern:[0,7,11,22],internal_buff:0,internal_buffering_off:0,internal_buffering_print:0,internal_buffering_stor:0,interpol:[27,32,38],interpolate_in_mass_izzard2012:32,interpolator_nam:32,intershel:0,interstellar:0,intger:0,intro:0,introduc:5,introduct:6,inv:[5,19],invers:43,invert_xaxi:6,involv:0,inward:0,io:31,ipykernel_216542:17,ipykernel_519112:14,ipynb:[13,14,15,16],is_capsul:20,isfil:16,isfloat:20,isint:20,isn:[14,15,20],isnt:16,isotop:[0,11,39],isotope_hash:21,isotope_list:21,issu:26,item:[1,2,6,8,13,14,15,20],iter:20,its:[0,2,3,13,14,15,16,17,20,22,23,25,26,27,31,34,38,39,40,41],itself:[3,6,9,12,22,23,32,40],iwamoto:0,izzard2012_period_distribut:32,izzard:[0,6,8,13,14,15,23,40],jager:0,jaschek:32,jeff:[23,40],jej:5,jerki:6,jf:5,jia:0,job:[21,22,26,30,37],job_id:26,job_index:26,jobarrayindex:[22,37],jobid:[21,22,37],john:0,join:[7,9,12,16,19,22,26],joinfil:26,joiningfil:26,joinlist:[22,26],jorb_in:5,jorb_out:5,jordi:0,json:[3,7,12,16,21,22,27,31],jsondecod:3,jsonencod:3,jtot_in:5,jupit:17,jupyt:[23,40],just:[0,2,6,7,8,16,19,20,21,22,23,27,31,39,40,43],k1:[5,12,19],k2:[5,12,19],k:[0,6,17,32],kap:0,kappa:0,kaps_rentrop:0,karaka:0,keep:[8,16,31,33],kei:[1,2,3,6,11,12,16,17,19,20,21,22,25,29,31,32,34,35,39],kelvin:0,keplerian:0,keys_to_float:2,keyword:[14,25,41],kick:[0,5,19,22],kick_backward:0,kick_forward:0,kick_inward:0,kick_outward:0,kick_random:0,kick_straight_up:0,kick_velocity_custom:0,kick_velocity_fix:0,kick_velocity_maxwellian:0,kill:[1,9,16,21],kilonova:6,kim:0,kind:[0,7],kippenhahn:0,klencki:0,km:0,know:[0,1,2,7,12,14,15,22,31,34],known:[0,6,12,13,14,15,16,21,32,41],kroupa2001:[16,32,35],kroupa:[14,15,32],krticka:0,ktg93:32,kwarg:[19,21,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,41],l1:5,l2:0,l:[0,6,13,14,15],l_:[13,14,15],label:[6,19,32],lambda:[0,5,8],lambda_:8,lambda_c:[0,5,8],lambda_ce_dewi_tauri:0,lambda_ce_klencki_2020:0,lambda_ce_polytrop:0,lambda_ce_wang_2016:0,lambda_enthalpi:0,lambda_ion:5,lambda_ionis:0,lambda_min:0,lambda_mult:0,lambda_multipli:0,lambda_v:32,lamer:0,landau:0,langer:0,languag:6,larger:[0,6],last:[4,14,17,19,20,32],last_st:19,last_stellar_type_change_time_1:19,lastli:[7,12],late:19,later:[13,14,15,22],latest0:[6,8,13],latest1:[6,8,13],latest2:[6,16],latest3:6,latest4:6,latest5:6,latest:[23,40],latter:0,launch:[22,30,37],law:[14,15,32],law_const:32,lbv:0,ld_library_path:[23,40],ldist:[14,15],lead:[0,6,13,14,15,16,31,32,43],learn:[9,22],least:[23,40],leav:[0,22],left:0,legaci:0,legacy_yield:0,legend:[17,19],len:[5,6,12,16,19],length:[5,20],lengthen:0,leq:6,less:[0,1,4,5,31,32],let:[5,8,12,13,14,15,16,17,21],level:[1,6,20,33],lfucach:22,li7:0,li:0,lib:[7,12,18,19,23,40],libbinary_c:22,libcustom_logging_34a350b8f15c4d149deab88632948c99:12,libcustom_logging_446fe4cddfa94946bcafd55591ef3730:12,libgsl:[23,40],libmemo:[23,40],librari:[0,1,6,9,19,21,22,41],library_path:[23,40],librinterpol:[23,40],life:8,lifetim:[0,8,13,14,15,16,38],lifshitz:0,like:[0,1,6,7,8,13,14,15,16,19,20,22,23,25,31,38,40],limit:[0,6,7,8,13,14,15,16,22,25],line:[1,5,6,8,9,12,13,14,15,16,17,18,20,21,22,23,25,31,38,40],linear2:22,linear:[0,13,14,15,22,32,38],linear_extrapolation_q:32,linearli:[14,15,38],linedata:[6,8,13,14,15],lineplot:[6,8,13,14,15,17],linewidth:[6,8,13,14,15,17],linker:1,linspac:38,linux:7,list:[0,1,2,3,6,8,12,13,14,15,16,17,20,22,26,29,32,35,38,41],list_arg:0,list_of_sub_kei:2,lit:0,lithium:0,lithium_gb_post_1dup:0,lithium_gb_post_heflash:0,lithium_hbb_multipli:0,lithium_t:0,littl:[5,6,8,13,16,17,29],littleton:0,liu:0,ll:[2,9,11,14,15,17,31],llnl:0,ln:32,lnm1:[8,13,14,15,16],lnm_1:[14,15,16,35],load:[0,1,3,6,8,9,12,13,14,15,16,19,20,21,22,25,26,27,31,35],load_ensembl:3,load_logfil:20,load_population_object:31,load_snapshot:31,lobe:[0,5,8,43],loc:17,local:[22,32],local_count:2,locat:[0,22,23,32,38,40],lock:[5,31],lock_lifetim:31,lock_object:31,lock_suffix:31,lock_timeout:31,locked_clos:31,locked_open_for_writ:31,lockfil:31,lodder:0,log10:[0,6,8,13,14,15,16,32,38],log10m1:22,log10mass:38,log10p:32,log10per:[8,13,16],log10pmin:32,log:[0,1,4,5,7,12,17,18,20,22,23,25,31,32,33,35,38,40,41,43],log_:[6,8,13,14,15],log_arg:22,log_args_dir:22,log_arrow:0,log_dt:[8,22],log_every_timestep:[9,12],log_fil:[5,22],log_filenam:[0,5,12,19,41],log_newlin:22,log_runtime_system:22,logarithm:[14,15,32,38],logensembletim:0,logfil:[12,20,23,40],logg:[0,6],logger:16,logging_dict:1,logging_lin:[9,18,19],loggrav:6,logi:18,logic:[1,2,9,21,22],logl:6,logmass:[32,38],logp:32,logper:[8,32],logperiod:32,logperrang:[8,13],logspac:38,logteff:6,long_spectral_typ:32,longer:[0,6,8],longnam:[6,8,13,14,15,16,35],look:[1,3,6,8,13,14,15,16,19,23,32,40],lookback:0,loon:0,loop:[6,8,12,13,14,15,16,31,35],loos:25,lose:[0,19],loss:[0,5,7,12,13,17],lost:[0,8,19],lot:[6,13,14,15,16,17,22,39,41],lovegrov:0,low:[0,6,8,14,15,32],low_mass_m:0,low_mass_main_sequ:0,lower:[0,13,16,32,35,38],lowest:32,lru:29,lru_:29,lrucach:22,lsoda:0,lsun:[0,25],lt:[6,7,8,12,14,16,17,18],lucianopaz:31,lugaro:0,luminos:[0,4,6,23,25],luminosity_1:25,luminosity_2:25,luminosu:6,lw:0,lynnett:0,m01:5,m0:32,m1:[0,5,8,9,12,13,14,15,16,19,31,32,43],m2:[5,8,9,12,13,16,19,31,32,43],m3:32,m4:32,m:[0,5,6,8,13,14,15,17,19,20,32,43],m_1:[0,5,6,7,8,9,11,12,13,14,15,16,17,18,19,35,41],m_2:[0,5,6,7,8,9,12,13,16,18,19],m_3:[0,7],m_4:[0,7],m_:19,m_max:[16,32,35],m_min:[16,35],m_sun:6,maccretor:[0,5],machin:[8,22,23,40],macro:[0,11,20,39],madau:32,made:[6,23,26,40],maeder:0,magellan:0,magnet:0,magnetic_braking_algorithm:0,magnetic_braking_algorithm_andronov_2003:0,magnetic_braking_algorithm_barnes_2010:0,magnetic_braking_algorithm_hurley_2002:0,magnetic_braking_algorithm_rappaport_1983:0,magnetic_braking_factor:0,magnetic_braking_gamma:0,magnitud:20,mai:[0,8,13,31],main:[0,1,6,7,9,13,14,15,16,19,22,23,40],main_sequ:[0,13,14,15,19],mainprocess:[6,8,13],major:0,make:[0,1,2,3,5,6,8,12,13,14,15,16,17,19,20,21,22,23,25,26,30,31,32,40,41,43],make_analytics_dict:28,make_build_text:20,make_condor_dir:30,make_slurm_dir:37,makedir:[16,20],makejoiningfil:26,manag:[20,23,40],mani:[0,6,7,8,11,13,14,15,16,22,30],manual:[9,22],manufactur:0,map:22,mar:17,maria:0,mass:[0,1,2,4,5,6,7,8,11,12,13,16,17,19,20,22,25,32,35,38,39,41,43],mass_1:[16,19,25],mass_2:[16,19,25],mass_accretion_for_eld:0,mass_accretor:43,mass_donor:43,mass_evolut:25,mass_for_hestar_ia_low:0,mass_for_hestar_ia_upp:0,mass_loss_m:19,mass_lost:19,mass_of_pmz:0,mass_rang:19,mass_str:32,massiv:[0,4,5,6,8,13,17,23,32],massless:0,massless_remn:0,massloss:0,massrang:[6,8,13,14,15],master:[22,25],match:[0,2,6,12,13,16,17,22,25,29],materi:[0,6],math:[6,8,13,14,15,16,17,35,38],mathieu:32,mathrm:[6,8,13,14,15],matplotlib:[6,8,14,15,17,19,23,25,40],matter:[0,7],mattsson:0,mattsson_mass_loss:0,mattsson_orich_tpagbwind:0,max:[0,8,9,13,14,15,16,22,32],max_bound:[32,38],max_column:[6,8,17],max_evolution_tim:[0,1,6,7,8,9,12,13,14,15,16,17,19,38],max_hewd_mass:0,max_logp:32,max_model_numb:0,max_multipl:32,max_neutron_star_mass:0,max_queue_s:22,max_row:[6,8,17],max_stellar_angmom_chang:0,max_stellar_type_1:0,max_stellar_type_2:0,max_stellar_type_3:0,max_stellar_type_4:0,max_tim:[5,12,19],max_val:32,maxcount:5,maxdm:38,maximum:[0,6,7,8,9,13,14,15,16,22,32,38,43],maximum_mass_ratio_for_instant_rlof:0,maximum_mass_ratio_for_rlof:43,maximum_mcbagb_for_degenerate_carbon_ignit:0,maximum_nuclear_burning_timestep:0,maximum_timestep:0,maximum_timestep_factor:0,maxmimum:0,maxsiz:22,maxwellian:0,mayb:25,mayor:32,mb:[6,8,13,15,16,20,22],mc13_pocket_multipli:0,mc1:5,mc:[0,5,16,19,31],mch:0,mcmin:0,mdonor:[0,5],mean:[0,5,20,22,23,30,32,37,38,40],meant:22,measur:20,medium:0,mega:32,megabyt:22,mem:[8,13],mem_us:20,memaddr:[7,9],memori:[1,6,7,8,9,13,15,16,19,20,21,22,31,43],menv:[0,5],mer:5,mercuri:17,merg:[0,2,5,6,8,22,26,31,32,33],merge_dict:[2,11],merge_multipl:32,merge_popul:31,merge_populations_from_fil:31,merger:[0,5],merger_angular_momentum_factor:0,merger_mass_loss_fract:0,mesa:[23,40],mesasdk_init:[23,40],mesasdk_root:[23,40],mess:17,messag:[20,21],messi:6,mestel:0,met:[16,21,26,35],metadata:[16,21,23,24,35],metal:[0,5,6,7,8,9,12,13,14,15,16,17,18,19,32,43],metallicity_0002:19,metallicity_001:19,metallicity_002:19,method:[0,9,11,12,13,14,15,16,19,21,22,27,31,33,34,35,39],meynet:0,mf1:5,mf2:5,might:[2,3,8,13,16,17,20,22,23,31,40],milki:0,miller:0,min:[8,9,13,14,15,16,32],min_bound:[32,38],min_logp:32,min_per:32,min_val:32,mind:19,mindm:38,minimal_verbos:20,minimum:[0,7,20,22,32,38,39,43],minimum_co_core_mass_for_carbon_ignit:0,minimum_co_core_mass_for_neon_ignit:0,minimum_donor_menv_for_comenv:0,minimum_envelope_mass_for_third_dredgeup:0,minimum_helium_ignition_core_mass:0,minimum_mcbagb_for_nondegenerate_carbon_ignit:0,minimum_orbital_period_for_instant_rlof:0,minimum_period_for_rlof:43,minimum_separation_for_instant_rlof:0,minimum_separation_for_rlof:43,minimum_stellar_mass:39,minimum_time_between_pn:0,minimum_timestep:0,mint:0,mint_data_cleanup:0,mint_dir:0,mint_disable_grid_load_warn:0,mint_fallback_to_test_data:0,mint_hard_max_nshel:0,mint_hard_min_nshel:0,mint_kippenhahn:0,mint_kippenhahn_companion_stellar_typ:0,mint_kippenhahn_stellar_typ:0,mint_maximum_nshel:0,mint_maximum_shell_mass:0,mint_metal:0,mint_minimum_nshel:0,mint_minimum_shell_mass:0,mint_ms_rejuven:0,mint_nshel:0,mint_nuclear_burn:0,mint_remesh:0,mint_use_zams_profil:0,minut:[8,20],mira:0,misc:23,miscellan:[11,39],miss:[0,13,14,15,20,34],mistak:22,mix:[0,2,22],mixtur:[0,13],mmax:[14,15,32,38],mmin:[14,15,22,32,38],mnra:43,mode:31,model:[0,1,6,8,9,12,13,14,15,16,17,18,19,22],model_numb:[13,14,15],modif:4,modifi:[0,2,9,23,40],modul:[0,7,8,11,13,14,15,16,17,22,24],modulo:22,moe2017_opt:22,moe:[16,23,26,27,32],moe_di_stefano_2017:[21,23,24],moe_di_stefano_2017_multiplicity_fract:32,moe_di_stefano_2017_pdf:32,moment:[0,6,9,16,19,38],momenta:[0,25],momentum:[0,17],monoton:[14,15],mont:[0,22],monte_carlo_kick:0,more:[0,1,3,4,5,6,8,9,11,12,13,14,15,16,17,18,19,20,21,22,23,25,38,40],most:[6,7,8,14,15,17,20],mostli:[6,8,13,14,15,16,19,20,22,25,34,41],mount:31,move:[0,6],mrucach:22,ms:[0,5,9,13],msgpack:31,mstart:5,msun:[0,6,9,12,13,14,15,17,19,32,38,39],mu:0,much:[0,6,8,13,16,19,20,28],multipl:[0,2,6,22,32],multiplc:0,multipli:[0,2,14,15,22,38],multiplicity_arrai:32,multiplicity_fraction_funct:22,multiplicity_model:22,multiplicity_modul:22,multiplied_dict:2,multiply_float_valu:2,multiply_values_dict:[2,11],multiprocess:22,must:[0,2,6,7,8,12,13,14,15,16,17,31,35,38],mw:0,my:12,my_stellar_data:[1,9,16,18,19],myr:[0,6,8,12,13,14,15,17,38],n100:0,n100_z0:0,n100h:0,n100l:0,n10:0,n150:0,n1600:0,n1600c:0,n1:0,n200:0,n20:0,n300c:0,n3:0,n40:0,n5:0,n:[0,1,5,6,7,8,9,12,13,14,15,16,18,19,20,22,26,32],n_logging_stat:22,naked_helium_star_giant_branch:0,naked_helium_star_hertzsprung_gap:0,naked_main_sequence_helium_star:0,name:[1,2,5,6,7,8,13,14,15,16,17,19,20,22,30,31,34,35,41,42],nameerror:17,narrow:[14,15],natur:[0,14,15],nauenberg:0,nazehdin:0,nb:0,nbinary_c:19,ncol:19,nearer:0,nearest:[8,13,14,15],nebula:0,necessari:[8,16,17,19,20,21,37],need:[0,2,7,9,12,13,14,15,16,17,19,22,23,26,32,40,43],neg:[0,2,38],neither:[0,21],neleman:0,nelemans_gamma:0,nelemans_max_frac_j_chang:0,nelemans_minq:0,nelemans_n_comenv:0,nelemans_recalc_eccentr:0,nemp:0,nemp_cfe_minimum:0,nemp_nfe_minimum:0,nenamg:0,neon:[0,6],neptun:17,nest:[2,16,35,39],network:[0,11],neutrn:0,neutron:[0,6,16],neutron_star:0,never:[0,6,14,15,22,29],new_dict:2,newdict:2,newer:[0,2],newli:0,newlin:[20,22,31,33],newnam:35,newobj:26,newopt:[2,32],newpop:31,newton:0,next:[13,14,15,16,20],nf:[22,31],nfs_flush_hack:31,nfspath:31,nice:[21,25],nieuwenhuijzen:0,nieuwenhuijzen_windfac:0,nine:6,nmax:32,no_thermohaline_mix:0,nocach:22,node:22,noecho:0,noechonow:0,noel:0,nolowq:22,nomin:0,non:[0,2,14,15,22,31],nonconservative_angmom_gamma:0,none:[0,1,2,3,5,6,7,8,13,15,16,17,19,20,21,22,26,27,29,30,31,32,34,35,37,38,43],nonetyp:2,nonzero:22,nor:0,norm:22,normal:[0,2,21,26,38,39],normalis:[2,22,32],normalize_dict:2,normalize_multipl:22,normalized_dict:2,nospac:20,notabl:16,notat:20,note:[0,5,6,13,14,15,16,19,20,22,26,31,35,38,39],notebook:[5,6,7,8,9,11,12,13,14,15,16,17,23,40],notebook_api_funct:12,notebook_bhbh:5,notebook_comenv:8,notebook_custom_log:[12,13,14,15,16],notebook_hrd:6,notebook_individual_system:[9,12,13,14,15,16],notebook_luminos:[14,15],notebook_luminosity_funct:13,notebook_luminosity_function_binari:[14,15],notebook_popul:[12,16],notebook_solar_system:17,noteworthi:4,noth:[2,22,26,27,31],notic:[14,15],notifi:41,nov:19,nova:[0,6,8],nova_faml_multipli:0,nova_irradiation_multipli:0,nova_retention_algorithm_claeys2014:0,nova_retention_algorithm_const:0,nova_retention_algorithm_hillman2015:0,nova_retention_fract:0,nova_retention_method:0,nova_timestep_accelerator_index:0,nova_timestep_accelerator_max:0,nova_timestep_accelerator_num:0,now:[0,2,5,6,8,9,12,13,14,15,16,17,19,20,26,32,33],now_object:20,np:[12,18,19,38],nre:[13,38],nrow:19,ns:[0,1,8,9,16],nsep:8,nsep_max:8,nsep_min:8,nstar:[6,13],nuclear:0,nuclear_mass_hash:21,nuclear_mass_list:21,nucleosynthesi:[0,39],nucleosynthesis_sourc:[11,39],nucreacmult:0,nucsyn:23,nucsyn_angelou_lithium:0,nucsyn_gce_outflow_check:0,nucsyn_hbb:0,nucsyn_metal:[0,7],nucsyn_network:0,nucsyn_network_error:0,nucsyn_s_process:0,nucsyn_solv:0,nucsyn_third_dredge_up:0,nugi:0,nullcach:[22,29],num_ansi_colour:0,num_cor:[6,8,13,14,15,16,22],num_cores_avail:22,number:[0,2,3,5,6,8,13,14,15,16,17,19,20,21,22,23,26,31,32,33,34,35,38,40],numer:2,numpi:[12,16,18,19,20,23,35,38,40],o:[3,20,23,32],obj:[3,20],object:[0,2,3,4,7,11,17,20,21,22,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,41],object_hook:3,object_pairs_hook:3,object_parse_funct:12,observ:[13,14,15],obtain:[0,6,8,13,14,15,31],obvious:9,occur:[0,43],odot:[6,8,19],off:[0,5,16,19,22],off_m:[5,12,19],offset:0,oh:5,ohio:0,ok:[16,26,31],old:[14,15,22,35],oldnam:35,omega:[0,5,19],on_exit_or_evict:22,onc:[0,38],one:[0,2,7,11,14,15,16,17,18,19,22,25,29,31,34,38,41],onewd:0,onli:[0,2,6,9,13,14,15,16,17,19,20,22,26,27,31,38,43],onset:0,onto:[0,32],oop:5,opac:0,opacity_algorithm:0,opacity_algorithm_ferguson_op:0,opacity_algorithm_paczynski:0,opacity_algorithm_star:0,opal:0,open:[3,5,12,16,19,31],open_ensembl:3,opendir:31,oper:[2,31],opm:32,opt:[2,5,7,32],option:[0,1,2,6,8,13,14,15,16,17,18,19,20,21,23,26,27,29,31,32,34,35,38,40,43],orb:[8,16,31],orbit:[0,5,7,8,13,17,25,32,43],orbit_evolut:25,orbital_eccentr:17,orbital_inclin:0,orbital_inclinationi:0,orbital_period:[0,5,7,8,9,12,13,16,18,19,43],orbital_period_quadrupl:0,orbital_period_tripl:0,orbital_phas:0,orbital_phase_quadrupl:0,orbital_phase_tripl:0,orbital_separ:17,orbiting_object:[0,17],orbiting_objects_close_pc_threshold:0,orbiting_objects_log:[0,17],orbiting_objects_tides_multipli:0,orbiting_objects_wind_accretion_multipli:0,order:[2,4,16,20,35],ordereddict:2,org:[0,2,32],orient:8,origin:[2,17,23,31,40],original_command_lin:22,original_submission_tim:22,original_working_diretori:22,os:[5,6,8,12,13,14,15,16,17,19,20],other:[0,1,2,6,11,12,13,14,15,16,20,22,23,25,26,32,34,40],otherwis:[0,2,20,21,22,26,28,30,31,34,37],our:[6,8,13,14,15,22,32],out:[2,3,6,8,9,13,14,15,17,20,22,32,34],outcom:0,outer:[0,6],outermost_core_mass:6,outfil:[16,21],outfile_nam:1,outfilenam:16,output:[1,2,3,4,5,7,9,11,12,17,18,19,20,21,22,23,25,31,39,40,41,43],output_dict:[6,8,12,13],output_dir:[12,16,31],output_fil:[12,20,31,34],output_filenam:[16,31],output_lin:20,outsid:[0,32],outward:0,over:[2,6,8,11,12,13,14,15,16,20,21,31],overflow:[0,5,8],overhead:22,overlap:2,overrid:[2,19,22,32,35,38],overriden:16,overshoot:0,overspin_algorithm:0,overspin_bs:0,overspin_massloss:0,overview:7,overwrit:[22,26],own:[9,12,16,18,19,22,23,35,40],oxygen:[0,6],oxygen_neon_white_dwarf:0,p0:32,p1:32,p2:32,p3:32,p:[6,8,13,14,15,17,32,34],p_:8,p_in:5,p_out:5,packag:[3,7,16,20,23,35,36,37,38,40],paczynski:0,pad:[8,13,14,15],pad_output_distribut:[6,8,13,14,15,20],page:[0,6,16,23,40],pair:[0,2,5,20,35,39],panda:[6,8,12,13,14,15,17,18,19,20,23,25,40],pane:25,panel:0,paper:0,parallel:[16,35],param_nam:20,paramet:[1,2,3,4,6,7,8,9,12,13,14,15,16,20,21,22,23,25,26,29,30,31,32,34,35,37,38,39,41,43],parameter_nam:[3,6,7,8,11,13,14,15,16,20,35],parameter_value_input_typ:[11,20],pars:[3,4,6,8,12,13,14,15,16,19,20,21,25,39,41],parse_binary_c_version_info:39,parse_cmdlin:21,parse_const:3,parse_data:8,parse_float:3,parse_funct:[6,8,12,13,14,15,16,21,22,41],parse_function_hr_diagram:25,parse_function_mass:25,parse_function_orbit:25,parse_int:3,parse_output:19,parsec:32,part:[6,7,12,13,14,15,16,19,21,30,32,35,37,43],partial:0,particularli:0,partit:22,partner:31,pasp:32,pass:[2,7,9,12,16,17,19,20,21,22,23,25,26,27,30,31,37,38,40,41],path:[12,16,19,20,22,23,26,29,30,31,34,37,40],patho:[23,40],pd:[6,8,12,13,14,15,17,18,19],pdf:[0,19,23,32,40],peak:[8,14,15,38],peak_normalized_gaussian_func:38,pend:[0,5],per:[0,5,8,12,13,16,20,22,31,43],percentag:0,peret:0,perfect:[14,15],perfectli:[13,14,15],perform:[0,31],perhap:[0,6,8,21],periastron:0,pericent:43,period:[0,5,7,8,9,12,13,14,15,16,17,19,25,32,43],period_str:32,perl:[1,2,13,14,15,16,30],persist:7,persistent_data:7,pgo:0,phase:[0,6,8,13,14,15],phasevol:[0,16],phdi:0,phi:[5,19],photoevapor:0,php:32,physic:[6,13,14,15,16,22],pick:25,pickl:31,pid:21,piec:[16,19,35],pinnsonneault:0,pisn:0,pkg:[23,40],pl:21,place:[0,2,13,20,22],placehold:[25,29,30,31],plai:[0,14,15],plan:22,planet:17,planetari:0,plaw2:22,pleas:[0,6,7,13,14,15,16,20,22,29],plot:[0,6,8,12,13,14,15,17,18,19,25],plot_data:[8,13,14,15],plot_funct:[23,24],plot_hr_diagram:25,plot_hr_diagram_singl:25,plot_mass:25,plot_orbit:25,plot_system:25,plot_typ:25,plt:[6,8,14,15,17,19],plu:0,pluto:17,pm:25,pms_mass_1:25,pms_mass_2:25,pn:0,pn_comenv_transition_tim:0,pn_fast_wind:0,pn_fast_wind_dm_agb:0,pn_fast_wind_dm_gb:0,pn_fast_wind_mdot_agb:0,pn_fast_wind_mdot_gb:0,pn_hall_fading_time_algorithm:0,pn_hall_fading_time_algorithm_maximum:0,pn_hall_fading_time_algorithm_minimum:0,pn_resolv:0,pn_resolve_maximum_envelope_mass:0,pn_resolve_minimum_effective_temperatur:0,pn_resolve_minimum_luminos:0,pne:0,png:19,pogg:0,point:[0,3,6,20,21,22,23,31,32,38,40],poisson:[22,32],pol:0,polytrop:0,poor:[14,15],pop:[5,9,17,29],pop_macro:9,popitem:29,popul:[0,3,4,7,11,23,24,40,41],population_extens:[16,21,26,27,28,29,30,31,32,33,34,35,36,37,38,39],population_id:[16,22],population_nam:[6,8,13,15],population_object:31,population_set:21,posit:[0,2,8,32],possibl:[0,1,2,6,12,17,20,22,23,29,32,34,40],post:[0,5,6,8,9,21],post_ce_adaptive_menv:0,post_ce_envelope_dm_eagb:0,post_ce_envelope_dm_gb:0,post_ce_envelope_dm_tpagb:0,post_ce_objects_have_envelop:0,post_comenv_period:8,post_sn_orbit_bs:0,post_sn_orbit_method:0,post_sn_orbit_tt98:0,postagb_legacy_log:0,postagb_wind_gi:0,postagb_wind_krticka2020:0,postagb_wind_non:0,postagb_wind_use_gi:0,postagbwind:0,postcod:[6,8,16,35],potenti:0,pow2:6,power:[0,8,14,15,22,32],powerlaw:32,powerlaw_const:32,powerlaw_constant_nocach:32,powerlaw_extrapolation_q:32,ppisn:0,ppisn_additional_massloss:0,ppisn_core_mass_range_shift:0,ppisn_farmer19:0,ppisn_new_fit_21:0,ppisn_non:0,ppisn_prescript:0,ppn_envelope_mass:0,pragma:9,pre:[0,5,8,16,19,25],pre_comenv_period:8,pre_events_stardata:0,pre_main_sequ:0,pre_main_sequence_fit_lob:0,precis:3,precod:[6,8,13,14,15,16,35],predefin:[13,14,15,16,32],predict:22,predictor:0,prefer:[0,21],prefix:0,preloaded_popul:31,prep:0,prepar:2,prepare_dict:2,presc:5,prescrib:0,prescript:[0,5,16],prescrit:0,present:[2,3,6,13,14,15,16,19,21,31,32],preserv:0,preset:25,pressur:0,prev_stellar_type_1:16,prev_stellar_type_2:16,prevent:[0,5,6,22],previou:[8,14,15,20,22,39],previous:[12,16,26],previous_stardata:[1,8,9,12,16],primari:[1,6,8,13,14,15,16,32,35,43],prime:8,pringl:0,print:[2,5,6,7,8,9,11,12,13,14,15,16,17,19,20,22,26,33,34],print_help:[11,20],print_info:34,print_option_descript:34,print_stack_on_exit:22,print_structur:2,printf:[1,6,8,9,12,13,14,15,16,18,19],prior:[0,6],privat:[21,23],prob_dict:32,probability_weighted_mass:22,probabl:[0,1,2,6,8,9,13,14,15,16,19,21,22,25,31,32,34,35],probdist:[6,8,13,14,15,16,35],problem:[0,13],probtot:[14,15],process:[0,6,8,13,14,15,16,18,19,20,21,22,26,30],process_:31,processor:[6,8,13],produc:6,profil:0,progenitor:[0,16],program:[6,23,40],progress:20,project:0,proper:[6,9,34],properli:0,properti:[0,20,22,25,35],proport:8,prot1:0,prot2:0,prot3:0,prot4:0,provid:[0,16,21,22,26,32,41],pseudorandom:0,publicli:9,puls:[0,6,43],pulsat:0,pump:0,purpos:[13,14,15,16,22,25],push:17,push_macro:9,put:[1,6,8,13,14,15,16,19,20,22,25,26,34,35,36],pwd:22,py:[6,8,13,14,15,16,17,22,23,29,40],py_rinterpol:[23,40],pyenv:[7,23,40],pyplot:[6,8,14,15,17,19],pysiz:20,pytest:[23,40],python3:[7,23,40],python:[2,3,4,6,8,13,14,15,20,22,29,31,32,35],q:[0,5,8,13,16,19,22,32,43],q_high_extrapolation_method:22,q_interpol:32,q_low_extrapolation_method:22,q_min:32,qc:5,qcrit_bh:0,qcrit_bs:0,qcrit_cheb:0,qcrit_chen_han_formula:0,qcrit_chen_han_t:0,qcrit_cowd:0,qcrit_degenerate_bh:0,qcrit_degenerate_cheb:0,qcrit_degenerate_cowd:0,qcrit_degenerate_eagb:0,qcrit_degenerate_gb:0,qcrit_degenerate_hegb:0,qcrit_degenerate_hehg:0,qcrit_degenerate_hem:0,qcrit_degenerate_hewd:0,qcrit_degenerate_hg:0,qcrit_degenerate_lmm:0,qcrit_degenerate_m:0,qcrit_degenerate_n:0,qcrit_degenerate_onewd:0,qcrit_degenerate_tpagb:0,qcrit_eagb:0,qcrit_gb:0,qcrit_gb_bs:0,qcrit_gb_chen_han_formula:0,qcrit_gb_chen_han_t:0,qcrit_gb_ge2015:0,qcrit_gb_hjellming_webbink:0,qcrit_gb_q_no_comenv:0,qcrit_gb_temmink2021:0,qcrit_gb_vos2018:0,qcrit_ge2015:0,qcrit_hegb:0,qcrit_hehg:0,qcrit_hem:0,qcrit_hewd:0,qcrit_hg:0,qcrit_hjellming_webbink:0,qcrit_lmm:0,qcrit_m:0,qcrit_n:0,qcrit_onewd:0,qcrit_q_no_comenv:0,qcrit_temmink2021:0,qcrit_tpagb:0,qcrit_vos2018:0,qcrits_:0,qcrits_degenerate_:0,qdata:32,qlimit:32,qmin:32,qs:32,quad:22,quadrat:0,quadrulpl:0,quadrupl:[0,22,32],quantiti:25,queri:[12,26],queue:[6,8,13,22,26,30],quickli:12,quit:[0,6,20,32],quot:20,quotewrap:20,r1:[5,12,19],r2:[5,12,19],r:[0,1,5,6,12,16,19,23,31,40],r_l:43,r_sun:6,radau:0,radi:0,radiat:0,radii:[0,43],radiu:[0,1,6,9,16,18,25,43],radius_1:25,radius_2:25,ragb:43,raghavan2010_binary_fract:32,raghavan:32,rai:0,railton:0,rais:[0,2,16,20,22],ram:[0,22],ran:[6,8,13,22],randbuf:[5,19],random:[0,5,7,19,22],random_count:[5,12,19],random_se:[0,5,12,19],random_skip:0,random_system:0,random_systems_se:0,rang:[0,6,7,8,12,13,14,15,16,22,32,35,38],rapid:0,rapidli:0,rappaport:0,rate:[0,14,15,32],rather:[0,2,9,12,16,20,22,23,26,39,40],ratio:[0,6,7,8,13,14,15,16,32,43],raw:[3,7,19,20,21,22,25,39,41],raw_output:3,rc:[5,6,8,13,14,15,17,25],re:[0,1,6,7,8,13,14,15,17,26,34],reach:[0,5,6,8],reaction:0,read:[3,4,5,12,16,19,20,22,31],readabl:20,readlin:5,real:[6,13,16,35],realist:[14,15],realiti:[14,15],realli:[0,6,16,21,22,34,35],reason:[0,14,15],rebuild:[0,22,23,26,40],rebuilt:[23,40],recalcul:0,receiv:20,recent:[14,17],recogn:16,recognis:31,recombin:0,recommend:[1,4,23,40],recompil:[13,14,15,16,23,40],reconsid:34,recurs:[2,20],recursive_change_key_to_float:2,recursive_change_key_to_str:2,red:[0,6,14,15,17],redhat:1,redshift:32,reduc:[0,5],reduct:22,refer:[2,22,31],refpop:31,regardless:25,region:[0,38],regist:16,reignit:0,reimer:0,reinstal:[23,40],reject:0,rejects_in_log:0,rejuven:[0,13],rel:0,relat:0,releas:[20,23,40],relev:21,reliabl:7,remain:[0,7,20,22],rememb:[5,6,14,15],remesh:0,remnant:[0,6],remov:[0,2,8,12,16,17,20,21],remove_fil:20,renam:[14,15,35],rename_grid_vari:[14,15,35],renormalis:32,rentrop:0,repeat:[0,22],replac:30,repo:23,report:[0,6,8,13,14,15,16],repositori:4,repres:22,represent:[3,16,35],reproduc:0,requir:[0,3,8,12,13,14,15,16,17,19,20,22,25,26,32,41],rerun:[6,22],reset:0,reset_pref:0,reset_star:0,reset_stars_default:0,resolut:[0,6,8,13,14,15,16,22,35,38],resolv:[0,13,31],reson:0,resourc:[14,15,26],respect:[0,30,32,37],rest:[16,32,35],restor:26,restore_from_snapshot_dir:22,restore_from_snapshot_fil:[22,26],restructuredtext:20,result:[0,1,2,3,6,8,12,13,14,15,16,19,20,22,23,26,31,32,38,40],result_arrai:32,result_dict:2,result_example_head:19,result_example_header_1:19,result_example_header_2:19,results_dictionari:[6,8,13,14,15],ret:16,retain:0,rethink:20,return_after_dry_run:22,return_all_info:21,return_arglin:7,return_binary_c_default:21,return_binary_c_version_info:[11,21,39],return_compilation_dict:1,return_help:7,return_help_al:[7,20],return_maximum_mass_ratio_for_rlof:[7,43],return_minimum_orbit_for_rlof:[7,43],return_persistent_data_memaddr:7,return_population_set:21,return_store_memaddr:7,return_version_info:[7,39],reus:21,revap_in:0,revap_out:0,revers:[0,25],reverse_tim:0,revis:[0,39],rewrit:21,rgb:6,rhagavan:22,ri0005:[6,16],rich:0,riello:0,rin:0,ring:0,risk:[16,35],ritter:0,rk2:0,rk4:0,rl1:5,rl2:5,rl:[0,5],rlof:[0,5,7,43],rlof_angular_momentum_transfer_model:0,rlof_angular_momentum_transfer_model_bs:0,rlof_angular_momentum_transfer_model_conserv:0,rlof_eccentric_as_circular:0,rlof_entry_threshold:0,rlof_f:0,rlof_interpolation_binary_c:0,rlof_interpolation_bs:0,rlof_interpolation_method:0,rlof_mdot_factor:0,rlof_mdot_modul:0,rlof_method:0,rlof_method_adapt:0,rlof_method_adaptive2:0,rlof_method_bs:0,rlof_method_claei:0,rlof_method_ritt:0,rlof_nonconservative_gamma_donor:0,rlof_nonconservative_gamma_isotrop:0,rlof_radiation_correct:0,rlof_transition_objects_escap:0,rob:[0,32,43],robert:[23,40],roch:[0,5,8,43],roche_lob:43,rochelob:43,rol1:[5,12,19],rol2:[5,12,19],room:[16,35],root:[23,40],rotat:[0,32],rotation:0,rotationally_enhanced_expon:0,rotationally_enhanced_mass_loss:0,rotationally_enhanced_massloss:0,rotationally_enhanced_massloss_angmom:0,rotationally_enhanced_massloss_langer_formula:0,rotationally_enhanced_massloss_langer_formula_and_angmom:0,rotationally_enhanced_massloss_non:0,rough:6,rout:0,routin:[0,2,4,7,23,25,41],row:[12,19,25],rrcach:22,rring:0,rssd:32,rst:[20,34],rsun:[6,25],run:[0,1,4,5,6,7,8,13,14,15,18,20,21,22,23,26,28,30,32,35,37,40,41,43],run_and_calc_mass:19,run_binary_custom_log:19,run_popul:7,run_system:[5,7,9,11,12,17,18,25,41],run_system_wrapp:[4,5,9,18,23,24],run_zero_probability_system:22,runawai:[5,19],rungrid:22,runtim:[1,22],russel:[0,4,23],rzam:[5,43],s:[0,2,3,5,6,7,8,12,14,15,16,17,19,20,21,22,26,28,29,31,32,36,43],safe:[16,31],sai:[0,6],said:0,same:[0,2,7,12,16,22,23,32,35,40,41],sampl:[0,4,13,16,32,35,38],sample_valu:32,sampler:23,samplerfunc:[6,8,13,14,15,16,22,35,38],sana12:[8,13,16,32],sana:32,sander:0,saturn:17,save:[0,1,6,8,9,13,14,15,16,22,26,31,32,38],save_ensemble_chunk:22,save_loop:19,save_population_object:[22,31],save_pre_events_stardata:0,save_snapshot:[21,22,31],sbatch:22,scalar:20,scalo:32,scandir:31,scanf:0,scene:19,scheme:0,schneider:[0,7],schroeder:0,scientif:20,script:[4,9,20,22,23,26,30,37,40],sdb:0,sdo:0,seaborn:[6,8,13,14,15,17],search:[6,13,17,23],search_for_bhbh:5,second:[0,2,8,17,20,25,31,32,33],secondari:[5,6,13,32,43],section:[7,16,20,23,32,40],see:[0,5,6,7,8,9,11,12,13,14,15,16,19,21,22,23,25,29,31,32,35,39,40],seed:0,seem:[23,25,34,40],seen:20,segment:38,seitenzahl2013_model:0,seitenzahl:0,select:[0,3,12,13,17,19,20],select_kei:3,selected_head:[19,20],selector:0,self:[6,8,12,13,14,15,16,21,22,26,29,30,31,32,35,37,38,39],semi:0,sent:0,sentenc:1,sep:[5,8,12,13,16,19,31,32,43],sep_max:[8,13,16],sep_min:[8,13,16],separ:[0,3,5,6,7,9,12,16,17,18,19,25,31,32,43],separation_quadrupl:0,separation_tripl:0,separta:0,seper:16,sepf:5,sequenc:[0,6,9,13,14,15,19],sequnec:[13,14,15],seri:[0,38],serialis:3,serv:[19,20],server:19,set:[0,1,2,3,4,5,9,11,12,17,19,20,21,22,23,25,26,27,28,29,30,31,32,34,35,37,38,39,40],set_condor_statu:30,set_context:[6,8,13,14,15,17],set_moe_di_stefano_set:27,set_opt:[2,6,8,17],set_slurm_statu:37,set_statu:31,set_tim:28,set_titl:19,set_xlabel:[6,8,13,14,15,17,19],set_ylabel:[6,8,13,14,15,17,19],set_yscal:19,setter:29,setup:[6,16,41],setup_function_cach:29,sever:[11,16,19,22,25,34,41],sfh:32,sh:[23,40],shannon:38,shara:0,share:[1,12,18,19,22,31,41],shared_lib_filenam:9,shared_memori:31,shell:[0,20],shellular:0,shift:0,shorten:[0,5],shorter:5,shortli:6,should:[0,1,2,5,6,8,12,13,14,15,16,19,20,22,23,25,26,30,31,32,34,37,38,40,41],shouldn:[0,20],show:[0,4,5,6,7,8,12,13,14,15,16,19,22,25,38],show_plot:25,show_stellar_typ:25,showlist:38,shown:[0,25,38],showtabl:38,shrink:[5,8],shrinkagb:12,side:[13,14,15,16],siess:0,sigint:22,sigkil:22,sigma:[32,38],signal:[6,8,13,22],silent:20,sill:0,sim10:8,sim:6,similar:38,simpl:[6,8,13,17],simplest:12,simpli:[0,14,15],simul:[0,1,6,8,9,13,14,15,16,37],simulation_:21,sinc:[20,25,32],singl:[0,4,5,6,7,13,14,15,18,19,21,22,25,26,32],single_star_lifetim:[7,9,12],sit:0,site:7,situat:7,size:[20,22,29],skip:[0,2,6,8,13,22],skip_befor:22,skipkei:3,slice:19,sliced_df:19,slightli:7,slope:32,slow:[0,6,8,13,14,15],slower:0,slurm:[22,23,24,26],slurm_arrai:22,slurm_array_max_job:22,slurm_bash:22,slurm_check_requir:37,slurm_dat:22,slurm_dir:[22,26,30,37],slurm_env:22,slurm_extra_set:22,slurm_grid:37,slurm_jobarrayindex:[22,37],slurm_jobid:[22,37],slurm_jobnam:22,slurm_memori:22,slurm_njob:22,slurm_ntask:22,slurm_outfil:37,slurm_partit:22,slurm_postpone_join:22,slurm_postpone_sbatch:22,slurm_pwd:22,slurm_queue_stat:37,slurm_sbatch:22,slurm_status_fil:37,slurm_tim:22,slurm_warn_max_memori:22,slurmid:37,slurmpath:37,small:[0,5,14,15],small_envelope_method:0,small_envelope_method_bs:0,small_envelope_method_miller_bertolami:0,smaller:[0,38],smarter:[14,15],smooth:[6,14,15],smoother:[8,14,15],sn:[0,5,6,8,13,14,15,17,19],sn_impulse_liu2015:0,sn_impulse_non:0,sn_impulse_wheeler1975:0,sn_kick_companion_a:0,sn_kick_companion_aic_bh:0,sn_kick_companion_bh_bh:0,sn_kick_companion_bh_n:0,sn_kick_companion_ecap:0,sn_kick_companion_grb_collapsar:0,sn_kick_companion_hestaria:0,sn_kick_companion_ia_chand:0,sn_kick_companion_ia_chand_co:0,sn_kick_companion_ia_eld:0,sn_kick_companion_ia_h:0,sn_kick_companion_ia_he_co:0,sn_kick_companion_ia_hybrid_hecowd:0,sn_kick_companion_ia_hybrid_hecowd_sublumin:0,sn_kick_companion_ibc:0,sn_kick_companion_ii:0,sn_kick_companion_iia:0,sn_kick_companion_ns_n:0,sn_kick_companion_phdi:0,sn_kick_companion_pisn:0,sn_kick_companion_ppisn:0,sn_kick_companion_tz:0,sn_kick_companion_wdkick:0,sn_kick_dispersion_aic_bh:0,sn_kick_dispersion_bh_bh:0,sn_kick_dispersion_bh_n:0,sn_kick_dispersion_ecap:0,sn_kick_dispersion_grb_collapsar:[0,5],sn_kick_dispersion_ia_hybrid_hecowd:0,sn_kick_dispersion_ia_hybrid_hecowd_sublumin:0,sn_kick_dispersion_ibc:[0,5],sn_kick_dispersion_ii:[0,5],sn_kick_dispersion_ns_n:0,sn_kick_dispersion_phdi:0,sn_kick_dispersion_pisn:0,sn_kick_dispersion_ppisn:0,sn_kick_dispersion_tz:0,sn_kick_distribution_aic_bh:0,sn_kick_distribution_bh_bh:0,sn_kick_distribution_bh_n:0,sn_kick_distribution_ecap:0,sn_kick_distribution_grb_collapsar:0,sn_kick_distribution_ia_hybrid_hecowd:0,sn_kick_distribution_ia_hybrid_hecowd_sublumin:0,sn_kick_distribution_ibc:0,sn_kick_distribution_ii:0,sn_kick_distribution_ns_n:0,sn_kick_distribution_phdi:0,sn_kick_distribution_pisn:0,sn_kick_distribution_ppisn:0,sn_kick_distribution_tz:0,sn_none:9,sn_type:9,snapshot:[22,26,31],snapshot_filenam:31,sneia:0,snia:0,snippet:[7,12],so:[0,2,5,6,7,8,9,12,13,14,15,16,21,22,25,26,31],solar:[0,4,6,7,8,11,23,32,43],solver:0,solver_forward_eul:0,solver_predictor_corrector:0,solver_rk2:0,solver_rk4:0,some:[0,1,6,8,9,11,12,13,14,15,16,19,22,23,25,30,32,35,36,37,40],someth:[0,6,8,12,13,14,15,22,43],somewhat:[13,14,15,16,17],soon:38,sort:[2,6,13,14,15,17,20,31],sort_kei:[3,31],sourc:[1,2,3,8,20,21,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,41,43],source_file_filenam:22,source_list:21,sourcecod:[7,9,23,40],sourcefile_nam:1,sp:32,space:[0,6,13,14,15,16,31,35,38],spacing_funct:[21,23,24],spawn:20,special:[0,16],specif:[0,11,12,25,30,37],specifi:[0,22,26,38],spectral:32,speed:[0,29],speedtest:0,spent:20,spera:0,spheric:0,spiki:[14,15],spin:[0,17],spinrat:0,split:[0,5,12,16,17,19,22,30,37],split_lin:12,splitlin:[6,7,8,9,12,13,14,15,16,17],splitpoint:0,spread:21,sqrt:0,src:[0,7,9,23,40],st1:19,st2:19,st:5,stabil:0,stabl:[0,23,40],stack:22,stackoverflow:32,stacktrac:21,stage:26,stancliff:0,standard:[0,13,14,15,30,32,37,38],star1:17,star:[1,4,5,7,8,9,11,12,13,14,17,18,19,22,23,25,30,32,37,38,43],star_with_no_mass:0,starcount:[6,8,13,15,16],stardata:[0,1,6,8,9,12,13,14,15,16,18,19],stardata_dump_filenam:0,stardata_load_filenam:0,stardata_t:9,starnum:[6,13],start:[0,1,5,6,8,12,13,14,15,16,19,20,22,28,34,35],start_at:22,start_tim:[0,22],start_timestamp:[6,8,13,15,16],startrack:0,startswith:12,stat:26,state:[0,31],statement:[1,9,12,13,14,15,16,17,18,19,22],statist:[0,22,30],statu:[0,1,6,8,13,14,15,16,22,26,30,31,37],status_dir:22,stderr:[0,22],stdout:[20,22,38],steadi:0,stefan:25,stefano:[16,23,27,32],stellar:[0,4,5,7,15,22,23,25,32,38,39,42],stellar_structure_algorithm:0,stellar_structure_algorithm_external_funct:0,stellar_structure_algorithm_mint:0,stellar_structure_algorithm_modified_bs:0,stellar_structure_algorithm_non:0,stellar_typ:[1,6,9,12,13,14,15,16,23,24,25],stellar_type1:5,stellar_type2:5,stellar_type_1:[0,16,25],stellar_type_2:[0,16,25],stellar_type_3:0,stellar_type_4:0,stellar_type_dict:42,stellar_type_dict_short:42,step:[3,6,8,9,12,13,14,15,16,25,35,38],stepsiz:[16,35],stick:22,stiff:0,still:[1,9,17,22,43],stop:[0,6,8,13,19,20,22],stop_queu:22,stopfil:0,storag:0,store:[0,2,4,6,8,12,13,14,15,16,20,21,22,23,31,38,40,43],store_capsul:7,store_memaddr:[7,43],str:[1,2,3,5,6,16,20,21,25,31,34,35,39],straightforward:[6,13,14,15,16],straniero:0,stream:22,strength:0,strict:3,strictli:[13,14,15],string:[0,1,2,3,4,7,12,13,14,15,16,17,20,21,22,25,26,30,31,34,35,37,39,41],strip:[0,7,12,17],strong:6,stronger:[0,6],struct:[0,9],structur:[0,2,8,20,22,25],studi:6,stuff:[12,16,22],style:[0,20,33],sub:[0,2,20],subdict:2,subject:0,sublumin:0,submiss:22,submit:[22,23],subplot:19,subprocess:16,subsequ:0,subtract:2,subtract_dict:2,succe:0,suddenli:6,suffer:6,suffici:6,suggest:[0,23,40],suit:[23,40],suitabl:38,sum:[0,2],sun:17,sundial:0,supercrit:0,superflu:17,supernova:[0,5,8,22],superwind:0,superwind_mira_switchon:0,support:31,sure:[2,12,13,14,15,16,23,26,31,32,40,41],surfac:0,surrei:[6,16],surviv:[0,17],survivor:0,sview:22,swallow:17,switcher:0,sy:21,symlink:[6,8,13,16],symlink_latest_gridcod:22,symmetr:0,synchron:0,synonym:0,synthesi:[13,14,15,16,22,23,40],system:[0,4,6,7,8,9,13,14,15,16,18,19,20,21,22,23,25,32,33,36,40,41,43],system_dict:33,system_gener:[16,31],system_numb:33,system_queue_fil:[6,8,13],t:[0,1,2,5,6,12,14,15,16,20,22,26,31,38],t_:6,tabl:[0,32,38],take:[0,2,8,13,16,19,20,22,27,31,32,35,41],taken:[0,2,9,32],talk:6,target:[1,34],task:[0,19,20,21,25,26,29,32,38,41,43],tauri:0,tbse:0,te:22,technic:[6,8,9,13,14,15,16],teff:[0,5,32],teff_1:25,teff_2:25,teff_from_star_struct:6,teff_postagb_max:0,teff_postagb_min:0,tell:[20,26],temp_dir:[5,6,8,12,14,15,16,17,20],temperatur:[0,17,25,32],tempfil:19,term:2,termin:[1,6,9,16,23,40],test:[0,12,20,22,23,26,29,31,40],test_cach:29,test_data:0,test_func:7,test_log:19,test_logfil:12,test_pop:16,text:[6,8,17,20,34],than:[0,2,6,8,13,14,15,16,20,22,23,26,31,32,39,40],thats:16,thei:[0,2,5,6,8,13,16,17,21,22,25,26,30,37,38],thelog:0,them:[2,6,7,8,16,18,19,20,30,31,32,34,41],themselv:[3,32],theoret:[13,14,15],thermal:[0,6,32,43],thermally_pulsing_asymptotic_giant_branch:0,thermohalin:0,thermonuclear:6,thesi:0,thi:[0,1,2,3,5,6,7,8,9,11,12,13,14,15,16,17,19,20,21,22,23,24,25,26,27,29,30,31,32,33,34,35,36,37,38,39,40,41,43],thick:0,thick_disc_end_ag:0,thick_disc_logg_max:0,thick_disc_logg_min:0,thick_disc_start_ag:0,thin:0,thing:[0,3,6,7,8,13,14,15,16,19,20,21,32,41],think:[0,20,21],third:[0,17,32,38],third_dup:0,third_dup_multipli:0,thorn:0,those:[2,6,8,13,14,15,16,19,21,23,32,39,40],thread:[6,8,13,14,15,20,22,33],thread_id:22,three:[0,7,14,15,16,32],three_part_powerlaw:[8,13,14,15,16,32],threshold:[0,20,22],through:[6,7,11,12,13,14,15,16,25,26,35,41],throughout:[13,14,15,16,35],thu:38,tidal:[0,5],tidal_strength_factor:0,tide:[0,17],tides_convective_damp:0,tides_diagnosis_log:0,tides_hurley2002:0,tides_zahn1989:0,tight:19,time:[0,1,2,3,5,6,8,9,12,13,14,15,16,17,18,19,20,21,22,23,25,28,31,32,33,38,40],time_elaps:[16,28],timedelta:20,timescal:0,timestamp:[22,28],timestep:[0,8,9,12,13,14,15],timestep_limit:0,timestep_log:0,timestep_modul:0,timestep_multipli:0,timestep_solver_factor:0,tini:6,tinslei:32,tip:[6,32],titl:[13,34],tmax:38,tmin:38,tmp:[0,6,8,12,13,14,15,16,17,20,23,40],tmp_dir:[5,6,8,12,14,15,16,17,22,35],tmp_tabl:32,toasti:17,todo:[0,1,2,5,11,16,20,21,22,25,26,30,31,32,33,34,37,38,39,41,43],toler:0,too:[0,2,6,7,14,15,17,22,23,40,41],took:[6,8,13,15,16,19],tool:22,top:[0,16,35],topcod:[6,8,16,35],topic:0,torqu:0,total:[0,2,6,8,13,14,15,16,19,20,22,25,32,35],total_count:[6,8,13,15,16],total_mass_run:[6,8,13,15,16],total_prob:[6,8,13,14,15,16],total_probability_weighted_mass_run:[6,8,13,15,16],touch:[26,31],tout:[0,43],tout_pringle_1992_multipli:0,tp:0,tpagb:[0,6],tpagb_reimers_eta:0,tpagb_wind_beasor_etal_2020:0,tpagb_wind_bloeck:0,tpagb_wind_goldman_etal_2017:0,tpagb_wind_mattsson:0,tpagb_wind_reim:0,tpagb_wind_rob_cwind:0,tpagb_wind_van_loon:0,tpagb_wind_vw93_karaka:0,tpagb_wind_vw93_karakas_carbon_star:0,tpagb_wind_vw93_orig:0,tpagb_wind_vw93_orig_carbon_star:0,tpagbwind:0,tpagbwindfac:0,tpr:[8,13],trace:22,traceback:[14,17],track:[6,22,25],trade:0,trail:[20,38],transfer:[0,6,22],transform:[0,3],transit:0,treat:[0,38],trem:20,trigger:0,trio:[13,14,15,16],tripl:[0,22,32],truli:0,ttlcach:22,tupl:[1,6,20,26,31,38],turn:[0,2,3,5,12,16,20],tutori:[4,23],two:[0,2,6,7,9,20,31,33,42,43],txt:[12,16,19,23,31,40,41],type:[0,1,2,3,5,8,12,13,14,15,16,19,20,21,22,25,26,31,32,34,35,38,39,42,43],type_chng:[5,12,19],type_ia_mch_supernova_algorithm:0,type_ia_sub_mch_supernova_algorithm:0,typeerror:14,typic:0,ubvri:0,ugriv:0,uk:[6,16],unavail:0,unbound:5,unclos:31,uncom:[12,13,14,15,16,17],unction:7,undef:9,under:[12,38],undergo:[0,8],understand:22,undescrib:34,unexpect:14,uniform:32,union:[2,16,20,32,35,38,39,43],uniqu:[2,19,22],unit:[0,6,7,11,20,43],univari:0,univers:[6,8,22],unix:33,unknown:41,unless:[1,21,22],unlik:[14,15],unload:21,unlock:31,unmerg:8,unnecessari:34,unpars:7,unphys:[5,8,13],unrecogn:[23,40],unresolv:13,unsign:0,unstabl:[0,5],until:[0,2,6,31,32],unus:[0,22],unweight:16,up:[0,1,4,9,12,17,20,21,26,27,29,30,32,37],updat:[2,14,15,16,21,23,35,40],update_dict:[2,11],update_grid_vari:[14,15,35],upon:43,upper:[0,32,38],uranu:17,us:[0,1,2,3,4,11,12,16,20,21,22,23,25,26,27,28,29,30,31,32,34,35,37,38,39,40,41,43],usag:[0,4],use_astropy_valu:25,use_datadir:[16,21],use_fixed_timestep_:0,use_lwn_fallback:0,use_periastron_roche_radiu:0,use_tabular_intershell_abundances_karakas_2012:0,usecach:38,usecas:4,useful_func:[23,24],user:[1,9,20,21,22,27,32,34,41],usernam:20,usr:22,usual:[0,5,6,7,13,14,15,16,20,22,31,32],utf:[3,16,31],util:[1,2,3,5,6,7,8,9,11,12,13,14,15,16,17,18,20,21,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,41,43],v:[5,19,23,40],val:32,valid:[0,7,9,20,32],valu:[0,1,2,3,6,7,11,12,13,14,15,16,19,20,21,22,25,28,29,32,34,35,38],value_lin:12,valueerror:16,valuerang:[6,8,13,14,15,16,35],values_arrai:12,van:0,vandenheuvel_log:0,vanilla:22,vari:[0,6,8,16],variabl:[0,4,6,7,8,20,22,30,31,35],variant:0,variou:0,vassiliadi:0,vb1print:33,vb2print:33,vb:[5,26,29,31,38],ve:28,veloc:[0,32],venu:17,verbos:[1,6,8,12,13,14,15,16,18,20,22,23,27,31,32,33,38,40],verbose_print:[20,33],veri:[0,5,6,7,8,9,12,14,15,16,31,35,38],versa:43,version:[0,2,7,11,16,20,21,23,39,40],version_info:[11,21,23,24],version_info_str:39,version_onli:0,via:[4,6,7,9,13,14,15,16,21,22,25],vice:43,vink:0,virtual:[23,40],virtualenviron:[23,40],viscos:0,viscou:0,visibl:9,visit:23,vk:[5,19],vn:[5,19],volum:0,vr:[5,19],vrot1:0,vrot2:0,vrot3:0,vrot4:0,vrot_breakup:0,vrot_bs:0,vrot_non_rot:0,vrot_sync:0,vs:[17,25],vw93:0,vw93_eagb_wind_spe:0,vw93_mira_shift:0,vw93_multipli:0,vw93_tpagb_wind_spe:0,vwind:0,vwind_beta:0,vwind_multipli:0,w:[1,12,16,21,31],wa:[0,6,11,12,14,15,16,21,22,23,31,32,40],wai:[0,2,12,14,15,21,22,26],wait:31,wait_for_unlock:31,wang:0,want:[0,2,3,5,8,9,13,14,15,16,19,20,22,23,25,26,31,32,34,35,40],warmup_cpu:0,warn:[0,12,16,22,26],was_kil:21,wast:[8,14,15],wave:[0,6,8,16],wd:0,wd_accretion_rate_new_giant_envelope_lower_limit_helium_donor:0,wd_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor:0,wd_accretion_rate_new_giant_envelope_lower_limit_other_donor:0,wd_accretion_rate_novae_upper_limit_helium_donor:0,wd_accretion_rate_novae_upper_limit_hydrogen_donor:0,wd_accretion_rate_novae_upper_limit_other_donor:0,wd_kick:0,wd_kick_at_every_puls:0,wd_kick_at_given_puls:0,wd_kick_direct:0,wd_kick_end_agb:0,wd_kick_first_rlof:0,wd_kick_pulse_numb:0,wd_kick_when:0,wd_sigma:0,wdwd_merger_algorithm:0,wdwd_merger_algorithm_bs:0,wdwd_merger_algorithm_chen2016:0,wdwd_merger_algorithm_perets2019:0,we:[0,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17,19,20,21,22,23,26,27,28,29,30,31,32,34,37,38,40,43],weight:[0,14,15,22],weirdli:13,well:[0,3,9,12,13,14,15,22,23,40],went:[14,15],were:[6,8,13,15,16,20,39],what:[0,1,2,5,6,7,8,9,12,13,14,15,16,19,22,23,26,32,34,38,39,40,41],whatev:[0,9,19,20,21,23,26,31,40],wheeler:0,when:[0,1,2,3,6,7,8,11,12,16,17,20,22,23,26,28,29,30,31,32,34,37,38,40,41],whenev:[23,40],where:[0,1,2,6,13,14,15,16,20,22,23,26,28,31,32,34,38,40],whether:[0,7,16,20,21,22,25,30,31,32,34,37,38,39,43],which:[0,1,2,6,7,8,9,11,12,13,14,15,16,18,19,20,21,22,23,26,30,31,32,34,35,37,38,39,40,41,43],whichev:22,white:[0,6],white_dwarf_cooling_carrasco2014:0,white_dwarf_cooling_mestel:0,white_dwarf_cooling_mestel_modifi:0,white_dwarf_cooling_model:0,white_dwarf_radius_carrasco2014:0,white_dwarf_radius_model:0,white_dwarf_radius_mu:0,white_dwarf_radius_nauenberg1972:0,whole:[0,8,9,21,22],why:8,wide:[5,13,14,15],wider:5,width:[0,8,20],wiggl:[14,15],wind:[0,5,6,7,13],wind_algorithm_binary_c_2020:[0,5],wind_algorithm_hendriks_2022:0,wind_algorithm_hurley2002:0,wind_algorithm_non:[0,5],wind_algorithm_schneider2018:0,wind_angmom_loss_bs:0,wind_angmom_loss_lw:0,wind_angmom_loss_lw_hybrid:0,wind_angmom_loss_spherically_symmetr:0,wind_angular_momentum_loss:0,wind_disc_angmom_fract:0,wind_disc_mass_fract:0,wind_djorb_fac:0,wind_gas_to_dust_ratio:0,wind_lbv_luminosity_lower_limit:0,wind_mass_loss:[0,5],wind_multiplier_:0,wind_nieuwenhuijzen_luminosity_lower_limit:0,wind_type_multiplier_:0,wink:0,within:[0,2,9,11,16,20,23,32,35,40],without:[2,9,12,14,15,20,22,32],won:[0,12],wood:0,wooslei:0,work:[0,2,3,9,12,13,14,15,16,19,20,22,23,26,31,40],working_diretori:22,would:[0,2,14,15,16,22,25],wouldn:[16,31],wr:0,wr_wind:0,wr_wind_bs:0,wr_wind_eldridg:0,wr_wind_fac:0,wr_wind_maeder_meynet:0,wr_wind_nugis_lam:0,wrap:[1,9,20,29],wrapper:[3,7,9,12,21,31,33,43],write:[1,5,6,7,8,9,12,13,16,18,19,20,21,22,31,34,41],write_binary_c_calls_to_fil:[16,31],write_binary_c_parameter_descriptions_to_rst_fil:20,write_ensembl:31,write_grid_options_to_rst_fil:34,write_logfil:7,written:[7,12,16,22,31,34,35,41],written_data:12,wrlof_mass_transf:0,wrlof_method:0,wrlof_non:0,wrlof_q_depend:0,wrlof_quadrat:0,wrong:[14,15,23,40],wrt:19,wrwindfac:0,wtts2:0,wtts_log:0,www:[0,32],x0:32,x0d:[20,22],x1:32,x86_64:7,x:[0,6,9,12,17,19,20,21,25,26,32,38],xlabel:18,xlim:[8,17],xx:17,xxx:37,y:[5,6,17,20,21,25,26],ye:22,year:[0,32],year_length_in_dai:8,yet:[0,2,19,20,22,25],yield:[0,38],ylim:17,you:[0,1,2,5,6,7,8,9,12,13,14,15,16,17,18,19,20,21,22,23,25,26,31,32,34,35,38,40,43],young:0,your:[9,12,18,19,22,23,40],yourself:[6,8,13,14,15,16,25],yscale:[13,14,15,17],yy:17,z:[0,6,8,19,21,32,43],zahn:0,zam:[0,4,6,7,13,32,41,43],zams_collis:43,zams_mass:[6,13,14,15,16],zams_mass_1:16,zams_mass_2:16,zero:[0,1,4,5,6,8,15,20,22,23,31],zero_ag:[6,9,12,13,14,15,16],zero_age_main_sequence_star:[13,14,15],zero_age_main_sequence_starn:13,zero_prob_stars_skip:[6,8,13,15,16],zone:0,zoom:[0,38],zoom_dispers:38,zoom_magnitud:38,zoom_magntiud:38,zoom_mean:38,zoomfac_multiplier_decreas:0,zoomfac_multiplier_increas:0,zsolar:32,zytkow:0},titles:["Binary_c parameters","custom_logging_functions module","dicts module","ensemble module","Example notebooks","Example use case: Binary black hole systems","Example use case: Hertzsprung-Russell diagrams","Tutorial: Using the API functionality of binary_c-python","Example use case: Common-envelope evolution","Tutorial: Using custom logging routines with binary_c-python","<no title>","Tutorial: Extra features and functionality of binary_c-python","Tutorial: Running individual systems with binary_c-python","Example use case: Zero-age stellar luminosity function in binaries","Example use case: Zero-age stellar luminosity function","Example use case: Massive star luminosity","Tutorial: Running populations with binary_c-python","Example use case: Solar system using the API functionality","Basic example","Binary_c and python example notebook","functions module","Population class module","Population grid code options","Welcome to binary_c-python\u2019s documentation!","Binarycpython code","plot_functions module","Population class extension: HPC module","Population class extension: Moe_di_Stefano_2017 module","Population class extension: analytics module","Population class extension: cache module","Population class extension: condor module","Population class extension: dataIO module","Population class extension: distribution_functions module","Population class extension: grid_logging module","Population class extension: grid_options_defaults module","Population class extension: gridcode module","Population class extension: metadata module","Population class extension: slurm module","Population class extension: spacing_functions module","Population class extension: version_info module","Python module for binary_c","run_system_wrapper module","stellar_types module","useful_funcs module"],titleterms:{"case":[5,6,8,13,14,15,17],"class":[21,26,27,28,29,30,31,32,33,34,35,36,37,38,39],"function":[7,11,12,13,14,15,16,17,19,20],"public":22,A:[14,15],about:11,ad:[13,14,15,16],after:[23,40],ag:[13,14],algorithm:0,analyt:28,api:[7,9,12,17,19],basic:18,better:[14,15],binari:[0,5,6,13,16,19],binary_c:[0,7,9,11,12,16,19,23,40],binarycpython:24,black:5,build:[11,23,40],cach:29,code:[22,24],common:8,compact:9,condor:30,content:[4,23],core:19,custom:[9,19],custom_logging_funct:1,dataio:31,develop:[23,40],di:22,diagram:6,dict:2,dictionari:11,directli:9,distribut:[14,15],distribution_funct:32,document:[23,40],ensembl:3,envelop:8,environ:[23,40],evolut:[8,9],evolv:[6,8,13,14,15,16],exampl:[4,5,6,7,8,9,11,13,14,15,16,17,18,19,23,40],extens:[26,27,28,29,30,31,32,33,34,35,36,37,38,39],extra:11,faq:[23,40],featur:11,free:7,from:[7,9,23,40],full:16,get:[7,11],grid:[6,8,13,14,15,16,22],grid_log:33,grid_options_default:34,gridcod:35,handl:[6,8,13,14,15,16],hertzsprung:6,hole:5,hpc:26,i:0,indic:23,individu:12,inform:[7,11],initi:[14,15],input:0,instal:[23,40],instruct:[23,40],issu:[23,40],line:19,log:[6,8,9,13,14,15,16,19],luminos:[13,14,15],mass:[9,14,15],massiv:15,metadata:36,misc:0,modif:11,modul:[1,2,3,20,21,23,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],moe:22,moe_di_stefano_2017:27,note:[23,40],notebook:[4,19],noteworthi:16,nucsyn:0,o:0,object:[6,8,9,12,13,14,15,16],option:22,other:19,output:[0,6,8,13,14,15,16],paramet:[0,11],pars:11,pip:[23,40],plot_funct:25,popul:[6,8,9,12,13,14,15,16,21,22,26,27,28,29,30,31,32,33,34,35,36,37,38,39],privat:22,python:[7,9,11,12,16,19,23,40],requir:[23,40],routin:9,run:[9,12,16,19],run_binari:19,run_binary_with_log:19,run_system:19,run_system_wrapp:[12,41],russel:6,s:23,sampl:[14,15],sampler:22,script:16,section:0,set:[6,7,8,13,14,15,16],singl:[12,16],slurm:37,solar:17,sourc:[23,40],spacing_funct:38,star:[0,6,15,16],stefano:22,stellar:[6,8,13,14],stellar_typ:42,store:7,string:9,supernova:9,system:[5,12,17],tabl:23,tutori:[7,9,11,12,16],up:[6,7,8,13,14,15,16],us:[5,6,7,8,9,13,14,15,17,19],usag:[7,9,23,40],useful_func:43,util:19,variabl:[13,14,15,16,23,40],version_info:39,via:[12,23,40],welcom:23,when:9,wrapper:19,zam:[14,15],zero:[13,14]}}) \ No newline at end of file +Search.setIndex({"docnames": ["binary_c_parameters", "custom_logging_functions", "dicts", "ensemble", "example_notebooks", "examples/notebook_BHBH", "examples/notebook_HRD", "examples/notebook_api_functionality", "examples/notebook_common_envelope_evolution", "examples/notebook_custom_logging", "examples/notebook_ensembles", "examples/notebook_extra_features", "examples/notebook_individual_systems", "examples/notebook_luminosity_function_binaries", "examples/notebook_luminosity_function_single", "examples/notebook_massive_remnants", "examples/notebook_population", "examples/notebook_solar_system", "examples/old/basic_example", "examples/old/workshop_example_notebook", "functions", "grid", "grid_options_descriptions", "index", "modules", "plot_functions", "population_extensions/HPC", "population_extensions/Moe_di_Stefano_2017", "population_extensions/analytics", "population_extensions/cache", "population_extensions/condor", "population_extensions/dataIO", "population_extensions/distribution_functions", "population_extensions/grid_logging", "population_extensions/grid_options_defaults", "population_extensions/gridcode", "population_extensions/metadata", "population_extensions/slurm", "population_extensions/spacing_functions", "population_extensions/version_info", "readme_link", "run_system_wrapper", "stellar_types", "useful_funcs"], "filenames": ["binary_c_parameters.rst", "custom_logging_functions.rst", "dicts.rst", "ensemble.rst", "example_notebooks.rst", "examples/notebook_BHBH.ipynb", "examples/notebook_HRD.ipynb", "examples/notebook_api_functionality.ipynb", "examples/notebook_common_envelope_evolution.ipynb", "examples/notebook_custom_logging.ipynb", "examples/notebook_ensembles.ipynb", "examples/notebook_extra_features.ipynb", "examples/notebook_individual_systems.ipynb", "examples/notebook_luminosity_function_binaries.ipynb", "examples/notebook_luminosity_function_single.ipynb", "examples/notebook_massive_remnants.ipynb", "examples/notebook_population.ipynb", "examples/notebook_solar_system.ipynb", "examples/old/basic_example.ipynb", "examples/old/workshop_example_notebook.ipynb", "functions.rst", "grid.rst", "grid_options_descriptions.rst", "index.rst", "modules.rst", "plot_functions.rst", "population_extensions/HPC.rst", "population_extensions/Moe_di_Stefano_2017.rst", "population_extensions/analytics.rst", "population_extensions/cache.rst", "population_extensions/condor.rst", "population_extensions/dataIO.rst", "population_extensions/distribution_functions.rst", "population_extensions/grid_logging.rst", "population_extensions/grid_options_defaults.rst", "population_extensions/gridcode.rst", "population_extensions/metadata.rst", "population_extensions/slurm.rst", "population_extensions/spacing_functions.rst", "population_extensions/version_info.rst", "readme_link.rst", "run_system_wrapper.rst", "stellar_types.rst", "useful_funcs.rst"], "titles": ["Binary_c parameters", "custom_logging_functions module", "dicts module", "ensemble module", "Example notebooks", "Example use case: Binary black hole systems", "Example use case: Hertzsprung-Russell diagrams", "Tutorial: Using the API functionality of binary_c-python", "Example use case: Common-envelope evolution", "Tutorial: Using custom logging routines with binary_c-python", "<no title>", "Tutorial: Extra features and functionality of binary_c-python", "Tutorial: Running individual systems with binary_c-python", "Example use case: Zero-age stellar luminosity function in binaries", "Example use case: Zero-age stellar luminosity function", "Example use case: Massive star luminosity", "Tutorial: Running populations with binary_c-python", "Example use case: Solar system using the API functionality", "Basic example", "Binary_c and python example notebook", "functions module", "Population class module", "Population grid code options", "Welcome to binary_c-python\u2019s documentation!", "Binarycpython code", "plot_functions module", "Population class extension: HPC module", "Population class extension: Moe_di_Stefano_2017 module", "Population class extension: analytics module", "Population class extension: cache module", "Population class extension: condor module", "Population class extension: dataIO module", "Population class extension: distribution_functions module", "Population class extension: grid_logging module", "Population class extension: grid_options_defaults module", "Population class extension: gridcode module", "Population class extension: metadata module", "Population class extension: slurm module", "Population class extension: spacing_functions module", "Population class extension: version_info module", "Python module for binary_c", "run_system_wrapper module", "stellar_types module", "useful_funcs module"], "terms": {"The": [0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 28, 29, 30, 31, 32, 33, 35, 37, 38, 40, 41], "follow": [0, 7, 9, 16, 19, 20, 22, 25, 32, 38], "chapter": [0, 22, 24], "contain": [0, 1, 2, 3, 7, 11, 12, 13, 14, 15, 16, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42], "all": [0, 1, 2, 3, 6, 7, 8, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 31, 32, 34, 38, 39, 40, 41], "current": [0, 2, 8, 9, 11, 13, 14, 15, 20, 21, 23, 26, 31, 40], "version": [0, 2, 7, 11, 16, 20, 21, 23, 39, 40], "can": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 25, 26, 31, 32, 35, 40, 41, 43], "handl": [0, 2, 3, 4, 7, 12, 20, 21, 22, 26, 27, 35, 36, 39, 41, 43], "along": [0, 22, 23, 34, 40], "descript": [0, 7, 11, 20, 22, 27, 32, 34], "other": [0, 1, 2, 6, 11, 12, 13, 14, 15, 16, 20, 22, 23, 25, 26, 32, 34, 40], "properti": [0, 20, 22, 25, 35], "thi": [0, 1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 43], "inform": [0, 1, 3, 4, 6, 9, 12, 13, 14, 15, 16, 20, 21, 22, 25, 26, 32, 34, 36, 39], "wa": [0, 6, 11, 12, 14, 15, 16, 21, 22, 23, 31, 32, 40], "obtain": [0, 6, 8, 13, 14, 15, 31], "build": [0, 1, 4, 7, 20, 26, 32], "git": [0, 13, 14, 15, 16, 20], "branch": [0, 6, 20, 23, 39, 40], "branch_david": 0, "revis": [0, 39], "6072": 0, "20220603": 0, "69cdd3f72": 0, "built": [0, 1, 20, 23, 40], "jun": 0, "3": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 19, 20, 22, 23, 30, 32, 37, 38, 40], "2022": 0, "14": [0, 5, 6, 9, 12, 13, 15, 16, 17, 19], "44": [0, 5, 13], "39": [0, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 17, 18], "metal": [0, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19, 32, 43], "set": [0, 1, 2, 3, 4, 5, 9, 11, 12, 17, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 37, 38, 39, 40], "e": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 20, 21, 22, 23, 26, 29, 30, 31, 32, 35, 37, 38, 40, 43], "amount": [0, 2, 7], "mass": [0, 1, 2, 4, 5, 6, 7, 8, 11, 12, 13, 16, 17, 19, 20, 22, 25, 32, 35, 38, 39, 41, 43], "matter": [0, 7], "which": [0, 1, 2, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 26, 30, 31, 32, 34, 35, 37, 38, 39, 40, 41, 43], "hydrogen": [0, 6, 7], "helium": [0, 6, 7], "If": [0, 2, 6, 7, 8, 13, 14, 15, 16, 20, 21, 22, 23, 25, 26, 27, 28, 30, 31, 32, 35, 37, 40, 41, 43], "you": [0, 1, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 31, 32, 34, 35, 38, 40, 43], "ar": [0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 29, 30, 31, 32, 34, 35, 37, 38, 39, 40, 43], "us": [0, 1, 2, 3, 4, 11, 12, 16, 20, 21, 22, 23, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 37, 38, 39, 40, 41, 43], "bse": [0, 7, 9, 16, 32], "must": [0, 2, 6, 7, 8, 12, 13, 14, 15, 16, 17, 31, 35, 38], "1e": [0, 7, 8, 9, 12, 13, 19], "4": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 21, 31, 32, 38], "0": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 26, 27, 29, 32, 35, 38, 40, 43], "03": [0, 1, 5, 7, 8, 13], "see": [0, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 19, 21, 22, 23, 25, 29, 31, 32, 35, 39, 40], "also": [0, 4, 5, 6, 7, 8, 9, 13, 14, 15, 16, 19, 20, 21, 22, 23, 26, 28, 31, 34, 39, 40, 43], "nucsyn_metal": [0, 7], "effective_metal": [0, 7, 19], "type": [0, 1, 2, 3, 5, 8, 12, 13, 14, 15, 16, 19, 20, 21, 22, 25, 26, 31, 32, 34, 35, 38, 39, 42, 43], "float": [0, 2, 3, 5, 7, 11, 12, 17, 20, 32, 33, 38, 43], "default": [0, 1, 2, 3, 6, 7, 9, 11, 13, 14, 15, 16, 19, 20, 21, 22, 26, 27, 29, 30, 31, 32, 34, 37, 38, 39, 41], "valu": [0, 1, 2, 3, 6, 7, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 25, 28, 29, 32, 34, 35, 38], "02": [0, 5, 6, 7, 8, 9, 12, 13, 16, 17, 19, 32, 43], "effect": [0, 5, 7, 9, 13, 22, 32], "routin": [0, 2, 4, 7, 23, 25, 41], "like": [0, 1, 6, 7, 8, 13, 14, 15, 16, 19, 20, 22, 23, 25, 31, 38, 40], "schneider": [0, 7], "wind": [0, 5, 6, 7, 13], "loss": [0, 5, 7, 12, 13, 17], "default_to_metal": [0, 7], "1": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 25, 26, 30, 31, 32, 33, 35, 37, 38, 41, 43], "just": [0, 2, 6, 7, 8, 16, 19, 20, 21, 22, 23, 27, 31, 39, 40, 43], "same": [0, 2, 7, 12, 16, 22, 23, 32, 35, 40, 41], "main": [0, 1, 6, 7, 9, 13, 14, 15, 16, 19, 22, 23, 40], "differ": [0, 6, 7, 8, 13, 14, 15, 16, 19, 20, 22, 23, 25, 38, 40], "between": [0, 7, 22, 32, 38], "rang": [0, 6, 7, 8, 12, 13, 14, 15, 16, 22, 32, 35, 38], "valid": [0, 7, 9, 20, 32], "while": [0, 5, 6, 7, 8, 13], "s": [0, 2, 3, 5, 6, 7, 8, 12, 14, 15, 16, 17, 19, 20, 21, 22, 26, 28, 29, 31, 32, 36, 43], "limit": [0, 6, 7, 8, 13, 14, 15, 16, 22, 25], "stellar": [0, 4, 5, 7, 15, 22, 23, 25, 32, 38, 39, 42], "evolut": [0, 1, 4, 5, 6, 7, 12, 13, 14, 15, 16, 19, 22, 23, 25, 38], "so": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 21, 22, 25, 26, 31], "macro": [0, 11, 20, 39], "m_1": [0, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 35, 41], "initi": [0, 4, 5, 7, 11, 12, 19, 21, 32], "one": [0, 2, 7, 11, 14, 15, 16, 17, 18, 19, 22, 25, 29, 31, 34, 38, 41], "solar": [0, 4, 6, 7, 8, 11, 23, 32, 43], "unit": [0, 6, 7, 11, 20, 43], "intern": [0, 7, 11, 22], "index": [0, 7, 11, 12, 16, 17, 22, 23, 26, 32, 35], "m_2": [0, 5, 6, 7, 8, 9, 12, 13, 16, 18, 19], "two": [0, 2, 6, 7, 9, 20, 31, 33, 42, 43], "m_3": [0, 7], "three": [0, 7, 14, 15, 16, 32], "2": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 20, 22, 23, 25, 26, 30, 32, 37, 38, 40], "m_4": [0, 7], "four": [0, 7], "vrot1": 0, "equatori": 0, "rotat": [0, 32], "veloc": [0, 32], "km": 0, "hurlei": 0, "et": [0, 32, 43], "al": [0, 32, 43], "2000": [0, 5], "2002": 0, "prescript": [0, 5, 16], "sequenc": [0, 6, 9, 13, 14, 15, 19], "truli": 0, "non": [0, 2, 14, 15, 22, 23, 31, 40], "someth": [0, 6, 8, 12, 13, 14, 15, 22, 43], "small": [0, 5, 14, 15], "g": [0, 1, 2, 5, 6, 8, 9, 12, 13, 14, 15, 16, 18, 19, 20, 22, 23, 26, 29, 30, 31, 32, 37, 38, 40], "001": [0, 5], "vrot2": 0, "vrot_bs": 0, "vrot_breakup": 0, "vrot_sync": 0, "vrot_non_rot": 0, "vrot3": 0, "vrot4": 0, "prot1": 0, "prot2": 0, "prot3": 0, "period": [0, 5, 7, 8, 9, 12, 13, 14, 15, 16, 17, 19, 25, 32, 43], "dai": [0, 5, 8, 9, 12, 13, 16, 19, 32, 43], "prot4": 0, "inclination1": 0, "inclin": 0, "degre": 0, "inclination2": 0, "inclination3": 0, "inclination4": 0, "b_1": 0, "magnet": 0, "field": 0, "gauss": 0, "b_2": 0, "b_3": 0, "b_4": 0, "b_inclination1": 0, "b_inclination2": 0, "b_inclination3": 0, "b_inclination4": 0, "stellar_type_1": [0, 16, 25], "usual": [0, 5, 6, 7, 13, 14, 15, 16, 20, 22, 31, 32], "main_sequ": [0, 13, 14, 15, 19], "note": [0, 5, 6, 13, 14, 15, 16, 19, 20, 22, 26, 31, 35, 38, 39], "onli": [0, 2, 6, 9, 13, 14, 15, 16, 17, 19, 20, 22, 26, 27, 31, 38, 43], "work": [0, 2, 3, 9, 12, 13, 14, 15, 16, 19, 20, 22, 23, 26, 31, 40], "both": [0, 2, 7, 13, 14, 15, 16], "ag": [0, 4, 5, 6, 8, 15, 23, 38], "core_mass": [0, 9], "white": [0, 6], "dwarf": [0, 6, 14, 15], "black": [0, 4, 6, 23], "hole": [0, 4, 6, 23], "neutrn": 0, "integ": [0, 6, 22, 38, 43], "low_mass_m": 0, "ms": [0, 5, 9, 13], "hg": 0, "giant_branch": 0, "cheb": 0, "eagb": [0, 5], "5": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 20, 29, 31, 32, 35], "tpagb": [0, 6], "6": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 19, 23, 40], "hem": 0, "7": [0, 1, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 19, 23, 32, 40], "hehg": 0, "8": [0, 3, 5, 6, 8, 9, 12, 13, 14, 15, 16, 19, 31, 32], "hegb": [0, 5], "9": [0, 5, 6, 7, 8, 9, 12, 13, 15, 16, 19, 23, 40], "hewd": 0, "10": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19, 22, 32, 38, 41], "cowd": 0, "11": [0, 5, 6, 8, 9, 12, 13, 15, 16, 17, 19], "onewd": 0, "12": [0, 5, 6, 9, 12, 13, 15, 16, 17, 19, 20, 32], "ns": [0, 1, 8, 9, 16], "13": [0, 5, 6, 8, 9, 12, 13, 15, 16, 17, 19], "bh": [0, 5, 8], "massless_remn": 0, "15": [0, 5, 8, 9, 12, 13, 15, 16, 17, 19, 22, 32], "low_mass_main_sequ": 0, "hertzsprung_gap": 0, "first_giant_branch": 0, "core_helium_burn": 0, "early_asymptotic_giant_branch": 0, "thermally_pulsing_asymptotic_giant_branch": 0, "naked_main_sequence_helium_star": 0, "naked_helium_star_hertzsprung_gap": 0, "naked_helium_star_giant_branch": 0, "helium_white_dwarf": 0, "carbon_oxygen_white_dwarf": 0, "oxygen_neon_white_dwarf": 0, "neutron_star": 0, "black_hol": 0, "star_with_no_mass": 0, "stellar_type_2": [0, 16, 25], "stellar_type_3": 0, "stellar_type_4": 0, "max_stellar_type_1": 0, "maximum": [0, 6, 7, 8, 9, 13, 14, 15, 16, 22, 32, 38, 43], "stop": [0, 6, 8, 13, 19, 20, 22], "when": [0, 1, 2, 3, 6, 7, 8, 11, 12, 16, 17, 20, 22, 23, 26, 28, 29, 30, 31, 32, 34, 37, 38, 40, 41], "reach": [0, 5, 6, 8], "neg": [0, 2, 38], "massless": 0, "remnant": [0, 6], "allow": [0, 2, 9, 18, 19, 22, 29, 32], "absolut": [0, 20, 38], "16": [0, 5, 8, 13, 15, 17, 19, 32], "max_stellar_type_2": 0, "max_stellar_type_3": 0, "max_stellar_type_4": 0, "probabl": [0, 1, 2, 6, 8, 9, 13, 14, 15, 16, 19, 21, 22, 25, 31, 32, 34, 35], "weight": [0, 14, 15, 22], "appli": 0, "base": [0, 2, 3, 8, 13, 14, 15, 16, 20, 21, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 43], "sai": [0, 6], "function": [0, 1, 2, 3, 4, 5, 6, 8, 9, 18, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 43], "run": [0, 1, 4, 5, 6, 7, 8, 13, 14, 15, 18, 20, 21, 22, 26, 28, 30, 32, 35, 37, 41, 43], "grid": [0, 4, 12, 20, 21, 23, 26, 27, 30, 31, 32, 33, 34, 35, 36, 37, 38, 43], "simul": [0, 1, 6, 8, 9, 13, 14, 15, 16, 37], "sum": [0, 2], "should": [0, 1, 2, 5, 6, 8, 12, 13, 14, 15, 16, 19, 20, 22, 23, 25, 26, 30, 31, 32, 34, 37, 38, 40, 41], "phasevol": [0, 16], "system": [0, 4, 6, 7, 8, 9, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 25, 32, 33, 36, 40, 41, 43], "phase": [0, 6, 8, 13, 14, 15], "volum": 0, "binary_grid": 0, "null": [0, 6, 7, 8, 20], "stellar_structure_algorithm": 0, "structur": [0, 2, 8, 20, 22, 25], "modifi": [0, 2, 9, 23, 40], "none": [0, 1, 2, 3, 5, 6, 7, 8, 13, 15, 16, 17, 19, 20, 21, 22, 26, 27, 29, 30, 31, 32, 34, 35, 37, 38, 43], "extern": 0, "defin": [0, 1, 16, 17, 21, 25, 32, 35], "call": [0, 1, 2, 11, 12, 14, 15, 16, 17, 20, 21, 22, 25, 26, 30, 31, 33, 35, 37, 38, 39, 41], "code": [0, 1, 6, 8, 9, 12, 13, 14, 15, 16, 18, 19, 21, 23, 25, 30, 31, 32, 34, 35, 37, 38, 40, 41, 43], "yet": [0, 2, 19, 20, 22, 25], "implement": [0, 2, 22], "stellar_structure_algorithm_modified_bs": 0, "stellar_structure_algorithm_non": 0, "stellar_structure_algorithm_external_funct": 0, "stellar_structure_algorithm_mint": 0, "solver": 0, "forward": 0, "euler": 0, "could": [0, 3, 14, 15, 16, 19, 20, 39], "rk2": 0, "rk4": 0, "predictor": 0, "corretor": 0, "solver_forward_eul": 0, "solver_rk2": 0, "solver_rk4": 0, "solver_predictor_corrector": 0, "max_evolution_tim": [0, 1, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 19, 38], "myr": [0, 6, 8, 12, 13, 14, 15, 17, 38], "15000": [0, 5, 7, 9, 12, 16, 17, 19], "max_model_numb": 0, "number": [0, 2, 3, 5, 6, 8, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 26, 31, 32, 33, 34, 35, 38, 40], "model": [0, 1, 6, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19, 22], "ignor": [0, 2, 9, 12, 16, 19, 22, 32, 35], "monte_carlo_kick": 0, "turn": [0, 2, 3, 5, 12, 16, 20], "mont": [0, 22], "carlo": [0, 22], "sn": [0, 5, 6, 8, 13, 14, 15, 17, 19], "kick": [0, 5, 19, 22], "On": [0, 16, 20, 31], "true": [0, 2, 3, 5, 6, 8, 11, 13, 14, 15, 16, 18, 19, 20, 21, 22, 25, 26, 28, 30, 31, 34, 35, 37, 38, 39], "inde": [0, 14, 15], "broken": 0, "fals": [0, 3, 5, 6, 8, 13, 15, 16, 17, 20, 21, 22, 25, 26, 28, 29, 30, 31, 35, 37, 38, 39], "disable_debug": 0, "disabl": [0, 16], "debug": [0, 5, 6, 8, 13, 14, 15, 16, 22, 33], "ha": [0, 1, 2, 5, 6, 8, 9, 11, 13, 14, 15, 16, 19, 20, 22, 28, 31, 35], "an": [0, 2, 3, 6, 7, 8, 11, 12, 13, 14, 15, 16, 19, 20, 22, 23, 26, 27, 30, 31, 32, 33, 34, 35, 36, 37, 38, 41], "requir": [0, 3, 8, 12, 13, 14, 15, 16, 17, 19, 20, 22, 25, 26, 32, 41], "rebuild": [0, 22, 23, 26, 40], "timestep_log": 0, "timestep": [0, 8, 9, 12, 13, 14, 15], "log": [0, 1, 4, 5, 7, 12, 17, 18, 20, 22, 23, 25, 31, 32, 33, 35, 38, 40, 41, 43], "rejects_in_log": 0, "show": [0, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16, 19, 22, 25, 38], "reject": 0, "vandenheuvel_log": 0, "van": 0, "den": 0, "heuvel": 0, "evolution_split": 0, "split": [0, 5, 12, 16, 17, 19, 22, 30, 37], "evolutionari": [0, 12], "splitpoint": 0, "supernova": [0, 5, 8, 22], "occur": [0, 43], "disable_ev": 0, "whether": [0, 7, 16, 20, 21, 22, 25, 30, 31, 32, 34, 37, 38, 39, 43], "new": [0, 2, 6, 8, 12, 13, 14, 15, 16, 20, 21, 26, 31, 32, 35], "event": [0, 5, 6], "we": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 26, 27, 28, 29, 30, 31, 32, 34, 37, 38, 40, 43], "evolution_splitting_sn_eccentricity_threshold": 0, "threshold": [0, 20, 22], "eccentr": [0, 7, 9, 12, 13, 14, 15, 16, 17, 19, 25, 32, 43], "abov": [0, 6, 9, 12, 14, 15, 16, 20, 21, 32], "happen": [0, 6, 8], "01": [0, 5, 6, 8, 9, 13, 16, 19], "evolution_splitting_sn_n": 0, "evolution_splitting_maxdepth": 0, "max": [0, 8, 9, 13, 14, 15, 16, 22, 32], "equation_of_state_algorithm": 0, "equat": 0, "state": [0, 31], "paczynski": 0, "equation_of_state_paczynski": 0, "opacity_algorithm": 0, "opac": 0, "ferguson": 0, "opal": 0, "opacity_algorithm_paczynski": 0, "opacity_algorithm_ferguson_op": 0, "opacity_algorithm_star": 0, "wind_mass_loss": [0, 5], "2018": [0, 1, 5], "sander": 0, "wink": 0, "2020": 0, "lbv": 0, "unsign": 0, "wind_algorithm_non": [0, 5], "wind_algorithm_hurley2002": 0, "wind_algorithm_schneider2018": 0, "wind_algorithm_binary_c_2020": [0, 5], "wind_algorithm_hendriks_2022": 0, "extra": [0, 4, 16, 22, 23, 33, 35, 41], "gbwind": 0, "first": [0, 2, 6, 8, 12, 13, 14, 15, 16, 17, 20, 23, 26, 31, 32, 40, 43], "red": [0, 6, 14, 15, 17], "giant": [0, 6, 17], "reimer": 0, "choos": [0, 6, 8, 9, 13, 19, 25, 26, 31], "gb_reimers_eta": 0, "rate": [0, 14, 15, 32], "schroeder": 0, "cuntz": 0, "2005": [0, 5], "gb_wind_reim": 0, "gb_wind_schroeder_cuntz_2005": 0, "gb_wind_goldman_etal_2017": 0, "gb_wind_beasor_etal_2020": 0, "postagbwind": 0, "special": [0, 16], "post": [0, 5, 6, 8, 9, 21], "A": [0, 2, 4, 16, 29, 43], "gb": 0, "postagb_wind_use_gi": 0, "mean": [0, 5, 20, 22, 23, 30, 32, 37, 38, 40], "whatev": [0, 9, 19, 20, 21, 23, 26, 31, 40], "prescrib": 0, "option": [0, 1, 2, 6, 8, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 26, 27, 29, 31, 32, 34, 35, 38, 40, 43], "includ": [0, 1, 2, 6, 9, 12, 14, 15, 16, 17, 20, 21, 23, 25, 31, 32, 40], "postagb_wind_non": 0, "postagb_wind_krticka2020": 0, "krticka": 0, "kub\u00e1t": 0, "krtickov\u00e1": 0, "635": [0, 13], "a173": 0, "postagb_wind_gi": 0, "teff_postagb_min": 0, "minimum": [0, 7, 20, 22, 32, 38, 39, 43], "temperatur": [0, 17, 25, 32], "teff_postagb_max": 0, "6000": 0, "k": [0, 6, 17, 32], "120000": 0, "mattsson_orich_tpagbwind": 0, "experiment": [0, 20], "mattsson": 0, "oxygen": [0, 6], "rich": 0, "mattsson_mass_loss": 0, "magnetic_braking_factor": 0, "multipli": [0, 2, 14, 15, 22, 38], "brake": 0, "angular": [0, 17, 25], "momentum": [0, 17], "magnetic_braking_gamma": 0, "gamma": 0, "factor": [0, 2, 22, 38], "rappaport": 0, "style": [0, 20, 33], "express": [0, 20], "magnetic_braking_algorithm": 0, "andronov": 0, "pinnsonneault": 0, "sill": 0, "2003": [0, 32], "barn": 0, "kim": 0, "2010": [0, 22, 32], "magnetic_braking_algorithm_hurley_2002": 0, "magnetic_braking_algorithm_andronov_2003": 0, "magnetic_braking_algorithm_barnes_2010": 0, "magnetic_braking_algorithm_rappaport_1983": 0, "helium_flash_mass_loss": 0, "lost": [0, 8, 19], "flash": 0, "multipl": [0, 2, 6, 22, 32], "cf": 0, "eta": [0, 8, 13], "formula": [0, 20], "4e": [0, 19], "8e": 0, "gbwindfac": 0, "tpagbwindfac": 0, "eagbwindfac": 0, "nieuwenhuijzen_windfac": 0, "nieuwenhuijzen": 0, "de": [0, 5], "jager": 0, "tpagbwind": 0, "dure": [0, 5, 19], "karaka": 0, "vassiliadi": 0, "wood": 0, "1993": 0, "bloecker": 0, "loon": 0, "rob": [0, 32, 43], "c": [0, 1, 5, 7, 9, 12, 16, 41], "variant": 0, "respect": [0, 30, 32, 37], "goldman": 0, "2017": [0, 13, 16, 22, 32], "beasor": 0, "tpagb_wind_vw93_karaka": 0, "tpagb_wind_vw93_orig": 0, "tpagb_wind_reim": 0, "tpagb_wind_bloeck": 0, "tpagb_wind_van_loon": 0, "tpagb_wind_rob_cwind": 0, "tpagb_wind_vw93_karakas_carbon_star": 0, "tpagb_wind_vw93_orig_carbon_star": 0, "tpagb_wind_mattsson": 0, "tpagb_wind_goldman_etal_2017": 0, "tpagb_wind_beasor_etal_2020": 0, "eagbwind": 0, "vw93": 0, "eagb_wind_bs": 0, "eagb_wind_goldman_etal_2017": 0, "eagb_wind_beasor_etal_2020": 0, "wind_gas_to_dust_ratio": 0, "ga": 0, "dust": 0, "ratio": [0, 6, 7, 8, 13, 14, 15, 16, 32, 43], "calcul": [0, 2, 6, 8, 13, 14, 15, 16, 20, 22, 28, 32, 35, 43], "typic": 0, "200": [0, 5], "milki": 0, "wai": [0, 2, 12, 14, 15, 21, 22, 26], "500": [0, 5], "magellan": 0, "cloud": 0, "approxim": [0, 6, 8], "mw": 0, "vwind_multipli": 0, "vwind_beta": 0, "beta": 0, "speed": [0, 29], "where": [0, 1, 2, 6, 13, 14, 15, 16, 20, 22, 23, 26, 28, 31, 32, 34, 38, 40], "vwind": 0, "sqrt": 0, "escap": 0, "125": [0, 5, 16], "from": [0, 2, 3, 5, 6, 8, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 25, 26, 30, 31, 32, 35, 37, 39, 43], "superwind_mira_switchon": 0, "In": [0, 2, 6, 8, 9, 11, 12, 13, 14, 15, 16, 19, 22, 31, 38], "agb": [0, 6], "superwind": 0, "given": [0, 1, 3, 7, 13, 14, 15, 18, 19, 20, 21, 22, 26, 29, 30, 31, 32, 35, 37, 38, 41, 43], "mira": 0, "vari": [0, 6, 8, 16], "switch": 0, "vw93_mira_shift": 0, "depend": [0, 6, 20, 22, 23, 25, 32, 40], "plu": 0, "offset": 0, "vw93_multipli": 0, "tpagb_reimers_eta": 0, "tout_pringle_1992_multipli": 0, "tout": [0, 43], "pringl": 0, "1992": 0, "artificial_mass_accretion_r": 0, "d": [0, 1, 5, 6, 8, 9, 12, 13, 16, 17, 20, 38], "constant": [0, 2, 14, 15, 25, 32, 38], "accret": [0, 5], "n": [0, 1, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 19, 20, 22, 26, 32], "scanf": 0, "artificial_mass_accretion_rate_by_stellar_typ": 0, "artificial_angular_momentum_accretion_r": 0, "artificial_orbital_angular_momentum_accretion_r": 0, "orbit": [0, 5, 7, 8, 13, 17, 25, 32, 43], "artificial_accretion_start_tim": 0, "time": [0, 1, 2, 3, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 28, 31, 32, 33, 38, 40], "artifici": 0, "artificial_accretion_ignor": 0, "artificial_accretion_end_tim": 0, "end": [0, 5, 20, 22, 28, 32], "wr_wind": 0, "massiv": [0, 4, 5, 6, 8, 13, 17, 23, 32], "wr": 0, "maeder": 0, "meynet": 0, "nugi": 0, "lamer": 0, "john": 0, "eldridg": 0, "vink": 0, "earli": 0, "lynnett": 0, "drai": 0, "thesi": 0, "wr_wind_bs": 0, "wr_wind_maeder_meynet": 0, "wr_wind_nugis_lam": 0, "wr_wind_eldridg": 0, "wr_wind_fac": 0, "wrwindfac": 0, "synonym": 0, "instead": [0, 5, 14, 15, 20, 22], "bh_prescript": [0, 5], "prescrit": 0, "relat": 0, "newli": 0, "form": [0, 6, 7, 8, 13, 14, 15, 16, 21, 26, 31, 34, 39], "its": [0, 2, 3, 13, 14, 15, 16, 17, 20, 22, 23, 25, 26, 27, 31, 34, 38, 39, 40, 41], "progenitor": [0, 16], "co": [0, 5], "core": [0, 6, 8, 13, 14, 15, 16, 22, 25], "bh_hurley2002": 0, "bh_belczynski": [0, 5], "belczynski": 0, "bh_spera2015": 0, "spera": 0, "2015": [0, 5], "bh_fryer12_delai": 0, "fryer": 0, "2012": [0, 32], "delai": [0, 22], "bh_fryer12_rapid": [0, 5], "rapid": 0, "bh_fryer12_startrack": 0, "startrack": 0, "ppisn_prescript": 0, "pulsat": 0, "pair": [0, 2, 5, 20, 35, 39], "instabl": 0, "undergo": [0, 8], "ppisn": 0, "pisn": 0, "flag": [0, 1, 21, 22, 31, 38, 39], "binary_c_paramet": [0, 6, 13, 14, 15, 16], "h": [0, 5, 9, 20], "farmer": 0, "2019": [0, 5, 19], "hendrik": [0, 19, 23, 40], "21": [0, 1, 5, 6, 13, 16, 19], "prep": 0, "fit": [0, 2, 12, 32, 43], "data": [0, 3, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17, 19, 20, 22, 26, 27, 31, 32, 35, 41, 43], "ppisn_non": 0, "ppisn_farmer19": 0, "ppisn_new_fit_21": 0, "ppisn_additional_massloss": 0, "addit": 0, "massloss": 0, "top": [0, 16, 35], "result": [0, 1, 2, 3, 6, 8, 12, 13, 14, 15, 16, 19, 20, 22, 23, 26, 31, 32, 38, 40], "posit": [0, 2, 8, 32], "ppisn_core_mass_range_shift": 0, "shift": 0, "taken": [0, 2, 9, 32], "account": [0, 22, 32], "remov": [0, 2, 8, 12, 16, 17, 20, 21], "lower": [0, 13, 16, 32, 35, 38], "higher": [0, 6, 8, 13, 14, 15, 16, 20, 22, 23, 32, 40], "ppisn_massloss_multipli": 0, "p": [0, 6, 8, 13, 14, 15, 17, 32, 34], "THe": [0, 21], "affect": [0, 6], "use_lwn_fallback": 0, "nazehdin": 0, "lovegrov": 0, "wooslei": 0, "envelop": [0, 4, 5, 6, 23], "eject": [0, 8, 17], "fail": [0, 6, 8, 13, 16, 20, 22, 23, 31, 40], "sn_kick_distribution_ii": 0, "distribut": [0, 2, 4, 8, 13, 16, 20, 26, 27, 32, 38], "ii": [0, 19], "collaps": 0, "fix": [0, 5, 12, 20, 21, 25, 31, 32, 33], "maxwellian": 0, "custom": [0, 1, 2, 3, 4, 6, 7, 8, 12, 13, 14, 15, 16, 20, 21, 22, 23, 25, 32, 41], "kick_velocity_fix": 0, "kick_velocity_maxwellian": 0, "kick_velocity_custom": 0, "sn_kick_distribution_ecap": 0, "electron": 0, "captur": [0, 20], "sn_kick_distribution_ns_n": 0, "neutron": [0, 6, 16], "surviv": [0, 17], "merger": [0, 5], "sn_kick_distribution_ibc": 0, "born": [0, 6, 13, 14, 15], "after": [0, 6, 8, 9, 13, 14, 15, 16, 21, 22, 31, 35, 38], "ib": [0, 5], "sn_kick_distribution_grb_collapsar": 0, "collapsar": 0, "sn_kick_distribution_tz": 0, "death": 0, "thorn": 0, "zytkow": 0, "object": [0, 2, 3, 4, 7, 11, 17, 20, 21, 22, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 41], "sn_kick_distribution_aic_bh": 0, "induc": 0, "sn_kick_distribution_bh_bh": 0, "sn_kick_distribution_bh_n": 0, "sn_kick_distribution_ia_hybrid_hecowd": 0, "ani": [0, 3, 12, 16, 20, 21, 23, 26, 32, 35, 39, 40], "survivor": 0, "hybrid": 0, "he": [0, 5], "snia": 0, "explos": [0, 5, 6, 19], "sn_kick_distribution_ia_hybrid_hecowd_sublumin": 0, "sublumin": 0, "sn_kick_distribution_ppisn": 0, "sn_kick_distribution_pisn": 0, "sn_kick_distribution_phdi": 0, "phdi": 0, "sn_kick_dispersion_ii": [0, 5], "dispers": [0, 38], "190": [0, 5, 19], "sn_kick_dispersion_ecap": 0, "sn_kick_dispersion_ns_n": 0, "sn_kick_dispersion_ibc": [0, 5], "sn_kick_dispersion_grb_collapsar": [0, 5], "sn_kick_dispersion_tz": 0, "sn_kick_dispersion_aic_bh": 0, "sn_kick_dispersion_bh_bh": 0, "sn_kick_dispersion_bh_n": 0, "sn_kick_dispersion_ia_hybrid_hecowd": 0, "sn_kick_dispersion_ia_hybrid_hecowd_sublumin": 0, "sn_kick_dispersion_ppisn": 0, "sn_kick_dispersion_pisn": 0, "sn_kick_dispersion_phdi": 0, "sn_kick_companion_ia_h": 0, "algothim": 0, "companion": [0, 5, 19, 31], "ia": [0, 8], "liu": 0, "wheeler": 0, "1975": 0, "sn_impulse_non": 0, "sn_impulse_liu2015": 0, "sn_impulse_wheeler1975": 0, "sn_kick_companion_ia_eld": 0, "eld": 0, "sub": [0, 2, 20], "mch": 0, "sn_kick_companion_ia_chand": 0, "sn_kick_companion_a": 0, "sn_kick_companion_ecap": 0, "sn_kick_companion_ia_he_co": 0, "sn_kick_companion_ia_chand_co": 0, "sn_kick_companion_ns_n": 0, "sn_kick_companion_grb_collapsar": 0, "grb": 0, "rapidli": 0, "ibc": 0, "sn_kick_companion_hestaria": 0, "sn_kick_companion_ibc": 0, "sn_kick_companion_ii": 0, "sn_kick_companion_iia": 0, "iia": 0, "sn_kick_companion_wdkick": 0, "wd": 0, "sn_kick_companion_tz": 0, "sn_kick_companion_aic_bh": 0, "sn_kick_companion_bh_bh": 0, "merg": [0, 2, 5, 6, 8, 22, 26, 31, 32, 33], "sn_kick_companion_bh_n": 0, "sn_kick_companion_ia_hybrid_hecowd": 0, "sn_kick_companion_ia_hybrid_hecowd_sublumin": 0, "sn_kick_companion_ppisn": 0, "sn_kick_companion_pisn": 0, "sn_kick_companion_phdi": 0, "wd_sigma": 0, "thei": [0, 2, 5, 6, 8, 13, 16, 17, 21, 22, 25, 26, 30, 37, 38], "zero": [0, 1, 4, 5, 6, 8, 15, 20, 22, 23, 31], "wd_kick": 0, "wd_kick_direct": 0, "direct": [0, 21], "random": [0, 5, 7, 19, 22], "up": [0, 1, 4, 9, 12, 17, 20, 21, 26, 27, 29, 30, 32, 37], "backward": 0, "inward": 0, "outward": 0, "kick_random": 0, "kick_straight_up": 0, "kick_forward": 0, "kick_backward": 0, "kick_inward": 0, "kick_outward": 0, "wd_kick_when": 0, "decid": [0, 2, 9, 18, 19, 20, 21, 22, 26], "birth": 0, "rlof": [0, 5, 7, 43], "puls": [0, 6, 43], "wd_kick_pulse_numb": 0, "everi": [0, 8, 20, 22, 23, 40], "wd_kick_end_agb": 0, "wd_kick_first_rlof": 0, "wd_kick_at_given_puls": 0, "wd_kick_at_every_puls": 0, "desir": 0, "pre": [0, 5, 8, 16, 19, 25], "minimum_helium_ignition_core_mass": 0, "ignit": [0, 6], "case": [0, 2, 4, 7, 16, 20, 22, 23, 26, 31, 38], "strip": [0, 7, 12, 17], "make": [0, 1, 2, 3, 5, 6, 8, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 30, 31, 32, 40, 41, 43], "sdb": 0, "sdo": 0, "total": [0, 2, 6, 8, 13, 14, 15, 16, 19, 20, 22, 25, 32, 35], "minimum_co_core_mass_for_carbon_ignit": 0, "carbon": [0, 5, 6], "assum": [0, 6, 8, 13, 17, 25, 38], "mc": [0, 5, 16, 19, 31], "bagb": 0, "6msun": 0, "around": [0, 9, 12, 18, 19], "08msun": 0, "pol": 0, "1998": [0, 5, 32], "08": [0, 5, 8, 13, 19], "minimum_co_core_mass_for_neon_ignit": 0, "neon": [0, 6], "42msun": 0, "have": [0, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 19, 20, 21, 22, 23, 25, 26, 30, 31, 34, 37, 40, 41], "explod": [0, 5], "electon": 0, "42": [0, 5, 8, 13, 16], "minimum_mcbagb_for_nondegenerate_carbon_ignit": 0, "degener": 0, "25msun": 0, "25": [0, 5, 8, 13, 19], "maximum_mcbagb_for_degenerate_carbon_ignit": 0, "max_neutron_star_mass": 0, "befor": [0, 2, 5, 6, 8, 13, 14, 15, 16, 21, 22, 23, 31, 32, 40], "2msun": 0, "chandrasekhar_mass": 0, "chandrasekhar": 0, "44msun": 0, "38": [0, 5, 8, 13, 16], "delta_mcmin": 0, "reduc": [0, 5], "third": [0, 17, 32, 38], "dredg": 0, "As": [0, 6, 8, 12, 13, 14, 15, 16], "izzard": [0, 6, 8, 13, 14, 15, 23, 40], "2004": [0, 5], "increas": [0, 5, 8, 13, 14, 15], "henc": [0, 8, 14, 15, 17], "lambda_min": 0, "effici": [0, 6, 8], "lambda": [0, 5, 8], "lambda_mult": 0, "impli": 0, "onc": [0, 38], "mcmin": 0, "lambda_multipli": 0, "minimum_envelope_mass_for_third_dredgeup": 0, "straniero": 0, "suggest": [0, 23, 40], "5msun": 0, "howev": [0, 9, 13, 14, 15, 16], "circumstanti": 0, "evid": 0, "2009": 0, "well": [0, 3, 9, 12, 13, 14, 15, 22, 23, 40], "newer": [0, 2], "stancliff": 0, "low": [0, 6, 8, 14, 15, 32], "nearer": 0, "more": [0, 1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 38, 40], "appropri": [0, 16, 22, 26, 29, 30, 31, 35, 37], "mass_of_pmz": 0, "partial": 0, "mix": [0, 2, 22], "zone": 0, "tabl": [0, 32, 38], "ask": [0, 7, 43], "abat": 0, "detail": [0, 6, 12, 20, 22], "seri": [0, 38], "paper": 0, "2013": 0, "2014": [0, 5, 32], "use_tabular_intershell_abundances_karakas_2012": 0, "c13_eff": 0, "intershel": 0, "region": [0, 38], "process": [0, 6, 8, 13, 14, 15, 16, 18, 19, 20, 21, 22, 26, 30], "gallino": 0, "busso": 0, "lugaro": 0, "provid": [0, 16, 21, 22, 23, 26, 32, 40, 41], "maria": 0, "nucsyn_s_process": 0, "mc13_pocket_multipli": 0, "tides_convective_damp": 0, "tidal": [0, 5], "convect": 0, "damp": 0, "tides_hurley2002": 0, "zahn": 0, "197x": 0, "timescal": 0, "hut": 0, "tides_zahn1989": 0, "1989": [0, 13], "e2_prescript": 0, "how": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 19, 22, 28, 32, 35], "e2": 0, "siess": 0, "e2_hurley_2002": 0, "e2_izzard": 0, "e2_mint": 0, "dtfac": 0, "decreas": 0, "hbbtfac": 0, "modul": [0, 7, 8, 11, 13, 14, 15, 16, 17, 22, 24], "hot": 0, "bottom": [0, 16, 35], "burn": 0, "wind_multiplier_": 0, "specifi": [0, 22, 26, 38], "intger": 0, "By": [0, 6, 13, 14, 15, 16, 19, 22], "wind_type_multiplier_": 0, "pre_main_sequ": 0, "rather": [0, 2, 9, 12, 16, 20, 22, 23, 26, 39, 40], "fraction": [0, 13, 19, 22, 32], "radii": [0, 43], "match": [0, 2, 6, 12, 13, 16, 17, 22, 25, 29], "railton": 0, "pre_main_sequence_fit_lob": 0, "forc": [0, 5, 22, 28], "roch": [0, 5, 8, 43], "lobe": [0, 5, 8, 43], "done": [0, 2, 5, 6, 13, 14, 15, 16, 19, 22, 23, 31, 40], "small_envelope_method": 0, "method": [0, 9, 11, 12, 13, 14, 15, 16, 19, 21, 22, 27, 31, 33, 34, 35, 39], "determin": [0, 7, 9, 13, 14, 15, 16, 21, 32, 35, 43], "radiu": [0, 1, 6, 9, 16, 18, 25, 43], "veri": [0, 5, 6, 7, 8, 9, 12, 14, 15, 16, 31, 35, 38], "thin": 0, "miller": 0, "bertolami": 0, "2016": 0, "small_envelope_method_bs": 0, "small_envelope_method_miller_bertolami": 0, "timestep_modul": 0, "global": [0, 2, 13, 14, 15, 20, 32, 38], "timestep_multipli": 0, "maximum_timestep": 0, "20": [0, 5, 6, 8, 9, 13, 14, 15, 16, 17, 19, 38], "zoomfac_multiplier_decreas": 0, "zoomfac_multiplier_increas": 0, "zoom": [0, 38], "succe": 0, "maximum_timestep_factor": 0, "subsequ": 0, "maximum_nuclear_burning_timestep": 0, "nuclear": 0, "nova_retention_method": 0, "retain": 0, "nova": [0, 6, 8], "nova_retention_fract": 0, "pend": [0, 5], "nova_retention_algorithm_const": 0, "nova_retention_algorithm_claeys2014": 0, "nova_retention_algorithm_hillman2015": 0, "mint_metal": 0, "mint": 0, "It": [0, 6, 7, 8, 11, 12, 13, 14, 15, 16, 17, 19, 22, 23, 31, 34, 40], "normal": [0, 2, 21, 26, 38, 39], "gaia_teff_binwidth": 0, "log10": [0, 6, 8, 13, 14, 15, 16, 32, 38], "bin": [0, 8, 13, 14, 15, 20, 22, 23, 38, 40], "width": [0, 8, 20], "gaia": [0, 32], "hrd": [0, 6, 8], "gaia_l_binwidth": 0, "luminos": [0, 4, 6, 23, 25], "gaia_colour_transform_method": 0, "select": [0, 3, 12, 13, 17, 19, 20], "transform": [0, 3], "colour": 0, "scheme": 0, "gaia_conversion_ubvri_univariate_jordi2010": 0, "jordi": 0, "univari": 0, "ubvri": 0, "gaia_conversion_ubvri_bivariate_jordi2010": 0, "bivari": 0, "gaia_conversion_ugriz_univariate_jordi2010": 0, "gaia_conversion_ugriz_bivariate_jordi2010": 0, "ugriv": 0, "gaia_conversion_ubvri_univariate_evans2018": 0, "evan": 0, "dr2": 0, "gaia_conversion_ugriz_univariate_evans2018": 0, "gaia_conversion_ubvri_riello2020": 0, "riello": 0, "dr3": 0, "gaia_conversion_ugriz_riello2020": 0, "rotationally_enhanced_mass_loss": 0, "enabl": [0, 7], "rotation": 0, "enhanc": 0, "langer": 0, "rotationally_enhanced_massloss_langer_formula": 0, "rotationally_enhanced_expon": 0, "rotationally_enhanced_massloss_non": 0, "rotationally_enhanced_massloss_angmom": 0, "rotationally_enhanced_massloss_langer_formula_and_angmom": 0, "agb_core_algorithm": 0, "overshoot": 0, "agb_core_algorithm_default": 0, "agb_core_algorithm_hurlei": 0, "agb_core_algorithm_karaka": 0, "agb_radius_algorithm": 0, "agb_radius_algorithm_default": 0, "agb_radius_algorithm_hurlei": 0, "agb_radius_algorithm_karaka": 0, "agb_luminosity_algorithm": 0, "agb_luminosity_algorithm_default": 0, "agb_luminosity_algorithm_hurlei": 0, "agb_luminosity_algorithm_karaka": 0, "agb_3dup_algorithm": 0, "agb_third_dredge_up_algorithm_default": 0, "agb_third_dredge_up_algorithm_hurlei": 0, "agb_third_dredge_up_algorithm_karaka": 0, "agb_third_dredge_up_algorithm_stancliff": 0, "overspin_algorithm": 0, "what": [0, 1, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 19, 22, 23, 26, 32, 34, 38, 39, 40, 41], "do": [0, 1, 2, 5, 6, 7, 8, 9, 11, 13, 14, 15, 16, 19, 21, 22, 23, 25, 26, 31, 32, 34, 38, 40, 43], "breakup": 0, "overspin_bs": 0, "conserv": 0, "transfer": [0, 6, 22], "back": [0, 2, 5], "overspin_massloss": 0, "rotationally_enhanced_massloss": 0, "lose": [0, 19], "carri": 0, "awai": [0, 13], "expon": [0, 20], "power": [0, 8, 14, 15, 22, 23, 32, 40], "rais": [0, 2, 16, 20, 22], "batchmod": 0, "control": [0, 6, 13, 14, 15, 16, 22], "variabl": [0, 4, 6, 7, 8, 20, 22, 30, 31, 35], "know": [0, 1, 2, 7, 12, 14, 15, 22, 31, 34], "speedtest": 0, "off": [0, 5, 16, 19, 22], "use_fixed_timestep_": 0, "boolean": [0, 2, 7, 20, 21, 22, 25, 39, 43], "task": [0, 19, 20, 21, 25, 26, 29, 32, 38, 41, 43], "perform": [0, 31], "For": [0, 2, 9, 12, 13, 14, 15, 25], "binary_c_macro": 0, "particularli": 0, "binary_c_task_": 0, "orbiting_object": [0, 17], "usag": [0, 4], "spinrat": 0, "central_object": 0, "orbiting_objects_log": [0, 17], "orbiting_objects_wind_accretion_multipli": 0, "orbiting_objects_close_pc_threshold": 0, "close": [0, 5, 8, 14, 15, 17, 31], "percentag": 0, "orbiting_objects_tides_multipli": 0, "torqu": 0, "evaporate_escaped_orbiting_object": 0, "evapor": 0, "rlof_transition_objects_escap": 0, "otherwis": [0, 2, 20, 21, 22, 26, 28, 30, 31, 34, 37], "place": [0, 2, 13, 20, 22], "outsid": [0, 32], "stabl": [0, 23, 40], "pn_resolv": 0, "shorten": [0, 5], "resolv": [0, 13, 31], "better": [0, 2, 4, 7, 16, 26, 30, 31, 37, 43], "pn": 0, "pn_resolve_minimum_luminos": 0, "resolut": [0, 6, 8, 13, 14, 15, 16, 22, 35, 38], "pne": 0, "31": [0, 5, 7, 8, 13, 19], "62": [0, 5, 13], "pn_resolve_maximum_envelope_mass": 0, "below": [0, 4, 6, 7, 8, 9, 13, 14, 15, 16, 22, 32], "pn_resolve_minimum_effective_temperatur": 0, "12500": 0, "pn_fast_wind": 0, "fast": 0, "pn_fast_wind_dm_gb": 0, "pn_fast_wind_mdot_gb": 0, "06": [0, 5, 8, 9, 12, 13], "pn_fast_wind_dm_agb": 0, "pn_fast_wind_mdot_agb": 0, "hewd_hewd_ignition_mass": 0, "reignit": 0, "wind_nieuwenhuijzen_luminosity_lower_limit": 0, "activ": [0, 22, 23, 40], "4e3": 0, "lsun": [0, 25], "4000": [0, 13], "wind_lbv_luminosity_lower_limit": 0, "6e5": 0, "600000": 0, "num_ansi_colour": 0, "extend": [0, 8, 23, 39, 40], "ansi": [0, 20], "255": [0, 5], "src": [0, 7, 9, 23, 40], "ansi_colour": 0, "int": [0, 1, 2, 5, 7, 13, 16, 20, 21, 22, 26, 32, 33, 34, 35, 38, 43], "apply_darwin_radau_correct": 0, "darwin": 0, "radau": 0, "correct": [0, 12, 21, 25, 32, 33, 43], "moment": [0, 6, 9, 16, 19, 38], "inertia": 0, "take": [0, 2, 8, 13, 16, 19, 20, 22, 27, 31, 32, 35, 41], "degenerate_core_merger_nucsyn": 0, "degner": 0, "energi": 0, "gener": [0, 1, 6, 7, 8, 9, 12, 13, 15, 16, 18, 19, 20, 21, 22, 23, 25, 26, 31, 32, 34, 35, 38, 40], "nucleosynthesi": [0, 39], "whole": [0, 8, 9, 21, 22], "disrupt": [0, 5, 19], "degenerate_core_helium_merger_ignit": 0, "r": [0, 1, 5, 6, 12, 16, 19, 23, 31, 40], "degenerate_core_merger_dredgeup_fract": 0, "separ": [0, 3, 5, 6, 7, 9, 12, 16, 17, 18, 19, 25, 31, 32, 43], "actual": [0, 3, 6, 8, 9, 12, 13, 14, 15, 16, 21, 22, 23, 25, 30, 32, 38, 40], "semi": 0, "major": 0, "axi": [0, 25], "indic": [0, 32], "want": [0, 2, 3, 5, 8, 9, 13, 14, 15, 16, 19, 20, 22, 23, 25, 26, 31, 32, 34, 35, 40], "either": [0, 2, 3, 13, 14, 15, 16, 19, 21, 22, 23, 35, 39, 40, 41], "separation_tripl": 0, "tripl": [0, 22, 32], "separation_quadrupl": 0, "quadrupl": [0, 22, 32], "orbital_period": [0, 5, 7, 8, 9, 12, 13, 16, 18, 19, 43], "orbital_period_tripl": 0, "orbital_period_quadrupl": 0, "outer": [0, 6], "quadrulpl": 0, "eccentricity_tripl": 0, "eccentricity_quadrupl": 0, "inclini": 0, "orbital_inclin": 0, "rel": 0, "incliniation_tripl": 0, "incliniation_quadrupl": 0, "orbital_inclinationi": 0, "orbital_phas": 0, "orbital_phase_tripl": 0, "orbital_phase_quadrupl": 0, "argument_of_periastron": 0, "argument": [0, 2, 7, 12, 14, 16, 17, 18, 19, 20, 21, 22, 26, 27, 32, 39, 41], "periastron": 0, "argument_of_periastron_tripl": 0, "argument_of_periastron_quadrupl": 0, "disc_timestep_factor": 0, "natur": [0, 14, 15], "disc": [0, 17], "white_dwarf_cooling_model": 0, "cool": [0, 6], "white_dwarf_cooling_mestel": 0, "mestel": 0, "white_dwarf_cooling_mestel_modifi": 0, "white_dwarf_cooling_carrasco2014": 0, "carrasco": 0, "white_dwarf_radius_model": 0, "perhap": [0, 6, 8, 21], "white_dwarf_radius_nauenberg1972": 0, "nauenberg": 0, "1972": 0, "white_dwarf_radius_mu": 0, "mu": 0, "white_dwarf_radius_carrasco2014": 0, "cbdisc_mass_loss_inner_viscous_accretion_method": 0, "inner": [0, 17], "edg": [0, 6, 16, 35], "circumbinari": 0, "goe": [0, 2, 9, 12, 25], "young": 0, "clark": 0, "gerosa": 0, "50": [0, 5, 8, 13, 15, 16], "cbdisc_mass_loss_inner_viscous_accretion_method_young_clarke_2015": 0, "cbdisc_mass_loss_inner_viscous_accretion_method_gerosa_2015": 0, "cbdisc_mass_loss_inner_viscous_accretion_method_equ": 0, "cbdisc_mass_loss_inner_viscous_accretion_method_non": 0, "cbdisc_inner_edge_strip": 0, "cbdisc_end_evolution_after_disc": 0, "cbdisc_no_wind_if_cbdisc": 0, "cbdisc_outer_edge_strip": 0, "disc_n_monte_carlo_guess": 0, "guess": [0, 32], "try": [0, 2, 5, 8, 12, 13, 14, 15, 16, 23, 26, 31, 35, 40], "list": [0, 1, 2, 3, 6, 8, 12, 13, 14, 15, 16, 17, 20, 22, 23, 26, 29, 32, 35, 38, 40, 41], "disc_log": 0, "disc_log_level_non": 0, "disc_log_level_norm": 0, "disc_log_level_subtimestep": 0, "disc_log_level_normal_first_disc_onli": 0, "disc_log_level_subtimestep_first_disc_onli": 0, "disc_log2d": 0, "2d": 0, "disc_log_dt": 0, "disc_log_directori": 0, "directori": [0, 4, 16, 20, 21, 22, 23, 26, 29, 30, 31, 34, 37, 40], "sent": 0, "exist": [0, 2, 6, 16, 19, 22, 26, 31, 34, 35], "string": [0, 1, 2, 3, 4, 7, 12, 13, 14, 15, 16, 17, 20, 21, 22, 25, 26, 30, 31, 34, 35, 37, 39, 41], "tmp": [0, 6, 8, 12, 13, 14, 15, 16, 17, 20, 23, 40], "post_ce_adaptive_menv": 0, "post_ce_objects_have_envelop": 0, "ce": [0, 8], "sit": 0, "insid": 0, "post_ce_envelope_dm_gb": 0, "post_ce_envelope_dm_eagb": 0, "post_ce_envelope_dm_tpagb": 0, "common": [0, 4, 5, 6, 9, 12, 13, 14, 15, 16, 23], "need": [0, 2, 7, 9, 12, 13, 14, 15, 16, 17, 19, 22, 23, 26, 32, 40, 43], "mai": [0, 8, 13, 31], "unstabl": [0, 5], "mani": [0, 6, 7, 8, 11, 13, 14, 15, 16, 22, 30], "cee": [0, 8], "pn_comenv_transition_tim": 0, "transit": 0, "year": [0, 32], "1e2": 0, "move": [0, 6], "teff": [0, 5, 32], "30e4": 0, "hall": 0, "100": [0, 5, 6, 8, 13, 14, 15, 32, 38], "minimum_time_between_pn": 0, "planetari": 0, "nebula": 0, "detect": [0, 5, 8, 17], "prevent": [0, 5, 6, 22], "trigger": 0, "pn_hall_fading_time_algorithm": 0, "45msun": 0, "fade": 0, "pn_hall_fading_time_algorithm_minimum": 0, "pn_hall_fading_time_algorithm_maximum": 0, "shown": [0, 25, 38], "fig": [0, 19, 32], "ppn_envelope_mass": 0, "cbdisc_eccentricity_pumping_method": 0, "variou": 0, "pump": 0, "cbdisc_eccentricity_pumping_non": 0, "cbdisc_eccentricity_pumping_dermin": 0, "cbdisc_viscous_photoevaporative_coupl": 0, "viscou": 0, "photoevapor": 0, "coupl": [0, 4], "cbdisc_viscous_photoevaporative_coupling_non": 0, "cbdisc_viscous_photoevaporative_coupling_inst": 0, "instant": 0, "cbdisc_viscous_photoevaporative_coupling_visc": 0, "slow": [0, 6, 8, 13, 14, 15], "cbdisc_inner_edge_stripping_timescal": 0, "long": [0, 6, 8, 16, 22, 28, 31, 35, 39, 42], "revap_in": 0, "disc_stripping_timescale_inst": 0, "disc_stripping_timescale_infinit": 0, "disc_stripping_timescale_visc": 0, "disc_stripping_timescale_orbit": 0, "cbdisc_outer_edge_stripping_timescal": 0, "revap_out": 0, "cbdisc_viscous_l2_coupl": 0, "l2": 0, "gravitational_radiation_model": 0, "gravit": [0, 6, 8, 16], "radiat": 0, "landau": 0, "lifshitz": 0, "1951": 0, "gravitational_radiation_bs": 0, "gravitational_radiation_bse_when_no_rlof": 0, "gravitational_radiation_non": 0, "gravitational_radiation_landau_lifshitz": 0, "gravitational_radiation_landau_lifshitz_when_no_rlof": 0, "nova_irradiation_multipli": 0, "radi": 0, "shara": 0, "1986": [0, 32], "gravitational_radiation_modulator_j": 0, "wave": [0, 6, 8, 16], "gravitational_radiation_modulator_": 0, "nova_faml_multipli": 0, "friction": 0, "rlof_angular_momentum_transfer_model": 0, "rlof_angular_momentum_transfer_model_bs": 0, "rlof_angular_momentum_transfer_model_conserv": 0, "post_sn_orbit_method": 0, "tauri": 0, "post_sn_orbit_bs": 0, "post_sn_orbit_tt98": 0, "singl": [0, 4, 5, 6, 7, 13, 14, 15, 18, 19, 21, 22, 25, 26, 32], "accretion_limit_eddington_steady_multipli": 0, "steadi": 0, "eddington": 0, "spheric": 0, "symmetr": 0, "known": [0, 6, 12, 13, 14, 15, 16, 21, 32, 41], "trade": 0, "anyth": [0, 13, 14, 15, 16, 20, 22, 38], "greater": 0, "than": [0, 2, 6, 8, 13, 14, 15, 16, 20, 22, 23, 26, 31, 32, 39, 40], "potenti": 0, "give": [0, 5, 8, 20, 21, 32, 43], "super": 0, "accretion_limit_eddington_lmms_multipli": 0, "accretion_limit_eddington_wd_to_remnant_multipli": 0, "onto": [0, 32], "anoth": [0, 26], "accretion_limit_thermal_multipli": 0, "accretor": [0, 5, 43], "thermal": [0, 6, 32, 43], "accretion_limit_dynamical_multipli": 0, "dynam": 0, "donor_limit_envelope_multipli": 0, "donor": [0, 5, 43], "per": [0, 5, 8, 12, 13, 16, 20, 22, 31, 43], "donor_limit_thermal_multipli": 0, "donor_limit_dynamical_multipli": 0, "bondi_hoyle_accretion_factor": 0, "bondi": 0, "hoyl": 0, "littleton": 0, "multiplc": 0, "tidal_strength_factor": 0, "strength": 0, "tide": [0, 17], "stronger": [0, 6], "hachisu_qcrit": 0, "critic": 0, "q": [0, 5, 8, 13, 16, 19, 22, 32, 43], "maccretor": [0, 5], "mdonor": [0, 5], "hachisu": 0, "disk": [0, 21], "hachisu_ignore_qcrit": 0, "hachisu_disk_wind": 0, "materi": [0, 6], "too": [0, 2, 6, 7, 14, 15, 17, 22, 23, 40, 41], "help": [0, 5, 7, 11, 12, 13, 14, 15, 16, 20, 34], "sneia": 0, "mass_accretion_for_eld": 0, "lit": 0, "deton": 0, "wdwd_merger_algorithm": 0, "peret": 0, "chen": 0, "todo": [0, 1, 2, 5, 11, 16, 20, 21, 22, 25, 26, 30, 31, 32, 33, 34, 37, 38, 39, 41, 43], "wdwd_merger_algorithm_bs": 0, "wdwd_merger_algorithm_perets2019": 0, "wdwd_merger_algorithm_chen2016": 0, "type_ia_mch_supernova_algorithm": 0, "yield": [0, 38], "dd7": 0, "iwamoto": 0, "1999": 0, "seitenzahl": 0, "3d": 0, "hydro": 0, "seitenzahl2013_model": 0, "One": [0, 22], "n1": 0, "n3": 0, "n5": 0, "n10": 0, "n20": 0, "n40": 0, "n100l": 0, "n100": 0, "n100h": 0, "n150": 0, "n200": 0, "n300c": 0, "n1600": 0, "n1600c": 0, "n100_z0": 0, "type_ia_sub_mch_supernova_algorithm": 0, "unus": [0, 22], "max_hewd_mass": 0, "merger_mass_loss_fract": 0, "merger_angular_momentum_factor": 0, "spin": [0, 17], "smaller": [0, 38], "wind_angular_momentum_loss": 0, "lw": 0, "specif": [0, 11, 12, 25, 30, 37], "wind_djorb_fac": 0, "wind_angmom_loss_bs": 0, "wind_angmom_loss_lw": 0, "wind_angmom_loss_lw_hybrid": 0, "wind_angmom_loss_spherically_symmetr": 0, "vw93_eagb_wind_spe": 0, "vw93_tpagb_wind_spe": 0, "use_periastron_roche_radiu": 0, "circular": [0, 5], "treat": [0, 38], "properli": 0, "hopefulli": 0, "qcrit_lmm": 0, "stabil": 0, "overflow": [0, 5, 8], "qcrits_": 0, "qcrits_degenerate_": 0, "6944": 0, "qcrit_bs": 0, "qcrit_hjellming_webbink": 0, "qcrit_q_no_comenv": 0, "qcrit_chen_han_t": 0, "qcrit_chen_han_formula": 0, "qcrit_ge2015": 0, "qcrit_vos2018": 0, "qcrit_temmink2021": 0, "qcrit_gb_bs": 0, "qcrit_gb_hjellming_webbink": 0, "qcrit_gb_q_no_comenv": 0, "qcrit_gb_chen_han_t": 0, "qcrit_gb_chen_han_formula": 0, "qcrit_gb_ge2015": 0, "qcrit_gb_vos2018": 0, "qcrit_gb_temmink2021": 0, "qcrit_m": 0, "qcrit_hg": 0, "hertzsprung": [0, 4, 23], "gap": 0, "qcrit_gb": 0, "qcrit_cheb": 0, "qcrit_eagb": 0, "qcrit_tpagb": 0, "tp": 0, "qcrit_hem": 0, "qcrit_hehg": 0, "qcrit_hegb": 0, "78125": 0, "qcrit_hewd": 0, "qcrit_cowd": 0, "qcrit_onewd": 0, "qcrit_n": 0, "qcrit_bh": 0, "qcrit_degenerate_lmm": 0, "qcrit_degenerate_m": 0, "qcrit_degenerate_hg": 0, "7619": 0, "qcrit_degenerate_gb": 0, "qcrit_degenerate_cheb": 0, "qcrit_degenerate_eagb": 0, "qcrit_degenerate_tpagb": 0, "qcrit_degenerate_hem": 0, "qcrit_degenerate_hehg": 0, "qcrit_degenerate_hegb": 0, "qcrit_degenerate_hewd": 0, "625": [0, 5], "qcrit_degenerate_cowd": 0, "qcrit_degenerate_onewd": 0, "qcrit_degenerate_n": 0, "qcrit_degenerate_bh": 0, "mass_for_hestar_ia_upp": 0, "never": [0, 6, 14, 15, 22, 29], "mass_for_hestar_ia_low": 0, "alphacb": 0, "viscos": 0, "alpha": [0, 5], "minimum_donor_menv_for_comenv": 0, "msun": [0, 6, 9, 12, 13, 14, 15, 17, 19, 32, 38, 39], "comenv_prescript": 0, "paczy\u0144ski": 0, "neleman": 0, "alpha_c": [0, 5, 6, 8], "comenv_ms_accretion_mass": 0, "comenv_ms_accretion_fract": 0, "comenv_ns_accretion_fract": 0, "comenv_ns_accretion_mass": 0, "nelemans_gamma": 0, "nelemans_minq": 0, "nelemans_max_frac_j_chang": 0, "nelemans_n_comenv": 0, "lambda_c": [0, 5, 8], "lambda_ionis": 0, "comenv_undef": 0, "comenv_bs": 0, "comenv_nelemans_tout": 0, "comenv_nandez2016": 0, "comenv_ejection_spin_method": 0, "left": 0, "comenv_ejection_spin_method_do_noth": 0, "leav": [0, 22], "omega": [0, 5, 19], "enter": [0, 22], "comenv_ejection_spin_method_sychron": 0, "synchron": 0, "comenv_ejection_spin_method_synchron": 0, "comenv_merger_spin_method": 0, "comenv_merger_spin_method_specif": 0, "preserv": 0, "onset": 0, "comenv_merger_spin_method_conserve_angmom": 0, "supercrit": 0, "comenv_merger_spin_method_conserve_omega": 0, "frequenc": [0, 17], "comenv_merger_spin_method_breakup": 0, "some": [0, 1, 6, 8, 9, 11, 12, 13, 14, 15, 16, 19, 21, 22, 23, 25, 30, 32, 35, 36, 37, 40], "comenv_ms_accret": 0, "comenv_ns_accret": 0, "formal": 0, "bind": [0, 7, 9, 12, 17], "m": [0, 5, 6, 8, 13, 14, 15, 17, 19, 20, 32, 43], "menv": [0, 5], "lambda_ce_dewi_tauri": 0, "dewi": 0, "lambda_ce_wang_2016": 0, "wang": 0, "jia": 0, "li": 0, "lambda_ce_polytrop": 0, "polytrop": 0, "comenv_splitmass": 0, "lambda_ce_klencki_2020": 0, "klencki": 0, "point": [0, 3, 6, 20, 21, 22, 23, 31, 32, 38, 40], "nelemans_recalc_eccentr": 0, "recalcul": 0, "comenv_post_eccentr": 0, "remain": [0, 7, 20, 22], "05": [0, 5, 8, 9, 13, 16], "accord": [0, 6, 31, 32, 38], "75": [0, 5, 8, 13], "chang": [0, 1, 2, 5, 6, 8, 9, 13, 14, 15, 16, 19, 20, 21, 22, 23, 34, 35, 40], "standard": [0, 13, 14, 15, 30, 32, 37, 38], "recombin": 0, "big": [0, 22], "outcom": 0, "lambda_enthalpi": 0, "enthalpi": 0, "far": [0, 5, 6, 14, 15, 17], "cbdisc_albedo": 0, "albedo": 0, "cbdisc_gamma": 0, "cbdisc_alpha": 0, "cbdisc_kappa": 0, "kappa": 0, "cbdisc_minimum_evaporation_timescal": 0, "would": [0, 2, 14, 15, 16, 22, 25], "less": [0, 1, 4, 5, 31, 32], "simpli": [0, 14, 15], "immedi": [0, 6, 22], "1y": 0, "cbdisc_torquef": 0, "cbdisc_max_lifetim": 0, "lifetim": [0, 8, 13, 14, 15, 16, 38], "cbdisc_init_dm": 0, "cbdisc": 0, "start": [0, 1, 5, 6, 8, 12, 13, 14, 15, 16, 19, 20, 22, 28, 34, 35], "dm": [0, 5, 14, 15, 32, 38], "won": [0, 12], "t": [0, 1, 2, 5, 6, 12, 14, 15, 16, 20, 22, 26, 31, 38], "converg": 0, "cbdisc_init_djdm": 0, "dj": 0, "cbdisc_mass_loss_constant_r": 0, "cbdisc_mass_loss_fuv_multipli": 0, "fuv": 0, "cbdisc_mass_loss_xray_multipli": 0, "x": [0, 6, 9, 12, 17, 19, 20, 21, 25, 26, 32, 38], "rai": 0, "cbdisc_mass_loss_ism_ram_pressure_multipli": 0, "interstellar": 0, "medium": 0, "ram": [0, 22], "pressur": 0, "cbdisc_mass_loss_ism_pressur": 0, "boltzmann": 0, "kelvin": 0, "think": [0, 20, 21], "3000": [0, 17], "http": [0, 1, 2, 6, 16, 20, 21, 31, 32], "www": [0, 32], "astronomi": 0, "ohio": 0, "edu": 0, "pogg": 0, "ast871": 0, "intro": 0, "pdf": [0, 19, 23, 32, 40], "page": [0, 6, 16, 23, 40], "arxiv": [0, 32], "org": [0, 2, 32], "0902": 0, "0820": 0, "panel": 0, "cbdisc_mass_loss_inner_viscous_multipli": 0, "cbdisc_mass_loss_inner_viscous_angular_momentum_multipli": 0, "cbdisc_resonance_multipli": 0, "reson": 0, "interact": [0, 3, 5, 6, 8, 17, 19, 34], "cbdisc_resonance_damp": 0, "l": [0, 6, 13, 14, 15], "locat": [0, 22, 23, 32, 38, 40], "cbdisc_fail_ring_inside_separ": 0, "rring": 0, "cbdisc_mass_loss_inner_l2_cross_multipli": 0, "cross": 0, "cbdisc_minimum_luminos": 0, "becom": [0, 1, 2, 5, 9, 14, 15, 17, 20, 22], "dimmer": [0, 13], "instantli": 0, "cbdisc_minimum_mass": 0, "cbdisc_minimum_fr": 0, "fring": 0, "ring": 0, "ab": [0, 20], "rout": 0, "rin": 0, "comenv_disc_angmom_fract": 0, "deprec": [0, 21], "discs_circumbinary_from_comenv": 0, "comenv_disc_mass_fract": 0, "wind_disc_angmom_fract": 0, "discs_circumbinary_from_wind": 0, "wind_disc_mass_fract": 0, "wrlof_method": 0, "quadrat": 0, "wrlof_mass_transf": 0, "wrlof_non": 0, "wrlof_q_depend": 0, "wrlof_quadrat": 0, "minimum_timestep": 0, "timestep_solver_factor": 0, "timestep_limit": 0, "compar": [0, 8, 13, 16, 22], "dx": 0, "dt": [0, 1, 20, 29, 38], "lengthen": 0, "altern": [0, 22], "rlof_mdot_factor": 0, "rlof_mdot_modul": 0, "rlof_f": 0, "enlarg": 0, "nomin": 0, "becaus": [0, 2, 6, 7, 8, 12, 13, 14, 15, 17, 19, 21, 22, 23, 29, 31, 32, 40], "dermin": 0, "rlof_radiation_correct": 0, "minimum_separation_for_instant_rlof": 0, "evolv": [0, 4, 7, 9, 21, 22], "report": [0, 6, 8, 13, 14, 15, 16, 23, 40], "lead": [0, 6, 13, 14, 15, 16, 31, 32, 43], "minimum_orbital_period_for_instant_rlof": 0, "maximum_mass_ratio_for_instant_rlof": 0, "m1": [0, 5, 8, 9, 12, 13, 14, 15, 16, 19, 31, 32, 43], "rlof_method": 0, "adapt": [0, 14, 15], "rl": [0, 5], "ritter": 0, "claei": 0, "etal": 0, "rlof_method_bs": 0, "rlof_method_adapt": 0, "rlof_method_ritt": 0, "rlof_method_claei": 0, "rlof_method_adaptive2": 0, "rlof_interpolation_method": 0, "alwai": [0, 21, 22, 32, 38], "get": [0, 2, 3, 4, 6, 9, 12, 13, 14, 15, 16, 17, 19, 20, 21, 23, 26, 27, 30, 32, 34, 35, 37, 40, 41, 43], "within": [0, 2, 9, 11, 16, 20, 23, 32, 35, 40], "toler": 0, "rlof_entry_threshold": 0, "revers": [0, 25], "newton": 0, "doe": [0, 2, 6, 7, 9, 11, 12, 13, 14, 15, 16, 21, 22, 29, 31, 32, 35, 43], "repeat": [0, 22], "half": [0, 32], "until": [0, 2, 6, 31, 32], "latter": 0, "now": [0, 2, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 19, 20, 26, 32, 33], "break": 0, "rlof_interpolation_binary_c": 0, "rlof_interpolation_bs": 0, "beta_reverse_nova": 0, "automat": [0, 1, 9, 16, 18, 19, 22, 23, 29, 31, 34, 35, 40], "geometr": 0, "beta_reverse_novae_geometri": 0, "wd_accretion_rate_novae_upper_limit_hydrogen_donor": 0, "upper": [0, 32, 38], "donor_rate_algorithm_claeys2014": 0, "donor_rate_algorithm_bs": 0, "wd_accretion_rate_novae_upper_limit_helium_donor": 0, "wd_accretion_rate_novae_upper_limit_other_donor": 0, "neither": [0, 21], "nor": 0, "wd_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor": 0, "format": [0, 2, 3, 5, 7, 8, 9, 12, 13, 14, 15, 16, 17, 19, 20, 22, 30, 31, 32, 35, 38], "wd_accretion_rate_new_giant_envelope_lower_limit_helium_donor": 0, "wd_accretion_rate_new_giant_envelope_lower_limit_other_donor": 0, "crap_paramet": 0, "eggleton": [0, 43], "subject": 0, "bb": 0, "individual_nova": 0, "each": [0, 2, 8, 13, 14, 15, 16, 17, 20, 22, 26, 35, 38], "separta": 0, "nova_timestep_accelerator_num": 0, "acceler": 0, "exce": [0, 13], "nova_timestep_accelerator_index": 0, "nova_timestep_accelerator_max": 0, "larger": [0, 6], "longer": [0, 6, 8], "cap": 0, "nonconservative_angmom_gamma": 0, "NOT": [0, 35, 38, 41], "momenta": [0, 25], "rlof_nonconservative_gamma_donor": 0, "rlof_nonconservative_gamma_isotrop": 0, "max_stellar_angmom_chang": 0, "maxmimum": 0, "third_dup": 0, "nucsyn_third_dredge_up": 0, "third_dup_multipli": 0, "f": [0, 5, 12, 16, 19, 32], "abund": 0, "element": [0, 1, 11, 17, 22, 25, 39], "nenamg": 0, "reaction": 0, "network": [0, 11], "nucsyn_hbb": 0, "nucsyn_network": 0, "nucsyn_network_error": 0, "error": [0, 2, 6, 8, 13, 14, 15, 20, 22, 23, 26, 31, 40], "nucreacmult": 0, "z": [0, 6, 8, 19, 21, 32, 43], "04": [0, 5, 13, 19], "That": [0, 6], "said": 0, "been": [0, 2, 11, 21, 22, 26, 28, 30, 37], "warn": [0, 12, 16, 22, 26], "nucsyn_solv": 0, "kaps_rentrop": 0, "kap": 0, "rentrop": 0, "great": [0, 14, 15, 22], "stiff": 0, "problem": [0, 13], "lsoda": 0, "adam": 0, "bsf": 0, "switcher": 0, "cvode": 0, "librari": [0, 1, 6, 9, 19, 21, 22, 41], "comput": [0, 6, 13, 14, 15], "llnl": 0, "gov": 0, "project": 0, "sundial": 0, "initial_abundance_mix": 0, "mixtur": [0, 13], "ag89": 0, "lodder": 0, "asplund": 0, "avail": [0, 7, 8, 9, 13, 14, 15, 16, 20, 22, 23, 28, 40], "garcia": 0, "berro": 0, "grevess": 0, "noel": 0, "init_abund": 0, "isotop": [0, 11, 39], "init_abund_mult": 0, "init_abund_dex": 0, "dex": [0, 8, 38], "init_abunds_onli": 0, "exit": [0, 20, 21, 22, 26, 30, 31, 37], "initial_abunds_onli": 0, "no_thermohaline_mix": 0, "thermohalin": 0, "lithium_gb_post_heflash": 0, "lithium": 0, "lithium_t": 0, "lithium_gb_post_1dup": 0, "lithium_hbb_multipli": 0, "hbb": 0, "fishlock": 0, "angelou_lithium_decay_funct": 0, "describ": [0, 19, 22, 32], "li7": 0, "decai": 0, "nucsyn_angelou_lithium": 0, "choic": [0, 25, 32], "expoenti": 0, "angelou_lithium_decay_tim": 0, "angelou_lithium_lmms_tim": 0, "manufactur": 0, "angelou_lithium_ms_tim": 0, "angelou_lithium_hg_tim": 0, "angelou_lithium_gb_tim": 0, "angelou_lithium_cheb_tim": 0, "angelou_lithium_eagb_tim": 0, "angelou_lithium_tpagb_tim": 0, "angelou_lithium_lmms_decay_tim": 0, "surfac": 0, "angelou_lithium_ms_decay_tim": 0, "angelou_lithium_hg_decay_tim": 0, "angelou_lithium_gb_decay_tim": 0, "angelou_lithium_cheb_decay_tim": 0, "angelou_lithium_eagb_decay_tim": 0, "angelou_lithium_tpagb_decay_tim": 0, "angelou_lithium_lmms_massfrac": 0, "angelou_lithium_ms_massfrac": 0, "angelou_lithium_hg_massfrac": 0, "angelou_lithium_gb_massfrac": 0, "angelou_lithium_cheb_massfrac": 0, "angelou_lithium_eagb_massfrac": 0, "angelou_lithium_tpagb_massfrac": 0, "angelou_lithium_vrot_trigg": 0, "angelou_lithium_vrotfrac_trigg": 0, "keplerian": 0, "david_logging_funct": 0, "kind": [0, 7], "david": [0, 2, 7, 12, 16, 19, 23, 40], "david_tzo_log": 0, "tzo": 0, "david_ppisn_log": 0, "david_rlof_episode_log": 0, "episod": 0, "david_rlof_ensemble_log": 0, "ensembl": [0, 7, 11, 22, 23, 24, 31, 35, 36, 39], "cf_amanda_log": 0, "amanda": 0, "float_overflow_check": 0, "check": [0, 6, 8, 13, 14, 15, 16, 19, 20, 21, 22, 26, 30, 31, 32, 34, 37, 41, 43], "stderr": [0, 22], "failur": [0, 20, 26], "save_pre_events_stardata": 0, "save": [0, 1, 6, 8, 9, 13, 14, 15, 16, 22, 26, 31, 32, 38], "copi": [0, 8, 14, 15, 22, 43], "stardata": [0, 1, 6, 8, 9, 12, 13, 14, 15, 16, 18, 19], "pre_events_stardata": 0, "disable_end_log": 0, "ensemble_filters_off": 0, "filter": [0, 2, 20], "ensemble_filter_": 0, "ensemble_macro": 0, "ensemble_legacy_ensembl": 0, "legaci": 0, "popul": [0, 3, 4, 7, 11, 23, 24, 40, 41], "legacy_yield": 0, "ensemble_def": 0, "defer": 0, "ensemble_dt": 0, "store": [0, 2, 4, 6, 8, 12, 13, 14, 15, 16, 20, 21, 22, 23, 31, 38, 40, 43], "ensemble_logdt": 0, "ensemble_startlogtim": 0, "logensembletim": 0, "storag": 0, "ensemble_logtim": 0, "act": [0, 14, 15, 16, 22], "linear": [0, 13, 14, 15, 22, 32, 38], "postagb_legacy_log": 0, "disc_legacy_log": 0, "emp_logg_maximum": 0, "logg": [0, 6], "emp": 0, "cemp_cfe_minimum": 0, "nemp_nfe_minimum": 0, "emp_minimum_ag": 0, "emp_feh_maximum": 0, "fe": 0, "cemp": 0, "nemp_cfe_minimum": 0, "nemp": 0, "thick_disc_start_ag": 0, "lookback": 0, "thick": 0, "13e3": 0, "thick_disc_end_ag": 0, "thick_disc_logg_min": 0, "thick_disc_logg_max": 0, "escape_veloc": 0, "construct": [0, 1, 6, 8, 12, 13, 14, 15, 17, 19, 22], "galact": [0, 38], "chemic": [0, 38], "gce": 0, "nucsyn_gce_outflow_check": 0, "1e9": 0, "escape_fract": 0, "colour_log": 0, "thelog": 0, "file_log": 0, "log_filenam": [0, 5, 12, 19, 41], "filenam": [0, 1, 3, 5, 12, 16, 20, 21, 22, 26, 30, 31, 37, 41], "dev": 0, "c_log": 0, "dat": [0, 16, 20], "log_arrow": 0, "add": [0, 2, 6, 8, 9, 12, 13, 14, 15, 16, 21, 22, 25, 32, 35, 36, 38], "arrow": 0, "stopfil": 0, "file": [0, 1, 3, 5, 7, 12, 16, 20, 21, 22, 23, 25, 26, 29, 30, 31, 34, 35, 37, 39, 40, 41], "stardata_dump_filenam": 0, "dump": [0, 3, 12, 21, 31], "stardata_load_filenam": 0, "load": [0, 1, 3, 6, 8, 9, 12, 13, 14, 15, 16, 19, 20, 21, 22, 25, 26, 27, 31, 35], "api_log_filename_prefix": [0, 5, 12, 17], "prefix": 0, "api": [0, 4, 20, 23, 26], "hrdiag_output": 0, "high": [0, 14, 15, 32], "hertzstrpung": 0, "russel": [0, 4, 23], "diagram": [0, 4, 23, 25], "hrdiag": 0, "internal_buff": 0, "buffer": [0, 31], "prior": [0, 6], "shouldn": [0, 20], "realli": [0, 6, 16, 21, 22, 34, 35], "plai": [0, 14, 15], "internal_buffering_off": 0, "internal_buffering_print": 0, "internal_buffering_stor": 0, "eccentric_rlof_model": 0, "rlof_eccentric_as_circular": 0, "force_corotation_of_primary_and_orbit": 0, "force_circularization_on_rlof": 0, "wtts_log": 0, "wtts2": 0, "fabian_imf_log_tim": 0, "fabian": 0, "imf": [0, 14, 15, 32], "fabian_imf_log": 0, "fabian_imf_log_timestep": 0, "displai": [0, 6, 8, 17], "test": [0, 12, 20, 22, 26, 29, 31], "dumpvers": 0, "short": [0, 6, 8, 13, 14, 15, 42], "version_onli": 0, "tides_diagnosis_log": 0, "mint_dir": 0, "mint_data_cleanup": 0, "incom": 0, "Will": [0, 20, 22, 41], "slower": 0, "few": [0, 8], "thing": [0, 3, 6, 7, 8, 13, 14, 15, 16, 19, 20, 21, 32, 41], "mint_ms_rejuven": 0, "rejuven": [0, 13], "mint_remesh": 0, "remesh": 0, "mint_use_zams_profil": 0, "profil": 0, "zam": [0, 4, 6, 7, 13, 32, 41, 43], "homogen": 0, "mint_fallback_to_test_data": 0, "test_data": 0, "fallback": 0, "unavail": 0, "mint_disable_grid_load_warn": 0, "explicitli": [0, 1], "miss": [0, 13, 14, 15, 20, 34], "much": [0, 6, 8, 13, 16, 19, 20, 28], "mint_kippenhahn": 0, "kippenhahn": 0, "mint_nshel": 0, "shell": [0, 20], "shellular": 0, "mint_maximum_nshel": 0, "mint_hard_max_nshel": 0, "1000": [0, 8, 22, 38], "mint_minimum_nshel": 0, "equal": [0, 2, 14, 15, 16, 20], "mint_hard_min_nshel": 0, "mint_kippenhahn_stellar_typ": 0, "selector": 0, "plot": [0, 6, 8, 12, 13, 14, 15, 17, 18, 19, 25], "mint_kippenhahn_companion_stellar_typ": 0, "mint_nuclear_burn": 0, "mint_minimum_shell_mass": 0, "mint_maximum_shell_mass": 0, "go": [0, 6, 11, 13, 16, 21, 23, 25, 40], "command": [0, 1, 16, 20, 21, 22, 23, 31, 40], "gogo": 0, "reset_star": 0, "reset": 0, "reset_stars_default": 0, "echo": 0, "execut": [0, 16, 22, 35], "noecho": 0, "deactiv": 0, "noechonow": 0, "bye": 0, "quit": [0, 6, 20, 32], "fin": 0, "reset_pref": 0, "prefer": [0, 21], "struct": [0, 9], "statu": [0, 1, 6, 8, 13, 14, 15, 16, 22, 26, 30, 31, 37], "handi": 0, "re": [0, 1, 6, 7, 8, 13, 14, 15, 17, 26, 34], "sampl": [0, 4, 13, 16, 32, 35, 38], "space": [0, 6, 13, 14, 15, 16, 31, 35, 38], "good": [0, 12, 13, 14, 15, 16, 22, 43], "statist": [0, 22, 30], "reason": [0, 14, 15], "tbse": 0, "pgo": 0, "random_system": 0, "etc": [0, 7, 12, 14, 15, 16, 20, 21, 22, 23, 25, 31, 32, 40, 41], "random_se": [0, 5, 12, 19], "seed": 0, "possibl": [0, 1, 2, 6, 12, 17, 20, 22, 23, 29, 32, 34, 40], "exactli": [0, 14, 15], "reproduc": 0, "involv": 0, "pseudorandom": 0, "random_systems_se": 0, "random_skip": 0, "skip": [0, 2, 6, 8, 13, 22], "idum": 0, "nb": 0, "pleas": [0, 6, 7, 13, 14, 15, 16, 20, 22, 23, 29, 40], "reverse_tim": 0, "To": [0, 7, 12, 13, 14, 15, 16, 22, 23, 31, 32, 40], "consid": [0, 1, 2, 13, 14, 15, 21, 22, 25, 33, 34, 38], "start_tim": [0, 22], "warmup_cpu": 0, "cpu": [0, 6, 8, 13, 14, 15, 16, 22, 28], "second": [0, 2, 8, 17, 20, 25, 31, 32, 33], "topic": 0, "argopt": 0, "help_al": 0, "list_arg": 0, "here": [1, 6, 7, 9, 12, 13, 14, 15, 17, 19, 20, 21, 22, 23, 25, 32, 40, 41], "user": [1, 9, 20, 21, 22, 27, 32, 34, 41], "binaryc": [1, 20, 41], "output": [1, 2, 3, 4, 5, 7, 9, 11, 12, 17, 18, 19, 20, 21, 22, 23, 25, 31, 39, 40, 41, 43], "runtim": [1, 22], "binarycpython": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 43], "util": [1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 41, 43], "autogen_c_logging_cod": [1, 9, 19], "logging_dict": 1, "verbos": [1, 6, 8, 12, 13, 14, 15, 16, 18, 20, 22, 23, 27, 31, 32, 33, 38, 40], "sourc": [1, 2, 3, 8, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 41, 43], "auto": [1, 24], "printf": [1, 6, 8, 9, 12, 13, 14, 15, 16, 18, 19], "statement": [1, 9, 12, 13, 14, 15, 16, 17, 18, 19, 22], "input": [1, 2, 3, 7, 11, 12, 20, 21, 22, 23, 25, 27, 31, 32, 33, 34, 41, 43], "dictionari": [1, 2, 3, 4, 6, 8, 13, 14, 15, 16, 20, 21, 22, 25, 27, 28, 31, 32, 34, 35, 39, 42], "kei": [1, 2, 3, 6, 11, 12, 16, 17, 19, 20, 21, 22, 25, 29, 31, 32, 34, 35, 39], "header": [1, 6, 8, 9, 12, 13, 14, 15, 16, 19, 20], "line": [1, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 25, 31, 38, 40], "item": [1, 2, 6, 8, 13, 14, 15, 20], "paramet": [1, 2, 3, 4, 6, 7, 8, 9, 12, 13, 14, 15, 16, 20, 21, 22, 23, 25, 26, 29, 30, 31, 32, 34, 35, 37, 38, 39, 41, 43], "put": [1, 6, 8, 13, 14, 15, 16, 19, 20, 22, 25, 26, 34, 35, 36], "append": [1, 2, 6, 12, 13, 14, 15, 17], "exampl": [1, 2, 12, 20, 21, 32, 35, 38, 41], "look": [1, 3, 6, 8, 13, 14, 15, 16, 19, 23, 32, 40], "my_stellar_data": [1, 9, 16, 18, 19], "star": [1, 4, 5, 7, 8, 9, 11, 12, 13, 14, 17, 18, 19, 22, 23, 25, 30, 32, 37, 38, 43], "dict": [1, 3, 5, 6, 12, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24, 26, 27, 29, 31, 32, 34, 39, 42], "binary_c": [1, 2, 3, 4, 6, 8, 13, 14, 15, 17, 20, 21, 22, 25, 29, 31, 32, 35, 39, 41], "sentenc": 1, "level": [1, 6, 20, 33], "return": [1, 2, 3, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 37, 38, 39, 41, 43], "str": [1, 2, 3, 5, 6, 16, 20, 21, 25, 31, 34, 35, 39], "binary_c_log_cod": [1, 9, 12, 18, 19], "termin": [1, 6, 9, 16, 23, 40], "primari": [1, 6, 8, 13, 14, 15, 16, 32, 35, 43], "stellar_typ": [1, 6, 9, 12, 13, 14, 15, 16, 23, 24, 25], "example_log_co": [1, 9], "30": [1, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 19], "12e": [1, 6, 9, 12, 13, 14, 15, 16], "previous_stardata": [1, 8, 9, 12, 16], "kill": [1, 9, 16, 21], "dtm": [1, 9, 16], "exact": [1, 2, 22], "wrap": [1, 9, 20, 29], "logic": [1, 2, 9, 21, 22], "definit": [1, 13, 14, 15, 43], "share": [1, 12, 18, 19, 22, 31, 41], "binary_c_write_log_cod": 1, "write": [1, 5, 6, 7, 8, 9, 12, 13, 16, 18, 19, 20, 21, 22, 31, 34, 41], "target": [1, 34], "compile_shared_lib": 1, "sourcefile_nam": 1, "outfile_nam": 1, "compil": [1, 9, 16, 19, 23, 40], "name": [1, 2, 5, 6, 7, 8, 13, 14, 15, 16, 17, 19, 20, 22, 30, 31, 34, 35, 41, 42], "create_and_load_logging_funct": [1, 9, 19], "custom_logging_cod": [1, 9, 12, 16, 18, 19, 41], "custom_tmp_dir": 1, "ctype": 1, "unless": [1, 21, 22], "i": [1, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 20, 21, 22, 23, 26, 32, 35, 39, 40, 43], "recommend": [1, 4, 23, 40], "combin": [1, 2, 9, 20, 21, 22], "tupl": [1, 6, 20, 26, 31, 38], "memori": [1, 6, 7, 8, 9, 13, 15, 16, 19, 20, 21, 22, 31, 43], "address": [1, 7, 9, 22, 43], "capsul": [1, 7, 20], "from_binary_c_config": 1, "config_fil": 1, "binaryc_config": 1, "config": [1, 20, 22, 23, 40], "filepath": 1, "return_compilation_dict": 1, "inspir": [1, 25, 43], "binary_c_inline_config": 1, "perl": [1, 2, 13, 14, 15, 16, 30], "still": [1, 9, 17, 22, 43], "clean": [1, 6, 12, 14, 15, 21], "w": [1, 12, 16, 21, 31], "develop": 1, "redhat": 1, "com": [1, 20, 21, 32], "blog": 1, "linker": 1, "gcc": [1, 23, 40], "python": [2, 3, 4, 6, 8, 13, 14, 15, 20, 22, 29, 31, 32, 35], "class": [2, 3, 20, 23, 24], "autovivificationdict": 2, "autovivif": 2, "featur": [2, 4, 16, 23], "overrid": [2, 19, 22, 32, 35, 38], "__iadd__": 2, "oper": [2, 31], "doc": [2, 6, 13, 14, 15, 16, 20, 23, 34, 40], "refer": [2, 22, 31], "datamodel": 2, "html": [2, 6, 16, 23, 31, 40], "highlight": 2, "iadd": 2, "subdict": 2, "might": [2, 3, 8, 13, 16, 17, 20, 22, 23, 31, 40], "newdict": 2, "print": [2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 20, 22, 26, 33, 34], "__getitem__": [2, 29], "getitem": 2, "autoviv": 2, "count_keys_recurs": 2, "input_dict": 2, "recurs": [2, 20], "count": [2, 5, 6, 19, 20, 22], "local_count": 2, "custom_sort_dict": 2, "order": [2, 4, 16, 20, 35], "ordereddict": 2, "find": [2, 5, 8, 16, 20, 22, 29, 34], "uniqu": [2, 19, 22], "sort": [2, 6, 13, 14, 15, 17, 20, 31], "Then": [2, 6, 20, 23, 40], "those": [2, 6, 8, 13, 14, 15, 16, 19, 21, 23, 32, 39, 40], "them": [2, 6, 7, 8, 16, 18, 19, 20, 21, 30, 31, 32, 34, 41], "directli": [2, 12, 22, 26, 31], "without": [2, 9, 12, 14, 15, 20, 22, 32], "filter_dict": 2, "arg_dict": [2, 20], "filter_list": 2, "out": [2, 3, 6, 8, 9, 13, 14, 15, 17, 20, 22, 23, 32, 34, 40], "filter_dict_through_valu": 2, "inspect_dict": 2, "indent": [2, 3, 12, 21, 31], "print_structur": 2, "inspect": [2, 12, 25], "nest": [2, 16, 35, 39], "content": [2, 3, 7, 20, 21, 26], "bool": [2, 16, 20, 21, 25, 31, 34, 35, 39], "except": [2, 5, 6, 7, 13, 14, 15, 16, 22, 25, 34], "keys_to_float": 2, "convert": [2, 3, 6, 8, 17, 20, 21, 31, 32, 38], "faster": [2, 13, 14, 15, 16], "recursive_change_key_to_float": 2, "convers": 2, "noth": [2, 22, 26, 27, 31], "els": [2, 5, 8, 20, 22], "new_dict": 2, "merge_dict": [2, 11], "dict_1": 2, "dict_2": 2, "behaviour": [2, 6, 13, 14, 15, 16, 41], "present": [2, 3, 6, 13, 14, 15, 16, 19, 21, 31, 32], "again": [2, 3, 6, 11, 12, 20, 22], "ad": [2, 4, 6, 8, 12, 31, 35], "opt": [2, 5, 7, 32], "OR": [2, 19], "ident": 2, "concaten": 2, "nonetyp": 2, "instanc": [2, 11, 12, 13, 14, 15, 16, 21, 32], "multiply_float_valu": 2, "multiply_values_dict": [2, 11], "over": [2, 6, 8, 11, 12, 13, 14, 15, 16, 20, 21, 31], "general_info": 2, "origin": [2, 17, 23, 31, 40], "union": [2, 16, 20, 32, 35, 38, 39, 43], "complex": [2, 8, 9, 18, 19, 22], "pass": [2, 7, 9, 12, 16, 17, 19, 20, 21, 22, 23, 25, 26, 27, 30, 31, 37, 38, 40, 41], "multiplied_dict": 2, "normalize_dict": 2, "result_dict": 2, "normalis": [2, 22, 32], "divid": 2, "term": 2, "design": [2, 21, 25], "normalized_dict": 2, "prepare_dict": 2, "global_dict": 2, "list_of_sub_kei": 2, "sure": [2, 12, 13, 14, 15, 16, 23, 26, 31, 32, 40, 41], "prepar": 2, "don": [2, 6, 20, 22, 26], "access": [2, 9, 12, 13, 14, 15, 16, 22, 26, 31], "come": [2, 23, 38, 40], "empti": [2, 12, 30, 34, 37], "recursive_change_key_to_str": 2, "custom_format": [2, 20], "ll": [2, 9, 11, 14, 15, 17, 31], "set_opt": [2, 6, 8, 17], "newopt": [2, 32], "updat": [2, 14, 15, 16, 21, 23, 35, 40], "subtract_dict": 2, "subtract": 2, "numer": 2, "overlap": 2, "update_dict": [2, 11], "dict2": 2, "packag": [3, 7, 16, 20, 23, 35, 36, 37, 38, 40], "binarycdecod": 3, "object_hook": 3, "parse_float": 3, "parse_int": 3, "parse_const": 3, "strict": 3, "object_pairs_hook": 3, "jsondecod": 3, "decod": 3, "entri": [3, 20, 21], "binarycencod": 3, "skipkei": 3, "ensure_ascii": [3, 21, 31], "check_circular": 3, "allow_nan": 3, "sort_kei": [3, 31], "jsonencod": 3, "encod": [3, 16, 31], "attempt": [3, 20, 21], "o": [3, 20, 23, 32], "precis": 3, "json": [3, 7, 12, 16, 21, 22, 27, 31], "binaryc_json_seri": 3, "obj": [3, 20], "serialis": 3, "export": [3, 16, 20, 21, 31], "represent": [3, 16, 35], "themselv": [3, 32], "itself": [3, 6, 9, 12, 22, 23, 32, 40], "ensemble_compress": 3, "compress": [3, 31], "extens": [3, 7, 23, 24], "ensemble_file_typ": 3, "ensemble_set": 3, "parameter_nam": [3, 6, 7, 8, 11, 13, 14, 15, 16, 20, 35], "extract_ensemble_json_from_str": 3, "binary_c_output": 3, "extract": [3, 16], "ensemble_json": 3, "raw": [3, 7, 19, 20, 21, 22, 25, 39, 41], "pars": [3, 4, 6, 8, 12, 13, 14, 15, 16, 19, 20, 21, 25, 39, 41], "format_ensemble_result": 3, "ensemble_dictionari": 3, "step": [3, 6, 8, 9, 12, 13, 14, 15, 16, 25, 35, 38], "handle_ensemble_string_to_json": 3, "raw_output": 3, "deal": [3, 12], "creat": [3, 6, 8, 9, 12, 13, 14, 15, 16, 20, 21, 28, 31, 32, 35, 37], "wrapper": [3, 7, 9, 12, 21, 31, 33, 43], "easi": [3, 12], "cl": 3, "load_ensembl": 3, "convert_float_kei": 3, "select_kei": 3, "flush": [3, 21, 31], "ensemebl": 3, "even": [3, 11, 14, 15], "open_ensembl": 3, "utf": [3, 16, 31], "open": [3, 5, 12, 16, 19, 31], "read": [3, 4, 5, 12, 16, 19, 20, 22, 23, 31, 40], "decompress": 3, "explain": [4, 39], "repositori": 4, "last": [4, 14, 17, 19, 20, 32], "usecas": 4, "tutori": [4, 23], "individu": [4, 13, 23], "run_system_wrapp": [4, 5, 9, 18, 23, 24], "via": [4, 6, 7, 9, 13, 14, 15, 16, 21, 22, 25], "noteworthi": 4, "full": [4, 9, 17, 20, 22, 30, 37], "script": [4, 9, 20, 22, 23, 26, 30, 37, 40], "about": [4, 6, 8, 13, 14, 15, 16, 20, 21, 22, 26, 31, 34, 43], "modif": 4, "binari": [4, 7, 8, 12, 14, 15, 22, 23, 25, 32, 35, 40, 43], "introduc": 5, "notebook": [5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 23, 40], "import": [5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 35], "os": [5, 6, 8, 12, 13, 14, 15, 16, 17, 19, 20], "temp_dir": [5, 6, 8, 12, 14, 15, 16, 17, 20], "run_system": [5, 7, 9, 11, 12, 17, 18, 25, 41], "tmp_dir": [5, 6, 8, 12, 14, 15, 16, 17, 22, 35], "notebook_bhbh": 5, "log_fil": [5, 22], "60": [5, 13, 31], "m2": [5, 8, 9, 12, 13, 16, 19, 31, 32, 43], "k1": [5, 12, 19], "k2": [5, 12, 19], "sep": [5, 8, 12, 13, 16, 19, 31, 32, 43], "ecc": [5, 12, 16, 19, 31, 32], "r1": [5, 12, 19], "rol1": [5, 12, 19], "r2": [5, 12, 19], "rol2": [5, 12, 19], "30441": 5, "random_count": [5, 12, 19], "0000": [5, 12, 19], "000": [5, 12, 19], "00": [5, 12, 13, 16, 19], "34": [5, 6, 7, 8, 9, 12, 13, 14, 16, 17], "1193": 5, "28": [5, 7, 8, 9, 12, 13], "792": 5, "6492": 5, "26": [5, 13], "756": 5, "off_m": [5, 12, 19], "type_chng": [5, 12, 19], "6588": 5, "687": [5, 8], "2135": 5, "972": 5, "3695": 5, "813": 5, "3967": 5, "827": 5, "randbuf": [5, 19], "14439": 5, "mer": 5, "354981": 5, "764989": 5, "550575": 5, "162006": 5, "78488": 5, "23513": 5, "gt": [5, 6, 7, 8, 9, 12, 14, 16, 17, 18, 19], "vk": [5, 19], "218": 5, "134": 5, "vr": [5, 19], "01791": 5, "phi": [5, 19], "101323": 5, "vn": [5, 19], "final": [5, 8, 13, 14, 15, 19], "runawai": [5, 19], "v": [5, 19, 23, 40], "114": 5, "552": 5, "184": 5, "683": 5, "18": [5, 13, 15, 17, 19], "7769": 5, "957894": 5, "max_tim": [5, 12, 19], "wide": [5, 13, 14, 15], "littl": [5, 6, 8, 13, 16, 17, 29], "40": [5, 8, 13, 14, 15], "35895": 5, "3101": 5, "48": [5, 13], "y": [5, 6, 17, 20, 21, 25, 26], "009": [5, 17], "beg_symb": 5, "3583": 5, "081": [5, 6], "35": [5, 8, 13, 32], "930": [5, 15], "3971": 5, "98": [5, 13, 15], "023": 5, "014": 5, "lock": [5, 31], "3928": [5, 19], "41": [5, 13], "632": [5, 13], "894": 5, "3995": 5, "1199": 5, "776": [5, 19], "5374": 5, "4219": 5, "27": [5, 8, 13, 16], "615": 5, "603": [5, 13], "5603": 5, "17": [5, 6, 8, 13, 15, 16, 17, 19], "013": 5, "5403": 5, "157": 5, "151": 5, "5696": 5, "012": 5, "6475": 5, "763": [5, 32], "731": 5, "5791": 5, "19": [5, 8, 13, 16, 19], "010": 5, "011": 5, "6548": 5, "730": 5, "729": 5, "5794": 5, "203": 5, "6550": 5, "728": [5, 8], "225": 5, "inv": [5, 19], "6552": 5, "725": 5, "5795": 5, "246": 5, "6556": 5, "721": 5, "5796": 5, "282": 5, "6559": 5, "716": 5, "727": 5, "321": 5, "6571": 5, "691": [5, 8], "724": [5, 9], "5798": 5, "546": 5, "021": 5, "6649": 5, "502": 5, "5812": 5, "548": 5, "543": 5, "1021": 5, "167": [5, 13], "598": 5, "7342": 5, "36": [5, 8, 13], "588": 5, "574": 5, "2663": 5, "178": 5, "480": 5, "8828": 5, "57": [5, 6, 8, 13], "460": 5, "end_symb": 5, "2670": 5, "171": 5, "458": 5, "8837": 5, "58": [5, 13], "455": 5, "2671": 5, "454": 5, "8840": 5, "2672": 5, "170": 5, "450": 5, "453": 5, "2673": 5, "446": 5, "8843": 5, "452": 5, "2674": 5, "169": 5, "442": 5, "451": [5, 8], "2676": 5, "438": 5, "8846": 5, "2677": 5, "168": [5, 8], "435": 5, "448": 5, "2678": 5, "431": 5, "8848": 5, "447": 5, "2679": 5, "427": 5, "2680": 5, "424": [5, 6], "8851": 5, "445": 5, "2681": 5, "166": [5, 8], "420": 5, "444": [5, 19], "2682": 5, "417": 5, "8853": 5, "2683": 5, "165": 5, "413": [5, 6], "441": 5, "2684": 5, "410": [5, 19], "8856": 5, "440": 5, "2685": 5, "164": 5, "407": 5, "8855": 5, "439": 5, "2686": 5, "404": 5, "8858": 5, "437": [5, 13], "2687": 5, "163": [5, 8], "400": 5, "436": 5, "2688": 5, "397": 5, "8860": 5, "434": 5, "2689": 5, "162": 5, "394": 5, "433": 5, "2690": 5, "391": 5, "8862": 5, "432": 5, "2691": [5, 13], "161": 5, "388": 5, "430": 5, "2692": 5, "385": 5, "8864": 5, "429": [5, 13], "2693": 5, "382": 5, "2694": 5, "379": 5, "8867": 5, "425": 5, "2695": 5, "160": 5, "376": 5, "8866": 5, "2696": 5, "373": 5, "8869": 5, "422": 5, "2697": 5, "159": [5, 8], "370": 5, "8868": 5, "2698": 5, "368": 5, "8871": 5, "419": 5, "2699": 5, "158": 5, "365": 5, "8870": 5, "2700": 5, "362": 5, "8873": 5, "415": 5, "359": 5, "8872": 5, "2701": 5, "357": 5, "8875": 5, "411": 5, "2702": 5, "156": [5, 8, 19], "354": 5, "8874": 5, "409": 5, "2703": 5, "352": 5, "8877": 5, "2704": 5, "349": 5, "8876": 5, "405": 5, "2705": 5, "346": 5, "8878": 5, "403": 5, "2706": 5, "155": 5, "344": 5, "342": [5, 13], "8880": 5, "398": 5, "2707": 5, "154": 5, "339": 5, "396": 5, "2708": 5, "337": 5, "8882": 5, "393": 5, "2709": 5, "153": 5, "334": 5, "2710": 5, "332": 5, "8884": 5, "152": 5, "330": 5, "386": 5, "2711": 5, "327": 5, "8886": 5, "383": 5, "2712": 5, "325": 5, "380": 5, "2713": 5, "323": 5, "8887": 5, "377": 5, "2714": 5, "320": 5, "374": 5, "318": 5, "8889": 5, "371": 5, "2715": 5, "150": [5, 8, 13, 14, 15, 16], "316": [5, 8], "2716": 5, "314": 5, "8891": 5, "2717": 5, "149": 5, "312": [5, 6], "361": 5, "2718": 5, "310": 5, "8893": 5, "358": 5, "148": [5, 19], "308": 5, "8892": 5, "355": 5, "2719": 5, "306": 5, "8894": 5, "351": 5, "2720": 5, "147": 5, "304": 5, "347": 5, "2721": 5, "302": [5, 19], "8896": 5, "343": 5, "300": [5, 16, 38], "340": 5, "2722": 5, "298": 5, "8898": 5, "335": 5, "2723": 5, "146": 5, "296": 5, "8897": 5, "331": 5, "2724": 5, "294": [5, 6], "8899": 5, "145": 5, "292": 5, "2725": 5, "290": 5, "8901": 5, "2726": 5, "144": 5, "288": 5, "2727": 5, "286": 5, "8903": 5, "309": 5, "143": 5, "284": 5, "8902": 5, "2728": 5, "8904": 5, "59": [5, 6, 13], "299": [5, 16], "2729": 5, "142": 5, "281": [5, 43], "2730": 5, "279": 5, "8906": 5, "141": 5, "277": 5, "283": 5, "2731": 5, "275": 5, "8908": 5, "2732": 5, "140": 5, "274": 5, "8907": 5, "272": 5, "2733": [5, 13], "8909": 5, "266": 5, "2734": 5, "139": 5, "270": 5, "260": 5, "268": 5, "8911": 5, "253": 5, "2773": 5, "136": 5, "217": 5, "8934": 5, "020": 5, "2800": 5, "8949": 5, "3729": 5, "039": 5, "072": 5, "9043": 5, "3781": 5, "034": 5, "067": 5, "9047": 5, "501": 5, "045": 5, "102": 5, "91": [5, 8, 13], "69569": 5, "911093": 5, "184829": 5, "636985": 5, "611763": 5, "837816": 5, "0118": 5, "4101": 5, "183": 5, "098": [5, 6], "5462": 5, "26416": 5, "22543": 5, "192": 5, "531": [5, 16], "908": 5, "105": [5, 14, 15], "89": [5, 6, 13, 15, 16], "7432": 5, "187": 5, "589": 5, "90695": 5, "03221": 5, "104427": 5, "96112": 5, "511114": 5, "4046": 5, "586": 5, "776523": 5, "809662": 5, "448242": 5, "54439": 5, "0399": 5, "43173": 5, "384": 5, "535": 5, "4205": 5, "103702": 5, "582": 5, "106": [5, 16], "329": [5, 8], "8544": 5, "13796e": 5, "51": [5, 8, 13], "27569e": 5, "103": 5, "85406e": 5, "454268": 5, "let": [5, 8, 12, 13, 14, 15, 16, 17, 21], "bhbh": 5, "detector": 5, "found": [5, 6, 8, 13, 15, 16, 30, 32, 37], "def": [5, 6, 8, 12, 13, 14, 15, 16, 19], "vb": [5, 26, 29, 31, 38], "readlin": 5, "length": [5, 20], "len": [5, 6, 12, 16, 19], "stellar_type1": 5, "stellar_type2": 5, "rememb": [5, 6, 14, 15], "pop": [5, 9, 17, 29], "oop": 5, "unbound": 5, "bound": [5, 32, 38], "search_for_bhbh": 5, "maxcount": 5, "arg": [5, 7, 16, 20, 29, 32, 33], "851": 5, "873": 5, "510": 5, "265": 5, "301": 5, "45": [5, 6, 8, 13], "261": 5, "898": 5, "553": 5, "276": 5, "54": [5, 13], "122": 5, "69": [5, 13], "09": [5, 6, 8, 13], "239": 5, "231": 5, "49": [5, 6, 13], "341": 5, "55": [5, 6, 8, 13, 15, 16, 32], "2421": 5, "28369": 5, "402": 5, "88": [5, 13], "213": 5, "128": 5, "399": 5, "22": [5, 13, 19], "921": 5, "23": [5, 13, 16], "24": [5, 8, 13], "1876": 5, "118": 5, "20447": 5, "29": [5, 8, 13, 22], "421": 5, "115": [5, 32], "52": [5, 6, 8, 13], "004": 5, "32": [5, 8, 13, 20, 22], "113": 5, "33": [5, 13], "196": 5, "73": [5, 13, 16], "97": [5, 13], "711": 5, "78": [5, 13], "37": [5, 8, 13], "857": 5, "207": 5, "96": [5, 6, 8, 13], "881": 5, "85": [5, 8, 13, 38], "875": 5, "43": [5, 13], "79": [5, 13], "640": [5, 13], "46": [5, 8, 13, 16], "47": [5, 8, 13], "95": [5, 13, 15], "19622": 5, "87": [5, 13], "117": 5, "81": [5, 8, 13], "53": [5, 6, 8, 13, 16], "706": 5, "241": 5, "67": [5, 13, 16], "56": [5, 8, 13], "803": 5, "2439": 5, "235": [5, 6], "82": [5, 13], "61": [5, 13, 16], "210": [5, 19], "12522": 5, "63": [5, 8, 13], "64": [5, 13], "65": [5, 13, 38], "285": 5, "66": [5, 13], "1360": 5, "68": [5, 8, 13, 16], "1398": 5, "70": [5, 8, 13, 32], "77": [5, 13, 15], "71": [5, 13], "72": [5, 13], "208": 5, "84": [5, 8, 13, 16], "254": 5, "74": [5, 13], "1882": 5, "76": [5, 13], "123": 5, "132": 5, "86": [5, 8, 13], "80": [5, 13, 32, 38], "83": [5, 8, 13], "240": 5, "129": 5, "127": 5, "93": [5, 13], "199": 5, "267": [5, 8], "18139": 5, "90": [5, 8, 13], "180": 5, "92": [5, 13], "94": [5, 6, 8, 13, 20], "1254": [5, 12], "172": 5, "557": 5, "99": [5, 13, 15], "3082": 5, "9548": 5, "32620": 5, "9310": 5, "60101": 5, "246604": 5, "283972": 5, "469524": 5, "55473": 5, "379292": 5, "38316": 5, "109679": 5, "0261496": 5, "4011": 5, "043": 5, "9308": 5, "107187": 5, "679223": 5, "238584": 5, "860402": 5, "891056": 5, "4186": 5, "59867": 5, "804961": 5, "0474572": 5, "4146": 5, "caus": [5, 13, 43], "former": 5, "unphys": [5, 8, 13], "5064": 5, "536": 5, "468": 5, "6493": 5, "53854": 5, "006": 5, "8674": 5, "840": 5, "505": 5, "3185": 5, "017": [5, 17], "8704": 5, "600": 5, "509": 5, "3192": 5, "592": 5, "418": 5, "8706": 5, "568": 5, "3193": 5, "496": 5, "8910": 5, "758": [5, 19], "3246": 5, "beg_rch": 5, "9650": 5, "495": 5, "571": 5, "3223": 5, "913": 5, "0585": 5, "961": 5, "3211": 5, "999": 5, "007": [5, 17], "end_rch": 5, "0649": 5, "747": 5, "479": 5, "3216": 5, "002": [5, 18, 19], "2967": 5, "576": 5, "392": [5, 19], "3429": 5, "beg_bss": 5, "2996": 5, "512": 5, "390": 5, "3462": 5, "59616": 5, "665406": 5, "861368": 5, "162038": 5, "282234": 5, "0511173": 5, "5117": 5, "7326": 5, "0717": 5, "32118": 5, "450629": 5, "3096": 5, "9074": 5, "493": 5, "3507": 5, "end_bss": 5, "9113": 5, "242": 5, "3529": 5, "223": 5, "9196": 5, "513": 5, "997": 5, "3591": 5, "221": 5, "9206": 5, "843": 5, "3599": 5, "9797": 5, "519": 5, "984": [5, 15], "4098": 5, "0512": 5, "528": 5, "256": [5, 6, 22], "4673": 5, "137": 5, "1012": 5, "742": 5, "5017": 5, "1130": 5, "245": 5, "5043": 5, "1471": 5, "485": 5, "5114": 5, "4877": 5, "885": 5, "6409": 5, "845641": 5, "27734": 5, "925761": 5, "145632": 5, "67179": 5, "4683": 5, "83672": 5, "1844": 5, "22098": 5, "787705": 5, "5164": 5, "oh": 5, "dear": 5, "secondari": [5, 6, 13, 32, 43], "wider": 5, "shorter": 5, "shrink": [5, 8], "best": [5, 21, 22], "acquir": 5, "closer": 5, "grvitation": 5, "0001": [5, 7, 43], "0102": 5, "622": 5, "3069": 5, "1851": [5, 13], "215": 5, "508": 5, "2266": 5, "879": 5, "945": 5, "60876": 5, "7617": 5, "018": 5, "7647": 5, "572": 5, "583": 5, "7721": 5, "633": 5, "7785": 5, "3100": [5, 13], "1326": 5, "305": 5, "695": 5, "2791": 5, "09665": 5, "qc": 5, "714712": 5, "st": 5, "3048": 5, "0276": 5, "2332": 5, "rc": [5, 6, 8, 13, 14, 15, 17, 25], "71818": 5, "6952": 5, "9757": 5, "comenv": [5, 8], "presc": 5, "m01": 5, "mc1": 5, "l1": 5, "44223e": 5, "rzam": [5, 43], "33552": 5, "convfrac": 5, "467851": 5, "lambda_ion": 5, "a_in": 5, "p_in": 5, "1708": 5, "jtot_in": 5, "09706e": 5, "jorb_in": 5, "96557e": 5, "eorbi": 5, "76416e": 5, "ebindi": 5, "30388e": 5, "sepf": 5, "7114": 5, "4385": 5, "9758": 5, "8926": 5, "mf1": 5, "5423": 5, "mf2": 5, "af": 5, "jf": 5, "72832e": 5, "jej": 5, "63566e": 5, "eorbf": 5, "39152e": 5, "eej": 5, "03996e": 5, "alpha_ej": 5, "0241634": 5, "1327": 5, "028": 5, "367": 5, "232": 5, "459": 5, "mstart": 5, "397754": 5, "3084": 5, "9071": 5, "46089": 5, "a_out": 5, "p_out": 5, "0152545": 5, "57093": 5, "jorb_out": 5, "6771": 5, "rl1": 5, "236": [5, 19], "rl2": 5, "459382": 5, "No": [5, 7, 16, 22, 23, 40], "9411": 5, "gyr": [5, 6, 8], "9452": 5, "934": 5, "70365": 5, "455552": 5, "66554": 5, "0303129": 5, "454409": 5, "106368": 5, "2147": 5, "612": [5, 13], "401": 5, "668328": 5, "0913095": 5, "387": 5, "9342": 5, "851646": 5, "360": 5, "844": [5, 6], "2823": 5, "1622": 5, "45534": 5, "9256": 5, "1973": 5, "126": 5, "1987": 5, "846": [5, 6], "4184": 5, "900": 5, "7052": 5, "131": 5, "7060": 5, "7527": 5, "852": 5, "046": 5, "356": 5, "7554": 5, "465": 5, "888": 5, "7557": 5, "328": 5, "051": [5, 6], "416": 5, "7572": 5, "618": 5, "234": [5, 8], "7669": 5, "375": 5, "7675": 5, "333": 5, "579": 5, "222": 5, "7779": 5, "541": 5, "991": 5, "7941": 5, "539": 5, "070": 5, "2191": 5, "2234": 5, "069": 5, "405577": 5, "425788": 5, "375537": 5, "574826": 5, "898786": 5, "6975": 5, "878": 5, "64724": 5, "150217": 5, "9445": 5, "368345": 5, "7093": 5, "1502": 5, "233": 5, "8377": 5, "3046": 5, "77416": 5, "7107": 5, "204": 5, "1822": 5, "949": 5, "1814": [5, 13], "784": 5, "1818": 5, "224": 5, "979": 5, "19097": 5, "112": 5, "84502": 5, "824494": 5, "0987206": 5, "883252": 5, "726002": 5, "995824": 5, "317": 5, "667": 5, "25694": 5, "46901": 5, "022": 5, "477791": 5, "781": 5, "206": [5, 17], "67059": 5, "826": 5, "6816": 5, "6008": 5, "592733": 5, "836": [5, 6], "121": 5, "4862": 5, "7418": 5, "7434": 5, "101": 5, "7455": 5, "870": 5, "7458": 5, "995": 5, "7459": 5, "055": 5, "577": 5, "7836": 5, "7852": 5, "252": 5, "8004": 5, "992": 5, "8194": 5, "024": 5, "9725": 5, "025": 5, "1124": 5, "825086": 5, "878253": 5, "783746": 5, "582318": 5, "354576": 5, "9794": 5, "994": 5, "969": 5, "22787": 5, "16539": 5, "9739": 5, "3518": 5, "953182": 5, "120": 5, "657": 5, "449": [5, 13], "20677": 5, "078": 5, "932": 5, "173": 5, "4710": 5, "11686": 5, "0165": 5, "contact": [5, 23, 40], "00288661": 5, "00242158": 5, "393886": 5, "981555": 5, "bh_bh": 5, "2033": 5, "16729": 5, "213854": 5, "coalesc": 5, "369": 5, "624": [5, 13], "133": [5, 16], "037": 5, "1824": 5, "935": 5, "608": [5, 13], "951": 5, "179": 5, "408": 5, "1828": 5, "909": 5, "3171": 5, "1823": 5, "943": 5, "619": [5, 13], "1826": 5, "925": 5, "587": [5, 15], "1829": 5, "903": 5, "348": [5, 8], "111": 5, "707": [5, 13], "34870": 5, "549": 5, "376059": 5, "365763": 5, "371625": 5, "728797": 5, "817432": 5, "220": 5, "905": 5, "13607": 5, "475287": 5, "5493": 5, "478315": 5, "672": 5, "4493": 5, "6989": 5, "923": 5, "786": 5, "7335": 5, "07": [5, 13, 14, 15, 19, 32, 38], "702": 5, "489": 5, "7424": 5, "901": 5, "7426": 5, "507": 5, "104": [5, 8], "591": 5, "7447": 5, "492": 5, "7451": 5, "869": 5, "971": 5, "895": 5, "7714": 5, "219": 5, "7727": 5, "108": 5, "7874": 5, "996": [5, 8], "990": 5, "8062": 5, "032": 5, "1830": 5, "48809": 5, "946468": 5, "0278672": 5, "850309": 5, "663251": 5, "8982": 5, "2583": 5, "498": 5, "16733": 5, "776263": 5, "212": 5, "7069": 5, "577826": 5, "107": 5, "238": 5, "189": 5, "7767": 5, "8073": 5, "887": 5, "066": 5, "982": 5, "81705": 5, "372": 5, "47534": 5, "705715": 5, "41996": 5, "33295": 5, "061141": 5, "825648": 5, "694": [5, 8, 13], "1877": 5, "07108": 5, "406": [5, 13, 16], "212034": 5, "7428": 5, "816": 5, "7430": 5, "922": 5, "7431": 5, "048": [5, 17, 19], "7437": 5, "7450": 5, "109": [5, 8], "491": 5, "7840": 5, "7856": 5, "250": 5, "8008": 5, "998": 5, "993": 5, "8205": 5, "9648": 5, "1135": 5, "364017": 5, "086004": 5, "422436": 5, "514898": 5, "872312": 5, "9816": 5, "3228": 5, "4809": 5, "0298011": 5, "274206": 5, "201": 5, "5885": 5, "82224": 5, "5175": 5, "3752": 5, "719058": 5, "7752": 5, "135": 5, "503": 5, "936": 5, "124": 5, "27025": 5, "22936": 5, "0572914": 5, "50682": 5, "836621": 5, "272943": 5, "792721": 5, "229": 5, "98081": 5, "471379": 5, "412": 5, "48046": 5, "658": 5, "457": 5, "637": [5, 13], "7453": 5, "768": 5, "077": 5, "7456": 5, "099": 5, "195": 5, "891": 5, "896": 5, "7764": 5, "593": 5, "604": 5, "7933": 5, "7934": 5, "8123": 5, "114678": 5, "647161": 5, "438686": 5, "118229": 5, "734534": 5, "9357": 5, "2873": 5, "243": [5, 6], "973": [5, 13], "61521": 5, "86878": 5, "7731": 5, "1237": 5, "956619": 5, "1468": 5, "7748": 5, "764": 5, "5528": 5, "8577": 5, "6765": 5, "194": 5, "5556": 5, "11376": 5, "0159": 5, "00303761": 5, "00254512": 5, "332091": 5, "703545": 5, "1586": 5, "342474": 5, "754": 5, "828": 5, "1812": 5, "036": 5, "66016": 5, "65976": 5, "420182": 5, "0755737": 5, "70235": 5, "0772781": 5, "362601": 5, "27829": 5, "0074": 5, "221832": 5, "7433": 5, "057": 5, "338": [5, 9], "899": 5, "293": [5, 16], "7927": 5, "174": 5, "7942": 5, "177": [5, 8], "478": 5, "8079": 5, "205": 5, "8268": 5, "1674": [5, 13], "0701913": 5, "836783": 5, "398419": 5, "681487": 5, "392487": 5, "0245": 5, "3559": 5, "653": 5, "957": 5, "46607": 5, "371458": 5, "8708": 5, "930943": 5, "7267": 5, "679": [5, 8], "703": 5, "601": 5, "3231": [5, 13], "1473": 5, "7324": 5, "12495": 5, "0182": 5, "00256681": 5, "00215604": 5, "249": 5, "738524": 5, "014832": 5, "2493": 5, "0931922": 5, "497294": 5, "542": 5, "259": 5, "475": 5, "595": 5, "1813": 5, "749": 5, "976": 5, "906": 5, "1838": 5, "664": 5, "033": 5, "941": [5, 8], "1099": 5, "989": 5, "1834": 5, "868": 5, "13267": 5, "19393": 5, "965167": 5, "024684": 5, "612281": 5, "280749": 5, "106545": 5, "669442": 5, "453932": 5, "952": 5, "6834": 5, "405068": 5, "739": 5, "4256": 5, "907": 5, "5366": 5, "959": 5, "737": 5, "673": 5, "7423": 5, "042": 5, "950": 5, "7427": 5, "202": 5, "7448": 5, "291": 5, "688": [5, 8], "570": 5, "005": 5, "7679": 5, "7691": 5, "944": 5, "7828": 5, "8013": 5, "035": 5, "1786": 5, "12741": 5, "970206": 5, "0192009": 5, "748832": 5, "618445": 5, "8683": 5, "2352": 5, "554": 5, "88581": 5, "520903": 5, "6764": 5, "2029": 5, "936762": 5, "182": 5, "366": 5, "774": [5, 12], "876": 5, "606": [5, 13], "414": 5, "757": [5, 8], "8805": 5, "11707": 5, "0166": 5, "00286793": 5, "00239838": 5, "090": 5, "985359": 5, "790941": 5, "0896": 5, "96963": 5, "3282": 5, "1923": 5, "181": 5, "797": 5, "57739": 5, "8140": 5, "645763": 5, "309361": 5, "0877243": 5, "351532": 5, "959422": 5, "659": 5, "02823": 5, "301483": 5, "280": 5, "674": [5, 16], "6181": 5, "698517": 5, "942": 5, "9927": [5, 12], "4807": 5, "58504": 5, "914": 5, "6905": 5, "4243": 5, "533": 5, "692": 5, "9264": 5, "798": 5, "854": 5, "271": 5, "761": 5, "097": 5, "7460": 5, "7472": 5, "806": 5, "7589": 5, "778": 5, "7595": 5, "856": [5, 13], "874": 5, "7689": 5, "981": 5, "7690": 5, "988": 5, "7863": 5, "059": 5, "9110": 5, "061": 5, "1514": 5, "1915": 5, "058": 5, "1920": 5, "784972": 5, "231704": 5, "950733": 5, "127442": 5, "999122": 5, "3758": 5, "8545": 5, "27767": 5, "84071": 5, "7969": 5, "952496": 5, "4957": 5, "26441": 5, "269": 5, "9351": 5, "243583": 5, "4666": 5, "11346": 5, "00300971": 5, "00247821": 5, "651": 5, "882017": 5, "700359": 5, "6514": 5, "40049": 5, "869544": 5, "1839": 5, "837": 5, "46220": 5, "787": 5, "82245": 5, "0531294": 5, "367268": 5, "912283": 5, "67023": 5, "0670735": 5, "315": 5, "815": 5, "421436": 5, "347405": 5, "7875": 5, "70005": 5, "6185": 5, "14212": 5, "481": 5, "84428": 5, "1847": 5, "4455": 5, "116": 5, "237": 5, "4540": 5, "765": 5, "777": 5, "6822": 5, "482": 5, "6831": 5, "7214": 5, "483": 5, "7219": 5, "7422": 5, "7449": 5, "893": 5, "534": 5, "216": 5, "053": 5, "7657": 5, "965": 5, "7781": 5, "7782": 5, "7962": 5, "040": 5, "8182": 5, "1695": 5, "3038": 5, "0714679": 5, "144141": 5, "608655": 5, "0385396": 5, "8372": 5, "2112": 5, "263": 5, "242151": 5, "219058": 5, "364": 5, "681": 5, "929": 5, "706483": 5, "2053": 5, "0641": 5, "353": 5, "4018": 5, "50537": 5, "7633": 5, "70054": 5, "524": 5, "60636": 5, "493975": 5, "450818": 5, "456519": 5, "938568": 5, "859977": 5, "671": 5, "40339": 5, "06987": 5, "5244": 5, "281309": 5, "4176": 5, "2834": 5, "2268": 5, "9537": 5, "7046": 5, "4755": 5, "228": 5, "295": 5, "7429": 5, "047": [5, 17], "661": 5, "529": 5, "084": 5, "986": [5, 8], "886": 5, "678": [5, 12], "7774": 5, "7789": 5, "7944": 5, "8141": 5, "027": 5, "498232": 5, "463455": 5, "752134": 5, "246625": 5, "139044": 5, "9423": 5, "2924": 5, "091": 5, "873639": 5, "531411": 5, "258": [5, 8], "872316": 5, "2224": 5, "2632": 5, "602": 5, "99203": 5, "1612": 5, "6094": 5, "8091": 5, "1825": 5, "67245": 5, "42052": 5, "938576": 5, "0316266": 5, "659526": 5, "104997": 5, "0823499": 5, "4867": 5, "51742": 5, "910817": 5, "3563": 5, "205353": 5, "4670": 5, "522": 5, "884": 5, "016": 5, "7438": 5, "7446": 5, "7452": 5, "805": 5, "7759": 5, "646": 5, "7928": 5, "8121": 5, "852712": 5, "248871": 5, "398927": 5, "135164": 5, "756795": 5, "9323": 5, "2846": 5, "809": [5, 6], "497": 5, "75508": 5, "817843": 5, "872": 5, "454013": 5, "1807": 5, "226": 5, "064": 5, "581": 5, "1816": 5, "648": 5, "1713": 5, "2081": 5, "2182": 5, "52058": 5, "1062": 5, "447918": 5, "0727584": 5, "93044": 5, "693944": 5, "896286": 5, "63153": 5, "39834": 5, "2216": 5, "743837": 5, "8917": 5, "0831": 5, "56865": 5, "4365": 5, "1314": 5, "5735": 5, "1753": 5, "3767": 5, "564": 5, "4192": 5, "865": 5, "7988": 5, "7997": 5, "7500": 5, "319": 5, "927": 5, "110": 5, "7530": 5, "7544": 5, "7644": 5, "611": [5, 13], "7650": 5, "7750": 5, "7907": 5, "8276": 5, "2156": 5, "068": 5, "608269": 5, "309461": 5, "901988": 5, "741346": 5, "691586": 5, "2063": 5, "9505": 5, "198": 5, "609": 5, "34537": 5, "503726": 5, "484": 5, "871": 5, "648549": 5, "37409": 5, "4013": 5, "828858": 5, "404962": 5, "512561": 5, "876382": 5, "718549": 5, "51478": 5, "852252": 5, "324": 5, "478807": 5, "130": 5, "311": 5, "821": 5, "890": 5, "7461": 5, "7960": 5, "186": [5, 13], "7975": 5, "736": [5, 8], "8104": 5, "8292": 5, "1784": 5, "1810": 5, "335642": 5, "191543": 5, "332777": 5, "97316": 5, "569581": 5, "0394": 5, "3674": 5, "076": 5, "57878": 5, "24165": 5, "624125": 5, "15907": 5, "802": 5, "9153": 5, "5619": 5, "675": 5, "504": 5, "850": 5, "1821": 5, "48336": 5, "16833": 5, "0910814": 5, "677623": 5, "874638": 5, "910419": 5, "847153": 5, "785": 5, "32282": 5, "962876": 5, "6179": 5, "18148": 5, "085": 5, "2816": 5, "596": [5, 13], "8523": 5, "8654": 5, "4797": 5, "954": 5, "464": 5, "855": 5, "962": 5, "214": 5, "644": [5, 13], "841": 5, "7803": 5, "7819": 5, "7973": 5, "7974": 5, "8163": 5, "1637": 5, "567303": 5, "507104": 5, "0563088": 5, "15884": 5, "9606": 5, "3065": 5, "248": [5, 8], "998023": 5, "09164": 5, "264": 5, "835": 5, "741448": 5, "1005": 5, "712": 5, "514": 5, "1035": 5, "8379": 5, "6797": 5, "1747": 5, "744": 5, "904": 5, "16837": 5, "471": 5, "20980": 5, "962482": 5, "401263": 5, "689781": 5, "991224": 5, "841718": 5, "28867": 5, "597": 5, "4714": 5, "43618": 5, "7823": 5, "1736": 5, "6604": 5, "6032": 5, "1715": 5, "4380": 5, "7425": 5, "662": 5, "381": 5, "931": 5, "7735": 5, "193": 5, "7883": 5, "8071": 5, "031": 5, "832981": 5, "367793": 5, "0528412": 5, "325965": 5, "929511": 5, "9038": 5, "2626": 5, "395": 5, "84029": 5, "355513": 5, "544": 5, "518851": 5, "0335": 5, "1485": 5, "273": 5, "2551": 5, "3959": 5, "01561": 5, "6745": 5, "926": 5, "64463": 5, "41238": 5, "0789786": 5, "697827": 5, "336295": 5, "0232618": 5, "981292": 5, "16564": 5, "26456": 5, "0013": 5, "476589": 5, "6379": 5, "2221": 5, "2802": 5, "70043": 5, "5904": 5, "567": 5, "4734": 5, "801": 5, "861": 5, "119": 5, "026": 5, "853": 5, "7751": 5, "138": 5, "740": 5, "7766": 5, "735": 5, "7919": 5, "8111": 5, "029": 5, "659743": 5, "318753": 5, "774969": 5, "492302": 5, "125968": 5, "9263": 5, "2801": 5, "227": 5, "791478": 5, "0153961": 5, "884461": 5, "2132": 5, "9779": 5, "7631": 5, "727196": 5, "3273": [5, 13], "019": 5, "2437": 5, "257": [5, 43], "54371": 5, "36403": 5, "82064": 5, "137502": 5, "935816": 5, "181795": 5, "297187": 5, "86728": 5, "689835": 5, "266485": 5, "960": 5, "7435": 5, "336": 5, "7457": 5, "759": 5, "494": 5, "7911": 5, "185": 5, "389": 5, "8067": 5, "8261": 5, "8435": 5, "1624": [5, 13], "209274": 5, "548864": 5, "783792": 5, "0770302": 5, "187694": 5, "0171": 5, "3502": 5, "17932": 5, "00832": 5, "230": 5, "915": [5, 8], "829668": 5, "38921": 5, "474": 5, "4369": 5, "251": [5, 8], "937": 5, "569": 5, "1819": 5, "1841": 5, "825": 5, "81562": 5, "32076": 5, "512617": 5, "817888": 5, "592309": 5, "885537": 5, "150681": 5, "946757": 5, "880528": 5, "795": [5, 32], "978": 5, "807361": 5, "289": 5, "13298": 5, "3771": 5, "3127": 5, "4218": 5, "4764": 5, "175": 5, "4387": 5, "811": 5, "807": 5, "6384": 5, "6388": 5, "631": [5, 8], "7292": 5, "7296": 5, "052": 5, "7635": 5, "511": 5, "7645": 5, "7765": 5, "7943": 5, "8339": 5, "1678": 5, "551072": 5, "608485": 5, "94464": 5, "243214": 5, "899464": 5, "8251": 5, "6515": 5, "539343": 5, "701": 5, "428699": 5, "8354": 5, "6212": 5, "0523": 5, "0208": 5, "8441": 5, "975": 5, "1811": 5, "562": 5, "1815": 5, "003": 5, "68746": 5, "19907": 5, "768655": 5, "0583837": 5, "429398": 5, "789859": 5, "720749": 5, "0295": 5, "5286": 5, "618382": 5, "205537": 5, "818": 5, "049": 5, "506": 5, "7882": 5, "7898": 5, "8044": 5, "8234": 5, "123048": 5, "307199": 5, "581558": 5, "0991059": 5, "0907537": 5, "0034": 5, "3396": 5, "570222": 5, "930282": 5, "209": 5, "670422": 5, "5221": 5, "57062": 5, "9036": 5, "9427": 5, "866": 5, "26051": 5, "82797": 5, "670413": 5, "0772021": 5, "151616": 5, "253705": 5, "893941": 5, "61679": 5, "515062": 5, "247": [5, 16], "5456": 5, "411151": 5, "616": [5, 13], "4304": 5, "5301": 5, "738": 5, "955": 5, "545": 5, "559": 5, "7677": 5, "566": [5, 19], "7825": 5, "7826": 5, "8010": 5, "1783": 5, "0283541": 5, "410828": 5, "567898": 5, "0335017": 5, "139732": 5, "8664": 5, "2338": 5, "197": 5, "677": 5, "877963": 5, "20265": 5, "4202": 5, "896196": 5, "3957": 5, "859": 5, "3025": 5, "5919": 5, "8605": 5, "8924": 5, "1088": 5, "5977": 5, "11506": 5, "0162": 5, "00296406": 5, "00247864": 5, "088": 5, "760064": 5, "126532": 5, "0877": 5, "795024": 5, "547002": 5, "490": 5, "947": 5, "832": 5, "974": 5, "75931": 5, "054": [5, 32], "19521": 5, "859753": 5, "23894": 5, "62549": 5, "77541": 5, "227249": 5, "42785": 5, "583346": 5, "0535": 5, "301129": 5, "262": 5, "892": 5, "629": [5, 13], "7440": 5, "7454": 5, "709": 5, "7827": 5, "7843": 5, "7996": 5, "8196": 5, "9902": 5, "0995": 5, "123635": 5, "335153": 5, "0259932": 5, "335847": 5, "105082": 5, "9743": 5, "3172": 5, "66025": 5, "33451": 5, "089": 5, "818294": 5, "689": 5, "6909": 5, "443": 5, "918543": 5, "4048": 5, "819": 5, "57538": 5, "46057": 5, "517454": 5, "325743": 5, "975864": 5, "00707417": 5, "739962": 5, "699": 5, "64932": 5, "40238": 5, "743": 5, "196177": 5, "963": [5, 8], "752": 5, "7920": 5, "7936": 5, "8074": 5, "8263": 5, "1670": 5, "973135": 5, "35487": 5, "431313": 5, "180453": 5, "831236": 5, "0214": 5, "3536": 5, "22281": 5, "693321": 5, "293512": 5, "605": 5, "2214": 5, "4507": 5, "6328": 5, "2618": 5, "1831": 5, "80402": 5, "565": 5, "79911": 5, "897612": 5, "696284": 5, "954848": 5, "0469097": 5, "915148": 5, "297": 5, "676": 5, "75005": 5, "13416": 5, "5652": 5, "448401": 5, "2057": 5, "9912": 5, "8493": 5, "2991": 5, "3757": 5, "5734": 5, "4321": 5, "6626": 5, "966": 5, "773": 5, "7384": 5, "902": 5, "558": 5, "530": 5, "7705": 5, "7718": 5, "7864": 5, "8050": 5, "263235": 5, "959492": 5, "915221": 5, "263079": 5, "72611": 5, "8912": 5, "2529": 5, "647": 5, "56228": 5, "493648": 5, "906299": 5, "8975": 5, "958": 5, "211": [5, 15], "746": 5, "0745": 5, "3243": 5, "686": 5, "2295": 5, "772": 5, "1781": 5, "64611": 5, "101955": 5, "189239": 5, "951597": 5, "398381": 5, "970505": 5, "917": 5, "09786": 5, "204663": 5, "9073": 5, "773166": 5, "6344": 5, "7315": 5, "62366": 5, "9105": 5, "2472": 5, "1575": 5, "079": [5, 6], "2914": 5, "4183": 5, "911": 5, "6749": 5, "6758": 5, "7536": 5, "638": [5, 13], "791": 5, "363": 5, "7564": 5, "7566": 5, "783": [5, 12], "7582": 5, "7678": 5, "7684": 5, "7790": 5, "065": 5, "985": 5, "071": 5, "2210": 5, "063": 5, "2261": 5, "12806": 5, "912327": 5, "690746": 5, "544482": 5, "155342": 5, "7717": 5, "6145": 5, "964": 5, "087": 5, "976041": 5, "0890815": 5, "951344": 5, "345": 5, "0907": 5, "463": 5, "3471": 5, "8972": 5, "12136": 5, "4981": 5, "812": 5, "5051": 5, "10782": 5, "015": 5, "00317508": 5, "00248439": 5, "600593": 5, "164714": 5, "1098": 5, "03493": 5, "202569": 5, "9339": 5, "938": 5, "1843": 5, "808": 5, "176": 5, "804": 5, "34175": 5, "953": 5, "78012": 5, "970783": 5, "761478": 5, "514087": 5, "706029": 5, "819715": 5, "15042": 5, "424712": 5, "656": 5, "528102": 5, "3719": 5, "2291": 5, "7184": 5, "0784": 5, "499": 5, "4357": 5, "378": 5, "1334": 5, "5324": 5, "5703": 5, "5712": 5, "775": [5, 19], "7354": 5, "7359": 5, "7419": 5, "7421": 5, "525": 5, "7620": 5, "883": 5, "7629": 5, "7741": 5, "7742": 5, "7918": 5, "8533": 5, "1610": 5, "179142": 5, "296544": 5, "237203": 5, "0156945": 5, "617224": 5, "8039": 5, "1854": 5, "87813": 5, "31958": 5, "585": 5, "464494": 5, "041": 5, "1633": 5, "68376": 5, "35051": 5, "566263": 5, "0474164": 5, "750149": 5, "0787729": 5, "537743": 5, "4162": 5, "37874": 5, "00182": 5, "306619": 5, "833": 5, "7462": 5, "814": 5, "7965": 5, "188": 5, "7980": 5, "191": 5, "782": 5, "8107": 5, "8108": 5, "8295": 5, "473762": 5, "894041": 5, "457987": 5, "738399": 5, "315223": 5, "0414": 5, "98061": 5, "497008": 5, "942854": 5, "7879": 5, "3589": 5, "8452": 5, "9595": 5, "1631": 5, "2305": 5, "39521": 5, "3419": 5, "32684": 5, "0533803": 5, "740494": 5, "317663": 5, "857699": 5, "38908": 5, "373282": 5, "1977": 5, "359784": 5, "326": 5, "4311": 5, "6474": 5, "750": [5, 6], "7380": 5, "056": [5, 17], "710": 5, "7709": 5, "7722": 5, "7868": 5, "8055": 5, "709965": 5, "260676": 5, "438861": 5, "0625403": 5, "328066": 5, "8941": 5, "2552": 5, "0613": 5, "06527": 5, "613167": 5, "36957": 5, "86334": 5, "215638": 5, "175004": 5, "932839": 5, "339587": 5, "829017": 5, "20887": 5, "326601": 5, "1104": 5, "38009": 5, "4438": 5, "6934": 5, "7322": 5, "700": [5, 19], "705": [5, 19], "830": [5, 19], "968": 5, "7720": 5, "7734": 5, "8076": 5, "124496": 5, "659469": 5, "0744186": 5, "706126": 5, "225135": 5, "9032": 5, "2622": [5, 13], "698": [5, 13], "41457": 5, "424924": 5, "9093": 5, "939378": 5, "3649": 5, "0868": 5, "634": [5, 13], "1108": 5, "5094": 5, "1392": 5, "7028": 5, "8881": 5, "12548": 5, "0184": 5, "00254115": 5, "0021272": 5, "826831": 5, "573703": 5, "60468": 5, "712414": 5, "517": 5, "817": [5, 12], "2157": 5, "1817": 5, "3008": 5, "1835": 5, "33719": 5, "81352": 5, "202196": 5, "453412": 5, "935069": 5, "374905": 5, "177551": 5, "987": 5, "11558": 5, "252877": 5, "1043": 5, "548589": 5, "4333": 5, "939": 5, "693": [5, 8], "970": 5, "526": 5, "7671": 5, "858": [5, 6], "7683": 5, "7817": 5, "8001": 5, "1775": 5, "912238": 5, "432729": 5, "998563": 5, "996798": 5, "823767": 5, "17588": 5, "45757": 5, "737411": 5, "573": 5, "5557": 5, "4102": 5, "3495": 5, "4945": 5, "2528": 5, "1808": 5, "2629": 5, "668": 5, "14764": 5, "77631": 5, "524755": 5, "166559": 5, "560118": 5, "228555": 5, "671001": 5, "21603": 5, "573874": 5, "469": 5, "418029": 5, "7967": 5, "7982": 5, "8109": 5, "8300": 5, "492707": 5, "583436": 5, "489077": 5, "445821": 5, "760389": 5, "0425": 5, "3698": 5, "77766": 5, "108571": 5, "426": 5, "615165": 5, "4788": 5, "8791": 5, "8271": 5, "88343": 5, "3264": 5, "1551": 5, "3154": 5, "062": 5, "1809": 5, "476": 5, "80954": 5, "62200": 5, "492484": 5, "298194": 5, "807403": 5, "382144": 5, "303533": 5, "90716": 5, "237951": 5, "847": 5, "539941": 5, "7439": 5, "822": 5, "7964": 5, "7979": 5, "8299": 5, "1792": 5, "623354": 5, "732953": 5, "639951": 5, "492818": 5, "729193": 5, "0411": 5, "3688": 5, "58166": 5, "0143651": 5, "828241": 5, "0791": 5, "755": 5, "7188": 5, "9851": 5, "5681": 5, "50652": 5, "4845": 5, "2371": 5, "4623": 5, "1827": 5, "61117": 5, "46822": 5, "585985": 5, "665969": 5, "751305": 5, "588396": 5, "216951": 5, "36314": 5, "177727": 5, "645286": 5, "095": 5, "094": [5, 8], "244": [5, 17], "799": 5, "7899": 5, "8095": 5, "030": 5, "888123": 5, "610285": 5, "315404": 5, "683467": 5, "789064": 5, "9139": 5, "075": 5, "682": [5, 8], "95783": 5, "375712": 5, "441158": 5, "532": 5, "1075": 5, "1449": [5, 13], "4509": 5, "6058": 5, "2878": 5, "33879": 5, "282623": 5, "472318": 5, "115722": 5, "685872": 5, "936532": 5, "278": 5, "88441": 5, "380887": 5, "36016": 5, "8992": 5, "3042": 5, "54027": 5, "7886": 5, "7958": 5, "8280": 5, "1729": 5, "433477": 5, "791274": 5, "413467": 5, "495924": 5, "706984": 5, "0319": 5, "3616": 5, "44211": 5, "0081514": 5, "916093": 5, "2021": [5, 6, 8, 13], "2927": 5, "766": 5, "0837": 5, "315903": 5, "8939": 5, "1858": 5, "5112": 5, "82486": 5, "619099": 5, "101038": 5, "840994": 5, "542419": 5, "00585495": 5, "0367878": 5, "0849409": 5, "0128": 5, "676215": 5, "518": 5, "477089": 5, "287": 5, "796": 5, "807331": 5, "6832": 5, "168972": 5, "6883": 5, "845": 5, "4961": 5, "594": 5, "8443": 5, "3034": 5, "4188": 5, "4197": 5, "086": 5, "7420": 5, "880": 5, "722": 5, "7598": 5, "7605": 5, "7706": 5, "7877": 5, "8935": 5, "1492": 5, "478253": 5, "42097": 5, "939376": 5, "196311": 5, "22518": 5, "7108": 5, "41485": 5, "652755": 5, "6161": 5, "469056": 5, "1833": 5, "25164": 5, "391798": 5, "388321": 5, "507443": 5, "208169": 5, "830541": 5, "21844": 5, "623232": 5, "402961": 5, "4501": 5, "428": 5, "779": 5, "7891": 5, "917439": 5, "479973": 5, "922199": 5, "806722": 5, "769195": 5, "9087": 5, "2664": 5, "092": 5, "660415": 5, "322": 5, "096": 5, "728237": 5, "313": 5, "867": 5, "977": 5, "36298": 5, "829": 5, "9189": 5, "308203": 5, "0621119": 5, "366259": 5, "740929": 5, "96161": 5, "04198": 5, "502775": 5, "8293": 5, "366392": 5, "8635": 5, "5612": 5, "3244": 5, "0719": 5, "51819": 5, "9214": 5, "946": 5, "7831": 5, "7848": 5, "8000": 5, "8195": 5, "9814": 5, "1082": 5, "171096": 5, "480045": 5, "808134": 5, "257278": 5, "205527": 5, "29136": 5, "50687": 5, "988755": 5, "8399": 5, "4108": 5, "4822": 5, "1796": 5, "2127": 5, "8961": 5, "8252": 5, "11239": 5, "0156": 5, "00311757": 5, "00261516": 5, "6429": 5, "208453": 5, "2008": 5, "30975": 5, "28984": 5, "2836": 5, "734": 5, "54307": 5, "77455": 5, "359881": 5, "325197": 5, "29816": 5, "208923": 5, "805733": 5, "06257": 5, "621375": 5, "0501": 5, "344772": 5, "4825": 5, "477": 5, "663": 5, "523": 5, "918": 5, "732": 5, "7773": [5, 19], "527": 5, "8138": 5, "953798": 5, "649327": 5, "456313": 5, "316118": 5, "249106": 5, "2921": 5, "56518": 5, "376604": 5, "8003": 5, "834303": 5, "2275": 5, "5593": 5, "2871": 5, "3978": 5, "8031": 5, "6562": 5, "11854": 5, "0169": 5, "00280816": 5, "00235329": 5, "559889": 5, "750806": 5, "71746": 5, "120066": 5, "8569": 5, "76134": 5, "0393944": 5, "347623": 5, "960734": 5, "465867": 5, "145296": 5, "555": [5, 8], "912919": 5, "0683196": 5, "623052": 5, "4379": 5, "0608": 5, "4622": 5, "5208": 5, "5217": 5, "7386": 5, "7390": 5, "912": 5, "578": 5, "983": 5, "7612": 5, "708": 5, "7728": 5, "7902": 5, "8694": 5, "1553": 5, "197729": 5, "670337": 5, "663976": 5, "124931": 5, "888613": 5, "1691": 5, "58332": 5, "84827": 5, "292641": 5, "7666": 5, "5738": 5, "9304": 5, "7626": 5, "39831": 5, "953738": 5, "256488": 5, "181244": 5, "00666382": 5, "226424": 5, "42266": 5, "40735": 5, "423": 5, "127957": 5, "590": 5, "7893": 5, "7909": 5, "8053": 5, "8250": 5, "8731": 5, "1527": 5, "00518983": 5, "196046": 5, "634261": 5, "332251": 5, "153852": 5, "0087": 5, "3438": 5, "628": [5, 13], "966681": 5, "342134": 5, "997751": 5, "3331": 5, "14112": 5, "7269": 5, "967": 5, "2075": 5, "11182": 5, "0155": 5, "00319483": 5, "00268237": 5, "202339": 5, "130725": 5, "2333": 5, "821367": 5, "637666": 5, "47419": 5, "56631": 5, "460081": 5, "633684": 5, "547729": 5, "321082": 5, "954624": 5, "99808": 5, "365949": 5, "4422": 5, "335428": 5, "6413": 5, "7413": 5, "8638": 5, "75921": 5, "9147": 5, "074": 5, "7844": 5, "7861": 5, "8012": 5, "8202": 5, "9557": 5, "1219": 5, "224923": 5, "249848": 5, "781046": 5, "0784722": 5, "326147": 5, "9842": 5, "3248": 5, "04924": 5, "00294": 5, "787368": 5, "83762": 5, "64359": 5, "776818": 5, "472105": 5, "63923": 5, "939757": 5, "21764": 5, "36747": 5, "07484": 5, "328512": 5, "7925": 5, "8065": 5, "8066": 5, "8254": 5, "8429": 5, "1618": 5, "942154": 5, "0122109": 5, "00984861": 5, "664546": 5, "183974": 5, "0164": 5, "3497": 5, "15594": 5, "335342": 5, "523561": 5, "1722": 5, "1571": 5, "44170": 5, "7319": 5, "174169": 5, "242309": 5, "841284": 5, "736112": 5, "693128": 5, "35505": 5, "491811": 5, "486": 5, "541792": 5, "704": 5, "684": [5, 8], "7990": 5, "8115": 5, "8303": 5, "675689": 5, "111583": 5, "429122": 5, "183048": 5, "0536749": 5, "0461": 5, "3726": [5, 13], "769": 5, "337249": 5, "686591": 5, "753": 5, "64265": 5, "9255": 5, "8585": 5, "924": 5, "92382": 5, "5775": 5, "20938": 5, "4872": 5, "697": 5, "64137": 5, "63818": 5, "295543": 5, "0290733": 5, "983229": 5, "514916": 5, "177444": 5, "11491": 5, "0298364": 5, "9046": 5, "315124": 5, "303": 5, "4454": 5, "538": 5, "933": 5, "823": 5, "838": [5, 6], "669": 5, "7745": 5, "7912": 5, "8101": 5, "752438": 5, "590877": 5, "920832": 5, "48926": 5, "135101": 5, "2767": 5, "767": 5, "848866": 5, "0214824": 5, "97797": 5, "10877": 5, "44558": 5, "1967": 5, "16265": 5, "5333": 5, "1663": 5, "1845": 5, "21824": 5, "15186": 5, "618705": 5, "0958704": 5, "380393": 5, "596161": 5, "941478": 5, "91548": 5, "193528": 5, "2961": 5, "584622": 5, "1204": [5, 19], "0187": 5, "617": [5, 13], "2044": 5, "51809": 5, "3017": 5, "4330": 5, "1178": 5, "5089": 5, "956": 5, "5532": 5, "7365": 5, "7370": 5, "561": 5, "7736": 5, "7737": 5, "7913": 5, "8573": 5, "1606": 5, "86323": 5, "0440989": 5, "389749": 5, "19366": 5, "310029": 5, "1804": 5, "2413": 5, "94797": 5, "659448": 5, "245223": 5, "1806": 5, "4076": 5, "36323": 5, "347169": 5, "666661": 5, "916207": 5, "695505": 5, "213396": 5, "34081": 5, "401728": 5, "611785": 5, "7757": 5, "7772": 5, "670": 5, "7926": 5, "725718": 5, "420316": 5, "312637": 5, "321643": 5, "755323": 5, "9309": 5, "2835": 5, "74583": 5, "364747": 5, "766094": 5, "919": 5, "916": 5, "2898": 5, "42362": 5, "18108": 5, "785539": 5, "0547419": 5, "829757": 5, "994118": 5, "162941": 5, "02379": 5, "41726": 5, "4865": 5, "824848": 5, "622494": 5, "9859": 5, "7282": 5, "8155": 5, "1379": 5, "1517": 5, "1521": 5, "4182": 5, "7761": 5, "745": 5, "7792": 5, "7795": 5, "7813": 5, "7901": 5, "8048": 5, "8200": 5, "9253": 5, "2514": 5, "2819": 5, "770532": 5, "458064": 5, "288353": 5, "635703": 5, "971941": 5, "9179": 5, "10689": 5, "274854": 5, "470": 5, "4959": 5, "465133": 5, "7085": 5, "6885": 5, "1498": 5, "6674": 5, "31408": 5, "6908": 5, "645": [5, 13, 19], "6747": 5, "65262": 5, "633148": 5, "26637": 5, "057949": 5, "676181": 5, "732983": 5, "614": [5, 13], "60547": 5, "360093": 5, "382472": 5, "7903": 5, "8047": 5, "8245": 5, "8813": 5, "1478": 5, "912289": 5, "389208": 5, "840796": 5, "834483": 5, "0055": 5, "3412": 5, "732818": 5, "791991": 5, "72764": 5, "44852": 5, "646273": 5, "2556": 5, "70429": 5, "245209": 5, "792744": 5, "98096": 5, "534699": 5, "9471": 5, "317921": 5, "7806": 5, "8151": 5, "502451": 5, "121263": 5, "690203": 5, "229591": 5, "829726": 5, "9524": 5, "3002": 5, "21333": 5, "57141": 5, "421365": 5, "789": 5, "1306": 5, "21043": 5, "79412": 5, "055188": 5, "239704": 5, "41862": 5, "0131145": 5, "261343": 5, "64207": 5, "34126": 5, "153329": 5, "7436": 5, "7916": 5, "8058": 5, "8247": 5, "8596": 5, "1567": 5, "392194": 5, "816958": 5, "606169": 5, "906059": 5, "754141": 5, "3461": 5, "350": [5, 13], "947774": 5, "865806": 5, "863": [5, 8], "3963": 5, "4752": 5, "6579": 5, "6215": 5, "2477": [5, 13], "72983": 5, "105704": 5, "115297": 5, "826771": 5, "681473": 5, "713946": 5, "48586": 5, "371427": 5, "305334": 5, "748": [5, 19], "8059": 5, "8060": 5, "8249": 5, "8598": 5, "1569": 5, "168558": 5, "82325": 5, "838423": 5, "947719": 5, "637754": 5, "3469": 5, "00712": 5, "10941": 5, "111023": 5, "5358": 5, "3448": 5, "877": 5, "79264": 5, "70052": 5, "421475": 5, "12974": 5, "216067": 5, "0727126": 5, "806431": 5, "06696": 5, "02473": 5, "129879": 5, "6489": 5, "551": [5, 6], "7210": 5, "575": 5, "044": 5, "9900": 5, "0993": 5, "645339": 5, "239197": 5, "451732": 5, "787102": 5, "172014": 5, "9749": 5, "3176": 5, "0808": 5, "611632": 5, "971686": 5, "9869": 5, "4773": 5, "6225": 5, "3368": 5, "9610": 5, "11802": 5, "0168": 5, "00283345": 5, "00237669": 5, "48749": 5, "764629": 5, "8043": 5, "0250231": 5, "55982": 5, "34018": 5, "216496": 5, "518397": 5, "821301": 5, "789188": 5, "814387": 5, "889": 5, "11695": 5, "616737": 5, "6182": 5, "492242": 5, "4588": 5, "7743": 5, "920": 5, "8105": 5, "453348": 5, "9148": 5, "661725": 5, "141361": 5, "743118": 5, "9203": 5, "2754": 5, "66915": 5, "799889": 5, "757025": 5, "2881": 5, "9057": 5, "7537": 5, "10522": 5, "659581": 5, "610184": 5, "685255": 5, "768339": 5, "230955": 5, "45114": 5, "566495": 5, "54949": 5, "7845": 5, "9561": 5, "1222": 5, "132057": 5, "274445": 5, "86794": 5, "353432": 5, "774954": 5, "9841": 5, "3247": 5, "696": 5, "86918": 5, "297506": 5, "622081": 5, "24098": 5, "22036": 5, "995687": 5, "502841": 5, "600258": 5, "531293": 5, "00730797": 5, "0459174": 5, "0626266": 5, "523485": 5, "659393": 5, "8678": 5, "146844": 5, "7659": 5, "488": 5, "7842": 5, "7858": 5, "8009": 5, "8199": 5, "9598": 5, "1173": 5, "184464": 5, "215504": 5, "314533": 5, "333032": 5, "235464": 5, "9825": 5, "3235": 5, "47946": 5, "340477": 5, "545743": 5, "72617": 5, "83843": 5, "482668": 5, "103789": 5, "125553": 5, "477535": 5, "786062": 5, "93898": 5, "0449442": 5, "256783": 5, "626": [5, 13], "7797": 5, "7968": 5, "8158": 5, "854649": 5, "895821": 5, "257437": 5, "92995": 5, "671551": 5, "9573": 5, "21948": 5, "03507": 5, "613": [5, 13], "230102": 5, "9127": 5, "4229": 5, "4251": 5, "4949": 5, "639": [5, 13, 19], "839": 5, "462": [5, 19], "1560": 5, "21927": 5, "69808": 5, "280723": 5, "418757": 5, "552711": 5, "793832": 5, "244645": 5, "53715": 5, "628169": 5, "414875": 5, "7871": 5, "7887": 5, "8034": 5, "8224": 5, "9098": 5, "1415": 5, "496312": 5, "075416": 5, "7607": 5, "125886": 5, "290684": 5, "9977": 5, "3352": 5, "2613": 5, "82642": 5, "845387": 5, "32631": 5, "1846": 5, "788": 5, "77624": 5, "77505": 5, "50973": 5, "0448877": 5, "0251003": 5, "655371": 5, "876084": 5, "5046": 5, "315973": 5, "59429": 5, "4433": 5, "0722": 5, "082": 5, "4759": 5, "948": 5, "5309": 5, "5317": 5, "7381": 5, "7385": 5, "008": 5, "7613": 5, "7622": 5, "7730": 5, "7905": 5, "8653": 5, "1599": 5, "435809": 5, "148721": 5, "45889": 5, "674645": 5, "910981": 5, "72386": 5, "356812": 5, "0878": 5, "187993": 5, "9603": 5, "5982": 5, "2406": 5, "02786": 5, "math": [6, 8, 13, 14, 15, 16, 17, 35, 38], "matplotlib": [6, 8, 14, 15, 17, 19, 25], "pyplot": [6, 8, 14, 15, 17, 19], "plt": [6, 8, 14, 15, 17, 19], "notebook_hrd": 6, "our": [6, 8, 13, 14, 15, 22, 32], "mathrm": [6, 8, 13, 14, 15], "univers": [6, 8, 22], "These": [6, 7, 13, 14, 15, 16, 20, 22, 25, 26], "rough": 6, "real": [6, 13, 16, 35], "finit": [6, 8, 13, 14, 15], "ago": 6, "cannot": [6, 9, 16, 29, 31, 34], "geq": 6, "_": [6, 8, 13, 14, 15, 22, 34], "odot": [6, 8, 19], "through": [6, 7, 11, 12, 13, 14, 15, 16, 25, 26, 35, 41], "studi": 6, "leq": 6, "bse_opt": [6, 8, 13, 14, 15, 16, 21, 38], "grid_opt": [6, 8, 12, 13, 14, 15, 16, 21, 26, 29, 30, 31, 35, 36, 37, 38], "custom_opt": [6, 12, 13, 14, 15, 16, 21, 31], "physic": [6, 13, 14, 15, 16, 22], "13700": [6, 8], "nine": 6, "distribution_funct": [6, 8, 13, 14, 15, 16, 21, 23, 24], "massrang": [6, 8, 13, 14, 15], "add_grid_vari": [6, 8, 13, 14, 15, 16, 35], "longnam": [6, 8, 13, 14, 15, 16, 35], "valuerang": [6, 8, 13, 14, 15, 16, 35], "samplerfunc": [6, 8, 13, 14, 15, 16, 22, 35, 38], "const": [6, 8, 13, 14, 15], "probdist": [6, 8, 13, 14, 15, 16, 35], "dprob": [6, 8, 14, 15], "dm1": [6, 14, 15], "care": [6, 13, 14, 15, 22], "dphasevol": [6, 8, 13, 14, 15, 16, 35], "dm_1": [6, 14, 15], "condit": [6, 8, 9, 13, 14, 15, 16, 18, 19, 35], "impos": [6, 8, 13, 14, 15, 16], "mostli": [6, 8, 13, 14, 15, 16, 19, 20, 22, 25, 34, 41], "yourself": [6, 8, 13, 14, 15, 16, 25], "gridtyp": [6, 8, 16, 35], "precod": [6, 8, 13, 14, 15, 16, 35], "postcod": [6, 8, 16, 35], "branchpoint": [6, 8, 16, 35], "branchcod": [6, 8, 16, 35], "topcod": [6, 8, 16, 35], "bottomcod": [6, 8, 16, 35], "grid_variable_numb": [6, 8, 35], "asymptot": 6, "made": [6, 23, 26, 40], "bit": [6, 13], "messi": 6, "avoid": [6, 7, 8], "track": [6, 22, 25], "custom_logging_stat": [6, 8, 13, 14, 15], "foreach_star": [6, 13], "outermost_core_mass": 6, "doubl": [6, 9, 16, 20], "logteff": 6, "teff_from_star_struct": 6, "logl": 6, "loggrav": 6, "tini": 6, "gravitational_const": 6, "m_sun": 6, "pow2": 6, "r_sun": 6, "starnum": [6, 13], "zero_ag": [6, 9, 12, 13, 14, 15, 16], "c_logging_cod": [6, 8, 9, 12, 13, 14, 15, 16, 22], "lt": [6, 7, 8, 12, 14, 16, 17, 18], "amp": [6, 8], "catch": [6, 8, 12, 13, 14, 15, 16, 19, 20, 22], "doesn": [6, 22], "associ": [6, 8, 13, 14, 15, 30, 37], "datalinedict": [6, 8, 13, 14, 15, 20], "parse_funct": [6, 8, 12, 13, 14, 15, 16, 21, 22, 41], "self": [6, 8, 12, 13, 14, 15, 16, 21, 22, 26, 29, 30, 31, 32, 35, 37, 38, 39], "zams_mass": [6, 13, 14, 15, 16], "loop": [6, 8, 12, 13, 14, 15, 16, 31, 35], "splitlin": [6, 7, 8, 9, 12, 13, 14, 15, 16, 17], "search": [6, 13, 17, 23], "nstar": [6, 13], "group": [6, 13, 17, 39], "linedata": [6, 8, 13, 14, 15], "setup": [6, 16, 23, 40, 41], "grid_result": [6, 8, 13, 14, 15, 22], "results_dictionari": [6, 8, 13, 14, 15], "0x14bf2250fdc0": 6, "configur": [6, 11, 12, 13, 14, 15, 16, 19, 22, 27, 32], "part": [6, 7, 12, 13, 14, 15, 16, 19, 21, 30, 32, 35, 37, 43], "straightforward": [6, 13, 14, 15, 16], "num_cor": [6, 8, 13, 14, 15, 16, 22], "lot": [6, 13, 14, 15, 16, 17, 22, 39, 41], "There": [6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19, 21, 22, 25, 32, 34], "ri0005": [6, 16], "surrei": [6, 16], "ac": [6, 16], "uk": [6, 16], "grid_options_descript": [6, 16, 34], "thread": [6, 8, 13, 14, 15, 20, 22, 33], "suffici": 6, "crunch": [6, 8, 13, 14, 15], "analyt": [6, 8, 13, 14, 15, 16, 21, 23, 24], "dry": [6, 8, 13, 15, 16, 22, 35], "starcount": [6, 8, 13, 15, 16], "binary_c_python": [6, 7, 8, 12, 13, 14, 15, 16, 20], "binary_c_grid_8a7d52edc59346ce991063d9e05e9ba7": 6, "py": [6, 8, 13, 14, 15, 16, 17, 22, 23, 29, 40], "dry_run": [6, 8, 13, 16], "symlink": [6, 8, 13, 16], "binary_c_grid": [6, 8, 13, 16], "latest0": [6, 8, 13], "mainprocess": [6, 8, 13], "system_queue_fil": [6, 8, 13], "processor": [6, 8, 13], "latest1": [6, 8, 13], "signal": [6, 8, 13, 22], "800": 6, "finish": [6, 8, 13, 15, 16, 20, 25, 31], "free": [6, 8, 13], "01t09": [6, 8, 13], "838411": 6, "802706": 6, "ran": [6, 8, 13, 22], "had": [6, 8, 13, 14, 15, 21], "queue": [6, 8, 13, 22, 26, 30], "output_dict": [6, 8, 12, 13], "8a7d52edc59346ce991063d9e05e9ba7": 6, "took": [6, 8, 13, 15, 16, 19], "mb": [6, 8, 13, 15, 16, 20, 22], "were": [6, 8, 13, 15, 16, 20, 39], "dict_kei": [6, 11, 12], "complet": [6, 8, 13, 14, 15, 16], "technic": [6, 8, 9, 13, 14, 15, 16], "population_nam": [6, 8, 13, 15], "evolution_typ": [6, 8, 13, 15, 16, 22], "failed_count": [6, 8, 13, 15, 16], "failed_prob": [6, 8, 13, 15, 16], "failed_systems_error_cod": [6, 8, 13, 15, 16], "errors_exceed": [6, 8, 13, 15, 16], "errors_found": [6, 8, 13, 15, 16], "total_prob": [6, 8, 13, 14, 15, 16], "total_count": [6, 8, 13, 15, 16], "start_timestamp": [6, 8, 13, 15, 16], "1635760192": 6, "8124797": 6, "end_timestamp": [6, 8, 13, 15, 16], "1635760194": 6, "0176575": 6, "total_mass_run": [6, 8, 13, 15, 16], "total_probability_weighted_mass_run": [6, 8, 13, 15, 16], "zero_prob_stars_skip": [6, 8, 13, 15, 16], "seaborn": [6, 8, 13, 14, 15, 17], "panda": [6, 8, 12, 13, 14, 15, 17, 18, 19, 20, 25], "pd": [6, 8, 12, 13, 14, 15, 17, 18, 19], "max_row": [6, 8, 17], "max_column": [6, 8, 17], "pad_output_distribut": [6, 8, 13, 14, 15, 20], "figur": [6, 8, 13, 14, 15, 17, 25], "figsiz": [6, 8, 13, 14, 15, 17, 19], "set_context": [6, 8, 13, 14, 15, 17], "font_scal": [6, 8, 13, 14, 15, 17], "linewidth": [6, 8, 13, 14, 15, 17], "datafram": [6, 8, 12, 13, 14, 15, 17, 18, 19, 25], "column": [6, 8, 12, 16, 17, 19, 25], "lineplot": [6, 8, 13, 14, 15, 17], "estim": [6, 17, 20, 22], "label": [6, 19, 32], "text": [6, 8, 17, 20, 34], "invert_xaxi": 6, "set_xlabel": [6, 8, 13, 14, 15, 17, 19], "log_": [6, 8, 13, 14, 15], "t_": 6, "eff": 6, "set_ylabel": [6, 8, 13, 14, 15, 17, 19], "distanc": [6, 17], "rerun": [6, 22], "At": [6, 16], "expect": [6, 7, 8, 13, 14, 15, 22, 23, 40], "begin": 6, "shortli": 6, "rsun": [6, 25], "alreadi": [6, 16, 17, 26, 31, 35], "Not": [6, 8], "binary_c_grid_f4e5925effeb42e69b5be956f400ae41": 6, "latest2": [6, 16], "latest3": 6, "093": [6, 17], "081024": 6, "246671": 6, "f4e5925effeb42e69b5be956f400ae41": 6, "suddenli": 6, "smooth": [6, 14, 15], "binary_c_grid_26171201413c43f5b91552a374879940": 6, "latest4": 6, "latest5": 6, "846045": 6, "416141": 6, "26171201413c43f5b91552a374879940": 6, "jerki": 6, "most": [6, 7, 8, 14, 15, 17, 20], "strong": 6, "rgb": 6, "tip": [6, 32], "proper": [6, 9, 34], "program": [6, 23, 40], "languag": 6, "sim": 6, "cours": [6, 25], "simpl": [6, 8, 13, 17], "introduct": 6, "haven": 6, "talk": 6, "produc": 6, "suffer": 6, "thermonuclear": 6, "luminosu": 6, "kilonova": 6, "interfac": [7, 17, 20, 23, 26, 40], "framework": 7, "sourcecod": [7, 9, 23, 40], "_binary_c_bind": [7, 9, 12, 17, 39, 43], "cell": [7, 13, 14, 15, 16], "free_persistent_data_memaddr_and_return_json_output": 7, "persistent_data": 7, "adress": [7, 9, 43], "persist": 7, "free_store_memaddr": 7, "memaddr": [7, 9], "return_arglin": 7, "return_help": 7, "info": [7, 11, 16, 20, 21, 23, 25, 39, 40], "return_help_al": [7, 20], "overview": 7, "categor": 7, "section": [7, 16, 20, 23, 32, 40], "return_maximum_mass_ratio_for_rlof": [7, 43], "argstr": [7, 9, 12, 17, 19], "store_capsul": 7, "unction": 7, "return_minimum_orbit_for_rlof": [7, 43], "return_persistent_data_memaddr": 7, "run_popul": 7, "return_store_memaddr": 7, "return_version_info": [7, 39], "abl": 7, "situat": 7, "slightli": 7, "custom_logging_func_memaddr": [7, 9, 22], "store_memaddr": [7, 43], "write_logfil": 7, "test_func": 7, "snippet": [7, 12], "reliabl": 7, "dont": [7, 19], "home": 7, "pyenv": [7, 23, 40], "binarycpython3": 7, "lib": [7, 12, 18, 19, 23, 40], "python3": [7, 23, 40], "site": 7, "cpython": 7, "x86_64": 7, "linux": 7, "gnu": 7, "categori": [7, 16], "creation": 7, "alloc": [7, 38], "written": [7, 12, 16, 22, 31, 34, 35, 41], "4500": 7, "0x7fc1f0c3ff00": 7, "single_star_lifetim": [7, 9, 12], "4838": [7, 9, 12], "unpars": 7, "join": [7, 9, 12, 16, 19, 22, 26], "abridg": [7, 9, 16], "algorithm": [7, 23], "__arg_begin": 7, "lastli": [7, 12], "00632092": 7, "0141": 7, "alter": [8, 13, 35], "intermedi": 8, "notebook_comenv": 8, "alpha_": 8, "demonstr": 8, "keep": [8, 16, 31, 33], "log_dt": [8, 22], "focu": 8, "imposs": 8, "logperrang": [8, 13], "lnm1": [8, 13, 14, 15, 16], "min": [8, 9, 13, 14, 15, 16, 32], "exp": [8, 13, 14, 15, 16, 35], "three_part_powerlaw": [8, 13, 14, 15, 16, 32], "dlnm1": [8, 13, 16], "flatsect": [8, 13, 16, 32], "height": [8, 13, 16, 32], "dq": [8, 13, 16], "log10per": [8, 13, 16], "calc_sep_from_period": [8, 13, 16, 43], "sep_min": [8, 13, 16], "sep_max": [8, 13, 16], "sana12": [8, 13, 16, 32], "dlog10per": [8, 13, 16], "centr": [8, 16, 35], "nsep": 8, "nsep_min": 8, "nsep_max": 8, "comenv_count": 8, "proport": 8, "previou": [8, 14, 15, 20, 22, 39], "year_length_in_dai": 8, "wast": [8, 14, 15], "evolution_stop": 8, "parse_data": 8, "bin_data": [8, 13, 14, 15, 20], "binwidth": [8, 13, 14, 15, 20], "pre_comenv_period": 8, "post_comenv_period": 8, "nearest": [8, 13, 14, 15], "5dex": [8, 13, 14, 15], "binned_pre_period": 8, "aritif": 8, "binned_post_period": 8, "histogram": 8, "0x149c95c56c10": 8, "machin": [8, 22, 23, 40], "binary_c_grid_2b66f805db424c48a1d29c45092b6e3c": 8, "0645906": 8, "9s": [8, 13], "tpr": [8, 13], "28e": 8, "etf": [8, 13], "mem": [8, 13], "1mb": [8, 13], "1s": [8, 13], "34e": 8, "5mb": [8, 13], "6e": [8, 13], "6mb": [8, 13], "8s": [8, 13], "95e": 8, "4mb": [8, 13], "9e": 8, "7s": 8, "22e": 8, "685": [8, 13], "3mb": [8, 13], "4s": [8, 13], "58e": 8, "02e": [8, 13], "9mb": [8, 13], "810": 8, "20e": [8, 13], "0mb": [8, 13], "3s": [8, 13], "48e": [8, 13], "76e": 8, "2mb": [8, 13], "6s": [8, 13], "97e": [8, 13], "168379": 8, "323359": 8, "2m": [8, 13], "0163656": 8, "155678": 8, "991657": 8, "0175264": 8, "158640": 8, "099417": 8, "0143896": 8, "163481": 8, "732244": 8, "016309": 8, "2b66f805db424c48a1d29c45092b6e3c": 8, "8m": [8, 13], "06459059967730083": 8, "1635760256": 8, "1239555": 8, "1635760377": 8, "9739752": 8, "4680": 8, "235689312423": 8, "22611318083528548": 8, "unmerg": 8, "deepcopi": 8, "logper": [8, 32], "del": 8, "pad": [8, 13, 14, 15], "plot_data": [8, 13, 14, 15], "from_dict": [8, 13, 14, 15, 18, 19], "orient": 8, "p_": 8, "orb": [8, 16, 31], "xlim": [8, 17], "necessari": [8, 16, 17, 19, 20, 21, 37], "03502960360000004": 8, "019715467199999996": 8, "peak": [8, 14, 15, 38], "sim10": 8, "minut": [8, 20], "Such": 8, "prime": 8, "candid": 8, "excit": 8, "astrophys": [8, 14, 15], "life": 8, "compact": [8, 16], "lambda_": 8, "smoother": [8, 14, 15], "curv": [8, 14, 15], "why": 8, "learn": [9, 22], "custom_logging_funct": [9, 12, 16, 18, 19, 22, 23, 24], "edit": 9, "log_every_timestep": [9, 12], "evolve_singl": [9, 12, 21], "publicli": 9, "elabor": 9, "advis": 9, "hardcod": [9, 13, 14, 15, 16], "your": [9, 12, 18, 19, 22, 23, 40], "obvious": 9, "logging_lin": [9, 18, 19], "own": [9, 12, 16, 18, 19, 22, 23, 35, 40], "entir": [9, 12, 18, 19], "pragma": 9, "push_macro": 9, "undef": 9, "visibl": 9, "__attribute__": 9, "void": 9, "binary_c_api_funct": 9, "custom_output_funct": 9, "stardata_t": 9, "pop_macro": 9, "notebook_individual_system": [9, 12, 13, 14, 15, 16], "2e": [9, 13, 19], "example_logging_string_post_m": 9, "example_post_m": 9, "044142002936e": 9, "99194": 9, "13567": 9, "044572277695e": 9, "99192": 9, "51803": 9, "044654032097e": 9, "81395": 9, "045084306856e": 9, "99191": 9, "57443": 9, "manual": [9, 22, 23, 40], "custom_logging_memaddr": 9, "shared_lib_filenam": 9, "4530": [9, 12, 19], "example_logging_string_co": 9, "848380621869e": 9, "33469": 9, "1865": 9, "72498e": [9, 16], "example_massloss": [9, 12], "sn_type": 9, "sn_none": 9, "example_sn": 9, "id_cor": 9, "core_co": 9, "core_h": 9, "050651207308e": 9, "59452": 9, "34213": 9, "55458": 9, "71662": 9, "cover": [11, 13, 14, 15], "get_help": [11, 20], "get_help_al": [11, 20, 21], "get_help_sup": [11, 20], "get_default": [11, 20], "sever": [11, 16, 19, 22, 25, 34, 41], "print_help": [11, 20], "parameter_value_input_typ": [11, 20], "fetch": [11, 12], "return_binary_c_version_info": [11, 21, 39], "version_info": [11, 21, 23, 24], "argpair": [11, 39], "ensemble_filt": 11, "dt_limit": 11, "nucleosynthesis_sourc": [11, 39], "miscellan": [11, 39], "conjunct": 11, "analyz": 12, "quickli": 12, "simplest": 12, "notebook_custom_log": [12, 13, 14, 15, 16], "path": [12, 16, 19, 20, 22, 23, 26, 29, 30, 31, 34, 37, 40], "logfil": [12, 20, 23, 40], "uncom": [12, 13, 14, 15, 16, 17], "docstr": [12, 23, 25, 40], "12461": 12, "test_logfil": 12, "txt": [12, 16, 19, 23, 31, 40, 41], "22065": 12, "11003": 12, "1302": 12, "11582": 12, "2424": 12, "12325": 12, "1085": 12, "12457": 12, "1301": 12, "12460": 12, "8955": 12, "shrinkagb": 12, "1490": 12, "custom_log": [12, 19, 21, 22], "custom_logging_print_stat": 12, "000000000000e": 12, "column_nam": 12, "initial_mass": [12, 19], "value_lin": 12, "chose": 12, "startswith": 12, "split_lin": 12, "el": [12, 16], "numpi": [12, 16, 18, 19, 20, 35, 38], "arrai": [12, 16, 19, 20, 22, 32, 35, 38], "my": 12, "favorit": 12, "queri": [12, 26], "example_df": 12, "iloc": [12, 19], "drop": 12, "000001": 12, "000002": 12, "000003": 12, "1250": 12, "061259": 12, "718593": 12, "1251": 12, "149038": 12, "678026": 12, "1252": 12, "13461": 12, "1253": 12, "14461": 12, "row": [12, 19, 25], "notebook_popul": [12, 16], "everyth": [12, 16, 21, 22], "accordingli": [12, 14, 15, 16], "example_pop": [12, 16], "stuff": [12, 16, 22], "libcustom_logging_34a350b8f15c4d149deab88632948c99": 12, "np": [12, 18, 19, 38], "object_parse_funct": 12, "output_fil": [12, 20, 31, 34], "output_dir": [12, 16, 31], "example_output": 12, "values_arrai": 12, "fill": [12, 20], "anywai": [12, 16, 32, 35], "written_data": 12, "0x7f35b603e9d0": 12, "previous": [12, 16, 26], "libcustom_logging_446fe4cddfa94946bcafd55591ef3730": 12, "under": [12, 38], "hood": 12, "fewer": 12, "failsaf": 12, "notebook_api_funct": 12, "But": 12, "caught": [12, 20, 39], "correctli": [12, 19, 23, 40], "notebook_luminosity_funct": 13, "ipynb": [13, 14, 15, 16], "conceptu": 13, "public": [13, 14, 15, 16, 23], "purpos": [13, 14, 15, 16, 22, 25], "synthesi": [13, 14, 15, 16, 22, 23, 40], "side": [13, 14, 15, 16], "binarygrid": [13, 14, 15, 16], "predefin": [13, 14, 15, 16, 32], "assign": [13, 14, 15, 16, 35], "chosen": [13, 14, 15, 16, 35], "trio": [13, 14, 15, 16], "throughout": [13, 14, 15, 16, 35], "theoret": [13, 14, 15], "integr": [13, 14, 15, 32, 38], "densiti": [13, 14, 15, 32], "later": [13, 14, 15, 22], "accur": [13, 14, 15], "next": [13, 14, 15, 16, 20], "_1": [13, 14, 15], "cubic": 13, "cube": 13, "nre": [13, 38], "document": [13, 14, 15, 16, 22, 24, 31, 34], "recompil": [13, 14, 15, 16, 23, 40], "somewhat": [13, 14, 15, 16, 17], "perfectli": [13, 14, 15], "strictli": [13, 14, 15], "zero_age_main_sequence_starn": 13, "unresolv": 13, "model_numb": [13, 14, 15], "equival": [13, 22, 26], "capit": [13, 14, 15], "zero_age_main_sequence_star": [13, 14, 15], "1dex": [13, 14, 15], "binned_log_luminos": [13, 14, 15], "binary_c_grid_25014bc73b334765a1c09a4e4a97ed66": 13, "648566": 13, "690": 13, "1354": 13, "1355": 13, "11e": 13, "7e": 13, "1494": 13, "3m": 13, "7mb": 13, "1539": 13, "0m": 13, "1585": 13, "4m": 13, "36e": 13, "607": 13, "5m": 13, "56e": 13, "7m": 13, "79e": 13, "1703": 13, "83e": 13, "1749": 13, "9m": 13, "1780": 13, "14e": 13, "32e": 13, "44e": 13, "1879": 13, "52e": 13, "8mb": 13, "1910": 13, "1m": 13, "67e": 13, "1947": 13, "78e": 13, "5e": 13, "1968": 13, "82e": 13, "98e": 13, "15e": 13, "2048": 13, "24e": 13, "2071": 13, "31e": 13, "2091": 13, "42e": 13, "620": 13, "2122": 13, "55e": 13, "2143": 13, "59e": [13, 16], "623": 13, "2164": 13, "70e": 13, "2183": 13, "80e": 13, "2206": 13, "91e": 13, "2232": 13, "99e": 13, "2245": 13, "06e": 13, "2258": 13, "21e": 13, "2269": 13, "6m": 13, "2282": 13, "51e": 13, "2300": 13, "63e": 13, "2329": 13, "72e": 13, "2348": 13, "73e": 13, "2365": [13, 19], "81e": 13, "2383": 13, "90e": 13, "2400": 13, "2423": 13, "07e": 13, "2438": 13, "10e": 13, "2454": 13, "2466": 13, "29e": 13, "40e": 13, "2492": 13, "630": 13, "2516": 13, "2537": 13, "61e": 13, "2554": 13, "65e": 13, "2570": 13, "71e": 13, "2590": 13, "2636": 13, "2652": 13, "87e": 13, "2666": 13, "37e": 13, "75e": 13, "2746": 13, "2757": 13, "04e": 13, "2775": 13, "2795": 13, "2831": 13, "636": 13, "2845": 13, "2861": 13, "92e": 13, "2875": 13, "01e": 13, "2891": 13, "03e": 13, "2930": 13, "05e": 13, "2947": 13, "2965": 13, "2982": 13, "515": 13, "3010": 13, "3035": 13, "3059": 13, "3078": 13, "08e": 13, "3124": 13, "3148": 13, "3174": 13, "3197": 13, "3256": 13, "3294": 13, "641": 13, "3321": 13, "3348": 13, "3373": 13, "3394": 13, "642": 13, "3422": 13, "00e": 13, "3445": 13, "93e": 13, "3464": 13, "3483": 13, "96e": 13, "3509": 13, "3533": 13, "3550": 13, "3568": 13, "3588": 13, "64e": 13, "643": 13, "3622": 13, "68e": 13, "313623": 13, "3640": 13, "3657": 13, "50e": 13, "3676": 13, "53e": 13, "3706": 13, "66e": 13, "3746": 13, "3763": 13, "3786": 13, "49e": 13, "3811": 13, "5s": 13, "3832": 13, "3849": 13, "3875": 13, "3905": 13, "2s": 13, "3930": [13, 19], "41e": 13, "3931": [13, 19], "3954": 13, "19e": 13, "3977": 13, "690194": 13, "01t10": 13, "176751": 13, "1001": 13, "160675": 13, "706780": 13, "345842": 13, "155662": 13, "684890": 13, "433207": 13, "1025": 13, "162454": 13, "694517": 13, "453059": 13, "169775": 13, "456": 13, "25014bc73b334765a1c09a4e4a97ed66": 13, "38m": 13, "6485656144116352": 13, "1635760613": 13, "6602514": 13, "1635761189": 13, "652638": 13, "82563": 13, "09295167374": 13, "6438124832773024": 13, "titl": [13, 34], "l_": [13, 14, 15], "yscale": [13, 14, 15, 17], "weirdli": 13, "cost": [13, 14, 15], "observ": [13, 14, 15], "sequnec": [13, 14, 15], "notebook_luminos": [14, 15], "probtot": [14, 15], "mmax": [14, 15, 32, 38], "mmin": [14, 15, 22, 32, 38], "typeerror": 14, "traceback": [14, 17], "recent": [14, 17], "ipykernel_519112": 14, "518757914": 14, "got": [14, 15], "unexpect": 14, "keyword": [14, 25, 41], "ldist": [14, 15], "implic": [14, 15], "clearli": [14, 15], "realist": [14, 15], "went": [14, 15], "wrong": [14, 15, 23, 40], "unlik": [14, 15], "realiti": [14, 15], "law": [14, 15, 32], "kroupa": [14, 15, 32], "2001": [14, 15, 32], "update_grid_vari": [14, 15, 35], "spiki": [14, 15], "notic": [14, 15], "poor": [14, 15], "compens": [14, 15], "intens": [14, 15], "resourc": [14, 15, 26], "smarter": [14, 15], "linearli": [14, 15, 38], "renam": [14, 15, 35], "clear": [14, 15, 39], "logarithm": [14, 15, 32, 38], "old": [14, 15, 22, 35], "lnm_1": [14, 15, 16, 35], "rename_grid_vari": [14, 15, 35], "dlnm": [14, 15], "dlnm_1": [14, 15, 16, 35], "_grid_vari": [14, 15, 22, 35], "perfect": [14, 15], "wiggl": [14, 15], "artefact": [14, 15], "monoton": [14, 15], "brighten": [14, 15], "narrow": [14, 15], "co2": [14, 15], "bar": [14, 15], "isn": [14, 15, 20], "challeng": [14, 15], "notebook_luminosity_function_binari": [14, 15], "b6213f2eb7f94d3196cf966b7b76b9f9": 15, "472": [15, 19], "9999999999999998": 15, "1635760806": 15, "5066257": 15, "1635760813": 15, "4966016": 15, "3999999999996": 15, "03499999999999": 15, "218222": 15, "4b8c7f4a86e445099d73f27dffaad94b": 15, "995631": 15, "7a2e4301f5224b2cb8939d2297df0aad": 15, "621": 15, "recogn": 16, "__": 16, "45000000080": 16, "data_dir": [16, 20, 21, 22, 31], "example_python_population_result": 16, "base_filenam": [16, 21], "idea": [16, 25], "export_all_info": [16, 21], "include_popul": 16, "binary_c_default": 16, "commandlin": 16, "accept": [16, 20, 27], "include_binary_c_default": [16, 21], "include_binary_c_version_info": [16, 21], "include_binary_c_help_al": [16, 21], "fase": 16, "overriden": 16, "use_datadir": [16, 21], "outfil": [16, 21], "ok": [16, 26, 31], "example_pop_set": 16, "gz": [16, 31], "ret": 16, "easier": [16, 19, 20, 21], "discret": 16, "unweight": 16, "notabl": 16, "moe": [16, 23, 26, 27, 32], "di": [16, 23, 27, 32], "stefano": [16, 23, 27, 32], "dataset": [16, 22, 26, 27], "further": 16, "down": 16, "population_extens": [16, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39], "gridcod": [16, 21, 23, 24], "dry_parallel": [16, 35], "deeper": [16, 35], "evalu": [16, 32, 35, 38, 43], "bewar": [16, 31, 35], "insert": [16, 35], "destruct": [16, 35], "piec": [16, 19, 35], "risk": [16, 35], "rest": [16, 32, 35], "correspond": [16, 25, 30, 35, 37], "m_min": [16, 35], "m_max": [16, 32, 35], "const_linear": [16, 35, 38], "room": [16, 35], "kroupa2001": [16, 32, 35], "met": [16, 21, 26, 35], "continu": [16, 30, 35, 37], "stepsiz": [16, 35], "parallel": [16, 35], "block": [16, 35], "comment": [16, 26, 30, 37], "test_pop": 16, "Or": [16, 19], "example_compact_object": 16, "makedir": [16, 20], "exist_ok": [16, 20], "seper": 16, "outfilenam": 16, "headerlin": 16, "isnt": 16, "valueerror": 16, "0x7f2b6ca163a0": 16, "grid_vari": [16, 22], "0443872": 16, "598268106227e": 16, "30592": 16, "75988": 16, "00193614": 16, "436983545111e": 16, "35842": 16, "9948": 16, "00144093": 16, "690157944401e": 16, "43124": 16, "7998": 16, "00107238": 16, "242397939068e": 16, "52416": 16, "3205": 16, "000798096": 16, "756794139032e": 16, "66914": 16, "7394": 16, "000593966": 16, "401414766976e": 16, "73729": 16, "2857": 16, "000442046": 16, "536373523810e": 16, "80677": 16, "000328983": 16, "393982410080e": 16, "82164": 16, "9844": 16, "000244839": 16, "396470605248e": 16, "82129": 16, "9508": 16, "000182216": 16, "subprocess": 16, "399005684057e": 16, "82041": 16, "7151": 16, "00013561": 16, "443375325717e": 16, "81645": 16, "9909": 16, "000100925": 16, "451195752942e": 16, "81559": 16, "51114e": 16, "452661646076e": 16, "81543": 16, "ce756bb317f64099a459bf8b55a746ac": 16, "metadata": [16, 21, 23, 24, 35], "population_id": [16, 22], "044387171445641534": 16, "1646563001": 16, "7193637": 16, "1646563002": 16, "4480088": 16, "time_elaps": [16, 28], "7286450862884521": 16, "649": 16, "905447944397": 16, "28133908148630704": 16, "write_binary_c_calls_to_fil": [16, 31], "dataio": [16, 21, 23, 24], "output_filenam": [16, 31], "include_default": [16, 31], "system_gener": [16, 31], "wouldn": [16, 31], "basic": [16, 31], "datadir": [16, 31], "binary_c_cal": [16, 31], "calls_filenam": 16, "binary_c_grid_ce756bb317f64099a459bf8b55a746ac": 16, "2406484012210224": 16, "22723621650191106": 16, "011394572976608001": 16, "812296769855663": 16, "22723621650191117": 16, "008480166685456411": 16, "5297876799548944": 16, "006311182276049824": 16, "430329401616038": 16, "004696962123378559": 16, "thats": 16, "evolve_popul": 16, "isfil": 16, "0fa4c2b8707741a5ab41d209ef95a3a4": 16, "regist": 16, "expand": 16, "intend": 16, "mass_1": [16, 19, 25], "zams_mass_1": 16, "mass_2": [16, 19, 25], "zams_mass_2": 16, "prev_stellar_type_1": 16, "prev_stellar_type_2": 16, "example_dco": 16, "logger": 16, "safe": [16, 31], "0211592": 16, "0eb5c0c9abd34607a6ee060b26a7e32f": 16, "378266748188e": 16, "66293": 16, "9713": 16, "78767": 16, "8178": 16, "000339963": 16, "817608462595e": 16, "82104": 16, "41436": 16, "000193036": 16, "422997711686e": 16, "82479": 16, "82171": 16, "2535": 16, "205711924468e": 16, "73765": 16, "notebook_solar_system": 17, "mercuri": 17, "1mmercuri": 17, "orbital_separ": 17, "1amercuri": 17, "star1": 17, "orbital_eccentr": 17, "venu": 17, "1mvenu": 17, "1avenu": 17, "earth": 17, "1mearth": 17, "1aearth": 17, "mar": 17, "1mmar": 17, "1amar": 17, "jupit": 17, "1mjupit": 17, "1ajupit": 17, "saturn": 17, "1msaturn": 17, "1asaturn": 17, "uranu": 17, "1muranu": 17, "1auranu": 17, "neptun": 17, "1mneptun": 17, "1aneptun": 17, "pluto": 17, "1mpluto": 17, "1apluto": 17, "2444": 17, "planet": 17, "central": 17, "cs1": 17, "superflu": 17, "fourth": 17, "nameerror": 17, "ipykernel_216542": 17, "1241251901": 17, "dtype": [17, 18, 19], "argh": 17, "sun": 17, "df": [17, 18, 19, 25], "ci": 17, "legend": [17, 19], "xx": 17, "head": 17, "loc": 17, "yy": 17, "au": 17, "swallow": 17, "although": 17, "mess": 17, "push": 17, "beyond": 17, "explor": 17, "vs": [17, 25], "ylim": 17, "toasti": 17, "distant": 17, "futur": 17, "example_parse_output": [18, 20], "100000000000": [18, 19], "float64": [18, 19], "logi": 18, "axessubplot": 18, "xlabel": 18, "server": 19, "nov": 19, "binary_c_python_api": 19, "nbinary_c": 19, "example_header_1": 19, "st1": 19, "st2": 19, "3540": 19, "example_header_2": 19, "initial_grid": 19, "tempfil": 19, "gettempdir": 19, "test_log": 19, "7106": 19, "786e": 19, "7509": 19, "8427e": 19, "8435e": 19, "1380": 19, "9373e": 19, "0900": 19, "2934e": 19, "726": 19, "3081e": 19, "2118": 19, "3702e": 19, "2646": 19, "34421": 19, "d48r": 19, "0570946": 19, "458272": 19, "13108": 19, "562029": 19, "924056": 19, "89211": 19, "78817": 19, "113492": 19, "80602": 19, "124379": 19, "7087": 19, "7695": 19, "608402": 19, "696003": 19, "796455": 19, "0834973": 19, "85661": 19, "3914": 19, "524629": 19, "634667": 19, "func_memaddr": 19, "run_binary_custom_log": 19, "3e": 19, "serv": [19, 20], "parse_output": 19, "behind": 19, "scene": 19, "background": 19, "inlin": 19, "mind": 19, "result_example_header_1": 19, "selected_head": [19, 20], "result_example_header_2": 19, "cast": [19, 20], "df2": 19, "81762e": 19, "000000e": 19, "00000": 19, "817620e": 19, "3927": 19, "102750e": 19, "33817": 19, "62124": 19, "896110e": 19, "202750e": 19, "3929": 19, "302750e": 19, "402750e": 19, "500000e": 19, "3932": 19, "doesnt": [19, 34], "autogener": 19, "result_example_head": 19, "000000": 19, "3630": 19, "131680e": 19, "627748": 19, "3631": 19, "231680e": 19, "3632": 19, "331680e": 19, "3633": 19, "431680e": 19, "3634": 19, "3635": 19, "run_and_calc_mass": 19, "kwarg": [19, 21, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 41], "2f": 19, "last_st": 19, "last_stellar_type_change_time_1": 19, "slice": 19, "sliced_df": 19, "cut": 19, "late": 19, "final_mass": 19, "initial_tim": 19, "final_tim": 19, "mass_lost": 19, "wrt": 19, "metallicity_002": 19, "metallicity_001": 19, "metallicity_0002": 19, "mass_rang": 19, "arang": 19, "fractions_z002": 19, "fractions_z001": 19, "fractions_z0002": 19, "214274644851685": 19, "ax": 19, "subplot": 19, "nrow": 19, "ncol": 19, "m_": 19, "fontsiz": 19, "set_titl": 19, "set_yscal": 19, "save_loop": 19, "mass_loss_m": 19, "png": 19, "ep": 19, "bbox_inch": 19, "tight": 19, "verbose_print": [20, 33], "iter": 20, "context": 20, "manag": [20, 23, 40], "__enter__": 20, "stdout": [20, 22, 38], "__exit__": 20, "releas": [20, 23, 40], "call_binary_c_config": 20, "catchtim": 20, "spent": 20, "clock": 20, "exc_typ": 20, "exc_val": 20, "exc_tb": 20, "measur": 20, "check_if_in_shel": 20, "command_string_from_list": 20, "quot": 20, "conv_time_unit": 20, "hour": 20, "magnitud": 20, "convert_byt": 20, "size": [20, 22, 29], "convfloat": 20, "scalar": 20, "create_arg_str": 20, "filter_valu": 20, "create_hdf5": 20, "hdf5": 20, "hdf5file": 20, "conveni": 20, "example_head": 20, "defaultdict": 20, "rethink": 20, "filter_arg_dict": 20, "format_numb": 20, "scientif": 20, "notat": 20, "trail": [20, 38], "get_ansi_colour": 20, "color": [20, 25], "get_arg_kei": 20, "sinc": [20, 25, 32], "param_nam": 20, "fail_sil": 20, "did": [20, 23, 40], "compon": [20, 25], "categoris": 20, "silent": 20, "get_siz": 20, "seen": 20, "github": [20, 31], "bosswissam": 20, "pysiz": 20, "get_usernam": 20, "usernam": 20, "spawn": 20, "is_capsul": 20, "tell": [20, 26], "isfloat": 20, "isint": 20, "load_logfil": 20, "make_build_text": 20, "mem_us": 20, "now_object": 20, "nospac": 20, "date": [20, 21, 22], "d_": 20, "output_lin": 20, "receiv": 20, "dist": 20, "quotewrap": 20, "remove_fil": 20, "child_dir": 20, "child": 20, "full_path": 20, "timedelta": 20, "delta": [20, 38], "human": 20, "readabl": 20, "trem": 20, "dn": [20, 32], "differenti": 20, "progress": 20, "messag": [20, 21], "minimal_verbos": 20, "newlin": [20, 22, 31, 33], "charact": [20, 22, 31], "x0d": [20, 22], "carriag": [20, 22], "write_binary_c_parameter_descriptions_to_rst_fil": 20, "rst": [20, 34], "restructuredtext": 20, "save_snapshot": [21, 22, 31], "distinct": 21, "init": 21, "initial_abundance_hash": 21, "isotope_hash": 21, "isotope_list": 21, "nuclear_mass_hash": 21, "nuclear_mass_list": 21, "source_list": 21, "ensemble_list": 21, "spread": 21, "privat": [21, 23], "nice": [21, 25], "unload": 21, "custom_logging_info": 21, "grid_cod": 21, "mixin": 21, "portal": 21, "decor": 21, "staticmethod": 21, "classmethod": 21, "realpython": 21, "static": 21, "demystifi": 21, "cach": [21, 22, 23, 24, 28, 34, 38], "grid_log": [21, 23, 24], "grid_options_default": [21, 23, 24, 29], "hpc": [21, 22, 23, 24, 30, 37], "moe_di_stefano_2017": [21, 23, 24], "spacing_funct": [21, 23, 24], "reus": 21, "_pre_run_setup": 21, "relev": 21, "clean_up_custom_logging_fil": 21, "stacktrac": 21, "sy": 21, "include_population_set": 21, "all_info": 21, "flaw": 21, "rewrit": 21, "pl": 21, "population_set": 21, "return_population_set": 21, "_set": 21, "simulation_": 21, "jobid": [21, 22, 37], "job": [21, 22, 26, 30, 37], "id": [21, 22, 26, 30, 31, 32, 33, 37], "pid": 21, "hpc_jobid": [21, 26], "parse_cmdlin": 21, "return_all_info": 21, "return_binary_c_default": 21, "was_kil": 21, "meant": 22, "c_auto_log": 22, "headlin": 22, "hpc_force_join": 22, "slurm": [22, 23, 24, 26], "condor": [22, 23, 24, 26], "hpc_rebuild_joinlist": [22, 26], "joinlist": [22, 26], "moe2017_opt": 22, "cache_dir": [22, 38], "combine_ensemble_with_thread_join": 22, "ensemble_output_": 22, "thread_id": 22, "command_lin": 22, "htcondor": 22, "launch": [22, 30, 37], "condor_clusterid": [22, 30], "clusterid": [22, 30], "condor_process": [22, 30], "jobarrayindex": [22, 37], "condor_bash": 22, "bash": 22, "submit": [22, 23], "node": 22, "condor_batchnam": 22, "batchnam": 22, "appear": 22, "condor_q": 22, "condor_d": 22, "usr": 22, "condor_dir": [22, 26, 30, 37], "nf": [22, 31], "condor_env": 22, "env": [22, 25], "condor_extra_set": 22, "te": 22, "batch": 22, "overwrit": [22, 26], "condor_getenv": 22, "environ": 22, "submiss": 22, "almost": 22, "certainli": 22, "condor_initial_dir": 22, "condor_kill_sig": 22, "sigint": 22, "condor_memori": 22, "images": 22, "condor_njob": 22, "condor_postpone_join": 22, "condor_postpone_submit": 22, "tool": 22, "condor_pwd": 22, "pwd": 22, "instal": [22, 43], "condor_requir": 22, "condor_should_transfer_fil": 22, "ye": 22, "condor_snapshot_on_kil": 22, "snapshot": [22, 26, 31], "sigkil": 22, "condor_stream_error": 22, "stream": 22, "condor_stream_output": 22, "condor_submit": 22, "condor_univers": 22, "vanilla": 22, "condor_warn_max_memori": 22, "condor_when_to_transfer_output": 22, "on_exit_or_evict": 22, "custom_gener": 22, "do_analyt": 22, "do_dry_run": 22, "dry_run_hook": 22, "hook": 22, "dry_run_num_cor": 22, "ensemble_factor_in_probability_weighted_mass": 22, "probability_weighted_mass": 22, "multiprocess": 22, "exit_after_dry_run": 22, "exit_cod": 22, "failed_systems_threshold": 22, "failed_system": 22, "function_cach": 22, "certain": [22, 23, 40], "function_cache_ttl": 22, "function_cache_default_maxs": 22, "maxsiz": 22, "function_cache_default_typ": 22, "lrucach": 22, "lfucach": 22, "fifocach": 22, "mrucach": 22, "rrcach": 22, "ttlcach": 22, "nullcach": [22, 29], "nocach": 22, "cachetool": [22, 29], "fo": 22, "dummi": [22, 25, 32], "overhead": 22, "function_cache_funct": [22, 29], "gridcode_filenam": 22, "log_arg": 22, "log_args_dir": 22, "log_newlin": 22, "log_runtime_system": 22, "plan": 22, "max_queue_s": 22, "feed": 22, "modulo": 22, "multiplicity_fraction_funct": 22, "aren": [22, 32], "rhagavan": 22, "n_logging_stat": 22, "num_cores_avail": 22, "original_command_lin": 22, "original_submission_tim": 22, "original_working_diretori": 22, "Its": 22, "print_stack_on_exit": 22, "stack": 22, "trace": 22, "restore_from_snapshot_dir": 22, "restore_from_snapshot_fil": [22, 26], "return_after_dry_run": 22, "run_zero_probability_system": 22, "rungrid": 22, "save_ensemble_chunk": 22, "save_population_object": [22, 31], "skip_befor": 22, "slurm_arrai": 22, "slurm_array_max_job": 22, "concurr": 22, "slurm_bash": 22, "slurm_dat": 22, "slurm_dir": [22, 26, 30, 37], "slurm_env": 22, "slurm_extra_set": 22, "slurm_jobarrayindex": [22, 37], "slurm_jobid": [22, 37], "slurm_jobnam": 22, "slurm_memori": 22, "megabyt": 22, "understand": 22, "512mb": 22, "slurm_njob": 22, "slurm_ntask": 22, "slurm_partit": 22, "partit": 22, "local": [22, 32], "sview": 22, "slurm_postpone_join": 22, "slurm_postpone_sbatch": 22, "sbatch": 22, "slurm_pwd": 22, "slurm_sbatch": 22, "slurm_tim": 22, "slurm_warn_max_memori": 22, "excess": 22, "mistak": 22, "1024mb": 22, "source_file_filenam": 22, "start_at": 22, "status_dir": 22, "stop_queu": 22, "symlink_latest_gridcod": 22, "diagnost": 22, "_repeat": 22, "reduct": 22, "working_diretori": 22, "multiplicity_model": 22, "log10m1": 22, "poisson": [22, 32], "map": 22, "quad": 22, "NO": 22, "multiplicity_modul": 22, "normalize_multipl": 22, "norm": 22, "b": [22, 31], "whichev": 22, "stick": 22, "predict": 22, "repres": 22, "canon": 22, "nonzero": 22, "q_high_extrapolation_method": 22, "q_low_extrapolation_method": 22, "extrapol": [22, 32], "flat": [22, 32], "linear2": 22, "plaw2": 22, "nolowq": 22, "_moe2017_json_data": 22, "distefano2017": 22, "_actually_evolve_system": 22, "_process_run_population_grid": 22, "_binary_c_config_execut": 22, "_binary_c_dir": 22, "director": 22, "_binary_c_execut": 22, "_binary_c_shared_librari": 22, "libbinary_c": 22, "_commandline_input": 22, "_count": 22, "counter": 22, "_custom_logging_shared_library_fil": 22, "_end_time_evolut": 22, "timestamp": [22, 28], "_errors_exceed": 22, "failed_system_log": 22, "_errors_found": 22, "encount": [22, 23, 40], "_evolution_type_opt": 22, "_failed_count": 22, "_failed_prob": 22, "_failed_systems_error_cod": 22, "_generate_grid_cod": 22, "_kill": 22, "_loaded_moe2017_data": 22, "_main_pid": 22, "master": [22, 23, 25, 40], "_population_id": 22, "char": 22, "hex": 22, "_probtot": 22, "_queue_don": 22, "_set_moe2017_grid": 22, "_start_time_evolut": 22, "_store_memaddr": 22, "_system_gener": 22, "_total_mass_run": 22, "_total_probability_weighted_mass_run": 22, "_total_starcount": 22, "_zero_prob_stars_skip": 22, "coverag": [23, 40], "jeff": [23, 40], "andrew": [23, 40], "robert": [23, 40], "meet": [23, 40], "least": [23, 40], "eol": [23, 40], "root": [23, 40], "ld_library_path": [23, 40], "libgsl": [23, 40], "libmemo": [23, 40], "librinterpol": [23, 40], "library_path": [23, 40], "gsl_dir": [23, 40], "gsl": [23, 40], "dir": [23, 30, 40], "binary_c2": [23, 40], "latest": [23, 40], "virtual": [23, 40], "sh": [23, 40], "install_without_depend": [23, 40], "reinstal": [23, 40], "suit": [23, 40], "whenev": [23, 40], "virtualenviron": [23, 40], "contribut": [23, 40], "development_requir": [23, 40], "hesit": [23, 40], "discuss": [23, 40], "generate_doc": [23, 40], "generate_report": [23, 40], "exhaust": [23, 40], "solut": [23, 40], "mesa": [23, 40], "mesasdk_root": [23, 40], "mesasdk_init": [23, 40], "interfer": [23, 40], "throw": [23, 40], "unrecogn": [23, 40], "ftz": [23, 40], "flto": [23, 40], "due": [23, 40], "cflag": [23, 40], "avaibl": [23, 40], "1ckzg0p9": [23, 40], "egg": [23, 40], "pkg": [23, 40], "filenotfounderror": [23, 40], "errno": [23, 40], "jupyt": [23, 40], "seem": [23, 25, 34, 40], "everytim": [23, 40], "rebuilt": [23, 40], "plot_funct": [23, 24], "useful_func": [23, 24], "nucsyn": 23, "misc": 23, "sampler": 23, "visit": 23, "gitlab": 23, "repo": 23, "plot_system": 25, "loos": 25, "admittedli": 25, "customis": 25, "regardless": 25, "color_by_index": 25, "placehold": [25, 29, 30, 31], "parse_function_hr_diagram": 25, "hr": 25, "parse_function_mass": 25, "parse_function_orbit": 25, "plot_hr_diagram": 25, "show_stellar_typ": 25, "show_plot": 25, "use_astropy_valu": 25, "plot_hr_diagram_singl": 25, "radius_1": 25, "radius_2": 25, "luminosity_1": 25, "luminosity_2": 25, "teff_1": 25, "teff_2": 25, "hd": 25, "astropi": 25, "stefan": 25, "boltzman": 25, "plot_mass": 25, "pms_mass_1": 25, "pms_mass_2": 25, "quantiti": 25, "pm": 25, "mayb": 25, "plot_orbit": 25, "plot_typ": 25, "preset": 25, "mass_evolut": 25, "orbit_evolut": 25, "hr_diagram": 25, "against": 25, "pick": 25, "pane": 25, "distefano": [26, 27, 32], "hpc_can_join": 26, "joinfil": 26, "joiningfil": 26, "hpc_check_requir": 26, "hpc_dir": 26, "hpc_dump_statu": 26, "hpc_get_statu": 26, "job_id": 26, "job_index": 26, "hpc_grid": 26, "makejoiningfil": 26, "hpc_task": 26, "exclud": 26, "hpc_id_filenam": 26, "hpc_id_from_dir": 26, "hpc_job": 26, "hpc_jobid_tupl": 26, "hpc_job_id_rang": 26, "hpc_job_task": 26, "hpc_job_typ": 26, "hpc_join_from_fil": 26, "newobj": 26, "hpc_join_previ": 26, "hpc_joinlist": 26, "hpc_load_joinfiles_list": 26, "hpc_make_joiningfil": 26, "error_on_overwrit": 26, "hpc_njob": 26, "error_on_overwit": 26, "issu": 26, "hpc_path": 26, "hpc_queue_stat": 26, "stat": 26, "hpc_restor": 26, "restor": 26, "_restart_dir": 26, "stage": 26, "hpc_set_statu": 26, "hpc_snapshot_filenam": 26, "hpc_statu": 26, "hpc_touch": 26, "touch": [26, 31], "distrefano": 27, "interpol": [27, 32, 38], "get_moe_di_stefano_2017_default_opt": 27, "get_moe_di_stefano_2017_default_options_descript": 27, "get_moe_di_stefano_dataset": 27, "set_moe_di_stefano_set": 27, "cpu_tim": 28, "ve": 28, "make_analytics_dict": 28, "set_tim": 28, "elaps": 28, "lru": 29, "lru_": 29, "__delitem__": 29, "delet": [29, 35], "getter": 29, "__setitem__": 29, "setter": 29, "popitem": 29, "default_cache_dir": [29, 34], "setup_function_cach": 29, "cachetyp": 29, "function_cache_s": 29, "func": 29, "test_cach": 29, "replac": 30, "condorid": 30, "condor_check_requir": 30, "condor_grid": 30, "being": [30, 37], "condor_outfil": 30, "chunk": [30, 37], "condor_queue_stat": 30, "condor_status_fil": 30, "condorpath": 30, "get_condor_statu": 30, "correspon": [30, 37], "make_condor_dir": 30, "set_condor_statu": 30, "held": [30, 37], "io": 31, "nfs_flush_hack": 31, "opendir": 31, "closedir": 31, "complaint": 31, "unclos": 31, "scandir": 31, "nfspath": 31, "mount": 31, "compression_typ": 31, "dir_ok": 31, "load_population_object": 31, "load_snapshot": 31, "preloaded_popul": 31, "locked_clos": 31, "partner": 31, "locked_open_for_writ": 31, "unlock": 31, "lock_suffix": 31, "lock_timeout": 31, "lock_lifetim": 31, "exists_ok": 31, "fatal_open_error": 31, "mode": 31, "lockfil": 31, "flufl": 31, "file_object": 31, "lock_object": 31, "merge_popul": 31, "refpop": 31, "newpop": 31, "merge_populations_from_fil": 31, "closefd": 31, "compresslevel": 31, "population_object": 31, "confirm": 31, "gzip": 31, "pickl": 31, "compress_pickl": 31, "lucianopaz": 31, "shared_memori": 31, "set_statu": 31, "format_stat": 31, "process_": 31, "snapshot_filenam": 31, "wait_for_unlock": 31, "wait": 31, "write_ensembl": 31, "recognis": 31, "bz2": 31, "msgpack": 31, "support": 31, "grid_ensemble_result": [31, 36], "stackoverflow": 32, "28060251": 32, "hi": 32, "gonna": 32, "mathieu": 32, "sfh": 32, "redshift": 32, "enough": 32, "arenou2010_binary_fract": 32, "c2": 32, "sp": 32, "opm": 32, "fa": 32, "rssd": 32, "esa": 32, "doc_fetch": 32, "php": 32, "2969346": 32, "izzard2012_period_distribut": 32, "log10pmin": 32, "duquennoi": 32, "mayor": 32, "1991": 32, "spectral": 32, "15msun": 32, "sana": 32, "3msun": 32, "dlogp": 32, "raghavan": 32, "gaussian": [32, 38], "log10p": 32, "logp": 32, "m0": 32, "p1": 32, "p2": 32, "p3": 32, "moe_di_stefano_2017_multiplicity_fract": 32, "6e1": 32, "moe_di_stefano_2017_pdf": 32, "m3": 32, "m4": 32, "ecc2": 32, "ecc3": 32, "build_q_tabl": 32, "independ": 32, "q_min": 32, "renormalis": 32, "lowest": 32, "qmin": 32, "goal": 32, "boundari": 32, "calc_p_integr": 32, "min_logp": 32, "max_logp": 32, "integrals_str": 32, "interpolator_nam": 32, "mass_str": 32, "min_per": 32, "calc_e_integr": 32, "period_str": 32, "calc_total_probden": 32, "prob_dict": 32, "calculate_constants_three_part_powerlaw": 32, "law_const": 32, "slope": 32, "const_distribut": 32, "min_bound": [32, 38], "max_bound": [32, 38], "val": 32, "cosmic_sfh_madau_dickinson2014": 32, "cosmic": 32, "histori": 32, "madau": 32, "dickonson": 32, "1403": 32, "0007": 32, "mega": 32, "parsec": 32, "duquennoy1991": 32, "fill_data": 32, "sample_valu": 32, "data_dict": 32, "logmass": [32, 38], "logperiod": 32, "dstep": 32, "uniform": 32, "sigma": [32, 38], "gmin": 32, "gmax": 32, "deviat": [32, 38], "gaussian_func": 32, "gaussian_normalizing_const": 32, "get_integration_constant_q": 32, "q_interpol": 32, "tmp_tabl": 32, "qdata": 32, "get_max_multipl": 32, "multiplicity_arrai": 32, "imf_chabrier2003": 32, "chabrier": 32, "pasp": 32, "imf_scalo1986": 32, "scalo": 32, "80msol": 32, "imf_scalo1998": 32, "imf_tinsley1980": 32, "tinslei": 32, "1980": 32, "interpolate_in_mass_izzard2012": 32, "ktg93": 32, "linear_extrapolation_q": 32, "qs": 32, "qlimit": 32, "end_index": 32, "merge_multipl": 32, "result_arrai": 32, "max_multipl": 32, "fold": 32, "lambda_v": 32, "nmax": 32, "improv": [32, 38], "powerlaw": 32, "min_val": 32, "max_val": 32, "powerlaw_const": 32, "powerlaw_constant_nocach": 32, "powerlaw_extrapolation_q": 32, "raghavan2010_binary_fract": 32, "zsolar": 32, "long_spectral_typ": 32, "jaschek": 32, "amin": 32, "amax": 32, "x0": 32, "x1": 32, "ln": 32, "dp": 32, "p0": 32, "generalis": 32, "vb1print": 33, "system_numb": 33, "system_dict": 33, "ey": 33, "unix": 33, "epoch": 33, "vb2print": 33, "cmdline_str": 33, "grid_options_defaults_dict": 34, "grid_options_help": 34, "grid_options_description_check": 34, "write_grid_options_to_rst_fil": 34, "With": 34, "hack": 34, "reconsid": 34, "unnecessari": 34, "get_grid_options_defaults_dict": 34, "get_grid_options_descript": 34, "print_info": 34, "undescrib": 34, "And": [34, 43], "print_option_descript": 34, "filehandl": 34, "extra_text": 34, "delete_grid_vari": 35, "oldnam": 35, "newnam": 35, "add_ensemble_metadata": 36, "combined_output_dict": 36, "add_system_metadata": 36, "get_slurm_statu": 37, "make_slurm_dir": 37, "set_slurm_statu": 37, "slurmid": 37, "slurm_check_requir": 37, "slurm_grid": 37, "slurm_outfil": 37, "slurm_queue_stat": 37, "xxx": 37, "slurm_status_fil": 37, "slurmpath": 37, "soon": 38, "const_dt": 38, "cachedir": 38, "usecach": 38, "logspac": 38, "dlogt": 38, "tmin": 38, "tmax": 38, "mindm": 38, "1msun": 38, "0msun": 38, "comma": 38, "thu": 38, "maxdm": 38, "similar": 38, "fsampl": 38, "shannon": 38, "showtabl": 38, "showlist": 38, "log10mass": 38, "const_dt_cach": 38, "add_grid_valu": 38, "1gyr": 38, "suitabl": 38, "const_int": 38, "segment": 38, "linspac": 38, "const_rang": 38, "gaussian_zoom": 38, "zoom_mean": 38, "zoom_dispers": 38, "zoom_magnitud": 38, "depth": 38, "zoom_magntiud": 38, "peak_normalized_gaussian_func": 38, "hardli": 39, "minimum_stellar_mass": 39, "parse_binary_c_version_info": 39, "version_info_str": 39, "atom": 39, "dtlimit": 39, "git_branch": 39, "git_build": 39, "email": 39, "analys": 41, "example_log": 41, "fancy_parsing_funct": 41, "notifi": 41, "unknown": 41, "centralis": 41, "abstract": 41, "stellar_type_dict": 42, "stellar_type_dict_short": 42, "abbrevi": 42, "collect": 43, "binary_star": 43, "calc_period_from_sep": 43, "invers": 43, "zams_collis": 43, "collid": 43, "roche_lob": 43, "ragb": 43, "minimum_period_for_rlof": 43, "minimum_separation_for_rlof": 43, "maximum_mass_ratio_for_rlof": 43, "upon": 43, "r_l": 43, "1983": 43, "mass_accretor": 43, "mass_donor": 43, "rochelob": 43, "vice": 43, "versa": 43, "1996": 43, "mnra": 43, "pericent": 43}, "objects": {"binarycpython.utils": [[1, 0, 0, "-", "custom_logging_functions"], [2, 0, 0, "-", "dicts"], [3, 0, 0, "-", "ensemble"], [20, 0, 0, "-", "functions"], [21, 0, 0, "-", "grid"], [25, 0, 0, "-", "plot_functions"], [41, 0, 0, "-", "run_system_wrapper"], [42, 0, 0, "-", "stellar_types"], [43, 0, 0, "-", "useful_funcs"]], "binarycpython.utils.custom_logging_functions": [[1, 1, 1, "", "autogen_C_logging_code"], [1, 1, 1, "", "binary_c_log_code"], [1, 1, 1, "", "binary_c_write_log_code"], [1, 1, 1, "", "compile_shared_lib"], [1, 1, 1, "", "create_and_load_logging_function"], [1, 1, 1, "", "from_binary_c_config"], [1, 1, 1, "", "return_compilation_dict"]], "binarycpython.utils.dicts": [[2, 2, 1, "", "AutoVivificationDict"], [2, 1, 1, "", "count_keys_recursive"], [2, 1, 1, "", "custom_sort_dict"], [2, 1, 1, "", "filter_dict"], [2, 1, 1, "", "filter_dict_through_values"], [2, 1, 1, "", "inspect_dict"], [2, 1, 1, "", "keys_to_floats"], [2, 1, 1, "", "merge_dicts"], [2, 1, 1, "", "multiply_float_values"], [2, 1, 1, "", "multiply_values_dict"], [2, 1, 1, "", "normalize_dict"], [2, 1, 1, "", "prepare_dict"], [2, 1, 1, "", "recursive_change_key_to_float"], [2, 1, 1, "", "recursive_change_key_to_string"], [2, 1, 1, "", "set_opts"], [2, 1, 1, "", "subtract_dicts"], [2, 1, 1, "", "update_dicts"]], "binarycpython.utils.dicts.AutoVivificationDict": [[2, 3, 1, "", "__getitem__"], [2, 3, 1, "", "__iadd__"]], "binarycpython.utils.ensemble": [[3, 2, 1, "", "BinarycDecoder"], [3, 2, 1, "", "BinarycEncoder"], [3, 1, 1, "", "binaryc_json_serializer"], [3, 1, 1, "", "ensemble_compression"], [3, 1, 1, "", "ensemble_file_type"], [3, 1, 1, "", "ensemble_setting"], [3, 1, 1, "", "extract_ensemble_json_from_string"], [3, 1, 1, "", "format_ensemble_results"], [3, 1, 1, "", "handle_ensemble_string_to_json"], [3, 1, 1, "", "load_ensemble"], [3, 1, 1, "", "open_ensemble"]], "binarycpython.utils.ensemble.BinarycDecoder": [[3, 3, 1, "", "decode"]], "binarycpython.utils.ensemble.BinarycEncoder": [[3, 3, 1, "", "default"]], "binarycpython.utils.functions": [[20, 2, 1, "", "Capturing"], [20, 1, 1, "", "bin_data"], [20, 1, 1, "", "call_binary_c_config"], [20, 2, 1, "", "catchtime"], [20, 1, 1, "", "check_if_in_shell"], [20, 1, 1, "", "command_string_from_list"], [20, 1, 1, "", "conv_time_units"], [20, 1, 1, "", "convert_bytes"], [20, 1, 1, "", "convfloat"], [20, 1, 1, "", "create_arg_string"], [20, 1, 1, "", "create_hdf5"], [20, 1, 1, "", "datalinedict"], [20, 1, 1, "", "example_parse_output"], [20, 1, 1, "", "filter_arg_dict"], [20, 1, 1, "", "format_number"], [20, 1, 1, "", "get_ANSI_colours"], [20, 1, 1, "", "get_arg_keys"], [20, 1, 1, "", "get_defaults"], [20, 1, 1, "", "get_help"], [20, 1, 1, "", "get_help_all"], [20, 1, 1, "", "get_help_super"], [20, 1, 1, "", "get_size"], [20, 1, 1, "", "get_username"], [20, 1, 1, "", "imports"], [20, 1, 1, "", "is_capsule"], [20, 1, 1, "", "isfloat"], [20, 1, 1, "", "isint"], [20, 1, 1, "", "load_logfile"], [20, 1, 1, "", "make_build_text"], [20, 1, 1, "", "mem_use"], [20, 1, 1, "", "now"], [20, 1, 1, "", "output_lines"], [20, 1, 1, "", "pad_output_distribution"], [20, 1, 1, "", "quotewrap"], [20, 1, 1, "", "remove_file"], [20, 1, 1, "", "temp_dir"], [20, 1, 1, "", "timedelta"], [20, 1, 1, "", "trem"], [20, 1, 1, "", "verbose_print"], [20, 1, 1, "", "write_binary_c_parameter_descriptions_to_rst_file"]], "binarycpython.utils.functions.Capturing": [[20, 3, 1, "", "__enter__"], [20, 3, 1, "", "__exit__"]], "binarycpython.utils.functions.catchtime": [[20, 3, 1, "", "__enter__"], [20, 3, 1, "", "__exit__"]], "binarycpython.utils.grid": [[21, 2, 1, "", "Population"]], "binarycpython.utils.grid.Population": [[21, 3, 1, "", "clean"], [21, 3, 1, "", "evolve"], [21, 3, 1, "", "evolve_single"], [21, 3, 1, "", "exit"], [21, 3, 1, "", "export_all_info"], [21, 3, 1, "", "jobID"], [21, 3, 1, "", "parse_cmdline"], [21, 3, 1, "", "return_all_info"], [21, 3, 1, "", "return_binary_c_defaults"], [21, 3, 1, "", "return_population_settings"], [21, 3, 1, "", "set"], [21, 3, 1, "", "was_killed"]], "binarycpython.utils.plot_functions": [[25, 1, 1, "", "color_by_index"], [25, 1, 1, "", "dummy"], [25, 1, 1, "", "parse_function_hr_diagram"], [25, 1, 1, "", "parse_function_masses"], [25, 1, 1, "", "parse_function_orbit"], [25, 1, 1, "", "plot_HR_diagram"], [25, 1, 1, "", "plot_masses"], [25, 1, 1, "", "plot_orbit"], [25, 1, 1, "", "plot_system"]], "binarycpython.utils.population_extensions": [[26, 0, 0, "-", "HPC"], [27, 0, 0, "-", "Moe_di_Stefano_2017"], [28, 0, 0, "-", "analytics"], [29, 0, 0, "-", "cache"], [30, 0, 0, "-", "condor"], [31, 0, 0, "-", "dataIO"], [32, 0, 0, "-", "distribution_functions"], [33, 0, 0, "-", "grid_logging"], [34, 0, 0, "-", "grid_options_defaults"], [35, 0, 0, "-", "gridcode"], [36, 0, 0, "-", "metadata"], [37, 0, 0, "-", "slurm"], [38, 0, 0, "-", "spacing_functions"], [39, 0, 0, "-", "version_info"]], "binarycpython.utils.population_extensions.HPC": [[26, 2, 1, "", "HPC"]], "binarycpython.utils.population_extensions.HPC.HPC": [[26, 3, 1, "", "HPC_can_join"], [26, 3, 1, "", "HPC_check_requirements"], [26, 3, 1, "", "HPC_dir"], [26, 3, 1, "", "HPC_dirs"], [26, 3, 1, "", "HPC_dump_status"], [26, 3, 1, "", "HPC_get_status"], [26, 3, 1, "", "HPC_grid"], [26, 3, 1, "", "HPC_id_filename"], [26, 3, 1, "", "HPC_id_from_dir"], [26, 3, 1, "", "HPC_job"], [26, 3, 1, "", "HPC_jobID"], [26, 3, 1, "", "HPC_jobID_tuple"], [26, 3, 1, "", "HPC_job_id_range"], [26, 3, 1, "", "HPC_job_task"], [26, 3, 1, "", "HPC_job_type"], [26, 3, 1, "", "HPC_join_from_files"], [26, 3, 1, "", "HPC_join_previous"], [26, 3, 1, "", "HPC_joinlist"], [26, 3, 1, "", "HPC_load_joinfiles_list"], [26, 3, 1, "", "HPC_make_joiningfile"], [26, 3, 1, "", "HPC_njobs"], [26, 3, 1, "", "HPC_path"], [26, 3, 1, "", "HPC_queue_stats"], [26, 3, 1, "", "HPC_restore"], [26, 3, 1, "", "HPC_set_status"], [26, 3, 1, "", "HPC_snapshot_filename"], [26, 3, 1, "", "HPC_status"], [26, 3, 1, "", "HPC_touch"]], "binarycpython.utils.population_extensions.Moe_di_Stefano_2017": [[27, 2, 1, "", "Moe_di_Stefano_2017"]], "binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017": [[27, 3, 1, "", "Moe_di_Stefano_2017"], [27, 3, 1, "", "get_Moe_di_Stefano_2017_default_options"], [27, 3, 1, "", "get_Moe_di_Stefano_2017_default_options_description"], [27, 3, 1, "", "get_moe_di_stefano_dataset"], [27, 3, 1, "", "set_moe_di_stefano_settings"]], "binarycpython.utils.population_extensions.analytics": [[28, 2, 1, "", "analytics"]], "binarycpython.utils.population_extensions.analytics.analytics": [[28, 3, 1, "", "CPU_time"], [28, 3, 1, "", "make_analytics_dict"], [28, 3, 1, "", "set_time"], [28, 3, 1, "", "time_elapsed"]], "binarycpython.utils.population_extensions.cache": [[29, 2, 1, "", "cache"]], "binarycpython.utils.population_extensions.cache.cache": [[29, 2, 1, "", "NullCache"], [29, 3, 1, "", "default_cache_dir"], [29, 3, 1, "", "setup_function_cache"], [29, 3, 1, "", "test_caches"]], "binarycpython.utils.population_extensions.cache.cache.NullCache": [[29, 3, 1, "", "__delitem__"], [29, 3, 1, "", "__getitem__"], [29, 3, 1, "", "__setitem__"], [29, 3, 1, "", "popitem"]], "binarycpython.utils.population_extensions.condor": [[30, 2, 1, "", "condor"]], "binarycpython.utils.population_extensions.condor.condor": [[30, 3, 1, "", "condorID"], [30, 3, 1, "", "condor_check_requirements"], [30, 3, 1, "", "condor_dirs"], [30, 3, 1, "", "condor_grid"], [30, 3, 1, "", "condor_outfile"], [30, 3, 1, "", "condor_queue_stats"], [30, 3, 1, "", "condor_status_file"], [30, 3, 1, "", "condorpath"], [30, 3, 1, "", "get_condor_status"], [30, 3, 1, "", "make_condor_dirs"], [30, 3, 1, "", "set_condor_status"]], "binarycpython.utils.population_extensions.dataIO": [[31, 2, 1, "", "dataIO"]], "binarycpython.utils.population_extensions.dataIO.dataIO": [[31, 3, 1, "", "NFS_flush_hack"], [31, 3, 1, "", "NFSpath"], [31, 3, 1, "", "compression_type"], [31, 3, 1, "", "dir_ok"], [31, 3, 1, "", "load_population_object"], [31, 3, 1, "", "load_snapshot"], [31, 3, 1, "", "locked_close"], [31, 3, 1, "", "locked_open_for_write"], [31, 3, 1, "", "merge_populations"], [31, 3, 1, "", "merge_populations_from_file"], [31, 3, 1, "", "open"], [31, 3, 1, "", "save_population_object"], [31, 3, 1, "", "save_snapshot"], [31, 3, 1, "", "set_status"], [31, 3, 1, "", "snapshot_filename"], [31, 3, 1, "", "wait_for_unlock"], [31, 3, 1, "", "write_binary_c_calls_to_file"], [31, 3, 1, "", "write_ensemble"]], "binarycpython.utils.population_extensions.distribution_functions": [[32, 2, 1, "", "distribution_functions"]], "binarycpython.utils.population_extensions.distribution_functions.distribution_functions": [[32, 3, 1, "", "Arenou2010_binary_fraction"], [32, 3, 1, "", "Izzard2012_period_distribution"], [32, 3, 1, "", "Kroupa2001"], [32, 3, 1, "", "Moe_di_Stefano_2017_multiplicity_fractions"], [32, 3, 1, "", "Moe_di_Stefano_2017_pdf"], [32, 3, 1, "", "build_q_table"], [32, 3, 1, "", "calc_P_integral"], [32, 3, 1, "", "calc_e_integral"], [32, 3, 1, "", "calc_total_probdens"], [32, 3, 1, "", "calculate_constants_three_part_powerlaw"], [32, 3, 1, "", "const_distribution"], [32, 3, 1, "", "cosmic_SFH_madau_dickinson2014"], [32, 3, 1, "", "duquennoy1991"], [32, 3, 1, "", "fill_data"], [32, 3, 1, "", "flat"], [32, 3, 1, "", "flatsections"], [32, 3, 1, "", "gaussian"], [32, 3, 1, "", "gaussian_func"], [32, 3, 1, "", "gaussian_normalizing_const"], [32, 3, 1, "", "get_integration_constant_q"], [32, 3, 1, "", "get_max_multiplicity"], [32, 3, 1, "", "imf_chabrier2003"], [32, 3, 1, "", "imf_scalo1986"], [32, 3, 1, "", "imf_scalo1998"], [32, 3, 1, "", "imf_tinsley1980"], [32, 3, 1, "", "interpolate_in_mass_izzard2012"], [32, 3, 1, "", "ktg93"], [32, 3, 1, "", "linear_extrapolation_q"], [32, 3, 1, "", "merge_multiplicities"], [32, 3, 1, "", "number"], [32, 3, 1, "", "poisson"], [32, 3, 1, "", "powerlaw"], [32, 3, 1, "", "powerlaw_constant"], [32, 3, 1, "", "powerlaw_constant_nocache"], [32, 3, 1, "", "powerlaw_extrapolation_q"], [32, 3, 1, "", "raghavan2010_binary_fraction"], [32, 3, 1, "", "sana12"], [32, 3, 1, "", "three_part_powerlaw"]], "binarycpython.utils.population_extensions.grid_logging": [[33, 2, 1, "", "grid_logging"]], "binarycpython.utils.population_extensions.grid_logging.grid_logging": [[33, 3, 1, "", "vb1print"], [33, 3, 1, "", "vb2print"], [33, 3, 1, "", "verbose_print"]], "binarycpython.utils.population_extensions.grid_options_defaults": [[34, 2, 1, "", "grid_options_defaults"]], "binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults": [[34, 3, 1, "", "default_cache_dir"], [34, 3, 1, "", "get_grid_options_defaults_dict"], [34, 3, 1, "", "get_grid_options_descriptions"], [34, 3, 1, "", "grid_options_description_checker"], [34, 3, 1, "", "grid_options_help"], [34, 3, 1, "", "print_option_descriptions"], [34, 3, 1, "", "write_grid_options_to_rst_file"]], "binarycpython.utils.population_extensions.gridcode": [[35, 2, 1, "", "gridcode"]], "binarycpython.utils.population_extensions.gridcode.gridcode": [[35, 3, 1, "", "add_grid_variable"], [35, 3, 1, "", "delete_grid_variable"], [35, 3, 1, "", "rename_grid_variable"], [35, 3, 1, "", "update_grid_variable"]], "binarycpython.utils.population_extensions.metadata": [[36, 2, 1, "", "metadata"]], "binarycpython.utils.population_extensions.metadata.metadata": [[36, 3, 1, "", "add_ensemble_metadata"], [36, 3, 1, "", "add_system_metadata"]], "binarycpython.utils.population_extensions.slurm": [[37, 2, 1, "", "slurm"]], "binarycpython.utils.population_extensions.slurm.slurm": [[37, 3, 1, "", "get_slurm_status"], [37, 3, 1, "", "make_slurm_dirs"], [37, 3, 1, "", "set_slurm_status"], [37, 3, 1, "", "slurmID"], [37, 3, 1, "", "slurm_check_requirements"], [37, 3, 1, "", "slurm_dirs"], [37, 3, 1, "", "slurm_grid"], [37, 3, 1, "", "slurm_outfile"], [37, 3, 1, "", "slurm_queue_stats"], [37, 3, 1, "", "slurm_status_file"], [37, 3, 1, "", "slurmpath"]], "binarycpython.utils.population_extensions.spacing_functions": [[38, 2, 1, "", "spacing_functions"]], "binarycpython.utils.population_extensions.spacing_functions.spacing_functions": [[38, 3, 1, "", "const_dt"], [38, 3, 1, "", "const_int"], [38, 3, 1, "", "const_linear"], [38, 3, 1, "", "const_ranges"], [38, 3, 1, "", "gaussian_zoom"], [38, 3, 1, "", "peak_normalized_gaussian_func"]], "binarycpython.utils.population_extensions.version_info": [[39, 2, 1, "", "version_info"]], "binarycpython.utils.population_extensions.version_info.version_info": [[39, 3, 1, "", "minimum_stellar_mass"], [39, 3, 1, "", "parse_binary_c_version_info"], [39, 3, 1, "", "return_binary_c_version_info"]], "binarycpython.utils.run_system_wrapper": [[41, 1, 1, "", "run_system"]], "binarycpython.utils.useful_funcs": [[43, 1, 1, "", "calc_period_from_sep"], [43, 1, 1, "", "calc_sep_from_period"], [43, 1, 1, "", "maximum_mass_ratio_for_RLOF"], [43, 1, 1, "", "minimum_period_for_RLOF"], [43, 1, 1, "", "minimum_separation_for_RLOF"], [43, 1, 1, "", "ragb"], [43, 1, 1, "", "roche_lobe"], [43, 1, 1, "", "rzams"], [43, 1, 1, "", "zams_collision"]]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:class", "3": "py:method"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "class", "Python class"], "3": ["py", "method", "Python method"]}, "titleterms": {"binary_c": [0, 7, 9, 11, 12, 16, 19, 23, 40], "paramet": [0, 11], "section": 0, "star": [0, 6, 15, 16], "binari": [0, 5, 6, 13, 16, 19], "nucsyn": 0, "output": [0, 6, 8, 13, 14, 15, 16], "input": 0, "i": 0, "o": 0, "algorithm": 0, "misc": 0, "custom_logging_funct": 1, "modul": [1, 2, 3, 20, 21, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43], "dict": 2, "ensembl": 3, "exampl": [4, 5, 6, 7, 8, 9, 11, 13, 14, 15, 16, 17, 18, 19, 23, 40], "notebook": [4, 19], "content": [4, 23], "us": [5, 6, 7, 8, 9, 13, 14, 15, 17, 19], "case": [5, 6, 8, 13, 14, 15, 17], "black": 5, "hole": 5, "system": [5, 12, 17], "hertzsprung": 6, "russel": 6, "diagram": 6, "set": [6, 7, 8, 13, 14, 15, 16], "up": [6, 7, 8, 13, 14, 15, 16], "popul": [6, 8, 9, 12, 13, 14, 15, 16, 21, 22, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39], "object": [6, 8, 9, 12, 13, 14, 15, 16], "stellar": [6, 8, 13, 14], "grid": [6, 8, 13, 14, 15, 16, 22], "log": [6, 8, 9, 13, 14, 15, 16, 19], "handl": [6, 8, 13, 14, 15, 16], "evolv": [6, 8, 13, 14, 15, 16], "tutori": [7, 9, 11, 12, 16], "api": [7, 9, 12, 17, 19], "function": [7, 11, 12, 13, 14, 15, 16, 17, 19, 20], "python": [7, 9, 11, 12, 16, 19, 23, 40], "usag": [7, 9, 23, 40], "free": 7, "store": 7, "get": [7, 11], "inform": [7, 11], "from": [7, 9, 23, 40], "common": 8, "envelop": 8, "evolut": [8, 9], "custom": [9, 19], "routin": 9, "when": 9, "run": [9, 12, 16, 19, 23, 40], "directli": 9, "string": 9, "compact": 9, "mass": [9, 14, 15], "supernova": 9, "extra": 11, "featur": 11, "about": 11, "build": [11, 23, 40], "pars": 11, "dictionari": 11, "modif": 11, "individu": 12, "singl": [12, 16], "run_system_wrapp": [12, 41], "via": [12, 23, 40], "zero": [13, 14], "ag": [13, 14], "luminos": [13, 14, 15], "ad": [13, 14, 15, 16], "variabl": [13, 14, 15, 16, 23, 40], "zam": [14, 15], "distribut": [14, 15], "initi": [14, 15], "A": [14, 15], "better": [14, 15], "sampl": [14, 15], "massiv": 15, "noteworthi": 16, "full": 16, "script": 16, "solar": 17, "basic": 18, "core": 19, "wrapper": 19, "run_binari": 19, "run_binary_with_log": 19, "line": 19, "util": 19, "run_system": 19, "other": 19, "class": [21, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39], "code": [22, 24], "option": 22, "public": 22, "moe": 22, "di": 22, "stefano": 22, "sampler": 22, "privat": 22, "welcom": 23, "s": 23, "document": [23, 40], "instal": [23, 40], "requir": [23, 40], "environ": [23, 40], "instruct": [23, 40], "pip": [23, 40], "sourc": [23, 40], "after": [23, 40], "note": [23, 40], "develop": [23, 40], "unit": [23, 40], "test": [23, 40], "faq": [23, 40], "issu": [23, 40], "indic": 23, "tabl": 23, "binarycpython": 24, "plot_funct": 25, "extens": [26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39], "hpc": 26, "moe_di_stefano_2017": 27, "analyt": 28, "cach": 29, "condor": 30, "dataio": 31, "distribution_funct": 32, "grid_log": 33, "grid_options_default": 34, "gridcod": 35, "metadata": 36, "slurm": 37, "spacing_funct": 38, "version_info": 39, "stellar_typ": 42, "useful_func": 43}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 6, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.todo": 2, "sphinx.ext.viewcode": 1, "nbsphinx": 4, "sphinx": 56}}) \ No newline at end of file diff --git a/docs/build/html/stellar_types.html b/docs/build/html/stellar_types.html index f626d45b7..21aeae486 100644 --- a/docs/build/html/stellar_types.html +++ b/docs/build/html/stellar_types.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.stellar_types"> -<span id="stellar-types-module"></span><h1>stellar_types module<a class="headerlink" href="#module-binarycpython.utils.stellar_types" title="Permalink to this headline">ïƒ</a></h1> +<span id="stellar-types-module"></span><h1>stellar_types module<a class="headerlink" href="#module-binarycpython.utils.stellar_types" title="Permalink to this heading">ïƒ</a></h1> <dl class="simple"> <dt>Module containing two stellar type dicts:</dt><dd><ul class="simple"> <li><p>STELLAR_TYPE_DICT: dictionary with long names</p></li> @@ -153,9 +154,9 @@ provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/build/html/useful_funcs.html b/docs/build/html/useful_funcs.html index e7a328290..945c03696 100644 --- a/docs/build/html/useful_funcs.html +++ b/docs/build/html/useful_funcs.html @@ -14,6 +14,7 @@ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script> <script src="_static/jquery.js"></script> <script src="_static/underscore.js"></script> + <script src="_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="_static/doctools.js"></script> <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script> <script src="_static/js/theme.js"></script> @@ -124,7 +125,7 @@ } </style> <section id="module-binarycpython.utils.useful_funcs"> -<span id="useful-funcs-module"></span><h1>useful_funcs module<a class="headerlink" href="#module-binarycpython.utils.useful_funcs" title="Permalink to this headline">ïƒ</a></h1> +<span id="useful-funcs-module"></span><h1>useful_funcs module<a class="headerlink" href="#module-binarycpython.utils.useful_funcs" title="Permalink to this heading">ïƒ</a></h1> <p>Collection of useful functions.</p> <p>Part of this is copied/inspired by Rob’s binary_stars module</p> <dl class="simple"> @@ -350,9 +351,9 @@ determine if two stars collide on the ZAMS</p> provided by <a href="https://readthedocs.org">Read the Docs</a>. <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. diff --git a/docs/source/_templates/footer.html b/docs/source/_templates/footer.html index 439fc328a..457fbbe14 100644 --- a/docs/source/_templates/footer.html +++ b/docs/source/_templates/footer.html @@ -2,8 +2,8 @@ {%- block extrafooter %} <br><br> -Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 15fbbaba24e219ad1d2633582e4a420dc4e08955 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. +Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision a790e18a79348c20b62cbfa1af89c3f8cb1b167b url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>. <br><br> -Using binary_c with bit branch HEAD: git revision: "5853:20220225:db09898b6" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/HEAD">git url</a>. +Using binary_c with bit branch branch_david: git revision: "6072:20220603:69cdd3f72" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>. {% endblock %} \ No newline at end of file diff --git a/docs/source/binary_c_parameters.rst b/docs/source/binary_c_parameters.rst index 81bd07a93..1019b88d5 100644 --- a/docs/source/binary_c_parameters.rst +++ b/docs/source/binary_c_parameters.rst @@ -4,7 +4,7 @@ The following chapter contains all the parameters that the current version of bi This information was obtained by the following binary_c build: - **binary_c git branch**: HEAD **binary_c git revision**: 5853:20220225:db09898b6 **Built on**: Feb 25 2022 19:21:31 + **binary_c git branch**: branch_david **binary_c git revision**: 6072:20220603:69cdd3f72 **Built on**: Jun 3 2022 14:44:39 Section: stars @@ -492,6 +492,12 @@ Section: stars | **Default value**: 0 | **Extra**: Ignore +| **Parameter**: PPISN_massloss_multiplier +| **Description**: (Pulsational) Pair-Instability Supernova CO massloss multiplier: Value by which the (P)PISN massloss is multiplied. Currently only works with the new prescription. THe additional mass loss is not affected multiplied by this. +| **Parameter input type**: Float +| **Default value**: 1 +| **Extra**: Ignore + | **Parameter**: use_LWN_fallback | **Description**: Flag whether to use the Nazehdin-Lovegrove-Woosley hydrogen envelope ejection at failed supernova. | **Parameter input type**: Integer @@ -2378,6 +2384,30 @@ Section: output | **Parameter**: david_logging_function | **Description**: Function to choose which kind of information gets logged Requires DAVID. Choices are: 0= None, >0 for custom logging functions | **Parameter input type**: Integer +| **Default value**: -1 +| **Extra**: Ignore + +| **Parameter**: david_tzo_logging +| **Description**: Flag to enable logging for TZO project +| **Parameter input type**: Integer +| **Default value**: 0 +| **Extra**: Ignore + +| **Parameter**: david_ppisn_logging +| **Description**: Flag to enable logging for PPISN project +| **Parameter input type**: Integer +| **Default value**: 0 +| **Extra**: Ignore + +| **Parameter**: david_rlof_episode_logging +| **Description**: Flag to enable the RLOF episode logging +| **Parameter input type**: Integer +| **Default value**: 0 +| **Extra**: Ignore + +| **Parameter**: david_rlof_ensemble_logging +| **Description**: Flag to enable the RLOF ensemble logging +| **Parameter input type**: Integer | **Default value**: 0 | **Extra**: Ignore -- GitLab