diff --git a/docs/source/_templates/footer.html b/docs/source/_templates/footer.html
new file mode 100644
index 0000000000000000000000000000000000000000..12cbe13b33995dff5c79c2b5452144abf531ac8b
--- /dev/null
+++ b/docs/source/_templates/footer.html
@@ -0,0 +1,6 @@
+{% extends 'footer.html' %}
+
+Generated on binarycpython git branch: development_version/2.1.7 git revision a251a28fc2c8a97a75e83d1d96d779c39fe06575 url: <a href src="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_version/2.1.7">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "6044:20210720:d1ed5b6c1" url: <a href src="https://gitlab.eps.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 d13f4f30c3e6f22acea55f0168310125a6d6b6a3..cdca213e0895c0790c4f7097c7731afe40b9e315 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**: branch_david	**binary_c git revision**: 5891:20210625:0148a2a16	**Built on**: Jun 25 2021 23:33:49
+	**binary_c git branch**: branch_david	**binary_c git revision**: 6044:20210720:d1ed5b6c1	**Built on**: Jul 20 2021 13:54:45
 
 
 Section: stars
@@ -42,29 +42,49 @@ Section: stars
 | **Default value**: 0
 
 | **Parameter**: vrot1
-| **Description**: Equatorial rotational speed of star 1 (km/s). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). Requires MANUAL_VROT. See also vrot2.
+| **Description**: The initial equatorial rotational velocity of star one (in km/s, internally this is star index 0). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). See also vrot2,3,4.
 | **Parameter input type**: Float
 | **Default value**: 0
-| **Macros**: ['VROT_BSE = 0', 'VROT_BREAKUP = -1', 'VROT_SYNC = -2', 'VROT_NON_ROTATING = -3', 'binary_c help for variable : vrot1 <Float>', 'Equatorial rotational speed of star 1 (km/s). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). Requires MANUAL_VROT. See also vrot2.', 'Default : 0']
+| **Macros**: ['VROT_BSE = 0', 'VROT_BREAKUP = -1', 'VROT_SYNC = -2', 'VROT_NON_ROTATING = -3']
 
 | **Parameter**: vrot2
-| **Description**: Equatorial rotational speed of star 2 (km/s). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). Requires MANUAL_VROT. See also vrot1.
+| **Description**: The initial equatorial rotational velocity of star two (in km/s, internally this is star index 1). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). See also vrot1,3,4.
 | **Parameter input type**: Float
 | **Default value**: 0
-| **Macros**: ['VROT_BSE = 0', 'VROT_BREAKUP = -1', 'VROT_SYNC = -2', 'VROT_NON_ROTATING = -3', 'binary_c help for variable : vrot2 <Float>', 'Equatorial rotational speed of star 2 (km/s). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). Requires MANUAL_VROT. See also vrot1.', 'Default : 0']
+| **Macros**: ['VROT_BSE = 0', 'VROT_BREAKUP = -1', 'VROT_SYNC = -2', 'VROT_NON_ROTATING = -3']
 
 | **Parameter**: vrot3
-| **Description**: The initial equatorial rotational velocity of star three (in km/s, internally this is star index 2). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). Requires MANUAL_VROT. See also vrot1,2,4.
+| **Description**: The initial equatorial rotational velocity of star three (in km/s, internally this is star index 2). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). See also vrot1,2,4.
 | **Parameter input type**: Float
 | **Default value**: 0
 | **Macros**: ['VROT_BSE = 0', 'VROT_BREAKUP = -1', 'VROT_SYNC = -2', 'VROT_NON_ROTATING = -3']
 
 | **Parameter**: vrot4
-| **Description**: The initial equatorial rotational velocity of star four (in km/s, internally this is star index 3). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). Requires MANUAL_VROT. See also vrot1,2,3.
+| **Description**: The initial equatorial rotational velocity of star four (in km/s, internally this is star index 3). If 0.0, the Hurley et al 2000/2002 prescription is used to set the main-sequence velocity, so for a truly non-rotating star, set to something small (e.g. 0.001). See also vrot1,2,3.
 | **Parameter input type**: Float
 | **Default value**: 0
 | **Macros**: ['VROT_BSE = 0', 'VROT_BREAKUP = -1', 'VROT_SYNC = -2', 'VROT_NON_ROTATING = -3']
 
+| **Parameter**: Prot1
+| **Description**: The initial equatorial rotational velocity of star one (in km/s, internally this is star index 0). See also Prot2,3,4.
+| **Parameter input type**: Float
+| **Default value**: 0
+
+| **Parameter**: Prot2
+| **Description**: The initial equatorial rotational velocity of star two (in km/s, internally this is star index 1). See also Prot1,3,4.
+| **Parameter input type**: Float
+| **Default value**: 0
+
+| **Parameter**: Prot3
+| **Description**: The initial equatorial rotational period of star three (in days, internally this is star index 2). See also Prot1,2,4.
+| **Parameter input type**: Float
+| **Default value**: 0
+
+| **Parameter**: Prot4
+| **Description**: The initial equatorial rotational period of star four (in days, internally this is star index 3). See also Prot1,2,3.
+| **Parameter input type**: Float
+| **Default value**: 0
+
 | **Parameter**: inclination1
 | **Description**: The initial inclination of star one (in degrees).
 | **Parameter input type**: Float
@@ -240,6 +260,11 @@ Section: stars
 | **Parameter input type**: True|False
 | **Default value**: False
 
+| **Parameter**: evolution_splitting_sn_eccentricity_threshold
+| **Description**: Threshold eccentricity above which evolution splitting happens in a system with no SN kick. (0.01)
+| **Parameter input type**: Float
+| **Default value**: 0.01
+
 | **Parameter**: evolution_splitting_sn_n
 | **Description**: Number of runs to split into when a SN occurs.
 | **Parameter input type**: Integer
@@ -344,7 +369,12 @@ Section: stars
 | **Default value**: 200
 
 | **Parameter**: vwind_multiplier
-| **Description**: Multiplier for the wind velocity as a function of the star's escape speed. In BSE (Hurley et al 2000/2002) this is 1/8=0.125. Does NOT apply on the AGB, when the Vassiliadis and Wood wind velocity is used instead.
+| **Description**: Multiplier for the stellar wind velocity.
+| **Parameter input type**: Float
+| **Default value**: 1
+
+| **Parameter**: vwind_beta
+| **Description**: Beta for stellar wind speed calculations, where vwind=sqrt(beta) * escape velocity. Default 0.125 (from BSE, Hurley et al. 2002). 
 | **Parameter input type**: Float
 | **Default value**: 0.125
 
@@ -368,38 +398,28 @@ Section: stars
 | **Parameter input type**: Float
 | **Default value**: 1
 
-| **Parameter**: mass_accretion_rate1
-| **Description**: Constant mass accretion rate on star 1.
-| **Parameter input type**: Float
-| **Default value**: 0
-
-| **Parameter**: mass_accretion_rate2
-| **Description**: Constant mass accretion rate on star 2.
-| **Parameter input type**: Float
-| **Default value**: 0
-
-| **Parameter**: angular_momentum_accretion_rate1
-| **Description**: Constant angular momentum accretion rate on star 1.
-| **Parameter input type**: Float
-| **Default value**: 0
+| **Parameter**: artificial_mass_accretion_rate%d
+| **Description**: Constant mass accretion rate for star <n>.
+| **Parameter input type**: Float(scanf)
+| **Default value**: NULL
 
-| **Parameter**: angular_momentum_accretion_rate2
-| **Description**: Constant angular momentum accretion rate on star 2.
-| **Parameter input type**: Float
-| **Default value**: 0
+| **Parameter**: artificial_angular_momentum_accretion_rate%d
+| **Description**: Constant angular momentum accretion for star <n>.
+| **Parameter input type**: Float(scanf)
+| **Default value**: NULL
 
-| **Parameter**: angular_momentum_accretion_rate_orbit
+| **Parameter**: artificial_orbital_angular_momentum_accretion_rate
 | **Description**: Constant angular momentum accretion rate on the orbit.
 | **Parameter input type**: Float
 | **Default value**: 0
 
-| **Parameter**: accretion_start_time
+| **Parameter**: artificial_accretion_start_time
 | **Description**: Time at which artificial accretion stars. Ignored if <0 (default is -1).
 | **Parameter input type**: Float
 | **Default value**: -1
 | **Macros**: ['ARTIFICIAL_ACCRETION_IGNORE = -1']
 
-| **Parameter**: accretion_end_time
+| **Parameter**: artificial_accretion_end_time
 | **Description**: Time at which artificial accretion ends. Ignored if <0 (default is -1).
 | **Parameter input type**: Float
 | **Default value**: -1
@@ -461,7 +481,7 @@ Section: stars
 | **Parameter**: sn_kick_distribution_GRB_COLLAPSAR
 | **Description**: Set the distribution of speeds applied to kick newly-born neutron stars and black holes after a type Ib/c core-collapse supernova which is also a collapsar. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Integer
-| **Default value**: 1
+| **Default value**: 0
 | **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
 
 | **Parameter**: sn_kick_distribution_TZ
@@ -500,6 +520,24 @@ Section: stars
 | **Default value**: 0
 | **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
 
+| **Parameter**: sn_kick_distribution_PPISN
+| **Description**: Set the distribution of speeds applied to PPISN supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
+| **Parameter input type**: Integer
+| **Default value**: 1
+| **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
+
+| **Parameter**: sn_kick_distribution_PISN
+| **Description**: Set the distribution of speeds applied to PISN supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
+| **Parameter input type**: Integer
+| **Default value**: 0
+| **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
+
+| **Parameter**: sn_kick_distribution_PHDIS
+| **Description**: Set the distribution of speeds applied to PHDIS supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
+| **Parameter input type**: Integer
+| **Default value**: 0
+| **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
+
 | **Parameter**: sn_kick_dispersion_II
 | **Description**: Set the dispersion of speeds applied to kick type II core collapse supernova systems. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Float
@@ -523,7 +561,7 @@ Section: stars
 | **Parameter**: sn_kick_dispersion_GRB_COLLAPSAR
 | **Description**: Set the dispersion of speeds applied to kick newly-born neutron stars and black holes after a type Ib/c core-collapse supernova which is also a collapsar. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Float
-| **Default value**: 190
+| **Default value**: 0
 
 | **Parameter**: sn_kick_dispersion_TZ
 | **Description**: Set the dispersion of speeds applied to kick newly-born neutron stars and black holes at the death of a Thorne-Zytkow object. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
@@ -555,6 +593,21 @@ Section: stars
 | **Parameter input type**: Float
 | **Default value**: 0
 
+| **Parameter**: sn_kick_dispersion_PPISN
+| **Description**: Set the dispersion of speeds applied to the survivor of a PPISN supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
+| **Parameter input type**: Float
+| **Default value**: 190
+
+| **Parameter**: sn_kick_dispersion_PISN
+| **Description**: Set the dispersion of speeds applied to the survivor of a PISN supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
+| **Parameter input type**: Float
+| **Default value**: 0
+
+| **Parameter**: sn_kick_dispersion_PHDIS
+| **Description**: Set the dispersion of speeds applied to the survivor of a PHDIS supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
+| **Parameter input type**: Float
+| **Default value**: 0
+
 | **Parameter**: sn_kick_companion_IA_He
 | **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the, kick on the companion when a Ia He supernova occurs. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
 | **Parameter input type**: Float
@@ -675,6 +728,24 @@ Section: stars
 | **Default value**: 0
 | **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
 
+| **Parameter**: sn_kick_companion_PPISN
+| **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the kick on the companion, if it survives, in a PPISN supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
+| **Parameter input type**: Float
+| **Default value**: 0
+| **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
+
+| **Parameter**: sn_kick_companion_PISN
+| **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the kick on the companion, if it survives, in a PISN supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
+| **Parameter input type**: Float
+| **Default value**: 0
+| **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
+
+| **Parameter**: sn_kick_companion_PHDIS
+| **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the kick on the companion, if it survives, in a PHDIS supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
+| **Parameter input type**: Float
+| **Default value**: 0
+| **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
+
 | **Parameter**: wd_sigma
 | **Description**: Set the speed at which white dwarfs are kicked when they form, in km/s. Default is zero (i.e. no kick). Requires WD_KICKS.
 | **Parameter input type**: Float
@@ -735,22 +806,22 @@ Section: stars
 | **Parameter**: delta_mcmin
 | **Description**: A parameter to reduce the minimum core mass for third dredge up to occur on the TPAGB. As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars.
 | **Parameter input type**: Float
-| **Default value**: 0
+| **Default value**: NULL
 
 | **Parameter**: lambda_min
 | **Description**: A parameter to increase the efficiency of third dredge up on the TPAGB. The efficiency is lambda * lambda_mult, and setting lambda_min>0 implies that, once Mc>Mcmin (see delta_mcmin) lambda=Max(lambda(fit to Karakas), lambda_min). As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars. See also lambda_multiplier.
 | **Parameter input type**: Float
-| **Default value**: 0
+| **Default value**: NULL
 
 | **Parameter**: lambda_multiplier
 | **Description**: A parameter to increase the efficiency of third dredge up on the TPAGB. The efficiency is lambda * lambda_mult, and setting lambda_min>0 implies that, once Mc>Mcmin (see delta_mcmin) lambda=Max(lambda(fit to Karakas), lambda_min). As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars.
 | **Parameter input type**: Float
-| **Default value**: 1
+| **Default value**: NULL
 
 | **Parameter**: minimum_envelope_mass_for_third_dredgeup
 | **Description**: The minimum envelope mass for third dredge up on the TPAGB. Early, solar metallicity models by Straniero et al suggested 0.5Msun is typical. However, circumstantial evidence (Izzard et al 2009) as well as newer models by Stancliffe and Karakas suggest that at low metallicity a value nearer zero is more appropriate.
 | **Parameter input type**: Float
-| **Default value**: 0.5
+| **Default value**: NULL
 
 | **Parameter**: mass_of_pmz
 | **Description**: The mass in the partial mixing zone of a TPAGB star, using the Karakas 2012 tables. Ask Carlo Abate for more details, or see the series of papers Abate et al 2012, 2013, 2014. Requires NUCSYN and USE_TABULAR_INTERSHELL_ABUNDANCES_KARAKAS_2012.
@@ -760,12 +831,12 @@ Section: stars
 | **Parameter**: c13_eff
 | **Description**: The "efficiency" of partial mixing in a TPAGB star intershell region, when using the s-process tables of Gallino, Busso, Lugaro et al. as provided by Maria Lugaro for the Izzard et al. 2009 paper. Requires NUCSYN and NUCSYN_S_PROCESS.
 | **Parameter input type**: Float
-| **Default value**: 1
+| **Default value**: NULL
 
 | **Parameter**: mc13_pocket_multiplier
 | **Description**: Multiplies the mass in the partial mixing zone of a TPAGB star, when using the s-process tables of Gallino, Busso, Lugaro et al. as provided by Maria Lugaro for the Izzard et al. 2009 paper. Requires NUCSYN and NUCSYN_S_PROCESS.
 | **Parameter input type**: Float
-| **Default value**: 1
+| **Default value**: NULL
 
 | **Parameter**: tides_convective_damping
 | **Description**: Tidal convective damping algorithm. 0=TIDES_HURLEY2002 Zahn 197x timescales + Hut, as in Hurley et al (2002), 1 = TIDES_ZAHN1989: Zahn 1989 lambdas + Hut.
@@ -787,10 +858,15 @@ Section: stars
 | **Parameter**: hbbtfac
 | **Description**: A parameter to modulate the temperature at the base of the hot-bottom burning zone in TPAGB stars. (Works only if NUCSYN is defined)
 | **Parameter input type**: Float
-| **Default value**: 1
+| **Default value**: NULL
 
 | **Parameter**: wind_multiplier_%d
-| **Description**: Wind multiplier for the stellar type specified by %d. By default these are all 1.0.
+| **Description**: Wind multiplier for the stellar type specified by the intger %d. By default these are all 1.0.
+| **Parameter input type**: Float(scanf)
+| **Default value**: NULL
+
+| **Parameter**: wind_type_multiplier_%d
+| **Description**: Wind multiplier for different types of wind (MS, GB, AGB, WR, LBV, OTHER), given by the integer %d. By default these are all 1.0.
 | **Parameter input type**: Float(scanf)
 | **Default value**: NULL
 
@@ -881,25 +957,25 @@ Section: stars
 | **Parameter**: AGB_core_algorithm
 | **Description**: Algorithm to use for calculating AGB core masses. 0=Hurley et al. 2002 if no NUCSYN, Karakas 2002 if NUCSYN is defined; 1=Hurley et al. 2002 (overshooting models); 1=Karakas 2002 (non-overshooting models).
 | **Parameter input type**: Integer
-| **Default value**: 2
+| **Default value**: 1
 | **Macros**: ['AGB_CORE_ALGORITHM_DEFAULT = 0', 'AGB_CORE_ALGORITHM_HURLEY = 1', 'AGB_CORE_ALGORITHM_KARAKAS = 2']
 
 | **Parameter**: AGB_radius_algorithm
 | **Description**: Algorithm to use for calculating radii on the TPAGB.
 | **Parameter input type**: Integer
-| **Default value**: 2
+| **Default value**: 1
 | **Macros**: ['AGB_RADIUS_ALGORITHM_DEFAULT = 0', 'AGB_RADIUS_ALGORITHM_HURLEY = 1', 'AGB_RADIUS_ALGORITHM_KARAKAS = 2']
 
 | **Parameter**: AGB_luminosity_algorithm
 | **Description**: Algorithm to use for calculating luminosities on the TPAGB.
 | **Parameter input type**: Integer
-| **Default value**: 2
+| **Default value**: 1
 | **Macros**: ['AGB_LUMINOSITY_ALGORITHM_DEFAULT = 0', 'AGB_LUMINOSITY_ALGORITHM_HURLEY = 1', 'AGB_LUMINOSITY_ALGORITHM_KARAKAS = 2']
 
 | **Parameter**: AGB_3dup_algorithm
 | **Description**: Algorithm to use for calculating third dredge up efficiency on the TPAGB.
 | **Parameter input type**: Integer
-| **Default value**: 2
+| **Default value**: 1
 | **Macros**: ['AGB_THIRD_DREDGE_UP_ALGORITHM_DEFAULT = 0', 'AGB_THIRD_DREDGE_UP_ALGORITHM_HURLEY = 1', 'AGB_THIRD_DREDGE_UP_ALGORITHM_KARAKAS = 2', 'AGB_THIRD_DREDGE_UP_ALGORITHM_STANCLIFFE = 3']
 
 | **Parameter**: overspin_algorithm
@@ -933,6 +1009,102 @@ Section: stars
 | **Parameter input type**: Boolean(scanf)
 | **Default value**: NULL
 
+| **Parameter**: orbiting_object
+| **Description**: Usage: --orbiting_object mass,spinrate,central_object,period.
+| **Parameter input type**: *
+| **Default value**: NULL
+| **Extra**: 1.0
+
+| **Parameter**: orbiting_objects_log
+| **Description**: If True, turn on orbiting-object log.
+| **Parameter input type**: True|False
+| **Default value**: False
+
+| **Parameter**: orbiting_objects_wind_accretion_multiplier
+| **Description**: Multiplier for wind accretion on orbiting objects. Hurley et al 2002 use 1.5, which is the default.
+| **Parameter input type**: Float
+| **Default value**: 1.5
+
+| **Parameter**: orbiting_objects_close_pc_threshold
+| **Description**: How close are orbiting objects allowed to be? Set this to be the absolute percentage difference minimum.
+| **Parameter input type**: Float
+| **Default value**: 1
+
+| **Parameter**: orbiting_objects_tides_multiplier
+| **Description**: Multiplier for tidal torques on orbiting objects.
+| **Parameter input type**: Float
+| **Default value**: 1
+
+| **Parameter**: evaporate_escaped_orbiting_objects
+| **Description**: If True, evaporate orbiting objects that have escaped the system.
+| **Parameter input type**: True|False
+| **Default value**: False
+
+| **Parameter**: RLOF_transition_objects_escape
+| **Description**: If True, objects that escape their Roche lobe are ejected from the system, otherwise they are placed just outside the minimum stable orbit.
+| **Parameter input type**: True|False
+| **Default value**: False
+
+| **Parameter**: PN_resolve
+| **Description**: If True, the timestep will be shortened to resolve better the PN phase (FALSE).
+| **Parameter input type**: True|False
+| **Default value**: False
+
+| **Parameter**: PN_resolve_minimum_luminosity
+| **Description**: The luminosity above which extra time resolution for PNe is applied (see PN_resolve).
+| **Parameter input type**: Float
+| **Default value**: 31.62
+
+| **Parameter**: PN_resolve_maximum_envelope_mass
+| **Description**: The envelope mass below which extra time resolution for PNe is applied (see PN_resolve).
+| **Parameter input type**: Float
+| **Default value**: 0.1
+
+| **Parameter**: PN_resolve_minimum_effective_temperature
+| **Description**: The minimum effective temperature above which extra time resolution for PNe is applied (see PN_resolve).
+| **Parameter input type**: Float
+| **Default value**: 12500
+
+| **Parameter**: PN_fast_wind
+| **Description**: If True, thin-envelope PNe will have fast winds (FALSE).
+| **Parameter input type**: True|False
+| **Default value**: False
+
+| **Parameter**: PN_fast_wind_dm_GB
+| **Description**: The envelope mass below which fast wind used during the GB if PN_fast_wind is TRUE. (See also PN_fast_wind, PN_fast_wind_mdot_GB)
+| **Parameter input type**: Float
+| **Default value**: 0.01
+
+| **Parameter**: PN_fast_wind_mdot_GB
+| **Description**: The envelope mass below which fast wind used during the GB if PN_fast_wind is TRUE. (See also PN_fast_wind, PN_fast_wind_mdot_GB)
+| **Parameter input type**: Float
+| **Default value**: 1e-06
+
+| **Parameter**: PN_fast_wind_dm_AGB
+| **Description**: The envelope mass below which fast wind used during the AGB if PN_fast_wind is TRUE. (See also PN_fast_wind, PN_fast_wind_mdot_AGB)
+| **Parameter input type**: Float
+| **Default value**: 0.001
+
+| **Parameter**: PN_fast_wind_mdot_AGB
+| **Description**: The envelope mass below which fast wind used during the GB if PN_fast_wind is TRUE. (See also PN_fast_wind, PN_fast_wind_mdot_AGB)
+| **Parameter input type**: Float
+| **Default value**: 1e-06
+
+| **Parameter**: HeWD_HeWD_ignition_mass
+| **Description**: HeWD-HeWD mergers above this mass reignite helium. (0.3)
+| **Parameter input type**: Float
+| **Default value**: 0.3
+
+| **Parameter**: wind_Nieuwenhuijzen_luminosity_lower_limit
+| **Description**: Above this luminosity we activate the Nieuwenhuijzen and de Jager wind (4e3 Lsun).
+| **Parameter input type**: Float
+| **Default value**: 4000
+
+| **Parameter**: wind_LBV_luminosity_lower_limit
+| **Description**: Above this luminosity we activate the LBV wind (6e5 Lsun).
+| **Parameter input type**: Float
+| **Default value**: 600000
+
 Section: binary
 ---------------
 
@@ -1241,7 +1413,7 @@ Section: binary
 | **Default value**: 1
 
 | **Parameter**: Bondi_Hoyle_accretion_factor
-| **Description**: Wind accretion rate, as calculated by the Bondi-Hoyle-Littleton formula, multiplcation factor. (Used to be called 'acc2' which is now deprecated.) Hurley et al 2002 use 1.5, which is the default.
+| **Description**: Wind accretion rate, as calculated by the Bondi-Hoyle-Littleton formula, multiplcation factor. Hurley et al 2002 use 1.5, which is the default.
 | **Parameter input type**: Float
 | **Default value**: 1.5
 
@@ -1275,20 +1447,18 @@ Section: binary
 | **Parameter**: type_Ia_MCh_supernova_algorithm
 | **Description**: Algorithm to be used when calculating type Ia yields from Chandrasekhar-mass exploders. 0 = DD7 (Iwamoto 1999), 1 = Seitenzahl 2013 3D hydro yields (you must also set Seitenzahl2013_model) 
 | **Parameter input type**: Integer
-| **Default value**: 0
-| **Macros**: ['TYPE_IA_MCH_SUPERNOVA_ALGORITHM_DD2 = 0', 'TYPE_IA_MCH_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1', 'TYPE_IA_MCH_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2']
+| **Default value**: NULL
 
 | **Parameter**: Seitenzahl2013_model
 | **Description**: Which of Seitenzahl et al. 2013's models to use? One of N1,N3,N5,N10,N20,N40,N100L,N100,N100H,N150,N200,N300C,N1600,N1600C,N100_Z0.5,N100_Z0.1,N100_Z0.01 (defaults to N100).
 | **Parameter input type**: String
-| **Default value**: N100
+| **Default value**: NULL
 | **Extra**: N1
 
 | **Parameter**: type_Ia_sub_MCh_supernova_algorithm
 | **Description**: Algorithm to be used when calculating type Ia yields from sub-Chandrasekhar-mass exploders. (Currently unused.)
 | **Parameter input type**: Integer
-| **Default value**: 0
-| **Macros**: ['TYPE_IA_SUB_MCH_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 0']
+| **Default value**: NULL
 
 | **Parameter**: max_HeWD_mass
 | **Description**: The maximum mass a HeWD can have before it ignites helium (0.7).
@@ -1340,79 +1510,91 @@ Section: binary
 | **Description**: Apply critical q=Mdonor/Maccretor value for low-mass main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.6944
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_MS
 | **Description**: Apply critical q=Mdonor/Maccretor value for (non-low mass) main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.6
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_HG
 | **Description**: Apply critical q=Mdonor/Maccretor value for Hertzsprung gap stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_GB
 | **Description**: Apply critical q=Mdonor/Maccretor value for first red giant branch stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_CHeB
 | **Description**: Apply critical q=Mdonor/Maccretor value for core helium burning stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_EAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for early-AGB stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_TPAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for TP-AGB stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_HeMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_HeHG
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium Hertzsprung gap stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_HeGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium red giant stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.78125
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_HeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_COWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for carbon-oxygen white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_ONeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for oxygen-neon white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_NS
 | **Description**: Apply critical q=Mdonor/Maccretor value for neutron stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_BH
 | **Description**: Apply critical q=Mdonor/Maccretor value for black holes to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
 
 | **Parameter**: qcrit_degenerate_LMMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for (low mass) main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
@@ -1567,7 +1749,7 @@ Section: binary
 | **Description**: Common envelope parameter. The binding energy of the common envelope is G*M*Menv/(lambda*R). Typically this is taken to be 0.5, but if set to -1 binary_c uses the Dewi and Tauris fits instead, -2 uses the formalism of Wang, Jia and Li (2016) and if -3 then a polytropic formalism is used (see also comenv_splitmass).
 | **Parameter input type**: Float
 | **Default value**: 0.5
-| **Macros**: ['LAMBDA_CE_DEWI_TAURIS = -1', 'LAMBDA_CE_WANG_2016 = -2', 'LAMBDA_CE_POLYTROPE = -3']
+| **Macros**: ['LAMBDA_CE_DEWI_TAURIS = -1', 'LAMBDA_CE_WANG_2016 = -2', 'LAMBDA_CE_POLYTROPE = -3', 'LAMBDA_CE_KLENCKI_2020 = -4']
 
 | **Parameter**: lambda_ce%d
 | **Description**: Common envelope parameter. The binding energy of the common envelope is G*M*Menv/(lambda*R). Typically this is taken to be 0.5, but if set to -1 binary_c uses the Dewi and Tauris fits instead, -2 uses the formalism of Wang, Jia and Li (2016) and if -3 then a polytropic formalism is used (see also comenv_splitmass).
@@ -1629,6 +1811,11 @@ Section: binary
 | **Parameter input type**: Float(scanf)
 | **Default value**: NULL
 
+| **Parameter**: cbdisc_albedo
+| **Description**: Circumbinary-disc albedo. Requires DISCS.
+| **Parameter input type**: Float
+| **Default value**: 0
+
 | **Parameter**: cbdisc_gamma
 | **Description**: Circumbinary disc gamma (equation of state) parameter. Requires DISCS.
 | **Parameter input type**: Float
@@ -1912,7 +2099,7 @@ Section: nucsyn
 | **Parameter**: NeNaMgAl
 | **Description**: Enables NeNaMgAl reaction network. Requires NUCSYN and NUCSYN_HBB.
 | **Parameter input type**: True|False
-| **Default value**: True
+| **Default value**: NULL
 | **Extra**: Ignore
 
 | **Parameter**: nucsyn_network%d
@@ -1933,21 +2120,19 @@ Section: nucsyn
 | **Parameter**: nucsyn_metallicity
 | **Description**: This sets the metallicity of the nucleosynthesis algorithms, i.e. the amount (by mass) of matter which is not hydrogen or helium. Usually you'd just set this with the metallicity parameter, but if you want the nucleosynthesis to be outside the range of the stellar evolution algorithm (e.g. Z=0 or Z=0.04) then you need to use nucsyn_metallicity. That said, it's also outside the range of some of the nucleosynthesis algorithms as well, so you have been warned!
 | **Parameter input type**: Float
-| **Default value**: -1
+| **Default value**: NULL
 | **Macros**: ['DEFAULT_TO_METALLICITY = -1']
 
 | **Parameter**: nucsyn_solver
 | **Description**: Choose the solver used in nuclear burning. 0 = KAPS_RENTROP is a Kaps-Rentrop scheme (fast, not great for stiff problems), 1 = LSODA (Adams/BSF switcher), 2 = CVODE library (https://computing.llnl.gov/projects/sundials. Default 0. 
 | **Parameter input type**: Unsigned integer
-| **Default value**: 0
-| **Macros**: ['NUCSYN_SOLVER_KAPS_RENTROP = 0', 'NUCSYN_SOLVER_LSODA = 1', 'NUCSYN_SOLVER_CVODE = 2', 'NUCSYN_SOLVER_NUMBER = 3', 'NUCSYN_SOLVER_KAPS_RENTROP = 0', 'NUCSYN_SOLVER_LSODA = 1', 'NUCSYN_SOLVER_CVODE = 2', 'NUCSYN_SOLVER_NUMBER = 3']
+| **Default value**: NULL
 | **Extra**: 0
 
 | **Parameter**: initial_abundance_mix
 | **Description**: initial abundance mixture: 0=AG89, 1=Karakas 2002, 2=Lodders 2003, 3=Asplund 2005 (not available?), 4=Garcia Berro, 5=Grevesse Noels 1993
 | **Parameter input type**: Unsigned integer
-| **Default value**: 0
-| **Macros**: ['NUCSYN_INIT_ABUND_MIX_AG89 = 0', 'NUCSYN_INIT_ABUND_MIX_KARAKAS2002 = 1', 'NUCSYN_INIT_ABUND_MIX_LODDERS2003 = 2', 'NUCSYN_INIT_ABUND_MIX_ASPLUND2005 = 3', 'NUCSYN_INIT_ABUND_MIX_GARCIABERRO = 4', 'NUCSYN_INIT_ABUND_MIX_GREVESSE_NOELS_1993 = 5', 'NUCSYN_INIT_ABUND_MIX_ASPLUND2009 = 6', 'NUCSYN_INIT_ABUND_MIX_KOBAYASHI2011_ASPLUND2009 = 7', 'NUCSYN_INIT_ABUND_MIX_LODDERS2010 = 8']
+| **Default value**: NULL
 | **Extra**: 0
 
 | **Parameter**: init_abund
@@ -1971,38 +2156,37 @@ Section: nucsyn
 | **Parameter**: init_abunds_only
 | **Description**: If True, outputs only the initial abundances, then exits.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 
 | **Parameter**: initial_abunds_only
 | **Description**: If True, outputs only the initial abundances, then exits.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 
 | **Parameter**: no_thermohaline_mixing
 | **Description**: If True, disables thermohaline mixing.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 
 | **Parameter**: lithium_GB_post_Heflash
 | **Description**: Sets the lithium abundances after the helium flash. Requires NUCSYN and LITHIUM_TABLES.
 | **Parameter input type**: Float
-| **Default value**: 0
+| **Default value**: NULL
 
 | **Parameter**: lithium_GB_post_1DUP
 | **Description**: Sets the lithium abundance after first dredge up. Requires NUCSYN and LITHIUM_TABLES.
 | **Parameter input type**: Float
-| **Default value**: 0
+| **Default value**: NULL
 
 | **Parameter**: lithium_hbb_multiplier
 | **Description**: Multiplies the lithium abundances on the AGB during HBB (based on Karakas/Fishlock et al models).Requires NUCSYN and LITHIUM_TABLES.
 | **Parameter input type**: Float
-| **Default value**: 1
+| **Default value**: NULL
 
 | **Parameter**: angelou_lithium_decay_function
 | **Description**: Functional form which describes Li7 decay. Requires NUCSYN and NUCSYN_ANGELOU_LITHIUM. Choices are: 0 expoential (see angelou_lithium_decay_time).
 | **Parameter input type**: Integer
 | **Default value**: NULL
-| **Macros**: ['ANGELOU_LITHIUM_DECAY_FUNCTION_EXPONENTIAL = 0']
 
 | **Parameter**: angelou_lithium_LMMS_time
 | **Description**: Time at which lithium manufacture is triggered in a low-mass (convective) main sequence (Myr). Requires NUCSYN and NUCSYN_ANGELOU_LITHIUM. Ignored if 0 (for the start, use 1e-6).
@@ -2131,7 +2315,12 @@ Section: output
 | **Parameter**: cf_amanda_log
 | **Description**: Enable logging to compare to Amanda's models.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
+
+| **Parameter**: float_overflow_checks
+| **Description**: Turn on to enable floating-point overflow checks at the end of each timestep, if they are available. 0=off, 1=warn (stderr) on failure, 2=exit on failure (0)
+| **Parameter input type**: Integer
+| **Default value**: 0
 
 | **Parameter**: save_pre_events_stardata
 | **Description**: Enable this to save a copy of stardata to stardata->pre_events_stardata just before an event.
@@ -2154,7 +2343,7 @@ Section: output
 | **Default value**: False
 
 | **Parameter**: ensemble_filter_%d
-| **Description**: Turn on or off ensemble filter <n>. For a list of filters, see esnemble_macros.h.
+| **Description**: Turn on or off ensemble filter <n>. For a list of filters, see ensemble_macros.h.
 | **Parameter input type**: Boolean(scanf)
 | **Default value**: NULL
 
@@ -2166,7 +2355,7 @@ Section: output
 | **Parameter**: legacy_yields
 | **Description**: Turn on ensemble legacy yield output.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 
 | **Parameter**: ensemble_defer
 | **Description**: Defer ensemble output.
@@ -2206,27 +2395,27 @@ Section: output
 | **Parameter**: EMP_logg_maximum
 | **Description**: Maximum logg that EMP stars are allowed to have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_minimum_age.
 | **Parameter input type**: Float
-| **Default value**: 4
+| **Default value**: NULL
 
 | **Parameter**: EMP_minimum_age
 | **Description**: Minimum age that EMP stars are required to have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_logg_maximum.
 | **Parameter input type**: Float
-| **Default value**: 10
+| **Default value**: NULL
 
 | **Parameter**: EMP_feh_maximum
 | **Description**: Maximum [Fe/H] that an EMP stars may have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default -2.0.
 | **Parameter input type**: Float
-| **Default value**: -2
+| **Default value**: NULL
 
 | **Parameter**: CEMP_cfe_minimum
 | **Description**: Minimum [C/Fe] that CEMP stars are required to have. See Izzard et al 2009. See also NEMP_cfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default 0.7.
 | **Parameter input type**: Float
-| **Default value**: 0.7
+| **Default value**: NULL
 
 | **Parameter**: NEMP_cfe_minimum
 | **Description**: Minimum [N/Fe] that NEMP stars are required to have. See Izzard et al 2009, Pols et al. 2012. See also CEMP_cfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default 1.0.
 | **Parameter input type**: Float
-| **Default value**: 1
+| **Default value**: NULL
 
 | **Parameter**: thick_disc_start_age
 | **Description**: Lookback time for the start of the thick disc star formation, e.g. 13e3 Myr. Units = Myr.
@@ -2377,6 +2566,12 @@ Section: input
 | **Default value**: NULL
 | **Extra**: 
 
+| **Parameter**: MINT_use_ZAMS_profiles
+| **Description**: Use chemical profiles at the ZAMS if MINT_use_ZAMS_profiles is TRUE, otherwise set homogeneous abundances. (Default is TRUE, so we use the profiles if they are available.)
+| **Parameter input type**: True|False
+| **Default value**: NULL
+| **Extra**: 
+
 | **Parameter**: MINT_disable_grid_load_warnings
 | **Description**: Use this to explicitly disable MINT's warnings when loading a grid with, e.g., missing or too much data.
 | **Parameter input type**: True|False
diff --git a/docs/source/conf.py b/docs/source/conf.py
index dc821f72be00f3d8a8731413cfb35ea9a4a02709..d21ca8e7b441ea8f59f5502c353c69d564cbaafb 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -19,10 +19,6 @@ import sphinx_rtd_theme
 
 # Include paths for python code
 sys.path.insert(0, os.path.abspath("."))
-# sys.path.insert(0, os.path.abspath("../../binarycpython"))
-# # sys.path.insert(0, os.path.abspath('../../examples'))
-# sys.path.insert(0, os.path.abspath("../../"))
-# sys.path.insert(0, os.path.abspath("../../binarycpython/utils"))
 sys.path.insert(0, os.path.join(os.getenv("BINARY_C"), "src/API/"))
 
 # include paths for c code
@@ -96,23 +92,9 @@ html_static_path = ["_static"]
 
 """Patching m2r2"""
 import m2r2
+from functions import patched_m2r2_setup
 
 current_m2r2_setup = m2r2.setup
-
-
-def patched_m2r2_setup(app):
-    try:
-        return current_m2r2_setup(app)
-    except (AttributeError):
-        app.add_source_suffix(".md", "markdown")
-        app.add_source_parser(m2r2.M2RParser)
-    return dict(
-        version=m2r2.__version__,
-        parallel_read_safe=True,
-        parallel_write_safe=True,
-    )
-
-
 m2r2.setup = patched_m2r2_setup
 
 # Generate some custom documentations for this version of binarycpython and binary_c
@@ -128,3 +110,9 @@ print("Done")
 print("Generating grid_options_descriptions.rst")
 write_grid_options_to_rst_file("grid_options_descriptions.rst")
 print("Done")
+
+# Generate a custom footer
+from functions import write_custom_footer
+print("Generating custom footer")
+write_custom_footer()
+print("Done")
\ No newline at end of file
diff --git a/docs/source/functions.py b/docs/source/functions.py
new file mode 100644
index 0000000000000000000000000000000000000000..add12e4c977071cc4ba5d6c86739899982129dfa
--- /dev/null
+++ b/docs/source/functions.py
@@ -0,0 +1,74 @@
+import os
+import jinja2
+import m2r2
+
+from binarycpython.utils.functions import call_binary_c_config
+
+from git import Repo
+
+def generate_browser_url(ssh_url, branch=None):
+    """
+    Function to generate the browser url for a git repo
+    """
+
+    base = ssh_url.split('@')[-1].replace('.git', '').replace(':','/').strip()
+
+    if not branch:
+        return 'https://{}'.format(base)
+    else:
+        return 'https://{}/-/tree/{}'.format(base, branch)
+
+def write_custom_footer():
+    """
+    Function to write the custom footer to the template file
+    """
+
+    TARGET_DIR = './_templates'
+
+    output_text = """
+{{% extends 'footer.html' %}}
+
+Generated on binarycpython git branch: {binarycpython_git_branch} git revision {binarycpython_git_revision} url: <a href src="{binarycpython_git_url}">git url</a>.
+Using binary_c with bit branch {binary_c_git_branch}: git revision: {binary_c_git_revision} url: <a href src="{binary_c_git_url}">git url</a>.
+
+{{% endblock %}}
+    """
+
+    binary_c_git_branch = call_binary_c_config('git_branch').strip()
+    binary_c_git_revision = call_binary_c_config('git_revision').strip()
+    binary_c_git_url = generate_browser_url(call_binary_c_config('git_url').strip(), binary_c_git_branch)
+
+    # for binarycpython git
+    base_dir = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
+    local_repo = Repo(path=base_dir)
+
+    binarycpython_git_branch = local_repo.active_branch.name
+    binarycpython_git_revision = local_repo.active_branch.commit
+    binarycpython_git_url = generate_browser_url(local_repo.remotes.origin.url, binarycpython_git_branch)
+
+    formatted_text = output_text.format(
+            binarycpython_git_branch=binarycpython_git_branch,
+            binarycpython_git_revision=binarycpython_git_revision,
+            binarycpython_git_url=binarycpython_git_url,
+
+            binary_c_git_branch=binary_c_git_branch,
+            binary_c_git_revision=binary_c_git_revision,
+            binary_c_git_url=binary_c_git_url,
+        ).strip()
+
+    # Write to file
+    with open("_templates/footer.html", 'w') as outfile_filehandle:
+        outfile_filehandle.write(formatted_text)
+
+
+def patched_m2r2_setup(app):
+    try:
+        return current_m2r2_setup(app)
+    except (AttributeError):
+        app.add_source_suffix(".md", "markdown")
+        app.add_source_parser(m2r2.M2RParser)
+    return dict(
+        version=m2r2.__version__,
+        parallel_read_safe=True,
+        parallel_write_safe=True,
+    )