Warning: Trying to access array offset on value of type null in /home/site/wwwroot/lib/plugins/move/action/rename.php on line 42

Warning: Cannot modify header information - headers already sent by (output started at /home/site/wwwroot/lib/plugins/move/action/rename.php:42) in /home/site/wwwroot/inc/actions.php on line 38
get_values [topas wiki]

User Tools

Site Tools


get_values

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
get_values [2020/03/18 19:05] – created johnsoevansget_values [2024/02/22 16:32] (current) – created - external edit 127.0.0.1
Line 1: Line 1:
 +====== Get(parameters) ======
 +It's often useful to "Get" parameters to use in INP files or for writing out.  For example, if you wanted to equate cell parameters for a tetragonal structure you might use:
  
 +<code topas>
 +a @ 4.132
 +b = Get(a);
 +</code>
 +
 +There are hundreds of different parameters you can "Get" Try searching the technical reference manual or topas.inc.
 +
 +You could also try looking through the text below.  This is a text version of the file rttem9.dxx in your TOPAS directory.  It contains some TOPAS definitions.  It's not meant to be user-friendly!
 +
 +For example, you should be able to search the file to figure out that the command to get the number of parameters in a refinement is: Get(number_independent_parameters).
 +
 +<code topas>
 +start_out_side_recs
 +{ top_out_side
 +   { ^exts_load
 +      { brml { r load_brml_single } }
 +      { raw { r load_raw_single } }
 +      { rd { r load_raw_single } }
 +      { dat { r load_dat } }
 +      { xdd { r load_xdd } }
 +      { sst { r load_sst } }
 +      { cpt { r load_xdd } }
 +      { cal { r load_xdd } }
 +      { bkg { r load_xdd } }
 +      { ln  { r load_xdd } }
 +      { dif { r load_xdd } }
 +      { cpi { r load_cpi } }
 +      { xy  { r load_xy } }
 +      { scr { r load_scr } }
 +      { xye { r load_xye } }
 +      { vct { r load_vct } }
 +      { gsas { r load_gsas } }
 +      { fullprof { r load_fullprof } }
 +      { hkl {
 +         u scrysts [ r load_hkl ]
 +      } }
 +      { hkl-lam { r load_hkl_lam } }
 +      { uxd { r load_uxd } }
 +   }
 +   { log_file { riet.log } }
 +   { ^prms_from_to
 +      { Rp  { r radius_p } }
 +      { Rs  { r radius_s } }
 +      { X   { r xdd_x } }
 +      { Lam { r pk_to_Lam } }
 +      { Th  { r pk_to_Th } }
 +      { Xo  { r pk_to_Xo } }
 +      { D_spacing  { r pk_to_D } }
 +      { H   { r pk_to_H } }
 +      { K   { r pk_to_K } }
 +      { L   { r pk_to_L } }
 +      { M   { r pk_to_M } }
 +      { Mobs   { r pk_to_Mobs } }
 +      { Laue_Lam  { r pk_to_Laue_Lam } }
 +      { Mi  { r pk_to_Mi } }
 +      { I_after_scale_pks { r I_after_scale_pks } }
 +      { I_no_scale_pks { r I_no_scale_pks } }
 +      { Ri  { r pk_to_Ri } }
 +      { R   { r site_radius } }
 +      { Lpa   { r a } }
 +      { Lpb   { r b } }
 +      { Lpc   { r c } }
 +      { Yobs   { r pk_to_yobs } }
 +      { Xi  { r pk_to_xi } }
 +      { FT_K  { r pk_to_FT_K } }
 +      { WPPM_L  { r pk_to_WPPM_L } }
 +      { Ycalc   { r pk_to_ycalc } }
 +      { Fobs   { r pk_to_Fobs } }
 +      { Fcalc   { r pk_to_Fcalc } }
 +      { SigmaYobs { r pk_to_sigmayobs } }
 +      { A_star { r arec } }
 +      { B_star { r brec } }
 +      { C_star { r crec } }
 +      { Peak_Calculation_Step { r x_calculation_step } }
 +      { T { r temperature } }
 +      { Iter { r to_iter } }
 +      { Cycle { r to_cycle } }
 +      { Cycle_Iter { r to_cycle_iter } }
 +      { A01 { r f_A01 } }
 +      { A11 { r f_A11 } }
 +      { B01 { r f_B01 } }
 +      { B11 { r f_B11 } }
 +      { Iobs_no_scale_pks { r pk_to_Iobs } }
 +      { Iobs_no_scale_pks_err { r pk_to_Iobs_err } }
 +      { QR_Removed { r qr_removed } }
 +      { QR_Num_Times_Consecutively_Small { r qr_n_small } }
 +   }
 +   { ^prm_defaults
 +      { corrected {
 +         FMT_EL
 +         } }
 +      { el_wtp {
 +         FMT_EL
 +         } }
 +      { el_wtp_known {
 +         FMT_EL
 +         } }
 +      { lo {
 +         del = 0.05 (3.141/180) 2 Get(pk_to_D) Cos(Get(pk_to_Th)) Get(x_calculation_step);
 +         min = Max(.01, Val-.01);
 +         max = Min(100, Val+.01);
 +         fmt_val %-1.7f
 +         } }
 +      { la {
 +         del 0.01
 +         min .00001
 +         max = 2 Val + .1;
 +         FMT_5
 +         } }
 +      { lh {
 +          del = .01 Abs(Val) + 3 17.453293 (1/Tan(Get(pk_to_Th))) Get(x_calculation_step);
 +         min 1e-6
 +         max 5
 +         FMT_5
 +         } }
 +      { lg {
 +         min 1e-6
 +         max 5
 +          del = .001 Abs(Val) + 3 17.453293 (1/Tan(Get(pk_to_Th))) Get(x_calculation_step);
 +         FMT_5
 +         } }
 +      { a  { LP_a_  } }
 +      { b  { LP_a_  } }
 +      { c  { LP_a_  } }
 +      { al { LP_al_ } }
 +      { be { LP_al_ } }
 +      { ga { LP_al_ } }
 +      { scale {
 +         min 1e-15
 +         del = Abs(Val) 0.003 + 1e-10;
 +         fmt_val %-.9g fmt_err %-.4g
 +         } }
 +      { x {
 +         del = Constant(.1 / Get(a));
 +         min = Val-Constant(1/Get(a));
 +         max = Val+Constant(1/Get(a));
 +         FMT_5
 +         } }
 +      { y {
 +         del = Constant(.1 / Get(b));
 +         min = Val-Constant(1/Get(b));
 +         max = Val+Constant(1/Get(b));
 +         FMT_5
 +         } }
 +      { z {
 +         del = Constant(.1 / Get(c));
 +         min = Val-Constant(1/Get(c));
 +         max = Val+Constant(1/Get(c));
 +         FMT_5
 +           }
 +      { sx {
 +         del = Constant(.1 / Get(a));
 +         min = Val-Constant(1/Get(a));
 +         max = Val+Constant(1/Get(a));
 +         FMT_5
 +         } }
 +      { sy {
 +         del = Constant(.1 / Get(b));
 +         min = Val-Constant(1/Get(b));
 +         max = Val+Constant(1/Get(b));
 +         FMT_5
 +         } }
 +      { sz {
 +         del = Constant(.1 / Get(c));
 +         min = Val-Constant(1/Get(c));
 +         max = Val+Constant(1/Get(c));
 +         FMT_5
 +           }
 +      { sh_Cij_prm {
 +         del = If(Val < 0, -0.01, .01) + .01 Val;
 +         min = -Abs(Val) 2 - .1;
 +         max =  Abs(Val) 2 + .1;
 +         FMT_5
 +         } }
 +      { occ   {
 +         del 1e-5
 +         min 0
 +         max = 2 Val + 1;
 +         FMT_5
 +         } }
 +      { scale_occ   {
 +         del 1e-5
 +         min 0
 +         max = 2 Val + 1;
 +         FMT_5
 +         } }
 +      { pdf_zero   {
 +         min -0.2
 +         max  0.2
 +         FMT_5
 +         } }
 +      { pdf_gauss_fwhm {
 +         min 1e-6
 +         FMT_5
 +         } }
 +      { beq   {
 +         del = If(Val < 0, -0.01, .01) + .05 Val;
 +         min = Max(-10, Val-10);
 +         max = Min( 20, Val+10);
 +         FMT_5
 +         } }
 +      { prm_10   {
 +         del .00001 
 +         fmt_val %.9g fmt_err %.9g
 +         } }
 +      { loc_10   {
 +         del .00001 
 +         fmt_val %.9g fmt_err %.9g
 +         } }
 +      { cell_volume      { fmt_val %-1.3f fmt_err %-1.3f  } }
 +      { cell_mass      { fmt_val %-1.3f fmt_err %-1.3f  } }
 +      { weight_percent { fmt_val %-1.3f fmt_err %-1.3f  } }
 +      { lpsd_th2_angular_range_degrees {
 +          min = .0001;
 +         max = 1.5 Val + .1;
 +         del = 0.01 Val + .01;
 +         FMT_5
 +         }}
 +      { lpsd_equitorial_divergence_degrees {
 +         del = 0.01 Val + 0.001;
 +          min = .0001;
 +         max = 1.5 Val + .1;
 +         FMT_5
 +         }}
 +      { lpsd_equitorial_sample_length_mm {
 +         del = 0.01 Val + .1;
 +          min = .0001;
 +         max = 1.5 Val + 1;
 +         FMT_5
 +         }}
 +      { capillary_diameter_mm {
 +         del = If ( (Val Constant(1/Get(radius_p))) < (Get(x_calculation_step) C_PI_on_180), 1, -1) (Val 0.01 + Get(x_calculation_step) C_PI_on_180);
 +          min = .01;
 +         max = Min(2 Val + 1, Constant(Get(radius_p) 0.05));
 +         FMT_5
 +         }}
 +      { capillary_u_cm_inv {
 +         del = Abs(Val) 0.01 + 0.01;
 +          min = Max(Val 0.5, 3);
 +         max = Min(2 Val + 1, 500);
 +         FMT_5
 +         }}
 +      { capillary_focal_length_mm {
 +         del = Abs(Val) 0.01 + 0.01;
 +          min = Max(Val 0.5, 3);
 +         max = Min(2 Val + 1);
 +         FMT_5
 +         }}
 +      { source_len {
 +         min .0001
 +         max = 2 Val + 1;
 +         del = Abs(Val) .01 + 0.05;
 +         FMT_5
 +         } }
 +      { sam_len {
 +         min .0001
 +         max = 2 Val + 1;
 +         del = Abs(Val) .01 + 0.05;
 +         FMT_5
 +         } }
 +      { rs_len {
 +         min .0001
 +         max = 2 Val + 1;
 +         del = Abs(Val) .01 + 0.05;
 +         FMT_5
 +         } }
 +      { prim_soll {
 +         min .0001
 +         max = 2 Val + 1;
 +         del = Abs(Val) .01 + 0.05;
 +         FMT_5
 +         } }
 +      { second_soll {
 +         min .0001
 +         max = 2 Val + 1;
 +         del = Abs(Val) .01 + 0.05;
 +         FMT_5
 +         } }
 +      { m1  {
 +         min .75
 +         max 30
 +         del = -Abs(Val - .75) .05 - .005;
 +         } }
 +      { m2  {
 +         min .75
 +         max 30
 +         del = -Abs(Val - .75) .05 - .005;
 +         } }
 +      { pv_fwhm    { H_DEL__ } }
 +      { pv_lor    { LOR_DEL__ } }
 +
 +      { h1        { H_DEL__ } }
 +      { h2        { H_DEL__ } }
 +
 +      { spv_h1     { H_DEL__ } }
 +      { spv_h2     { H_DEL__ } }
 +      { spv_l1     { LOR_DEL__ } }
 +      { spv_l2     { LOR_DEL__ } }
 +
 +      { whole_hat       { CONV_DEL_PVE__ MIN_FMT_PVE_ } }
 +      { hat_prm          { CONV_DEL_PVE__ MIN_FMT_PVE_ } }
 +
 +      { lor_conv          { CONV_DEL_PVE__ MIN_FMT_PVE_ } }
 +      { gauss_conv       { CONV_DEL_PVE__ MIN_FMT_PVE_ } }
 +
 +      { half_hat          { CONV_DEL__ FMT_5 } }
 +      { one_on_x_prm    { CONV_DEL__ FMT_5 } }
 +      { exp_limit       { CONV_DEL__ FMT_5 } }
 +      { exp_prm          { CONV_DEL__ FMT_5 } }
 +      { circles_prm       { CONV_DEL__ FMT_5 } }
 +
 +      { scale_top_peak { del 0.01 } }
 +      { set_top_peak_area { del 0.01 } }
 +      { mg { MIN_FMT_PVE_ } }
 +      { mlx { FMT_5 } }
 +      { mly { FMT_5 } }
 +      { mlz { FMT_5 } }
 +
 +      { dprm { min 0.000001 }   }
 +      { xo {
 +         min = Max(X1, Val - 40 Get(x_calculation_step));
 +         max = Min(X2, Val + 40 Get(x_calculation_step));
 +         } }
 +      { iprm {
 +         min 1.0e-15
 +         fmt_val %-.9g fmt_err %-.4g
 +         dr def_iprm
 +         } }
 +      { rotate_prm {
 +         min = Val-180;
 +         max = Val+180;
 +         del 1
 +         FMT_5
 +         } }
 +      { rx {
 +         min = If(Get(in_cart), Val-1, Val-Constant(1/Get(a)));
 +         max = If(Get(in_cart), Val+1, Val+Constant(1/Get(a)));
 +         del = If(Get(in_cart), .1, Constant(.1/Get(a)));
 +         FMT_5
 +         } }
 +      { ry {
 +         min = If(Get(in_cart), Val-1, Val-Constant(1/Get(b)));
 +         max = If(Get(in_cart), Val+1, Val+Constant(1/Get(b)));
 +         del = If(Get(in_cart), .1, Constant(.1/Get(b)));
 +         FMT_5
 +         } }
 +      { rz {
 +         min = If(Get(in_cart), Val-1, Val-Constant(1/Get(c)));
 +         max = If(Get(in_cart), Val+1, Val+Constant(1/Get(c)));
 +         del = If(Get(in_cart), .1, Constant(.1/Get(c)));
 +         FMT_5
 +         } }
 +      { r {
 +         min = Max(0.5, Val .5);
 +         max = 2 Val; del .05
 +         FMT_5
 +         } }
 +      { a1 {
 +         min = Val - 90;
 +         max = Val + 90;
 +         del 1
 +         FMT_5
 +         } }
 +      { a2 {
 +         min = Val - 90;
 +         max = Val + 90;
 +         del 1
 +         FMT_5
 +         } }
 +      { u11 {
 +         min 0
 +         max = Min(20, Val 2 + .05);
 +         FMT_5
 +         } }
 +      { u22 {
 +         min 0
 +         max = Min(20, Val 2 + .05);
 +         FMT_5
 +         } }
 +      { u33 {
 +         min 0
 +         max = Min(20, Val 2 + .05);
 +         FMT_5
 +         } }
 +      { u12 {
 +         min = Max(-10, Val If(Val < 0, 2, .5) - .025);
 +         max = Min( 10, Val If(Val < 0, .5, 2) + .025);
 +         FMT_5
 +         } }
 +      { u13 {
 +         min = Max(-10, Val If(Val < 0, 2, .5) - .025);
 +         max = Min( 10, Val If(Val < 0, .5, 2) + .025);
 +         FMT_5
 +         } }
 +      { u23 {
 +         min = Max(-10, Val If(Val < 0, 2, .5) - .025);
 +         max = Min( 10, Val If(Val < 0, .5, 2) + .025);
 +         FMT_5
 +         } }
 +      { protein_As { 
 +         min = -2 Abs(Val) - 1; 
 +         max =  2 Abs(Val) + 1; 
 +         FMT_5
 +      } }
 +      { protein_Bs { 
 +         min = -2 Abs(Val) - 1; 
 +         max =  2 Abs(Val) + 1; 
 +         FMT_5
 +      } }
 +   }
 +   { ^input_codes
 +      { default }
 +      { ^generate_stack_sequences
 +         { save_sequences { B save_sequences } }
 +         { save_sequences_as_strs { B save_sequences d generate_stack_sequences as } }
 +         { number_of_sequences { B number_of_sequences } }
 +         { number_of_stacks_per_sequence { B number_of_stacks_per_sequence } }
 +         { n_avg { B n_avg } }
 +         { layers_tol { B layers_tol } }
 +         { num_unique_vx_vy { r num_unique_vx_vy D } }
 +         { match_transition_matrix_stats { B match_transition_matrix_stats } }
 +         { user_defined_starting_transition { r user_defined_starting_transition D } }
 +         { transition { q transition D } }
 +            { use_layer { B use_layer } }
 +            { height { r t_height d ^ a D } }
 +            { to { q t_to D r to_transition_prob D } }
 +               { n { r t_n D } }
 +               { ta { r t_a D } }
 +               { tb { r t_b D } }
 +               { tz { r t_z D } }
 +               { a_add { r t_a d ^ a D } }
 +               { b_add { r t_b d ^ a D } }
 +               { z_add { r t_z d ^ a D } }
 +      }
 +      { ^pdf_generate
 +         { dr { r dr D } }
 +         { r_max { r r_max D } }
 +         { x_axis_is_Th2 { r x_axis_is_Th2 D } }
 +         { gr_sst_file { r gr_sst_file D } }
 +         { gr_to_fq { r gr_to_fq D } }
 +         { hat { r hat D } }
 +            { num_hats { r num_hats D } }
 +      }
 +      { ^riet_user_input_codes
 +         { xo_Is   { q xi } }
 +         { d_Is    { q di } }
 +         { xo     { q xo D } }
 +         { d      { q dprm D } }
 +
 +         { element_weight_percent { q element D B el_wtp } }
 +         { element_weight_percent_known { q element_known D B el_wtp_known } }
 +         { elemental_composition { B elemental_composition } }
 +         { calculated_data_from { r calculated_data_from D } }
 +
 +         { weight_percent    { B weight_percent s lnched ! [ g elemental_composition ] } }
 +         { str_mass           { B cell_mass } }
 +         { cell_mass           { B cell_mass } }
 +         { no_LIMIT_warnings { g no_LIMIT_warnings } }
 +         { more_accurate_Voigt { U more_accurate_Voigt } }
 +
 +         { include { -include riet_user_input_codes } }
 +         { remove_phase { B remove_phase } }
 +         { out_dependences_for { h q out_dependences_for D k } }
 +         { out_dependences { h q out_dependences D k } }
 +
 +         { out_Tji { B out_Tji } }
 +         { xdd_scr {
 +            u Ttree_app [
 +               s lnched [
 +                  r scrysts r xdd_recs q xdd B xdd_path_name
 +               ] [
 +                  R
 +               ]
 +            ] [
 +               r scrysts r xdd_recs q xdd B xdd_path_name
 +            ]
 +         } }
 +         { layer { q site_layer D n site ^ } }
 +         { stack_sequence { r str_layers n stack_sequences ^ } }
 +         { generate_stack_sequences { -keyword_group generate_stack_sequences r generate_stack_sequences } }
 +         { stack { r str_layers q stack D n stack_sequences ^ } }
 +            { sx { r sx D } }
 +            { sy { r sy D } }
 +            { sz { r sz D } }
 +            { generate_these { r generate_these D } }
 +            { generate_name_append { r generate_name_append D } }
 +         { f0_f1_f11_atom { q f0_f1_f11_atom D } }
 +         { f0 { B f0 } }
 +         { f1 { B f1 } }
 +         { f11 { B f11 } }
 +         { report_on_str { d str report_on_str } }
 +         { neutron_data   { g neutron } }
 +         { pdf_generate { -keyword_group pdf_generate r pdf_generate } }
 +         { pdf_data { g pdf_data } }
 +         { pdf_zero { r pdf_zero D } }
 +         { pdf_single_unit_cell { r pdf_single_unit_cell D } }
 +         { pdf_ymin_on_ymax { r pdf_ymin_on_ymax D } }
 +         { pdf_min_r_for_fwhm { r pdf_min_r_for_fwhm D } }
 +         { pdf_gauss_approx_i { r pdf_gauss_approx_i D } }
 +         { pdf_scale_simple { d pdf ss } }
 +         { pdf_for_pairs { q pdf_for_pairs D B pdf_pairs_1 B pdf_pairs_2 } }
 +            { pdf_only_eq_0 { d pdf_for_pairs 0 } }
 +         { pdf_gauss_fwhm { r pdf_gauss_fwhm D } }
 +         { pdf_info { r pdf_info D } }
 +         { pdf_convolute { q pdf_convolute D } }
 +            { min_X { r min_X D } }
 +            { max_X { r max_X D } }
 +            { convolute_X_recal { r convolute_X_recal D } }
 +         { pdf_ft_conv { q pdf_convolute D d ^ f } }
 +
 +         { spiked_phase_measured_weight_percent { r spiked_mwp D } }
 +         { corrected_weight_percent { r corrected_weight_percent D } }
 +         { weight_percent_amorphous { r weight_percent_amorphous D } }
 +
 +         { crystalline_area { B crystalline_area } }
 +         { amorphous_area { B amorphous_area } }
 +         { degree_of_crystallinity { B degree_of_crystallinity } }
 +         { numerical_area { B numerical_area } }
 +         { amorphous_phase { g amorphous_phase } }
 +
 +         { str_closest { r str_closest D } }
 +         { closest { B closest } }
 +         { siv_s1_s2 { B siv_s1 B siv_s2 } }
 +         { grs_interaction { A grs_inter } }
 +         { box_interaction { A box_inter } }
 +         { atomic_interaction { q atomic_interaction D } }
 +         { ai_anti_bump { q ai_anti_bump D } }
 +         { ai_radius { B ai_radius } }
 +         { ai_sites_1 { B ai_sites_1 } }
 +         { ai_sites_2 { B ai_sites_2 } }
 +         { ai_closest_N { B ai_closest_N } }
 +         { ai_no_self_interation { g ai_no_self_interation } }
 +         { ai_only_eq_0 { g ai_only_eq_0 } }
 +         { ai_exclude_eq_0 { g ai_exclude_eq_0 } }
 +         { ai_flatten_with_tollerance_of { r ai_flatten_with_tollerance_of D } }
 +         { sites_distance { q sites_distance D } }
 +         { sites_angle { q sites_angle D } }
 +         { sites_flatten { q sites_flatten D } }
 +         { sites_flatten_tol { r sites_flatten_tol D } }
 +         { site_to_restrain { q site_to_restrain D } }
 +         { sites_geometry { q sites_geometry D } }
 +
 +         { xdds  { xdd_fit_ndx } }
 +         { sites  { site_recs } }
 +         { strs  { str_recs } }
 +         { hklis { hklis } }
 +         { xo_Iss { xis } }
 +         { d_Iss { dis } }
 +         { min_r   { U min_r D } }
 +         { max_r   { U max_r D } }
 +         { rand_xyz   { B rand_xyz } }
 +         { str_hkl_angle { A hkl_angle } }
 +         { hkl_I_d2Th_dL { r hkl_I_d2Th_dL D } }
 +         { march_dollase { q march_dollase D } }
 +         { fft_max_order { r fft_max_order D n riet_app_3 ^ } }
 +         { str_max_mem_MBytes { -str_max_mem } }
 +
 +         { dont_merge_equivalent_reflections { d str dmer } }
 +         { dont_merge_Friedel_pairs { d str dmerFp } }
 +         { ignore_differences_in_Friedel_pairs { d str idFp } }
 +         { num_highest_I_values_to_keep { B keep_N_I_values } }
 +         { Flack { r Flack D } }
 +         { gui_tof_t0 { B tof_t0 } }
 +         { gui_tof_t1 { B tof_t1 } }
 +         { i_on_error_ratio_tolerance { B ion_err_toll } }
 +         { occ_merge    { q occ_merge D } }
 +            { occ_merge_radius  { r occ_merge_radius D } }
 +         { normalize_FCs { g normalize_FCs } }
 +         { site    { q site D } }
 +            { x    { r x D } }
 +            { y    { r y D } }
 +            { z    { r z D } }
 +            { inter { r site_inter  D } }
 +            { num_posns    { B num_posns } }
 +            { occ          { q atom D r occ D } }
 +            { scale_occ   { B scale_occ } }
 +               { beq       { r beq D } }
 +            { adps  { -pbins r adps n ios_to_save ^ D } }
 +            { u11   { r u11 D } }
 +            { u22   { r u22 D } }
 +            { u33   { r u33 D } }
 +            { u12   { r u12 D } }
 +            { u13   { r u13 D } }
 +            { u23   { r u23 D } }
 +            { mlx { r mlx D } }
 +            { mly { r mly D } }
 +            { mlz { r mlz D } }
 +            { mg { r mg D } }
 +         { create_pks_name { r create_pks_name D } }
 +         { create_pks_fn { r create_pks_fn D } }
 +         { create_pks_equal_I { g create_pks_equal_I } }
 +         { no_f11 { g no_f11 } }
 +         { protein_As { B protein_As } }
 +         { protein_Bs { B protein_Bs } }
 +         { rigid { u str ! [ r rgds_ed ] q rigid } }
 +         { str {
 +            u xdd [
 +               q str
 +            ] [
 +               r strs_ed
 +               q str
 +            ]
 +         } }
 +
 +         { dummy_str { r dstrs q str d ^ dummy_str } }
 +         { hkl_plane { q hkl_plane D } }
 +         { point_for_site { q point_for_site B site_name } }
 +         { z_matrix { q zmat_pfs B site_name D } }
 +         { rotate { q rotate r rotate_prm D } }
 +         { translate { q translate } }
 +         { operate_on_points { B operate_on_points } }
 +         { start_values_from_site { B start_values_from_site } }
 +         { in_cartesian { j in_cart 1 } }
 +         { in_FC { j in_cart 0 } }
 +         { ux { r rx D } }
 +         { uy { r ry D } }
 +         { uz { r rz D } }
 +         { qx { r rx D j in_cart 1 } }
 +         { qy { r ry D j in_cart 1 } }
 +         { qz { r rz D j in_cart 1 } }
 +         { tx { r rx D j in_cart 1 } }
 +         { ty { r ry D j in_cart 1 } }
 +         { tz { r rz D j in_cart 1 } }
 +
 +         { ua { r rx D j in_cart 0 } }
 +         { ub { r ry D j in_cart 0 } }
 +         { uc { r rz D j in_cart 0 } }
 +         { qa { r rx D } }
 +         { qb { r ry D } }
 +         { qc { r rz D } }
 +         { ta { r rx D } }
 +         { tb { r ry D } }
 +         { tc { r rz D } }
 +
 +         { spherical_harmonics_hkl { q sh_hkl D } }
 +         { normals_plot { r normals_plot D } }
 +            { normals_plot_min_d { r normals_plot_min_d D } }
 +
 +         { phase_penalties { q phase_penalties D } }
 +            { hkl_Re_Im { B hkl_Re_Ims } }
 +            { phase_penalties_population { r phase_penalties_population D r phase_penalties n post_iter_2 ^ n on_converged ^ } }
 +               { phase_penalties_allowed_visits { r phase_penalties_allowed_visits D } }
 +            { accumulate_phases_and_save_to_file { r accumulate_phases_and_save_to_file D } }
 +               { accumulate_phases_when { r accumulate_phases_when D } }
 +               { accumulate_phases_sample_when { r accumulate_phases_sample_when D } }
 +            { determine_phases { B determine_phases } }
 +               { number_of_highest_intensities_to_work_with { B number_of_highest_intensities_to_work_with } }
 +               { number_of_cycles_for_initial_intensity_determination { B number_of_cycles_for_initial_intensity_determination } }
 +               { maximum_number_of_phase_configurations { B maximum_number_of_phase_configurations } }
 +               { error_tollerance { B error_tollerance } }
 +               { phase_tollerance { B phase_tollerance } }
 +               { determine_phases_when { B determine_phases_when } }
 +               { link_with_surpressor_phase_penalties { B link_with_surpressor_phase_penalties } }
 +               { number_of_hkls_for_link { B number_of_hkls_for_link } }
 +         { sh_alpha { r sh_alpha D  } }
 +         { sh_order { B sh_order } }
 +         { sh_Cij_prm { q sh_Cij_prm D  } }
 +
 +         { phase_MAC { B phase_MAC } }
 +         { mixture_MAC { B mixture_MAC } }
 +         { mixture_density_g_on_cm3  { B mixture_density_g_on_cm3 } }
 +         { brindley_spherical_r_cm { B br_sp_r } }
 +         
 +         
 +         { charge_flipping { r charge_flipping } }
 +         { F2_pow { r F2_pow D } }
 +         { cf_hkl_file { r cf_hkl_file D } }
 +            { cf_merged { g cf_merged } }
 +         { cf_in_A_matrix { r cf_in_A_matrix D } }
 +         { scale_Aij { B scale_Aij } }
 +         { min_d { r min_d D } }
 +         { delete_observed_reflections { r delete_observed_reflections D } }
 +         { fraction_density_to_flip { r fraction_density_to_flip D } }
 +         { scale_flipped { r scale_flipped D } }
 +         { flip_equation { q flip_equation D } }
 +         { flip_regime_2 { q flip_regime_2 D } }
 +         { flip_regime_3 { q flip_regime_3 D } }
 +         { flip_regime_4 { q flip_regime_4 D } }
 +         { flip_neutron { q flip_neutron D } }
 +         { user_threshold { r user_threshold D } }
 +
 +         { fraction_reflections_weak { r fraction_reflections_weak D } }
 +         { min_F_non_weak { r min_F_non_weak D } }
 +         { cf_plot_histo { r cf_plot_histo D } }
 +         { cf_set_phases { r cf_set_phases D } }
 +
 +         { set_initial_phases_to { B set_initial_phases_to } }
 +            { use_Fc { g use_Fc } }
 +         { randomize_initial_phases_by { r randomize_initial_phases_by D } }
 +         { add_to_phases_of_non_weak_reflections { q add_to_phases_of_non_weak_reflections D } }
 +         { obey_symm { r obey_symm D } }
 +
 +         { atp_merged { r atp_merged D } }
 +         { atp_weak_rand_plus_minus { q atp_weak_rand_plus_minus D } }
 +         { atp_non_weak_rand_plus_minus { q atp_non_weak_rand_plus_minus D } }
 +
 +         { add_to_phases_of_weak_reflections { q add_to_phases_of_weak_reflections D } }
 +         { scale_weak_reflections { r scale_weak_reflections D } }
 +         { scale_non_weak_reflections { r scale_non_weak_reflections D } }
 +         { apply_exp_scale { r apply_exp_scale D } }
 +         { exp_scale_b_start { r exp_scale_b_start D } }
 +         { scale_F { r scale_F D } }
 +         { scale_E { r scale_E D } }
 +         { break_cycle_if_true { r break_cycle_if_true D } }
 +         { symmetry_obey_0_to_1 { r symmetry_obey_0_to_1 D } }
 +         { find_origin { r find_origin D } }
 +            { find_origin_percent_ok       { r find_origin_percent_ok D } }
 +         { histogram_match_scale_fwhm { r histogram_match_scale_fwhm D } }
 +            { hm_size_limit_in_fwhm { r hm_size_limit_in_fwhm D } }
 +            { hm_covalent_fwhm { r hm_covalent_fwhm D } }
 +            { hm_weighting { r hm_weighting D } }
 +            { hm_weighting_2 { r hm_weighting_2 D } }
 +            { hm_max_gauss { r hm_max_gauss D } }
 +            { hm_fraction_do { r hm_fraction_do D } }
 +            { hm_do_rest { r hm_do_rest D } }
 +            { hm_scale_rest { r hm_scale_rest D } }
 +            { hm_scale { r hm_scale D } }
 +            { hm_plot { r hm_plot D } }
 +         { tangent_scale_difference_by { r tangent_scale_difference_by D } }
 +         { tangent_num_h_read { r tangent_num_h_read D } }
 +         { tangent_num_k_read { r tangent_num_k_read D } }
 +         { tangent_num_h_keep { r tangent_num_h_keep D } }
 +         { tangent_max_triplets_per_h { r tangent_max_triplets_per_h D } }
 +         { tangent_min_triplets_per_h { r tangent_min_triplets_per_h D } }
 +         { tangent_tiny { r tangent_tiny D } }
 +         { tangent_max_al_sum_allowed { r tangent_max_al_sum_allowed D } }
 +         { tangent_include { r tangent_include D } }
 +         { correct_for_temperature_effects { r correct_for_temperature_effects D } }
 +         { view_cloud { B view_cloud } }
 +         { cf_cloud_add { B cf_cloud_add } }
 +         { scale_F000 { r scale_F000 D } }
 +         { pick_atoms_when { B pick_atoms_when } }
 +         { cf_plot_fit { r cf_plot_fit D } }
 +         { fc_with_d_E { r fc_with_d_E D } }
 +         { cf_out_fc_file { r cf_out_fc_file D } }
 +         { scale_density_below_threshold { r scale_density_below_threshold D } }
 +         { pick_atoms { q pick_atoms D }}
 +            { activate { r activate D }}
 +            { choose_from { r choose_from D }}
 +            { choose_to { r choose_to D }}
 +            { choose_randomly { r choose_randomly D }}
 +            { omit { r omit D }}
 +            { insert { r insert D }}
 +            { origin_omit { q origin_omit D }}
 +            { or_occ { r or_occ D }}
 +            { pick_fwhm { B pick_fwhm } }
 +            { omit_fwhm { B omit_fwhm } }
 +            { insert_fwhm { B insert_fwhm } }
 +            { insert_ats { B insert_ats } }
 +            { insert_at { q insert_at }}
 +         
 +         { inp_text { -inp_text } }
 +         { inp_text_insert { -inp_text_insert } }
 +         
 +         { move_to { -move_to } }
 +         { dummy { R } }
 +         { dummy_prm { B dummy_prm } }
 +         { d_spacing_to_energy_in_eV_for_f1_f11 { r d_spacing_to_energy_in_eV_for_f1_f11 D } }
 +         { seed { x -seed } }
 +         { xye_format { g xye_fmt } }
 +         { gsas_format { g gsas_format } }
 +         { fullprof_format { g fullprof_format } }
 +         { file_name_for_best_solutions { B file_for_sols } }
 +
 +         { phase_out { A phase_out } }
 +         { phase_out_X { A phase_out_X } }
 +         { atom_out { A atom_out } }
 +         { test_mag { B test_mag } }
 +         { mag_atom_out { A mag_atom_out } }
 +         { mag_only_for_mag_sites { h E str d ^ mag_only_for_mag_sites k } }
 +         { mag_only { h E site d ^ mag_only k } }
 +
 +         { xdd_out { A xdd_out } }
 +         { error_out { A error_out } }
 +         { out { A g_out } }
 +            { out_record { h r out_recs q out_rec n 01last_out out_rec_ndx ^ k } }
 +               { out_fmt { B 01last_out_rec fmt } }
 +               { out_eqn { B 01last_out_rec eqn Z 01last_out_rec eqn pre_process_Get } }
 +               { out_fmt_err { B 01last_out_rec fmt_err } }
 +
 +         { penalties_weighting_K1 { B per_pen } }
 +         { do_errors { g do_errors } }
 +         { do_errors_include_restraints { g do_errors x riet_app_3 r } }
 +         { do_errors_include_penalties { g do_errors x riet_app_3 p } }
 +         { save_best_chi2    { x riet_app_3 bchi2 } }
 +         { eqn_zero_toll { x riet_app_3 ez } }
 +         { out_A_matrix    { h q out_A_matrix D k } }
 +            { A_matrix_prm_filter    { h  C out_A_matrixs r A_matrix_prm_filter D k } }
 +         { A_matrix    { B A_matrix } }
 +         { A_matrix_normalized { B A_matrix_normalized } }
 +         { C_matrix    { B C_matrix } }
 +         { C_matrix_normalized { B C_matrix_normalized } }
 +         { percent_zeros_before_sparse_A { B percent_zeros_before_sparse_A } }
 +         { use_CG           { } }
 +         { sparse_A           { } }
 +         { auto_sparse_CG    { } }
 +         { quick_refine   { B quick_refine } }
 +            { quick_refine_remove { B quick_refine_remove } }
 +            { quick_refine_No { B quick_refine_No } }
 +            { quick_refine_cycle_iter_start { B quick_refine_cycle_iter_start } }
 +         { iters            { B iters } }
 +         { num_cycles      { B num_cycles } }
 +         { num_runs   { B num_runs } }
 +         { suspend_writing_to_log_file   { B suspend_writing_to_log_file } }
 +         { out_file { r out_file D n riet_app_3 ^ } }
 +         { verbose { B verbose } }
 +         { process_times { g process_times } }
 +         { continue_after_convergence  { g continue_ref } }
 +         { system_before_save_OUT  { q system_before_save_OUT D } }
 +         { system_after_save_OUT  { q system_after_save_OUT D } }
 +         { no_normal_equations { g no_normal_eqs } }
 +         { chi2 { B chi2 g approximate_A } }
 +         { xdd_sum { q xdd_sum D } }
 +         { xdd_array { q xdd_array D } }
 +         { marquardt_mul { B marquardt_mul } }
 +         { approximate_A { g approximate_A } }
 +            { A_matrix_memory_allowed_in_Mbytes { B A_matrix_memory_allowed_in_Mbytes } }
 +            { A_matrix_elements_tollerance { B A_matrix_elements_tollerance } }
 +            { A_matrix_report_on { d non_fit A_matrix_report_on } }
 +            { A0_matrix_is_constant { d non_fit A0_matrix_is_constant } }
 +         { force_positive_fwhm { d non_fit fph } }
 +         { conserve_memory { j conserve_memory 1 } }
 +         { temperature { A temper } }
 +         { on_best_goto { h C tempers B on_best_goto k  } }
 +         { on_best_rewind { h C tempers B on_best_rewind k } }
 +         { use_best_values { h C tempers g use_best_values k } }
 +         { stop_rewind { h C tempers g stop_rewind k } }
 +         { save_values_as_best_after_randomization { h C tempers g save_values k } }
 +         { move_to_the_next_temperature_regardless_of_the_change_in_rwp { h C tempers g next_temp k } }
 +         { not_start_of_anneal { h C tempers g not_start_of_anneal k } }
 +
 +         { out_prm_vals_per_iteration { q out_prm_vals_per_iteration D } }
 +         { out_prm_vals_on_convergence { q out_prm_vals_on_convergence D } }
 +         { out_prm_vals_filter { B out_prm_vals_filter } }
 +         { out_prm_vals_dependents_filter { B out_prm_vals_dependents_filter } }
 +
 +         { bootstrap_errors { B bootstrap_errors } }
 +         { fraction_of_yobs_to_resample { B fraction_of_yobs_to_resample } }
 +         { determine_values_from_samples { g determine_values_from_samples } }
 +         { resample_from_current_ycalc { g resample_from_current_ycalc } }
 +
 +         { use_LU { d non_fit lu } }
 +         { use_LU_for_errors { d non_fit lue } }
 +         { line_min { g line_min } }
 +         { use_extrapolation { g extrap } }
 +         { only_penalties { g only_pen } }
 +         { out_refinement_stats { d non_fit os } }
 +         { randomize_on_errors  { g rnd_errs } }
 +            { randomize_on_errors_do  { B randomize_on_errors_do } }
 +            { randomize_on_errors_buffer  { B randomize_on_errors_buffer } }
 +            { allowed_visits  { B allowed_visits } }
 +            { t_scaler_1 { B t_scaler_1 } }
 +            { t_scaler_2 { B t_scaler_2 } }
 +            { t_scaler_3 { B t_scaler_3 } }
 +            { t_scaler_4 { B t_scaler_4 } }
 +            { t_scaler_5 { B t_scaler_5 } }
 +            { t_scaler_6 { B t_scaler_6 } }
 +         { out_rwp { B out_rwp } }
 +         { out_chi2 { B out_chi2 } }
 +         { weighted_Durbin_Watson { B wdw } }
 +         { r_exp_dash { B r_exp_dash } }
 +         { r_wp_dash { B r_wp_dash } }
 +         { r_exp { B r_exp } }
 +         { r_wp { B r_wp } }
 +         { r_p_dash { B r_p_dash } }
 +         { r_p { B r_p } }
 +         { gof   { B gof } }
 +         { chi2_convergence_criteria { B rwp_tolerance } }
 +         { tag { h q tag D k } }
 +         { tag_2 { h q tag_2 D k } }
 +         { weighting { r weighting D } }
 +         { gui_text { h q kgui_text D k } }
 +         { recal_weighting_on_iter { d xdd recal_on_iter } }
 +         { xdd {
 +            u Ttree_app [
 +               s lnched [
 +                  r xdds r xdd_recs q xdd B xdd_path_name
 +               ] [
 +                  R
 +               ]
 +            ] [
 +               r xdds r xdd_recs q xdd B xdd_path_name
 +            ]
 +         } }
 +         { gui_reload { d xdd_path_name gui_reload } }
 +         { gui_ignore { d xdd_path_name gui_ignore } }
 +         { user_y { q user_y D B user_y_file } }
 +            { user_y_gauss_fwhm { q user_y_gauss_fwhm D } }
 +            { user_y_lor_fwhm { q user_y_lor_fwhm D } }
 +            { user_y_hat { q user_y_hat D } }
 +            { user_y_num_hats { B user_y_num_hats } }
 +            { user_y_exp_conv_const { q user_y_exp_conv_const D } }
 +               { user_y_exp_limit { r user_y_exp_limit D } }
 +            { user_y_rebin_with_dx_of { r rebin_with_dx_of D } }
 +               { user_y_rebin_start_x_at { r rebin_start_x_at D } }
 +            { user_y_rebin_tollerance_in_Y { r rebin_tollerance_in_Y D } }
 +               { user_y_rebin_min_merge { r rebin_min_merge D } }
 +         { yobs_eqn {
 +            r xdds r xdd_recs q xdd
 +            r yobs_eqn D
 +            n xdd_path_name yobs_eqn
 +            d xdd_path_name gui_reload_yobs_eqn
 +         } }
 +         { view_structure { g view_structure } }
 +         { range
 +            {
 +               u Ttree_app [
 +                  s lnched [
 +                     B range
 +                  ] [
 +                     R
 +                  ]
 +               ] [
 +                  B range
 +               ]
 +            }
 +         }
 +         { pr_str { -pr_str } }
 +         { start_X { B start_X } }
 +         { finish_X { B finish_X } }
 +         { extra_X { B extra_X_right } }
 +         { extra_X_left { B extra_X_left } }
 +         { extra_X_right { B extra_X_right } }
 +         { rebin_with_dx_of { r rebin_with_dx_of D } }
 +            { rebin_start_x_at { r rebin_start_x_at D } }
 +         { rebin_tollerance_in_Y { r rebin_tollerance_in_Y D } }
 +            { rebin_min_merge { r rebin_min_merge D } }
 +         { smooth { r smooth D } }
 +         { yobs_to_xo_posn_yobs { r yobs_to_xo_posn_yobs D } }
 +         { exclude { A excl_x12 A excl_x12 } }
 +         { bkg { B bkg } }
 +         { force_chubychev_positive { r force_chubychev_positive D } }
 +
 +         { convolution_step { B convolution_step } }
 +         { x_calculation_step { B x_calculation_step } }
 +         { x_axis_tol_for_equal_step_size { r x_axis_tol_for_equal_step_size D } }
 +         { no_message { g no_message } }
 +         { gui_add_bkg { B gui_add_bkg } }
 +         { fit_obj { q gen_fit_obj B gen_dummy } }
 +            { fit_obj_phase { r fit_obj_phase D } }
 +         { fo_transform_X { r fo_transform_X D } }
 +
 +         { Rp { U radius_p D } }
 +         { Rs { U radius_s D } }
 +
 +         { penalty { h q penalty D k } }
 +         { restraint { h q penalty D d ^ res k } }
 +         { pen_weight { A pen_weight } }
 +         { existing_prm { -ex_prm } }
 +         { local { h q loc_10 D k } }
 +         { prm { h q prm_10 D k } }
 +         { fn { h q fn_10 D k } }
 +         { noinline { h -noinline k } }
 +         { aberration_range_change_allowed { b arca B arca } }
 +         { push_peak { q push_peak } }
 +         { bring_2nd_peak_to_top { q bring_2nd_peak_to_top } }
 +         { bring_nth_peak_to_top { q bring_nth_peak_to_top r n_from_top D } }
 +         { add_pop_1st_2nd_peak { q add_pop_1st_2nd_peak } }
 +         { scale_top_peak { q scale_top_peak_op B scale_top_peak } }
 +         { set_top_peak_area { q set_top_peak_area_op B set_top_peak_area } }
 +         { hat { q hat_conv r hat_prm D } }
 +            { num_hats { B num_hats } }
 +         { house { q house_conv } }
 +            { house_x1 { r house_x1 D } }
 +            { house_x2 { r house_x2 D } }
 +            { house_a1 { r house_a1 D } }
 +            { house_a2 { r house_a2 D } }
 +            { num_houses { B num_houses } }
 +         { one_on_x_conv { q one_on_x_conv r one_on_x_prm D } }
 +         { exp_conv_const { q exp_conv r exp_prm D } }
 +            { exp_limit { r exp_limit D } }
 +         { circles_conv { q circles_conv r circles_prm D } }
 +         { user_defined_convolution { q user_defined_conv r user_defined_prm D } }
 +         { gauss_fwhm_stack { q gauss_fwhm_stack r gfs_prm D } }
 +         { lor_fwhm_stack { q lor_fwhm_stack r lfs_prm D } }
 +
 +         { ft_conv { r ft_conv_re_ims q ft_conv_re_im r ft_conv_re D } }
 +         { ft_conv_re_im { r ft_conv_re_ims q ft_conv_re_im } }
 +            { ft_conv_re { r ft_conv_re D } }
 +            { ft_conv_im { r ft_conv_im D } }
 +            { ft_x_axis_range { r ft_x_axis_range D } }
 +            { ft_min { r ft_min D } }
 +
 +         { WPPM_ft_conv { r WPPM_ft_conv_re_ims q WPPM_ft_conv_re_im r WPPM_ft_conv_re D } }
 +         { WPPM_ft_conv_re_im { r WPPM_ft_conv_re_ims q WPPM_ft_conv_re_im D } }
 +            { WPPM_ft_conv_re { r WPPM_ft_conv_re D } }
 +            { WPPM_ft_conv_im { r WPPM_ft_conv_im D } }
 +            { WPPM_th2_range { r WPPM_th2_range D } }
 +            { WPPM_break_on_small { r WPPM_break_on_small D } }
 +            { WPPM_L_max { r WPPM_L_max D } }
 +         { WPPM_correct_Is { d WPPM_fte_convs ci } }
 +         { WPPM_fix_intensity { d WPPM_fte_convs fi } }
 +
 +         { capillary_diameter_mm {
 +            q capillary_conv
 +            r capillary_diameter_mm D
 +            } }
 +            { capillary_xy_n { r capillary_xy_n D } }
 +            { capillary_u_cm_inv { r capillary_u_cm_inv D } }
 +            { capillary_parallel_beam { g capillary_parallel_beam } }
 +            { capillary_convergent_beam { g capillary_convergent_beam } }
 +            { capillary_divergent_beam { g capillary_divergent_beam } }
 +            { capillary_focal_length_mm  { r capillary_focal_length_mm D } }
 +         { lpsd_th2_angular_range_degrees {
 +            q lpsd_conv
 +            r lpsd_th2_angular_range_degrees D } }
 +            { lpsd_equitorial_divergence_degrees { r lpsd_equitorial_divergence_degrees D } }
 +            { lpsd_equitorial_sample_length_mm { r lpsd_equitorial_sample_length_mm D } }
 +            { lpsd_beam_spill_correct_intensity { r lpsd_beam_spill_correct_intensity D } }
 +         { axial_conv { q axial_conv } }
 +            { filament_length { r source_len D } }
 +            { sample_length { r sam_len D } }
 +            { receiving_slit_length { r rs_len D } }
 +            { primary_soller_angle  { r prim_soll D } }
 +            { secondary_soller_angle { r second_soll D } }
 +            { flat_crystal_pre_monochromator_axial_const { r inel_const D } }
 +            { axial_n_beta { B axial_n_beta } }
 +            { axial_del { B dummy_prm } }
 +         { stacked_hats_conv { q sh_conv } }
 +            { whole_hat { q whole_hat D } }
 +            { half_hat { q half_hat D } }
 +            { hat_height { r sh_hhh D } }
 +
 +         { modify_peak { r modify_peak } }
 +            { modify_peak_apply_before_convolutions { g modify_peak_apply_before_convolutions } }
 +            { modify_peak_eqn { r modify_peak_eqn D } }
 +               { current_peak_min_x { r current_peak_min_x D } }
 +               { current_peak_max_x { r current_peak_max_x D } }
 +
 +         { del_approx { q del_approx D } }
 +         { lor_fwhm { q lor_fwhm D } }
 +         { gauss_fwhm { q gauss_fwhm D } }
 +         { scale_pks { q scale_pks_prm D } }
 +         { scale_phase_X { q scale_phase_X D } }
 +         { th2_offset { q th2_offset_prm D } }
 +         { pk_xo { r pk_xo_prm D } }
 +         { peak_buffer_based_on { r peaks_buffer_based_on q peak_buffer_based_on D } }
 +         { peak_buffer_based_on_tol { r peak_buffer_based_on_tol D } }
 +
 +         { auto_scale             { r auto_scale D } }
 +         { scale                   { r scale D } }
 +         { space_group             { B sp_grp_char } }
 +         { mag_space_group          { g mag_sg B sp_grp_char } }
 +         { omit_hkls { r omit_hkls_bin q omit_hkls D } }
 +         { volume                  { B cell_volume } }
 +         { cell_volume            { B cell_volume } }
 +
 +         { peak_buffer_step       { b pk_buffer_step r pk_buffer_step D } }
 +         { report_on             { E phase d ^ report_on } }
 +         { peak_type              { B pk_type } }
 +
 +         { append_cartesian      { r do_cart D } }
 +         { append_fractional      { r do_fract D } }
 +         { p1_fractional_to_file  { r p1_fractional_to_file D } }
 +         { in_str_format         { g in_str_format } }
 +         { append_bond_lengths   { B do_bond_lengths } }
 +            { consider_lattice_parameters { g clp } }
 +         { r_bragg  { r r_bragg D } }
 +         { a     { r a  D } }
 +         { b     { r b  D } }
 +         { c     { r c  D } }
 +         { al     { r al D } }
 +         { be     { r be D } }
 +         { ga     { r ga D } }
 +
 +         { only_lps { d index only_lps } }
 +         { lp_search { r lp_search D } }
 +         { lp_search_fom { r lp_search_fom D } }
 +         { index_x0 { r index_x0 D } }
 +         { index_d { q index_d D Y good [ d index_d g ] } }
 +         { index_I { r index_I D Y good [ d index_d g ] } }
 +         { index_th2 { q index_d D d ^ t Y good [ d index_d g ] } }
 +         { index_zero_error { g index_zero_error } }
 +         { index_min_lp { r index_min_lp D } }
 +         { index_max_lp { r index_max_lp D } }
 +         { index_lam { r index_lam D } }
 +         { index_max_Nc_on_No { r index_max_Nc_on_No D } }
 +         { index_max_th2_error { r index_max_th2_error D } }
 +         { index_max_zero_error { r index_max_zero_error D } }
 +         { index_max_number_of_solutions { B index_max_number_of_solutions } }
 +         { index_th2_resolution { B index_th2_resolution } }
 +         { try_space_groups { q try_space_groups D } }
 +         { no_extinction_subgroup_search { d index nosgs } }
 +         { n1 { B n1 } }
 +         { n2 { B n2 } }
 +         { n3 { B n3 } }
 +         { v1 { B v1 } }
 +         { x_scaler { B x_scaler } }
 +         { x_angle_scaler { B x_angle_scaler } }
 +         { test_a  { B test_a  } }
 +         { test_b  { B test_b  } }
 +         { test_c  { B test_c  } }
 +         { test_al { B test_al } }
 +         { test_be { B test_be } }
 +         { test_ga { B test_ga } }
 +
 +         { ndx_sg   { q ndx_det B ndx_sg } }
 +         { ndx_status  { B ndx_status } }
 +         { ndx_uni  { B ndx_uni } }
 +         { ndx_vol  { R } }
 +         { ndx_gof  { R } }
 +         { ndx_ze   { B ndx_ze   } }
 +         { ndx_alp  { B ndx_alp  } }
 +         { ndx_blp  { B ndx_blp  } }
 +         { ndx_clp  { B ndx_clp  } }
 +         { ndx_allp { B ndx_allp } }
 +         { ndx_belp { B ndx_belp } }
 +         { ndx_galp { B ndx_galp } }
 +
 +         { hkl_similar_tag { r hkl_dets r hkl_similar_tag D } }
 +         { peak_buffer_similar_tag { r peak_buffer_similar_tag D } }
 +         { hkl_m_d_th2 { B hkl_dets } }
 +         { hkl_Is  { q hkli } }
 +         { I_parameter_names_have_hkl  { B I_parameter_names_have_hkl } }
 +         { lebail  { B lebail } }
 +         { phase_name { B phase_name } }
 +
 +         { default_I_attributes  { r def_iprm D } }
 +         { I      { q iprm D } }
 +         { m1     { r m1 D } }
 +         { m2     { r m2 D } }
 +         { h1     { r h1 D } }
 +         { h2     { r h2 D } }
 +         { pv_lor  { r pv_lor D } }
 +         { pv_fwhm { r pv_fwhm D } }
 +         { spv_h1  { r spv_h1 D } }
 +         { spv_h2  { r spv_h2 D } }
 +         { spv_l1  { r spv_l1 D } }
 +         { spv_l2  { r spv_l2 D } }
 +         { numerical_lor_gauss_conv { g numerical_lor_gauss_conv } }
 +         { numerical_lor_ymin_on_ymax { r numerical_lor_ymin_on_ymax D } }
 +
 +         { lam     { U lam } }
 +         { ymin_on_ymax { r ymin_on_ymax D } }
 +         { no_th_dependence { j no_th_dep 1 } }
 +         { Lam { r lam_for_Bragg_ang D } }
 +         { lo_ref { r lo_ref } }
 +         { calculate_Lam { d lam_for_Bragg_ang calc_lfd } }
 +         { la        { q lam_rec r la D } }
 +         { lh        { r lh D } }
 +         { lg        { r lg D } }
 +         { lo        { r lo D } }
 +         { min { -min_load } }
 +         { max { -max_load } }
 +         { del { -del_load } }
 +         { update { -update_load } }
 +         { val_on_continue { -vonc_load } }
 +         { stop_when { -stop_when_load } }
 +         { prm_with_error { h q prm_10 -prm_with_error k } }
 +         { use_tube_dispersion_coefficients { B use_old_disp } }
 +            { extend_calculated_sphere_to { r extend_calculated_sphere_to D } }
 +            { correct_for_atomic_scattering_factors { r correct_for_atomic_scattering_factors D } }
 +            { use_E_values { r use_E_values D } }
 +            { out_merged_only { r out_merged_only D } }
 +            { fourier_map_formula { r fourier_map_formula D } }
 +            { min_grid_spacing { r min_grid_spacing D } }
 +            { out_str_dets { B out_str_dets } }
 +            { out_Fc { B out_Fc } }
 +            { f_atom_type { q f_atom_type D } }
 +               { f_atom_quantity { B f_atom_quantity } }
 +      }
 +   }
 +}
 +start_templates
 +{ Trigid_xyz;
 +   Crigid_xyz;
 +      Crx _cr rigid_prm pt rigid IS_RIGID_prm_6; 
 +      Cry _cr rigid_prm pt rigid IS_RIGID_prm_6; 
 +      Crz _cr rigid_prm pt rigid IS_RIGID_prm_6; 
 +      Ain_cart _cr fui; 
 +}
 +{ Tpfs_rigid_xyz;
 +   Asite_name _cr fus;
 +   Crigid_xyz;
 +      Crx _cr pfs_rigid_prm pt rigid IS_RIGID_prm_6; 
 +      Cry _cr pfs_rigid_prm pt rigid IS_RIGID_prm_6; 
 +      Crz _cr pfs_rigid_prm pt rigid IS_RIGID_prm_6; 
 +      Ain_cart _cr fui;   
 +   Ccrigid_xyz _cr prm_6;
 +      Ccrx _cr crxyz nc nsv ES_FOR_OUTPUT IS_RIGID_prm_6; 
 +      Ccry _cr crxyz nc nsv ES_FOR_OUTPUT IS_RIGID_prm_6; 
 +      Ccrz _cr crxyz nc nsv ES_FOR_OUTPUT IS_RIGID_prm_6; 
 +}
 +{ Toperate_on_points;
 +   Aoperate_on_points _cr fus;
 +}
 +{ Ttranslate;
 +   Astart_values_from_site _cr fus;
 +   Crand_xyz _cr prm_6 _on_cr { r translate n vonc_2 ^ };
 +}
 +{ Trotate_prm;
 +   Crotate_prm _cr rigid_prm pt rigid IS_RIGID_prm_6;
 +}
 +{ Tzmat;
 +   Cr  _cr rigid_prm pt rigid IS_RIGID_prm_6;
 +   Ca1 _cr rigid_prm pt rigid IS_RIGID_prm_6;
 +   Ca2 _cr rigid_prm pt rigid IS_RIGID_prm_6;
 +}
 +{ Trigid;
 +   rigid_ops _cr nou _array;
 +   point_for_sites _array _cr aA;
 +      Cpoint_for_site _tem { Tpfs_rigid_xyz } _on_cr { j in_cart 1 n rigid_ops ^ } _alias { pfs op } IS_RIGID_prm_6;
 +      Czmat_pfs _tem { Tpfs_rigid_xyz Tzmat } _on_cr { j in_cart 1 n rigid_ops ^ } _alias { pfs op } IS_RIGID_prm_6;
 +   rotations _array _cr aA;
 +      Crotate _tem { Trigid_xyz Trotate_prm Toperate_on_points } _on_cr { n rigid_ops ^ } _alias op IS_RIGID_prm_6;
 +   translations _array _cr aA;
 +      Ctranslate _tem { Trigid_xyz Ttranslate Toperate_on_points } _on_cr { n rigid_ops ^ } _alias op IS_RIGID_prm_6;
 +}
 +{ Trigids;
 +   rigids _array _on_cr { 4 str };
 +      Crigid _on_cr { n pu1 ^ } _alias prm_bin _tem Trigid;
 +}
 +{ Tsh_hhh;
 +   Csh_hhh _cr conv_prm fn Th_;
 +}
 +{ Tarca;
 +   Carca _cr prm_6 nc;
 +}
 +{ Tcapillary;
 +   Ccapillary_u_cm_inv _cr conv_prm pt ~pk fn Th_;
 +   capillary_parallel_beam _cr aA;
 +   capillary_divergent_beam _cr aA;
 +   capillary_convergent_beam _cr aA;
 +   Ccapillary_focal_length_mm _cr conv_prm pt ~pk fn Th_;
 +   Ccapillary_xy_n _def 80 _cr prm_6;
 +}
 +{ Tlpsd_beam_spill_correct_intensity;
 +   Alpsd_beam_spill_correct_intensity _cr fui _def 1 _on_cr { n lpsd_conv ^ };
 +}
 +{ Tlpsd;
 +   Clpsd_equitorial_divergence_degrees _cr conv_prm pt ~pk fn Th_;
 +   Clpsd_equitorial_sample_length_mm _cr conv_prm _tem { Tlpsd_beam_spill_correct_intensity } pt ~pk fn Th_ _on_cr { n lpsd_conv ^ };
 +}
 +
 +{ Tfte_convs;
 +   fte_conv _cr aA;
 +      Cfte_re _cr fte_re_im fn { Th_ Tx TFT_K } pt ft;
 +      Cfte_im _cr fte_re_im fn { Th_ Tx TFT_K } pt ft;
 +}
 +{ TWPPM_fte_convs;
 +   fte_conv _cr aA;
 +      Cfte_re _cr fte_re_im fn { Th_ Tx TWPPM_L } pt ft;
 +      Cfte_im _cr fte_re_im fn { Th_ Tx TWPPM_L } pt ft;
 +}
 +{ Tft_conv_re_ims;
 +   ft_conv_re_im;
 +      Cft_conv_re _cr prm_10 nr nyd pt pk fn { Th_ Tx TFT_K };
 +      Cft_conv_im _cr prm_10 nr nyd pt pk fn { Th_ Tx TFT_K };
 +      Cft_x_axis_range nyd nr _cr prm_10;
 +      Cft_min nyd nr _cr prm_10;
 +}
 +{ TWPPM_ft_conv_re_ims;
 +   WPPM_ft_conv_re_im;
 +      CWPPM_ft_conv_re _cr prm_10 nr nyd pt pk fn { Th_ Tx TWPPM_L };
 +      CWPPM_ft_conv_im _cr prm_10 nr nyd pt pk fn { Th_ Tx TWPPM_L };
 +      CWPPM_th2_range nyd nr _cr prm_10;
 +      CWPPM_break_on_small nyd nr _cr prm_10 _def 1e-7;
 +      CWPPM_L_max nyd nr _cr prm_10;
 +}
 +{ Texp_conv;
 +   Cexp_prm _cr conv_prm _tem Tarca pt ~pk fn Th_;
 +   Cexp_limit _cr conv_prm _tem Tarca pt ~pk fn Th_ _on_cr { n exp_conv ^ };
 +}
 +{ That_conv;
 +   Chat_prm _cr conv_prm _tem Tarca pt ~pk fn Th_;
 +   Anum_hats _def 1 _cr fui _on_cr { M hat_conv };
 +}
 +{ Thouse;
 +   Chouse_x1 _cr conv_prm _tem Tarca pt ~pk fn Th_;
 +   Chouse_x2 _cr conv_prm _tem Tarca pt ~pk fn Th_;
 +   Chouse_a1 _cr conv_prm _tem Tarca pt ~pk fn Th_;
 +   Chouse_a2 _cr conv_prm _tem Tarca pt ~pk fn Th_;
 +   Anum_houses _def 1 _cr fui;
 +}
 +{ Tone_on_x_conv;
 +   Cone_on_x_prm _cr conv_prm _tem Tarca pt ~pk fn Th_;
 +}
 +{ Tcircles_conv;
 +   Ccircles_prm _cr conv_prm _tem Tarca pt ~pk fn Th_;
 +}
 +{ Tgauss_fwhm_stack;
 +   Cgfs_prm _cr num_deriv pt pk fn { Th_ Tx };
 +}
 +{ Tlor_fwhm_stack;
 +   Clfs_prm _cr num_deriv pt pk fn { Th_ Tx };
 +}
 +{ Tuser_defined_conv;
 +   Cuser_defined_prm _cr num_deriv pt pk fn { Th_ Tx };
 +}
 +{ Tsh_conv;
 +   Cwhole_hat _cr sh_prm _tem { Tarca Tsh_hhh } pt ~pk fn Th_;
 +   Chalf_hat _cr sh_prm _tem { Tarca Tsh_hhh } pt ~pk fn Th_;
 +}
 +{ Taxial_conv;
 +   axial_prms _cr aA _on_cr { g source_len g sam_len g rs_len };
 +      Csource_len _cr conv_prm pt ~pk;
 +      Csam_len _cr conv_prm pt ~pk;
 +      Crs_len _cr conv_prm pt ~pk;
 +      Cprim_soll _cr conv_prm pt ~pk;
 +      Csecond_soll _cr conv_prm pt ~pk;
 +      Cinel_const _cr conv_prm pt ~pk;
 +   Caxial_n_beta _def 30 _cr prm_6 fn Th_;
 +}
 +{ Tbring_nth_peak_to_top;
 +   Cn_from_top _cr prm_10 nr nyd fn Th_;
 +}
 +{ Tcomm_1;
 +   hr_pk_prms _cr aA _array;
 +      hr_convs _cr nou _array;
 +      always_arca _cr nou _array;
 +      pk_type_prms _cr aA _array;
 +         Cm1 _cr conv_prm _tem Tarca _on_cr { j arca =.05 } pt ~pk fn Th_ Flags Ffsti;
 +         Cm2 _cr conv_prm _tem Tarca _on_cr { j arca =.05 } pt ~pk fn Th_ Flags Ffsti;
 +         Ch1 _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
 +         Ch2 _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
 +         Cpv_fwhm _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
 +         Cpv_lor _cr conv_prm _tem Tarca _on_cr { j arca =.01 } pt ~pk fn Th_ Flags Ffsti;
 +         Cspv_h1 _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
 +         Cspv_h2 _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
 +         Cspv_l1 _cr conv_prm _tem Tarca _on_cr { j arca =.01 } pt ~pk fn Th_ Flags Ffsti;
 +         Cspv_l2 _cr conv_prm _tem Tarca _on_cr { j arca =.01 } pt ~pk fn Th_ Flags Ffsti;
 +      push_pk_etc _cr aA _array;
 +         push_peak _on_cr { n hr_convs ^ };
 +         bring_2nd_peak_to_top _on_cr { n hr_convs ^ };
 +         bring_nth_peak_to_top _on_cr { n hr_convs ^ } _tem Tbring_nth_peak_to_top;
 +         add_pop_1st_2nd_peak _on_cr { n hr_convs ^ };
 +         scale_top_peak_op _on_cr { n hr_convs ^ };
 +            Cscale_top_peak _cr conv_prm pt ~pk fn Th_;
 +         set_top_peak_area_op _on_cr { n hr_convs ^ };
 +            Cset_top_peak_area _cr conv_prm pt ~pk fn Th_;
 +      hat_conv _on_cr { n hr_convs ^ } _tem That_conv;
 +      house_conv _on_cr { n hr_convs ^ } _tem Thouse;
 +      one_on_x_conv _on_cr { n hr_convs ^ } _tem Tone_on_x_conv;
 +      exp_conv _on_cr { n hr_convs ^ } _tem Texp_conv;
 +      circles_conv _on_cr { n hr_convs ^ } _tem Tcircles_conv;
 +      gauss_fwhm_stack _on_cr { n hr_convs ^ n always_arca ^ } _tem Tgauss_fwhm_stack;
 +      lor_fwhm_stack _on_cr { n hr_convs ^ n always_arca ^ } _tem Tlor_fwhm_stack;
 +      user_defined_conv _on_cr { n hr_convs ^ n always_arca ^ } _tem Tuser_defined_conv;
 +      sh_conv _array _on_cr { n hr_convs ^ } _tem Tsh_conv _alias prm_bin;
 +      capillary_conv _tem { Tarca Tcapillary } _on_cr { n hr_convs ^ n always_arca ^ } Flags Fcr;
 +         Ccapillary_diameter_mm _cr conv_prm pt ~pk fn Th_;
 +      lpsd_conv _tem { Tarca Tlpsd } _on_cr { n hr_convs ^ n always_arca ^ } Flags Fcr;
 +         Clpsd_th2_angular_range_degrees _cr conv_prm pt ~pk fn Th_;
 +      axial_conv _tem { Tarca Taxial_conv } _on_cr { g axial_prms n hr_convs ^ n always_arca ^ } Flags Fcr;
 +      modify_peak _tem { Tarca } _on_cr { n hr_convs ^ n always_arca ^ };
 +         Cmodify_peak_eqn _cr num_deriv pt ~pk fn Th_ Flags Ffsti;
 +         Ccurrent_peak _cr prm_6 nc nsv pt ~pk fn Th_ Flags Ffsti;
 +         Ccurrent_peak_x _cr prm_6 nc nsv;
 +         Ccurrent_peak_min_x _cr prm_6 nc nsv;
 +         Ccurrent_peak_max_x _cr prm_6 nc nsv;
 +         modify_peak_apply_before_convolutions _cr aA;
 +      lor_numer _on_cr { n hr_convs ^ };
 +      gauss_numer _on_cr { n hr_convs ^ };
 +      Anumerical_lor_ymin_on_ymax _cr fud _def 1.0e-4;
 +      numerical_lor_gauss_conv _cr aA;
 +      lor_gauss_fwhms _cr aA;
 +         lor_fwhms _cr aA _array;
 +            Clor_fwhm _cr prm_10 nyd pt ~pk fn Th_;
 +         gauss_fwhms _cr aA _array;
 +            Cgauss_fwhm _cr prm_10 nyd pt ~pk fn Th_;
 +      ft_conv_re_ims _array _cr aA _tem Tft_conv_re_ims;
 +      WPPM_ft_conv_re_ims _array _cr aA _tem TWPPM_ft_conv_re_ims;
 +   comm_1_1 _cr aA;
 +      Cpk_xo_prm _cr prm_10 nyd fn Th_;
 +      th2_offsets _cr aA _array;
 +         Cth2_offset_prm _cr prm_10 nyd fn Th_;
 +      more_accurate_Voigt search_up _cr aA;
 +      pdf_convolutes _cr aA _array;
 +         Cpdf_convolute _tem Tpdf_convolute _cr pdf_conv_str;
 +}
 +{ Tmin_max_r;
 +   min_max_r _cr aA;
 +      Amin_r _cr fud _def 0.0 search_up;
 +      Amax_r _cr fud _def 3.2 search_up;
 +}
 +{ Tref_and_non_ref_prms;
 +   ref_and_non_ref_prms _cr aA;
 +      refs _cr crefs;
 +      nonrefs _cr crefs;
 +}
 +{ Tno_message;
 +   no_message _cr aA;
 +}
 +{ Tfit_stats;
 +   Aconvolution_step _def 1 _cr fui;
 +   Cx_calculation_step nr _def -999 type Th_ fn Th_;
 +   Cx_axis_tol_for_equal_step_size _cr prm_10 nr _def 1e-4 _tem Tno_message;
 +   fit_stats _cr aA;
 +      Cwdw nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
 +      Cr_exp_dash nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
 +      Cr_wp_dash nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
 +      Cr_p_dash nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
 +      Cr_p nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
 +      Cgof nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
 +      Cr_exp nc nr _fmt %-1.3f _on_cr { n ios_to_save _ } _def 1; 
 +      Cr_wp nc nr _fmt %-1.3f _on_cr { n ios_to_save _ }; 
 +}
 +{ Tstr_sg;
 +   Asp_grp_char _cr fus;
 +      str_sg _on_cr { d ^ do };
 +      sg_set _on_cr { d ^ do };
 +      sp_xyzs_txt;
 +      sp_xyzs_txt_with_id _cr sp_xyzs_txt;
 +      mag_sp_xyzs_txt;
 +      mag_sp_xyzs_txt_with_id _cr mag_sp_xyzs_txt;
 +}
 +{ Tndx_fom;
 +   ndx_fom;
 +}
 +{ Ttry_space_groups;
 +   An1 _cr fui;
 +   An2 _cr fui;
 +   An3 _cr fui;
 +   Av1 _cr fud;
 +   Ax_scaler _cr fud;
 +   Ax_angle_scaler _cr fud;
 +   test_lps _cr aA;
 +      Ctest_a _cr prm_6;
 +      Ctest_b _cr prm_6;
 +      Ctest_c _cr prm_6;
 +      Ctest_al _cr prm_6;
 +      Ctest_be _cr prm_6;
 +      Ctest_ga _cr prm_6;
 +}
 +{ Taccumulate_phases_when;
 +   Caccumulate_phases_when _cr prm_6 _def 1 _on_cr { n phase_penalties ^ };
 +   Caccumulate_phases_sample_when _cr prm_6 _def 1 _on_cr { n phase_penalties ^ };
 +}
 +{ Tphase_penalties;
 +   Aaccumulate_phases_and_save_to_file _tem { Taccumulate_phases_when } _cr fus _on_cr { n phase_penalties ^ r phase_penalties n on_cont11 ^ n fin4 ^ };
 +   hkl_Re_Ims;
 +   Cphase_penalties_allowed_visits _cr prm_6 _def 100;
 +   Cphase_penalties_population _cr prm_6 _def 1000;
 +   Cerror_tollerance _cr prm_6 _def 2;
 +   Cphase_tollerance _cr prm_6 _def 90;
 +    Cdetermine_phases _cr prm_6 _def 15 _on_cr { n phase_penalties ^ };
 +      Cnumber_of_highest_intensities_to_work_with _cr prm_6 _def 200;
 +      Cnumber_of_cycles_for_initial_intensity_determination _cr prm_6 _def 100;
 +      Cmaximum_number_of_phase_configurations _cr prm_6 _def 500;
 +      Cdetermine_phases_when _cr prm_6 _def 1;
 +      Alink_with_surpressor_phase_penalties _cr fus;
 +         Cnumber_of_hkls_for_link _cr prm_6 _def 500;
 +}
 +{ Tomit_hkls_bin;
 +   Apk_to_H _cr fud nsv type Tomh;
 +   Apk_to_K _cr fud nsv type Tomh;
 +   Apk_to_L _cr fud nsv type Tomh;
 +   Apk_to_D _cr fud nsv type Tomh;
 +   omit_hklss _cr aA _array;
 +      Comit_hkls _cr prm_6 nc fn { Tomh };
 +}
 +{ Tnormals_plot;
 +   Cnormals_plot_min_d _cr prm_6;
 +}
 +{ Thkl_F2;
 +   Coffset nsv nr nyd;
 +}
 +{ Tsh_hkl;
 +   Csh_alpha _cr prm_10 fn Th_; 
 +   Ash_order _def 4; 
 +   sh_Yij_prms _array _cr aA; 
 +      Csh_Yij_prm nyd nc nsv type Th_ fn Th_ Flags Individual_Peak_Shapes;
 +   sh_Cij_prms _array _cr aA; 
 +      Csh_Cij_prm fn Th_ Flags Individual_Peak_Shapes;
 +}
 +{ Thkl_similar_tag;
 +   Chkl_similar_tag _cr prm_10 nr nyd _on_cr { 6 hkl_dets };
 +}
 +{ Thkl_lat;
 +   hkl _cr aA;
 +      march_dollases _array _cr aA;
 +         Cmarch_dollase nr nmbu nc nsv nyd type Th_ fn Th_ local_ _on_cr { c march_dollase_prm n locals ^ };
 +            Cmarch_dollase_prm nyd _cr prm_10; 
 +      hkl_angles _array _cr aA;
 +         Chkl_angle nr nmbu nc nsv nyd type Th_ fn Th_ Flags Individual_Peak_Shapes;
 +      Chkl_I_d2Th_dL nr nmbu nc nsv nyd type Th_ fn Th_ local_ _on_cr { n locals ^ 6 phase }  _tem Thkl_F2;
 +      hkl_dets _tem Thkl_similar_tag;
 +      hkls_all_save _on_cr { n hkl_dets ^ };
 +      omit_hkls_bin _cr aA _tem Tomit_hkls_bin;
 +      phase_penaltiess _array _cr aA;
 +         Cphase_penalties nc nmbu nyd _tem Tphase_penalties;
 +      normals_plots _array _cr aA;
 +         Cnormals_plot _tem Tnormals_plot _on_cr { n fin6 ^ } nyd nsv nv nc type Th_ fn Th_;
 +      sh_hkls _array _cr aA;
 +         Csh_hkl nyd nsv nv nc type Th_ fn Th_ local_ _on_cr { n locals ^ } _tem Tsh_hkl;
 +      Apk_to_Mi nsv _def -1 type Th_;
 +   Clat_prms;
 +      Carec _cr prm_7 fn_of "lat_prms"; 
 +      Cbrec _cr prm_7 fn_of "lat_prms"; 
 +      Ccrec _cr prm_7 fn_of "lat_prms"; 
 +      lat_prms_prms _cr aA; 
 +         Ca _cr lp_abc pt th2 _alias lp fn Th_; 
 +         Cb _cr lp_abc pt th2 _alias lp fn Th_;   
 +         Cc _cr lp_abc pt th2 _alias lp fn Th_;   
 +         Cal _cr lp_albega pt th2 _alias lp _def 90 fn Th_; 
 +         Cbe _cr lp_albega pt th2 _alias lp _def 90 fn Th_;   
 +         Cga _cr lp_albega pt th2 _alias lp _def 90 fn Th_;   
 +      Clp_search _tem { Tndx_fom } nyd _on_cr { g cell_volume g hkls_all_save n on_cont0 ^ n on_cont2 ^ n on_first_ycalc ^ };
 +      Clp_search_fom nr nmbu nyd;
 +}
 +{ Tatomic_interaction;
 +   Cai_radius _cr prm_6;
 +   Cai_flatten_with_tollerance_of _cr prm_6;
 +   Aai_closest_N _cr fui;
 +   Aai_sites_1 _cr fus;
 +   Aai_sites_2 _cr fus;
 +   ai_no_self_interation _cr aA;
 +   ai_only_eq_0 _cr aA;
 +   ai_exclude_eq_0 _cr aA;
 +}
 +{ Tocc_merge;
 +   Cocc_merge_radius _cr prm_6 _def 0.6; 
 +}
 +{ Tsites_to_restrain;
 +   sites_to_restrain   _cr aA _array;
 +      Asite_to_restrain;
 +}
 +{ Tsites_geometry;
 +   Csites_geometry_distance nv NC__ nyd nr;
 +   Csites_geometry_angle nv NC__ nyd nr;
 +   Csites_geometry_dihedral_angle nv NC__ nyd nr;
 +}
 +{ Tf0_f1_f11_atom;
 +   Cf0 _cr prm_10 nyd _on_cr { n f0_f1_f11_atom ^ };
 +   Cf1 _cr prm_10 nyd _on_cr { n f0_f1_f11_atom ^ };
 +   Cf11 _cr prm_10 nyd _on_cr { n f0_f1_f11_atom ^ };
 +}
 +{ Tf0_f1_f11_atoms;
 +   f0_f1_f11_atoms _cr aA _array;
 +      Af0_f1_f11_atom _tem Tf0_f1_f11_atom;
 +}
 +{ Tsite;
 +   site_misc _cr aA;
 +      Asite_layer _cr fus;
 +      Ais_cation _cr fui;
 +      Anum_posns _cr ioi _on_cr { n ios_to_save ^ };
 +      Aclosest _cr iod _on_cr { n ios_to_save ^ } _fmt %-12.6f;
 +      Csite_inter nyd nc nr _on_cr { n val_errs ^ };
 +      Crand_xyz _cr prm_6 _on_cr { n vonc_2 site n site ^ };
 +}
 +{ Tstack;
 +   Csx _cr stack_xyz; 
 +   Csy _cr stack_xyz; 
 +   Csz _cr stack_xyz; 
 +   Agenerate_these _cr fus;
 +      Agenerate_name_append _cr fus;
 +}
 +{ Ttransition;
 +   Ause_layer _cr fus;
 +   Ct_height _on_cr { n transition ^ } pt lay;
 +   to_transitions _cr aA _array;
 +      At_to;
 +         Ct_n nr nc nyd _cr prm_10 _on_cr { n val_errs ^ };
 +         Cto_transition_prob nr _cr prm_10;
 +         Ct_a _cr lxyz pt lay;
 +         Ct_b _cr lxyz pt lay;
 +         Ct_z _cr lxyz pt lay;
 +}
 +{ Tgenerate_stack_sequences;
 +   Cnumber_of_sequences nr _def 1 _cr prm_10;
 +   Cnumber_of_stacks_per_sequence nr _def 0 _cr prm_10;
 +   Cn_avg nr _def 100 _cr prm_10;
 +   Clayers_tol nr _def 0.5 _cr prm_10;
 +   Cnum_unique_vx_vy nr nc nyd _cr prm_10 _on_cr { n val_errs ^ };
 +   match_transition_matrix_stats;
 +   Cuser_defined_starting_transition nr nc nyd _cr prm_10;
 +   transitions _cr aA _array;
 +      Atransition _tem Ttransition;
 +}
 +{ Tstr_layers;
 +   str_layer_recs _cr aA _array;
 +      Astr_layer;
 +   stack_sequences;
 +   stacks _array;
 +      Astack _tem Tstack;
 +}
 +{ Tin_str_format;
 +   in_str_format _cr aA;
 +}
 +{ Tpdf_convolute;
 +   Cconvolute_X_recal nyd nr _cr prm_10 _def 1;
 +   Cmin_X nyd _cr prm_10;
 +   Cmax_X nyd _cr prm_10;
 +}
 +{ Tpdf_for_pairs;
 +   Apdf_pairs_1 _cr fus;
 +   Apdf_pairs_2 _cr fus;
 +   Cpdf_gauss_fwhm _on_cr { M pdf_for_pairs };
 +   pdf_convolutes _cr aA _array _on_cr { M pdf_for_pairs } ;
 +      Cpdf_convolute _tem Tpdf_convolute _cr pdf_conv_pairs;
 +}
 +{ Tstr;
 +   atomic_inters _cr aA;
 +      str_xyzs;
 +      pdf _on_cr { Cant_Thread_Over_Xdds };
 +         Cpdf_ymin_on_ymax _cr prm_6 _def 0.001;
 +         Cpdf_zero;
 +         Cpdf_min_r_for_fwhm _cr prm_6 _def 1.5;
 +         Cpdf_single_unit_cell _cr prm_6 _def 0;
 +         Apdf_gauss_approx_i _cr fui _def 600;
 +         Apdf_info _cr fio _on_cr { n ios_to_save ^ };
 +         pdf_for_pairss _cr aA _array;
 +            pdf_for_pairs _tem Tpdf_for_pairs;
 +      grs_grid;
 +      Asiv_s1 _cr fud _def 1.5;
 +      Asiv_s2 _cr fud _def 2;
 +      grs_inters _cr aA _array;
 +         Cgrs_inter nyd NC__ nr fn { TR TRi };
 +      box_inters _cr aA _array;
 +         Cbox_inter nyd NC__ nr fn { TR TRi };
 +      atomic_interactions _cr aA _array;
 +         Catomic_interaction nr nmbu nyd _tem Tatomic_interaction fn { TR TRi };
 +      ai_anti_bumps _cr aA _array;
 +         Cai_anti_bump nv nr NC__ nmbu nyd _tem Tatomic_interaction;
 +      occ_merges _cr aA _array _on_cr { M str };
 +         occ_merge _on_cr { n pu1 ^ } _tem Tocc_merge;
 +      sites_distances _cr aA _array;
 +         Csites_distance _tem Tsites_to_restrain nv NC__ nyd nr nmbu local_ _on_cr { n locals ^ };
 +      sites_angles _cr aA _array;
 +         Csites_angle _tem Tsites_to_restrain nv NC__ nyd nr nmbu local_ _on_cr { n locals ^ };
 +      sites_geometrys _cr aA _array;
 +         Csites_geometry _tem { Tsites_to_restrain Tsites_geometry } nv NC__ nsv nyd nr nmbu
 +            _on_cr { n all_sites_geometrys ^ n locals ^ } local_ ;
 +      sites_flattens _cr aA _array;
 +         Csites_flatten _tem Tsites_to_restrain nv NC__ nyd nr nmbu local_ _on_cr { n locals ^ };
 +            Csites_flatten_tol _cr prm_6;
 +      str_layers _tem Tstr_layers _on_cr { M str Cant_Thread_Over_Xdds } _alias prm_bin;
 +         generate_stack_sequences _tem Tgenerate_stack_sequences _on_cr { n str_layers ^ };
 +            Asave_sequences _cr fus _on_cr { n fin5 generate_stack_sequences  n generate_stack_sequences ^ };
 +      Cgenerated_c nr nc _cr prm_6;
 +   str_1 _cr aA;
 +      misc_str _cr aA;
 +         view_structure _cr aA;
 +         normalize_FCs _cr aA _on_cr { M str };
 +         no_f11 _cr aA;
 +         Ado_cart _tem Tin_str_format _on_cr { n ios_to_save ^ };
 +         Ado_fract _tem Tin_str_format _on_cr { n ios_to_save ^ };
 +         Ap1_fractional_to_file _tem Tin_str_format _on_cr { n fin6 ^ };
 +         Ado_bond_lengths _on_cr { n ios_to_save ^ };
 +            clp _cr aA;
 +         Ccalculated_data_from nr nyd _on_cr { M str };
 +         Cstr_closest nyd nr _on_cr { n fin5 ^ };
 +      Cfourier_map _tem Tfourier_map nyd nr _on_cr { n fin6 ^ };
 +         Cfourier_map_formula _cr prm_6 nc nsv fn { Td Tfmap };
 +      hkl_planes _array _cr aA;
 +         Ahkl_plane;
 +      str_grid;
 +      atm_dets _array;
 +         atm_det;
 +            Cstr_atm_det_wt nr;
 +               str_element_atoms _cr nou _array;
 +            Cstr_atm_det_wt_fr nr;
 +      mag_sg _cr aA;
 +         str_mag _on_cr { M str };
 +            mag_sites_ndx _array _cr nou;
 +            Atest_mag _cr fud _on_cr { n str_mag ^ };
 +         str_mag_fms _array;
 +            str_mag_fm;
 +      f_AB _cr aA;
 +         f_A01 _cr f_AB_AB11 nsv;
 +         f_A11 _cr f_AB_AB11 nsv;
 +         f_B01 _cr f_AB_AB11 nsv;
 +         f_B11 _cr f_AB_AB11 nsv;
 +      protein _on_cr { g protein_As g protein_Bs M str }; 
 +         Cprotein_As;
 +         Cprotein_Bs;
 +      cif_bonds_angles;
 +   site_sgs _cr aA _array;
 +      site_sg;
 +   cds _cr aA _array;
 +      cd _array;
 +   Acurrent_atom _cr fua;
 +   site_recs _array _cr aA;
 +      Csite _tem { Tmin_max_r Tsite } _alias prm_bin;
 +         Cx _cr xyz_coord; 
 +         Cy _cr xyz_coord;   
 +         Cz _cr xyz_coord;   
 +         atom_recs _array _cr aA; 
 +            Aatom;
 +               Cocc; 
 +               Cbeq; 
 +               Cscale_occ _on_cr { M atom };
 +               f0_f1_f11 _cr aA;
 +                  Cf0_occ _on_cr { M atom } _fmt %-1.6f;
 +                  Cf1_occ _on_cr { M atom } _fmt %-1.6f;
 +                  Cf11_occ _on_cr { M atom } _fmt %-1.6f;
 +         site_mag _on_cr { M site n mag_sites_ndx site };
 +            Cmlx _cr mlxyz; 
 +            Cmly _cr mlxyz; 
 +            Cmlz _cr mlxyz; 
 +            Cmg _def -1.0e13; 
 +         Aadps _on_cr { d ^ chk d site adps };
 +            Cu11 _cr unn; 
 +            Cu22 _cr unn; 
 +            Cu33 _cr unn; 
 +            Cu12 _cr unn; 
 +            Cu13 _cr unn; 
 +            Cu23 _cr unn; 
 +}
 +{ Tstrs_ed;
 +   str_recs _array _cr aA;
 +      Cstr _cr scryst
 +         _on_cr { d ^ rbe }
 +         _tem { Tstr Tcomm_2 Tcomm_3 Thkl_lat TPhase_Powder_Single_crystal Tmin_max_r Trigids Tstr_sg Tscry1 }
 +         _alias { prm_bin phase hkl_p };
 +}
 +{ Tout_recs;
 +   out_rec _cr aA _on_cr { n last_out_rec ^ };
 +      Ceqn _cr prm_10 nc Nr nmbu nyd;
 +      Afmt _cr fus;
 +      Afmt_err _cr fus;
 +}
 +{ Tout_rec_ndx;
 +   out_rec_ndx _array _cr nou;
 +}
 +{ TPhase_Powder_Single_crystal;
 +   phase1 _cr aA;
 +      pk_sum_limits;
 +      Call_scale_pks fn Th_;
 +      xy_phase _cr xy_data;
 +      Cr_bragg _on_cr { n ios_to_save ^ } nc nr;
 +      pk_to_Iobs nsv;
 +      pk_to_Iobs_err nsv;
 +      I_after_scale_pks nsv;
 +      I_no_scale_pks nsv;
 +      Cdel_approx _cr prm_10 nr _def 0.25;
 +      phase_outs _array _cr aA;
 +         Aphase_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
 +      phase_outs_Xs _array _cr aA;
 +         Aphase_out_X _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
 +      atom_outs _array _cr aA;
 +         Aatom_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
 +      mag_atom_outs _array _cr aA;
 +         Amag_atom_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
 +      Aphase_name _cr fus;
 +      Cremove_phase _cr prm_6 _on_cr { n remove_phases ^ } nc nr;
 +      Cscale _def 1;
 +      phase_quant _cr aA _on_cr { M phase };
 +         Cbr_sp_r _cr prm_7 _on_cr
 +            {
 +               n smv ^
 +               g mixture_MAC
 +               g mixture_density_g_on_cm3
 +               n val_errs ^
 +            };
 +         Cphase_MAC _on_cr { n val_errs ^ } Nr nyd;
 +         Ccell_volume _on_cr { g weight_percent n val_errs ^ } Nr nyd;
 +         Ccell_mass _on_cr { g weight_percent n val_errs ^ } Nr nyd;
 +         Csmv _on_cr { g cell_mass g cell_volume  M phase } Nr nyd;
 +            Cweight_percent _on_cr { n val_errs ^ } Nr nyd;
 +               Ccorrected_weight_percent _on_cr { n val_errs ^ } Nr nyd;
 +               Cspiked_mwp _on_cr { n spiked_mwps ^ } nr Nr nyd;
 +            Csum_smvs_minus_this _on_cr { n val_errs ^ } Nr nyd;
 +      Cauto_scale _on_cr { n val_errs ^ E phase n ^ _ } nr nc;
 +}
 +{ Tx_p;
 +   scale_phase_Xs _array _cr xdd_scale_phase_Xs;
 +      Cscale_phase_X _cr xdd_scale_phase_X nyd fn Tx;
 +}
 +{ Tpeaks_buffer_based_on;
 +   Cpeak_buffer_based_on nr fn Th_ _cr prm_10;
 +      Cpeak_buffer_based_on_tol nr fn Th_ _cr prm_10;
 +}
 +{ TPhase_Powder;
 +   phase_p_1 _cr aA;
 +      arca_prms _cr nou _array;
 +      Clor_conv _on_cr { n arca_prms ^ } fn Th_;
 +      Cgauss_conv _on_cr { n arca_prms ^ } fn Th_;
 +      peaks_buffer_based_on _array _on_cr { n pks_buf ^ } _tem Tpeaks_buffer_based_on;
 +      Cth2_offset_eqn fn Th_ type Th_;
 +      Cpk_xo_eqn fn Th_ type Th_;
 +      Cnumerical_area _on_cr { n val_errs ^ } nr nc;
 +      amorphous_phase _cr aA;
 +      scale_phase_Xs _array _on_cr { 6 phase };
 +         Cscale_phase_X fn Tx;
 +      fte_convs _array _tem Tfte_convs _on_cr { n arca_prms ^ n hr_convs ^ } Flags Fcr _alias bfte_convs;
 +      WPPM_fte_convs _array _tem TWPPM_fte_convs _on_cr { n arca_prms ^ n hr_convs ^ Cant_Thread_Over_Xdds } Flags Fcr _alias { bfte_convs prm_bin };
 +   phase_p_2 _cr aA;
 +      Cpk_buffer_step _cr prm_6 nsv type Th_ fn Th_ nc _on_cr { j ^ =50*Peak_Calculation_Step };
 +      Cpeak_buffer_similar_tag _cr prm_10 nr nyd _on_cr { 6 phase };
 +      pks_buf _array;
 +         fp;
 +         pv;
 +         spvii;
 +         spv;
 +      Apk_type _def fp _cr fus;
 +}
 +{ Tiprms;
 +   Cdef_iprm nyd nr nc _cr prm_10 _def 1;
 +   iprms _cr aA _array;
 +      Ciprm _def 1000;
 +}
 +{ Tcreate_pks_name;
 +   create_pks_equal_I _cr aA;
 +}
 +{ Txprms;
 +   Clp_search_fom nr nmbu nyd;
 +   Ccreate_pks_name _tem Tcreate_pks_name;
 +   Acreate_pks_fn _cr fus;
 +   xprms _cr aA _array;
 +      Cxo;
 +}
 +{ Tdprms;
 +   dprms _cr aA _array;
 +      Cdprm;
 +}
 +{ Tlebail;
 +   Alebail _cr fud _on_cr { r lebail_action n on_cont1 ^ n pre_iter ^ } _def 1;
 +   lebail_action;
 +}
 +{ Tgen_fit_obj;
 +   xy_phase _cr xy_data;
 +   Cfit_obj_phase nr nyd _cr prm_6 _on_cr { n gen_fit_obj ^ };
 +   Cgen_dummy fn { Tx } fn_of ~fo_transform_X Flags oksd;
 +      Cmin_X _cr min_max_X fn { Tx };
 +      Cmax_X _cr min_max_X fn { Tx };
 +      Cfo_transform_X _cr prm_10 nyd fn Tx _on_cr { n gen_fit_obj ^ };
 +}
 +{ Tepw_corr;
 +   Ccorrected nyd Nr _cr prm_10;
 +}
 +{ Tx_ps;
 +   xdd_com1 _cr aA  _on_cr { g garca };
 +      Cd_spacing_to_energy_in_eV_for_f1_f11 _cr prm_10 nr fn Th_;
 +      phase_ndx _cr nou _array;
 +      Aneutron _cr aA;
 +      fit_objs _cr nou _array;
 +      Cgarca _cr prm_6 type Th_ fn Th_ nc _on_cr { j ^ =Peak_Calculation_Step };
 +      xdd_outs _array _cr aA;
 +         Axdd_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
 +      pre_rwp _cr nou _array _on_cr { M xdd };
 +      Cdegree_of_crystallinity _on_cr { n val_errs ^ } nr nc;
 +      Aout_Tji _on_cr { n fin6 ^ };
 +   xdd_scr_quant_comm _cr aA _on_cr { M xdd_recs };
 +      Csum_smvs Nr nyd;
 +         smvs_ndx _cr nou _array;
 +      Ccrystalline_area _on_cr { n val_errs ^ } Nr nyd;
 +      Camorphous_area _on_cr { n val_errs ^ } Nr nyd;
 +         Cmixture_MAC _on_cr { n val_errs ^ } Nr nyd;
 +         Cmixture_density_g_on_cm3 _on_cr { n val_errs ^ } Nr nyd;
 +         Cweight_percent_amorphous _on_cr { g wt_amor_orig n val_errs ^ } Nr nyd;
 +            spiked_mwps _cr nou _array;
 +            Cwt_amor_orig nyd Nr;
 +         el_stuff _cr aA;
 +            Aelemental_composition _on_cr { n ios_to_save ^ };
 +               elements _cr aA _array;
 +                  Aelement;
 +                     element_atm_dets _cr nou _array;
 +                     Cel_qpa nyd Nr _cr prm_10;
 +                     Cel_known_diff nyd Nr;
 +                     Cel_wtp nmbu Nr _on_cr { n val_errs ^ } nyd _tem Tepw_corr;
 +               elements_known _cr aA _array;
 +                  Aelement_known _cr element _on_cr { g sum_el_known_diff };
 +                     Cel_wtp_known nyd Nr;
 +               Csum_el_known_diff nyd Nr;
 +   xdd_com2 _cr aA;
 +      Cyobs_eqn nr fn { Tx };
 +      xy_ycalc _cr xy_data;
 +      Alaue_lam _cr fucd _on_cr { M xdd };
 +      xy_yobs;
 +         xobs _on_cr { n xy_yobs ^ };
 +         Asigmayobs _cr fucd _on_cr { d xy_yobs e M xdd };
 +         Ctof_t0 _cr prm_10 nr  _on_cr { n xy_yobs ^ };
 +            Ctof_t1 _cr prm_10 nr _def 1;
 +      Axdd_path_name;
 +         xye_fmt _cr aA;
 +         gsas_format _cr aA;
 +         fullprof_format _cr aA;
 +      Cchi2 nyd nr nc nsv fn { Ty Tx }
 +         _on_cr {
 +            M xdd
 +            n penalties ^
 +            n val_errs ^
 +         };
 +      xdd_sums _array _cr aA _on_cr { M xdd };
 +         Cxdd_sum nc nsv nyd nr ES_FOR_OUTPUT fn { Ty Tx } ;
 +         Cxdd_array nc nsv nyd nr ES_FOR_OUTPUT fn { Ty Tx } ;
 +   xdd_com3 _cr aA;
 +      Cweighting nyd nsv nc nr fn { Ty Tx } _def -9999;
 +      Cyobs_to_xo_posn_yobs _on_cr { d xdd_path_name gui_reload n on_first_ycalc ^ } fn { Tx Th_ };
 +      Crebin_with_dx_of _cr prm_6 _on_cr { d xdd_path_name gui_reload } fn { Tx } _tem Trebin_start_x_at;
 +      Crebin_tollerance_in_Y _cr prm_6 _on_cr { d xdd_path_name gui_reload };
 +         Crebin_min_merge _cr prm_6 _def 10;
 +      Cmax_yobs nr nyd;
 +      Cmin_yobs nr nyd;
 +      sf_X;
 +         Cstart_X nr nyd _cr prm_6;
 +         Cfinish_X nr nyd _cr prm_6;
 +      Cextra_X_left _cr prm_6 _def 0.5;
 +      Cextra_X_right _cr prm_6 _def 0.5;
 +      Asmooth _on_cr { d xdd_path_name gui_reload };
 +      excls _array;
 +         Aexcl_x12 _cr fud;
 +   Cbkg nc nyd nsv _on_cr { n fit_objs ^ M xdd };
 +      Cforce_chubychev_positive _cr prm_6 nmbu _def 0;
 +      xy_bkg _cr xy_data _on_cr { M xdd };
 +      bkg_recs _array _cr aA;
 +         Cbkg_rec;
 +}
 +{ Ttags;
 +   tags _cr aA _array;
 +      Atag _cr fua _on_cr { n tags_all ^ };
 +   tags_2 _cr aA _array;
 +      Atag_2 _cr fua _on_cr { n tags_all_2 ^ };
 +}
 +{ Tcomm_2;
 +   comm_2 _cr aA;
 +      lam search_up _on_cr { U pk_to_Lam };
 +         Aymin_on_ymax _cr fud _def 0.001; 
 +         Ano_th_dep _cr fui; 
 +         lam_recs _array _cr aA; 
 +            lam_rec;
 +               lam_rec_prms _cr aA; 
 +                  Clo _cr lam_prm pt ~pk fn Th_ Flags Ffsti; 
 +                  Cla _cr conv_prm pt ~pk fn Th_ Flags Ffsti; 
 +                  Clh _cr lam_prm _on_cr { 6 lam_rec } pt ~pk fn Th_ Flags Ffsti;
 +                  Clg _cr lam_prm _on_cr { 6 lam_rec } pt ~pk fn Th_ Flags Ffsti;
 +               lo_ref _cr aA _on_cr { n lam ^ };
 +         Cpk_to_Lam nr search_up;
 +         Clam_for_Bragg_ang _on_cr { n val_errs ^ d lam lfd  } nr nc;
 +      scale_pks _cr aA _array;
 +         Cscale_pks_prm _cr prm_10 nyd nsv fn Th_;
 +}
 +{ Tcomm_3;
 +   comm_3 _cr aA _on_cr { take_locals_up_ };
 +      prms_10 _array;
 +         Cprm_10 nyd pre_on_l;
 +      pen_comm _cr aA _array;
 +         Cpenalty nyd nr _on_cr { n val_errs ^ n penalties ^ };
 +      g_outs _array _cr aA;
 +         Ag_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
 +      out_recs _array _tem Tout_recs _cr aA;
 +      fns_10 _array _cr aA;
 +         Cfn_10 nyd _array;
 +            fn_10_args _cr aA _array;
 +               Cfn_10_arg nyd;
 +      locals _array _cr nou _on_cr { n all_locals ^ };
 +      locals_owns _array _cr aA;
 +         Cloc_10 nyd pre_on_l _cr prm_10 local_ _on_cr { n locals ^ };
 +      user_ys _array _cr aA;
 +         Cuser_y nc nv nmbu nyd nsv fn Tx _tem Tuser_y Flags ansv;
 +}
 +{ Tscrysts;
 +   xdd_recs _array _on_cr { n xdds_pre_calc ^ };
 +      Cxdd _cr xdd_scryst _tem { Tx_ps Tcomm_2 Tcomm_3 Tfit_stats Tmin_max_r Tref_and_non_ref_prms Ttags Tf0_f1_f11_atoms } _alias { prm_bin single_crystal }
 +         _on_cr {
 +            j x_calculation_step 1 n xdd_fit_ndx _ d xdd_path_name gui_reload
 +         };
 +         quant_strs_ndx _array _cr nou _on_cr { g elemental_composition };
 +         str_recs _array _cr aA;
 +            Cstr _cr scryst
 +               _on_cr {
 +                  n fit_objs ^
 +                  n phase_ndx ^
 +                  n fin4 ^
 +               }
 +               _tem { Tstr Tcomm_2 Tcomm_3 Thkl_lat TPhase_Powder_Single_crystal Tmin_max_r Trigids Tstr_sg Tscry1 Ttags Tf0_f1_f11_atoms }
 +               _alias { prm_bin phase hkl_p fo };
 +}
 +{ Tscry1;
 +   scry1 _cr aA;
 +      Aion_err_toll _def 0 _cr fud;
 +      Akeep_N_I_values _cr fui;
 +      pk_to_xi nsv _cr scpk_to_xi type { Ty };
 +      pk_to_yobs nsv _cr scpk_to_yobs type { Ty };
 +      pk_to_ycalc nsv _cr scpk_to_ycalc type { Ty };
 +      pk_to_sigmayobs nsv _cr scpk_to_sigmayobs type { Ty };
 +      pk_to_Mobs nsv;
 +      pk_to_Laue_Lam nsv;
 +      CFlack _on_cr { M str };
 +}
 +{ Thkli;
 +   AI_parameter_names_have_hkl _cr fus;
 +   Asp_grp_char _cr hkli_sp_grp_char;
 +      str_sg _on_cr { d ^ do };
 +      sg_set _on_cr { d ^ do };
 +   ds_for_out _cr aA _array;
 +      Ad_for_out _cr iod _on_cr { n val_errs ^ } _fmt %-12.6f;
 +   th2s_for_out _cr aA _array;
 +      Ath2_for_out _cr iod _on_cr { n val_errs ^ } _fmt %-12.5f;
 +}
 +{ Tuser_y_num_hats;
 +   Cuser_y_num_hats _cr prm_10 nr nyd _def 1;
 +}
 +{ Trebin_start_x_at;
 +   Crebin_start_x_at _cr prm_6;
 +}
 +{ Tuser_y_exp_conv;
 +   Cuser_y_exp_limit _cr prm_10 _on_cr { P n ^ _  };
 +}
 +{ Tuser_y;
 +   Auser_y_file;
 +      xye_fmt _cr aA;
 +      xy_yobs;
 +         xobs _on_cr { n xy_yobs ^ };
 +         Asigmayobs _cr fucd _on_cr { d xy_yobs e };
 +         Crebin_with_dx_of _cr prm_6 fn { Tx } _tem Trebin_start_x_at;
 +         Crebin_tollerance_in_Y _cr prm_6;
 +            Crebin_min_merge _cr prm_6 _def 10;
 +   user_y_convs _array _cr aA _on_cr { M user_y };
 +      Cuser_y_hat _tem Tuser_y_num_hats nyd;
 +      Cuser_y_exp_conv_const _tem Tuser_y_exp_conv nyd;
 +      Cuser_y_gauss_fwhm nyd;
 +      Cuser_y_lor_fwhm nyd;
 +}
 +{ Tdstrs;
 +   str_recs _array _cr aA;
 +      Cstr _on_cr
 +         {
 +            n fit_objs ^
 +            n phase_ndx ^
 +         }
 +         _tem { Tstr Thkl_lat TPhase_Powder_Single_crystal TPhase_Powder Tcomm_1 Tcomm_2 Tcomm_3 Tmin_max_r Tstr_sg Ttags Trigids Tf0_f1_f11_atoms } _alias { prm_bin phase hkl_p fo };
 +}
 +{ Tpdf_num_hats;
 +   Cnum_hats _cr prm_10 nr nyd _def 1;
 +}
 +{ Tpdf_generate;
 +   Cdr _cr prm_10 nr nyd _def 0.01;
 +   Cr_max _cr prm_10 nr nyd _def 50;
 +   Cgr_sst_file _cr sprm nr nyd nc mhe;
 +   Cgr_to_fq _cr prm_10 nr nyd;
 +   Cx_axis_is_Th2 _cr prm_10 nr nyd _def 0;
 +   Chat _cr prm_10 nr nyd _tem Tpdf_num_hats;
 +}
 +{ Txdds;
 +   xdd_recs _array _on_cr { n xdds_pre_calc ^ };
 +      Cxdd nr nyd nc _tem { Tx_ps Tx_p Tcomm_1 Tcomm_2 Tcomm_3 Tfit_stats Tmin_max_r Tref_and_non_ref_prms Ttags Tf0_f1_f11_atoms } _alias prm_bin
 +         _on_cr {
 +            n xdd_fit_ndx ^
 +         };
 +         xdd_1 _cr aA;
 +            Arange _cr fui _def 1;
 +            Cradius_p _cr prm_6 search_up _on_cr { j ^ 217.5 };
 +            Cradius_s _cr prm_6 search_up _on_cr { j ^ 217.5 };
 +            remove_phases _array _on_cr { n on_cont2 ^ g do_errors };
 +            Cgui_add_bkg _cr prm_6 nr nyd _on_cr { M xdd } _def 1;
 +            Apdf_data _cr aA _on_cr { M xdd };
 +            pdf_generate _tem Tpdf_generate _on_cr { n fin6 ^ };
 +         gen_fit_objs _array _cr aA _on_cr { M xdd };
 +            Cgen_fit_obj _on_cr { n fit_objs ^ } _tem { Tgen_fit_obj Tcomm_3 } _alias fo;
 +         xis _array _cr aA;
 +            Cxi _on_cr { n fit_objs ^ n phase_ndx ^ g pk_buffer_step }
 +               _tem { TPhase_Powder TPhase_Powder_Single_crystal Tcomm_1 Tcomm_2 Tcomm_3 Txprms Tiprms Tlebail Ttags } _alias { prm_bin phase fo };
 +         dis _array _cr aA;
 +            Cdi _on_cr { n fit_objs ^ n phase_ndx ^ g pk_buffer_step }
 +               _tem { TPhase_Powder TPhase_Powder_Single_crystal Tcomm_1 Tcomm_2 Tcomm_3 Tdprms Tiprms Tlebail Ttags } _alias { prm_bin phase fo };
 +         hklis _array _cr aA;
 +            Chkli _on_cr { n fit_objs ^ n phase_ndx ^ g pk_buffer_step }
 +               _tem { Thkli TPhase_Powder TPhase_Powder_Single_crystal Tcomm_1 Tcomm_2 Tcomm_3 Thkl_lat Tiprms Tlebail Ttags } _alias { prm_bin phase hkl_p fo };
 +         str_recs _array _cr aA;
 +            Cstr _on_cr
 +               {
 +                  n fit_objs ^
 +                  n phase_ndx ^
 +                  n fin4 ^
 +                  g pk_buffer_step
 +               }
 +               _tem { Tstr Thkl_lat TPhase_Powder_Single_crystal TPhase_Powder Tcomm_1 Tcomm_2 Tcomm_3 Tmin_max_r Tstr_sg Ttags Trigids Tf0_f1_f11_atoms } _alias { prm_bin phase hkl_p fo };
 +         dstrs _cr aA _tem Tdstrs;
 +         quant_strs_ndx _array _cr nou;
 +}
 +{ Tout_prm_vals;
 +   Aout_prm_vals_filter _cr fus;
 +   Aout_prm_vals_dependents_filter _cr fus;
 +}
 +{ Tf_atom_type;
 +   Cf_atom_quantity _cr prm_6;
 +   Af0 _cr fud;
 +}
 +{ Tscale_Aij;
 +   Cscale_Aij _cr prm_6;
 +   AAij _cr fud nsv;
 +}
 +{ Tfourier_map;
 +   Cextend_calculated_sphere_to _cr prm_6;
 +   Cmin_grid_spacing _cr prm_6 _def 0.3;
 +   Aout_str_dets _cr fus;
 +   Aout_Fc _cr fus;
 +   Ccorrect_for_atomic_scattering_factors _cr prm_6 _def 1;
 +   Cuse_E_values _cr prm_6 _def 1;
 +   Cout_merged_only _cr prm_6 _def 0;
 +   f_atom_types _array;
 +      Af_atom_type _tem Tf_atom_type;
 +   Apk_to_Fobs nsv _cr fud type { Tfmap };
 +   Apk_to_Fcalc nsv _cr fud type { Tfmap };
 +}
 +{ Tcf_hkl_file;
 +   cf_merged _cr aA;
 +}
 +{ Tatp;
 +   Cobey_symm _cr prm_10 _def 0;
 +}
 +{ Tactivate;
 +   Cactivate _cr prm_6 _def 1;
 +}
 +{ Txyzo;
 +   Cx _cr prm_10;
 +   Cy _cr prm_10;
 +   Cz _cr prm_10;
 +   Cor_occ _cr prm_10;
 +}
 +{ Tpick_atoms;
 +   Comit_fwhm _cr prm_10 _def 1.7;
 +   Cinsert_fwhm _cr prm_10 _def 1.7;
 +   Cpick_fwhm _cr prm_10 _def 1.7;
 +   Cchoose_from _cr prm_6 _on_cr { M pick_atoms };
 +   Cchoose_to _cr prm_6 _on_cr { M pick_atoms };
 +   Cchoose_randomly _cr prm_6 _on_cr { M pick_atoms };
 +   Comit _cr prm_10 _on_cr { M pick_atoms } _def 1;
 +   origin_omits _cr aA _array _on_cr { M pick_atoms };
 +      origin_omit _cr aA _tem Txyzo _on_cr { g x g y g z g or_occ };
 +   Cinsert _cr prm_10 _on_cr { M pick_atoms g omit };
 +   Cinsert_ats _cr prm_10 _def 1 _array _on_cr { M pick_atoms g omit g x g y g z g or_occ };
 +      insert_at _cr aA _tem Txyzo;
 +}
 +{ Tatp_ymm_err;
 +   Catp_ok_at _cr prm_6 _def 0;
 +   Catp_non_weak_symm_err_to _cr prm_6 _def 1;
 +}
 +{ Tcharge_flipping;
 +   Acf_hkl_file _cr fus _tem Tcf_hkl_file _on_cr { M charge_flipping };
 +   CF2_pow _cr prm_10;
 +   Acf_in_A_matrix _cr fus _tem Tscale_Aij _on_cr { M charge_flipping };
 +   lat_prms_prms _cr aA _on_cr { g a g b g c g al g be g ga };
 +      Ca _cr prm_6;
 +      Cb _cr prm_6;
 +      Cc _cr prm_6;
 +      Cal _cr prm_6 _def 90;
 +      Cbe _cr prm_6 _def 90;
 +      Cga _cr prm_6 _def 90;
 +   more_phase_corrections_ndx _cr nou _array _on_cr { M charge_flipping };
 +   on_new_d_ndx _cr nou _array _on_cr { M charge_flipping };
 +   new_E_values_powder_ndx _cr nou _array _on_cr { M charge_flipping };
 +   control_prms _cr aA;
 +      Cmin_F_non_weak _cr prm_6 _def 0;
 +      Cmin_d _cr prm_6;
 +      Cdelete_observed_reflections _cr prm_6 fn { Td Tdinv };
 +      Cfraction_density_to_flip _cr prm_6 _def 0.75;
 +      Cbreak_cycle_if_true _cr prm_6;
 +      Cfraction_reflections_weak _cr prm_6 _def 0;
 +      Cfind_origin _def 1 _on_cr { M charge_flipping g shift };
 +         Ashift _cr fuci _on_cr { M charge_flipping } nsv;
 +         Cfind_origin_percent_ok _cr prm_6 _def 0.1;
 +      Ccorrect_for_temperature_effects _cr prm_6 _def 1;
 +      Cscale_F000 _cr prm_6;
 +   misc_cr _cr aA;
 +      Ccf_out_fc_file _cr sprm nr nyd nc mhe;
 +      Cfc_with_d_E _cr prm_10 _def 0;
 +      Ccf_plot_fit _cr prm_10 _def 0;
 +      atm_dis_dets;
 +      Cuser_threshold _cr prm_6;
 +      Cpick_atoms_when _cr prm_6 _on_cr { M charge_flipping };
 +      Cview_cloud _cr prm_6 _def 1;
 +      Ccf_cloud_add _cr prm_10 _def 0;
 +      hkl_planes _array _cr aA;
 +         Ahkl_plane;
 +      neutron _cr aA _on_cr { M charge_flipping };
 +      Cd_spacing_to_energy_in_eV_for_f1_f11 _cr prm_10 nr fn Th_;
 +      atm_dets _array;
 +         atm_det;
 +      Ccf_plot_histo _cr prm_6;
 +      Ccf_set_phases _on_cr { M charge_flipping };
 +   phase_perturbations _cr aA;
 +      Aset_initial_phases_to _cr fus;
 +         use_Fc _cr aA;
 +      Crandomize_initial_phases_by _cr prm_6 _on_cr { M charge_flipping };
 +      atp_weak _array  _cr aA;
 +         Cadd_to_phases_of_weak_reflections _on_cr { n more_phase_corrections_ndx ^ }  _tem { Tatp Tactivate };
 +      atp_non_weak _array _cr aA;
 +         Cadd_to_phases_of_non_weak_reflections _on_cr { n more_phase_corrections_ndx ^ } _tem { Tatp Tactivate };
 +      atp_weak_rand_plus_minuss _array _cr aA;
 +         Catp_weak_rand_plus_minus _on_cr { n more_phase_corrections_ndx ^ } _tem { Tatp Tactivate };
 +      atp_non_weak_rand_plus_minuss _array _cr aA;
 +         Catp_non_weak_rand_plus_minus _on_cr { n more_phase_corrections_ndx ^ } _tem { Tatp Tactivate };
 +   intensity_perturbations _cr aA;
 +      Capply_exp_scale _cr prm_6 _def 1;
 +      Cexp_scale_b_start _cr prm_6 _def 0.3;
 +      Cscale_F _cr prm_6 _def 1 fn { Td Tdinv };
 +      Cscale_E _cr prm_6 _def 1 fn { Td Tdinv };
 +      Cscale_weak_reflections _def 1 _on_cr { M charge_flipping } fn { Td Tdinv } _tem { Tactivate Tatp };
 +      Cscale_non_weak_reflections _def 1 _on_cr { M charge_flipping } fn { Td Tdinv } _tem { Tactivate Tatp };
 +   ed_perturbations _cr aA;
 +      Cscale_flipped _cr prm_6 _def 0;
 +      Csymmetry_obey_0_to_1 _def 0 _on_cr { M charge_flipping g sym_err g find_origin };
 +      Cscale_density_below_threshold;
 +      Chistogram_match_scale_fwhm _on_cr { n on_new_d_ndx ^ };
 +         Chm_size_limit_in_fwhm _cr prm_6 _def 1;
 +         Chm_covalent_fwhm _cr prm_6 _def 1;
 +         Chm_weighting _cr prm_6 _def 1;
 +         Chm_weighting_2 _cr prm_6 _def 1;
 +         Chm_max_gauss _cr prm_6 _def 1;
 +         Chm_fraction_do _cr prm_6 _def 1;
 +         Chm_do_rest _cr prm_6 _def -1;
 +         Chm_scale_rest _cr prm_6 _def 1;
 +         Chm_plot _cr prm_6 _def 0;
 +      pick_atomss _array _on_cr { M charge_flipping };
 +         Apick_atoms _tem { Tpick_atoms Tactivate };
 +   flips _cr aA;
 +      Cflip_equation _tem { Tactivate };
 +      Cflip_regime_2 _tem { Tactivate };
 +      Cflip_regime_3 _tem { Tactivate };
 +      Cflip_regime_4 _tem { Tactivate };
 +      Cflip_neutron _def 0.4 _tem { Tactivate };
 +   tangent_formula _on_cr { n on_new_d_ndx ^ M charge_flipping n new_E_values_powder_ndx ^ };
 +      Ctangent_scale_difference_by _cr prm_6 _def 1;
 +      Ctangent_num_h_process _cr prm_6 _def -1;
 +      Ctangent_num_h_read _cr prm_6;
 +      Ctangent_num_k_read _cr prm_6;
 +      Ctangent_num_h_keep _cr prm_6;
 +      Ctangent_max_triplets_per_h _cr prm_6 _def 30;
 +      Ctangent_min_triplets_per_h _cr prm_6 _def 1;
 +      Ctangent_tiny _cr prm_6 _def 0.01;
 +      Ctangent_max_al_sum_allowed _cr prm_6 _def 2;
 +      Ctangent_include _cr prm_6 _def 0;
 +   updated_prms _cr aA;
 +      Abeen_there_i _cr fud nsv _def 0;
 +      Abeen_there_0 _cr fud nsv _def 0;
 +      Citers_since_last_best _cr prm_6 nc nsv;
 +      Ccycles_since_last_best _cr prm_6 nc nsv;
 +      Cnum_observed_reflections_above_d_min _cr prm_6 nc nsv;
 +      Cphase_difference _cr prm_6 nc nsv;
 +      Cinitial_phase _cr prm_6 nc nsv;
 +      Ae _cr fud nsv;
 +      Aei _cr fud nsv;
 +      AF2 _cr fud nsv;
 +      Cmin_density _cr prm_6 nc nsv;
 +      Cmax_density _cr prm_6 nc nsv;
 +      Cthreshold nsv _cr prm_6 nc;
 +      Adensity _cr fud nsv type { Tden };
 +      Ad_squared_inverse _cr fud nsv type { Tdinv };
 +      Calpha_sum _cr prm_6 nc nsv _on_cr { M charge_flipping };
 +      CF000 _cr prm_6 nc nsv;
 +      Csym_err _cr prm_6 nc nsv _on_cr { M charge_flipping };
 +}
 +{ Tglobal_sg;
 +   hkls_save;
 +   site_sg_save;
 +   site_non_refine_save;
 +   str_m4_d2_inv_fast_exp_hkl;
 +}
 +{ Tkernel _tem Tkernel;
 +   stuff_to_keep _cr aA;
 +      load_xdd_type_data _cr aA;
 +         Aload_dat;
 +         Aload_xdd;
 +         Aload_sst;
 +         Aload_cpi;
 +         Aload_xy;
 +         Aload_scr;
 +         Aload_hkl;
 +         Aload_hkl_lam;
 +         Aload_uxd;
 +         Aload_xye;
 +         Aload_vct;
 +         Aload_gsas;
 +         Aload_fullprof;
 +      macros _on_cr { j ^ topas.inc };
 +      Acalc_for_index _cr fui _def 17; 
 +      Acalc_for_cf _cr fui _def 11; 
 +      Acalc_for_non _cr fui _def 3; 
 +      Anum_runs _cr fui _def 1;
 +      Aprocess_marker _cr fui;
 +      Acloud_run_number _cr fui _def -1;
 +      Asuspend_writing_to_log_file _cr fui _def 1;
 +      nsv_stuff _cr aA;
 +         Axdd_x _cr fud_nsv nsv type { Tx };
 +         Apk_to_xi _cr fud_nsv nsv type { Ty };
 +         Apk_to_yobs _cr fud_nsv nsv type { Ty };
 +         Apk_to_sigmayobs _cr fud_nsv nsv type { Ty };
 +         Apk_to_ycalc _cr fud_nsv nsv type { Ty };
 +      hkl_pk_to _cr aA;
 +         Apk_to_Th _cr fud nsv type Th_;
 +         Apk_to_Xo _cr fud nsv type Th_;
 +         Apk_to_D _cr fud nsv type { Th_ Td };
 +         Apk_to_H _cr fud nsv type Th_ Flags Individual_Peak_Shapes;
 +         Apk_to_K _cr fud nsv type Th_ Flags Individual_Peak_Shapes;
 +         Apk_to_L _cr fud nsv type Th_ Flags Individual_Peak_Shapes;
 +         Apk_to_M _cr fud nsv type Th_ Flags Individual_Peak_Shapes;
 +   delete_froms _array;
 +      riet_app_3 _on_cr { n in_deriv ^ };
 +         timings;
 +            Apks_deriv _cr timing      _def "Peak buffer derivatives";
 +            Anormal_sol _cr timing     _def "Solution to the normal equations";
 +            Atime_use_ex _cr timing    _def "use_extrapolation";
 +            Atime_line_min _cr timing  _def "line_min";
 +            Atime_AYd _cr timing       _def "A and Y matrix dot products and derivatives";
 +            Atime_pend _cr timing      _def "Penalty derivatives";
 +            Atime_ycd _cr timing       _def "Ycalc derivatives";
 +            Atime_yc _cr timing        _def "Ycalc calculation and Penalties";
 +            Atime_pens _cr timing      _def "Penalties";
 +            Atime_aydot _cr timing     _def "A and Y matrix dot products";
 +         fit_0 _cr aA;
 +            post_iter _cr nou _array _on_cr { M riet_app_3 };
 +            on_first_ycalc _cr nou _array _on_cr { M riet_app_3 };
 +            Afft_max_order _cr fui;
 +            gui_ref_reset _cr nou _array _on_cr { M riet_app_3 };
 +            gui_ref_update _cr nou _array _on_cr { M riet_app_3 };
 +            kgui_texts _cr aA _array;
 +               kgui_text;
 +         fit_1 _cr aA;
 +            fin4 _cr nou _array;
 +            fin5 _cr nou _array _on_cr { M riet_app_3 };
 +            fin6 _cr nou _array _on_ex { W ^ fin6 W all_outs fin6 };
 +            Afin5_flags _cr fui;
 +            on_cont0 _cr nou _array _on_cr { M riet_app_3 };
 +            on_cont1 _cr nou _array _on_cr { M riet_app_3 };
 +            on_cont11 _cr nou _array _on_cr { M riet_app_3 };
 +            on_cont2 _cr nou _array _on_cr { M riet_app_3 };
 +         fit_6 _cr aA;
 +            all_sites_geometrys _cr nou _array;
 +            Aload_raw_single;
 +            Aload_brml_single;
 +            Achk_name_same _cr fui;
 +         fit_2 _cr aA;
 +            use_old_disp _cr aA;
 +            tags_all _cr nou _array;
 +            tags_all_2 _cr nou _array;
 +            do_errors _cr aA;
 +            out_A_matrixs _cr aA _array;
 +               Aout_A_matrix _on_cr { n fin5 ^ };
 +                  AA_matrix_prm_filter _cr fus;
 +            AA_matrix _cr ac_matrix _on_cr { n ios_to_save ^ };
 +            AA_matrix_normalized _cr ac_matrix_norm _on_cr { n ios_to_save ^ };
 +            AC_matrix _cr ac_matrix  _on_cr { n ios_to_save ^ };
 +            AC_matrix_normalized _cr ac_matrix_norm _on_cr { n ios_to_save ^ };
 +            Apercent_zeros_before_sparse_A _cr fud _def 60;
 +            Averbose _cr fui _def 1;
 +            process_times _cr aA;
 +            continue_ref _cr aA;
 +            no_normal_eqs _cr aA;
 +            Aconserve_memory _cr fui;
 +            Aend_ref _cr fui;
 +               Aend_ref_mess _cr fus;
 +            Abreak_process _cr fui;
 +            lnched _cr aA;
 +            mag_j0_j2s _array;
 +               mag_j0_j2;
 +         Cnon_fit _tem { Tcomm_1 Tcomm_2 Tcomm_3 Tfit_stats Tref_and_non_ref_prms Ttags Tf0_f1_f11_atoms } _alias prm_bin;
 +            Ccharge_flipping
 +               _tem { Tcharge_flipping Tcomm_3 Tfourier_map Tstr_sg Tcomm_2 }
 +               _on_cr { j sp_grp_char 1 };
 +            index _tem Ttags;
 +               Cindex_x0 _cr prm_6;
 +               Cindex_max_th2_error _cr prm_6 _def 0.05;
 +               Cindex_max_zero_error _cr prm_6 _def 0.1;
 +               Cindex_th2_resolution _cr prm_6 _def 0;
 +               Cindex_max_Nc_on_No _cr prm_6 _def 5;
 +               Cindex_min_lp _cr prm_6 _def 2;
 +               Cindex_lam _cr prm_6 _def 1.540596;
 +               Cindex_max_lp _cr prm_6 _def 15;
 +               Aindex_max_number_of_solutions _cr fui _def 3000;
 +               index_zero_error _cr aA;
 +               index_ds _cr aA _array;
 +                  Cindex_d nr;
 +                     Cindex_I _cr prm_6 _def 1;
 +               try_sgss _cr aA _array;
 +                  Atry_space_groups _tem Ttry_space_groups;
 +               ndx_dets _array _cr aA;
 +                  ndx_det _cr aA;
 +                     Andx_sg _cr fus;
 +                     Cndx_status _cr prm_6;
 +                     Cndx_uni  _cr prm_6;
 +                     Cndx_ze   _cr prm_6;
 +                     Cndx_alp  _cr prm_6;
 +                     Cndx_blp  _cr prm_6;
 +                     Cndx_clp  _cr prm_6;
 +                     Cndx_allp _cr prm_6;
 +                     Cndx_belp _cr prm_6;
 +                     Cndx_galp _cr prm_6;
 +            fit_3 _cr aA;
 +               Aquick_refine _cr fud;
 +                  Cquick_refine_remove _cr prm_6;
 +                  Cquick_refine_No _cr prm_6;
 +                  Cquick_refine_cycle_iter_start _cr prm_6 _def 2;
 +               filestuff _cr aA;
 +                  Cout_file _cr sprm nr nyd nc mhe;
 +                  Ainp_in_tag _cr fui;
 +                  Ainp_path _cr fus;
 +                  Ainp_path_name _cr fus;
 +                  Afile_for_sols _cr fus _on_cr { M riet_app_3 };
 +                  Aerror_out _tem Tout_rec_ndx _on_cr { n last_out ^ };
 +               use_LU _cr aA;
 +               line_min _cr aA;
 +               extrap _cr aA;
 +               system_before_save_OUTs _cr aA _array _on_cr { n riet_app_3 ^ };
 +                  Asystem_before_save_OUT _cr fus;
 +               system_after_save_OUTs _cr aA _array _on_cr { n riet_app_3 ^ };
 +                  Asystem_after_save_OUT _cr fus;
 +               Citers _cr prm_10 nyd nr nc _def 500000;
 +               Cnum_cycles _cr prm_10 nyd nr nc _def -1;
 +               Cmarquardt_mul nr nyd _cr prm_10 _on_cr { M non_fit };
 +               Cdummy_prm _cr prm_10 nyd nc nr;
 +               approximate_A _cr aA;
 +                  CA_matrix_memory_allowed_in_Mbytes _cr prm_6;
 +                  CA_matrix_elements_tollerance _cr prm_6;
 +               rnd_errs _cr aA;
 +                  Crandomize_on_errors_buffer _cr prm_6 _def 200;
 +                  Callowed_visits _cr prm_6 _def 5;
 +                  Crandomize_on_errors_do _cr prm_6 _def 1;
 +                  Ct_scaler_1 _cr prm_6 _def 1;
 +                  Ct_scaler_2 _cr prm_6 _def 2.0;
 +                  Ct_scaler_3 _cr prm_6 _def 1.02;
 +                  Ct_scaler_4 _cr prm_6 nc _def .9;
 +                  Ct_scaler_5 _cr prm_6 _def .98;
 +                  Ct_scaler_6 _cr prm_6 nc _def 1;
 +               only_pen _cr aA _on_cr { M non_fit };
 +               vonc_2 _cr nou _array _on_ex { W ^ vonc_2 } _on_cr { M non_fit };
 +               rand_on_avg _cr nou _array _on_ex { W ^ rand_on_avg };
 +               out_refinement_stats _cr aA _on_cr { M non_fit };
 +               Arefine_ls_shift_on_su_max _cr fud _def -1 nc _on_cr { M non_fit };
 +               fit_3_1 _cr aA;
 +                  pre_calc_derivs _cr nou _array _on_cr { M non_fit };
 +                  on_converged _cr nou _array _on_cr { M non_fit };
 +                  pre_iter _cr nou _array _on_cr { M non_fit };
 +                  post_iter_2 _cr nou _array _on_cr { M non_fit };
 +                  pu1 _cr nou _array _on_cr { M non_fit };
 +            fit_4 _cr aA;
 +               Aout_rwp _cr fus;
 +               Aout_chi2 _cr fus;
 +               Achi2_ctr _cr fucd;
 +               Arwp_ctr _cr fucd;
 +               Crwp_tolerance _cr prm_6 _def 0.001;
 +               anneal;
 +                  Ctemperature _cr prm_6 nc _def 1;
 +                  CTi nr nc;
 +                  tempers _cr aA _array;
 +                     Ctemper nyd nr _cr prm_10;
 +                        use_best_values _cr aA;
 +                        stop_rewind _cr aA;
 +                        save_values _cr aA;
 +                        next_temp _cr aA;
 +                        not_start_of_anneal _cr aA;
 +                        Aon_best_goto _cr fus;
 +                        on_best_rewind _cr aA;
 +               global_best_rwp _cr brefinement;
 +               Cper_pen _cr prm_6 _def 1.0;
 +                  Apen_Ai _cr fud nsv;
 +                  Apen_Aii _cr fud nsv;
 +                  Apen_Pi _cr fud nsv;
 +                  Apen_Pii  _cr fud nsv;
 +                  Cpen_weight _cr prm_10 nr nc nsv nyd _on_cr { M non_fit };
 +               all_outs _cr nou _array;
 +               all_locals _cr nou _array;
 +               Alast_out _cr fub;
 +               Alast_out_rec _cr fub;
 +            fit_5 _cr aA;
 +               strs_ed _tem { Tstrs_ed } _cr aA;
 +               phase_pks_buff_reuse;
 +               global_sgs _cr aA _array;
 +                  global_sg _tem Tglobal_sg;
 +               rgds_ed _tem { Trigids } _cr aA;
 +            prm_stuff _cr aA;
 +               prm_6s _array _cr aA;
 +                  Cprm_6 _cr prm_6 nyd; 
 +               Aredo_prms _def 1;
 +               Aredo_ycalc _cr fui _def 1;
 +               ios_to_save _cr nou _array;
 +               val_errs _cr nou _array;
 +               no_LIMIT_warnings _cr aA;
 +               out_prm_vals_per_iteration_ _cr aA _array;
 +                  Aout_prm_vals_per_iteration _cr out_prm_vals _tem Tout_prm_vals _on_cr { n pre_iter ^ n on_converged ^ };
 +               out_prm_vals_on_convergence_ _cr aA _array;
 +                  Aout_prm_vals_on_convergence _cr out_prm_vals _tem Tout_prm_vals _on_cr { n on_converged ^ };
 +               Cbootstrap_errors nr _def 200 _on_cr { n on_converged ^ n fin5 ^ g continue_ref };
 +                  Cfraction_of_yobs_to_resample _def 0.37 _cr prm_6;
 +                  determine_values_from_samples _cr aA;
 +                  resample_from_current_ycalc _cr aA;
 +               out_dependences_fors _cr aA _array;
 +                  out_dependences_for _on_cr { n fin5 ^ };
 +               out_dependencess _cr aA _array;
 +                  out_dependences _on_cr { n fin5 ^ };
 +            penalties _cr nou _array;
 +            min_max_r _cr aA;
 +               Amin_r _cr fud _def 0.0;
 +               Amax_r _cr fud  _def 3.2;
 +               Andxs_marq_move _on_cr { d ^ movin n fin7 ^ };
 +            xdd_fit_ndx _cr nou _array;
 +            xdds_pre_calc _cr nou _array _on_cr { 4 non_fit };
 +            xdds_post_calc _cr nou _array _on_cr { 4 non_fit };
 +            xdds_misc _cr aA;
 +               Cradius_p _cr prm_6 _on_cr { j ^ 173 };
 +               Cradius_s _cr prm_6 _on_cr { j ^ 173 };
 +               ft_stuff _cr aA;
 +                  Apk_to_FT_K _cr fud nsv type { TFT_K };
 +                  Apk_to_WPPM_L _cr fud nsv type { TWPPM_L };
 +                  AWPPM_dL _cr fud nsv;
 +                  AWPPM_Ln_k _cr fud nsv Flags ansv;
 +                  Aft_0 _cr fud nsv Flags ansv;
 +               Aphase_ycalc _cr fud nsv;
 +               Cto_cycle _cr prm_6 nc nsv;
 +               Cto_iter _cr prm_6 nc nsv;
 +               Cto_cycle_iter _cr prm_6 nc nsv;
 +               Asite_radius _cr fud nsv type { TR };
 +               Apk_to_Ri _cr fud nsv type { TRi };
 +               Aqr_n_small _cr fud nsv;
 +               Aqr_removed _cr fud nsv;
 +               Anumber_independent_parameters _cr fud nc;
 +            scrysts _tem Tscrysts _alias prm_bin _cr aA;
 +            xdds _tem Txdds _alias prm_bin _cr aA;
 +}
 +end_templates
 +
 +</code>