Rev 14626 | Rev 17891 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 14626 | Rev 17890 | ||
---|---|---|---|
Line 2882... | Line 2882... | ||
2882 | } |
2882 | } |
2883 | if (code != 0 || tmfcode != tweaklevel) |
2883 | if (code != 0 || tmfcode != tweaklevel) |
2884 | tmfmismatch = true; |
2884 | tmfmismatch = true; |
2885 | else |
2885 | else |
2886 | tmfmismatch = false; |
2886 | tmfmismatch = false; |
2887 | if ((strpos2 (rline, ":r0", 1) >= 40 && ringsearch_mode != rs_sar) |
2887 | if ((strpos2 (rline, ":r0", 1) >= 40 && ringsearch_mode != rs_sar) || |
2888 | (strpos2 (rline, ":r1", 1) >= 40 && ringsearch_mode != rs_ssr)) |
2888 | (strpos2 (rline, ":r1", 1) >= 40 && ringsearch_mode != rs_ssr)) |
2889 | tmfmismatch = true; |
2889 | tmfmismatch = true; |
2890 | if ((strpos2 (rline, ":m0", 1) >= 40 && opt_metalrings == true) |
2890 | if ((strpos2 (rline, ":m0", 1) >= 40 && opt_metalrings == true) || |
2891 | (strpos2 (rline, ":m1", 1) >= 40 && opt_metalrings == false)) |
2891 | (strpos2 (rline, ":m1", 1) >= 40 && opt_metalrings == false)) |
2892 | tmfmismatch = true; |
2892 | tmfmismatch = true; |
2893 | /* p2c: checkmol.pas, line 2128: |
2893 | /* p2c: checkmol.pas, line 2128: |
2894 | * Note: Turbo Pascal conditional compilation directive was ignored [218] */ |
2894 | * Note: Turbo Pascal conditional compilation directive was ignored [218] */ |
2895 | /*$IFDEF debug */ |
2895 | /*$IFDEF debug */ |
Line 5646... | Line 5646... | ||
5646 | int a_view, a_ref; |
5646 | int a_view, a_ref; |
5647 | { |
5647 | { |
5648 | /* only recognized with CN triple bond! */ |
5648 | /* only recognized with CN triple bond! */ |
5649 | boolean r = false; |
5649 | boolean r = false; |
5650 | 5650 | ||
5651 | if (((strcmp (atom[a_view - 1].atype, "C1 ") == 0) & |
5651 | if (((strcmp (atom[a_view - 1].atype, "C1 ") == 0) && |
5652 | (bond[get_bond (a_view, a_ref) - 1].btype == 'T')) && |
5652 | (bond[get_bond (a_view, a_ref) - 1].btype == 'T')) && |
5653 | !strcmp (atom[a_ref - 1].atype, "N1 ") && |
5653 | !strcmp (atom[a_ref - 1].atype, "N1 ") && |
5654 | atom[a_ref - 1].neighbor_count == 2 |
5654 | atom[a_ref - 1].neighbor_count == 2 |
5655 | && atom[a_view - 1].neighbor_count == 1) |
5655 | && atom[a_view - 1].neighbor_count == 1) |
5656 | r = true; |
5656 | r = true; |
Line 6404... | Line 6404... | ||
6404 | /* p2c: checkmol.pas: Note: Eliminated unused assignment statement [338] */ |
6404 | /* p2c: checkmol.pas: Note: Eliminated unused assignment statement [338] */ |
6405 | FORLIM = atom[a_ref - 1].neighbor_count; |
6405 | FORLIM = atom[a_ref - 1].neighbor_count; |
6406 | for (i = 0; i < FORLIM; i++) { |
6406 | for (i = 0; i < FORLIM; i++) { |
6407 | if (bond[get_bond (a_ref, nb[i]) - 1].btype == 'D') |
6407 | if (bond[get_bond (a_ref, nb[i]) - 1].btype == 'D') |
6408 | strcpy (dbl_het, atom[nb[i] - 1].element); |
6408 | strcpy (dbl_het, atom[nb[i] - 1].element); |
6409 | if (bond[get_bond (a_ref, nb[i]) - 1].btype == 'S') { |
6409 | if (bond[get_bond (a_ref, nb[i]) - 1].btype == 'S') { |
6410 | strcpy (nb_el, atom[nb[i] - 1].element); |
6410 | strcpy (nb_el, atom[nb[i] - 1].element); |
6411 | if (!strcmp (nb_el, "C ")) |
6411 | if (!strcmp (nb_el, "C ")) |
6412 | c_count++; |
6412 | c_count++; |
6413 | if (is_hydroxy (a_ref, nb[i])) |
6413 | if (is_hydroxy (a_ref, nb[i])) |
6414 | oh_count++; |
6414 | oh_count++; |
6415 | if (is_alkoxy (a_ref, nb[i]) || is_aryloxy (a_ref, nb[i])) |
6415 | if (is_alkoxy (a_ref, nb[i]) || is_aryloxy (a_ref, nb[i])) |
6416 | or_count++; |
6416 | or_count++; |
6417 | if (!strcmp (nb_el, "N ")) |
6417 | if (!strcmp (nb_el, "N ")) |
6418 | n_count++; |
6418 | n_count++; |
6419 | if (!strcmp (nb_el, "F ") || !strcmp (nb_el, "CL") || |
6419 | if (!strcmp (nb_el, "F ") || !strcmp (nb_el, "CL") || |
6420 | !strcmp (nb_el, "BR") || !strcmp (nb_el, "I ") |
6420 | !strcmp (nb_el, "BR") || !strcmp (nb_el, "I ") |
6421 | || !strcmp (nb_el, "AT")) |
6421 | || !strcmp (nb_el, "AT")) |
6422 | hal_count++; |
6422 | hal_count++; |
6423 | } |
6423 | } |
6424 | } |
6424 | } |
6425 | het_count = oh_count + or_count + hal_count + n_count; |
6425 | het_count = oh_count + or_count + hal_count + n_count; |
6426 | if (!strcmp (atom[a_ref - 1].atype, "P3D") || |
6426 | if (!strcmp (atom[a_ref - 1].atype, "P3D") || |
6427 | !strcmp (atom[a_ref - 1].atype, "P4 ")) { |
6427 | !strcmp (atom[a_ref - 1].atype, "P4 ")) { |
Line 6924... | Line 6924... | ||
6924 | if (is_alkoxy (a_view, a_o) || is_aryloxy (a_view, a_o)) { |
6924 | if (is_alkoxy (a_view, a_o) || is_aryloxy (a_view, a_o)) { |
6925 | if (bond[get_bond (a_view, a_s) - 1].arom == false) |
6925 | if (bond[get_bond (a_view, a_s) - 1].arom == false) |
6926 | fg[fg_thiocarboxylic_acid_ester - 1] = true; |
6926 | fg[fg_thiocarboxylic_acid_ester - 1] = true; |
6927 | if (bond[get_bond (a_view, a_o) - 1].ring_count > 0) { |
6927 | if (bond[get_bond (a_view, a_o) - 1].ring_count > 0) { |
6928 | if (bond[get_bond (a_view, a_o) - 1].arom == true) { |
6928 | if (bond[get_bond (a_view, a_o) - 1].arom == true) { |
6929 | /*fg[fg_thiolactone_heteroarom] := true else fg[fg_thiolactone] := true; */ |
6929 | /*fg[fg_thiolactone_heteroarom] := true else fg[fg_thiolactone] := true; */ |
6930 | fg[fg_thioxohetarene - 1] = true; |
6930 | fg[fg_thioxohetarene - 1] = true; |
6931 | } |
6931 | } |
6932 | else |
6932 | else |
6933 | fg[fg_thiolactone - 1] = true; |
6933 | fg[fg_thiolactone - 1] = true; |
6934 | } |
6934 | } |
6935 | } |
6935 | } |
6936 | } |
6936 | } |
6937 | if (n_count == 1) { |
6937 | if (n_count == 1) { |
6938 | if (bond[get_bond (a_view, a_n) - 1].arom == false) |
6938 | if (bond[get_bond (a_view, a_n) - 1].arom == false) |
6939 | fg[fg_thiocarboxylic_acid_deriv - 1] = true; |
6939 | fg[fg_thiocarboxylic_acid_deriv - 1] = true; |
6940 | else { |
6940 | else { |
Line 6963... | Line 6963... | ||
6963 | } |
6963 | } |
6964 | /*if (is_dialkylamino(a_view,a_n)) or (is_alkylarylamino(a_view,a_n)) or */ |
6964 | /*if (is_dialkylamino(a_view,a_n)) or (is_alkylarylamino(a_view,a_n)) or */ |
6965 | /* (is_diarylamino(a_view,a_n)) then */ |
6965 | /* (is_diarylamino(a_view,a_n)) then */ |
6966 | if (is_C_disubst_amino (a_view, a_n) & (!is_subst_acylamino (a_view, a_n))) { |
6966 | if (is_C_disubst_amino (a_view, a_n) & (!is_subst_acylamino (a_view, a_n))) { |
6967 | /* v0.3j */ |
6967 | /* v0.3j */ |
6968 | if (bond[get_bond (a_view, a_n) - 1].arom == false) |
6968 | if (bond[get_bond (a_view, a_n) - 1].arom == false) |
6969 | fg[fg_thiocarboxylic_acid_amide - 1] = true; |
6969 | fg[fg_thiocarboxylic_acid_amide - 1] = true; |
6970 | /*fg[fg_thiocarboxylic_acid_tert_amide] := true; */ |
6970 | /*fg[fg_thiocarboxylic_acid_tert_amide] := true; */ |
6971 | if (bond[get_bond (a_view, a_n) - 1].ring_count > 0) { |
6971 | if (bond[get_bond (a_view, a_n) - 1].ring_count > 0) { |
6972 | if (bond[get_bond (a_view, a_n) - 1].arom == true) { |
6972 | if (bond[get_bond (a_view, a_n) - 1].arom == true) { |
6973 | /*fg[fg_thiolactam_heteroarom] := true else fg[fg_thiolactam] := true; */ |
6973 | /*fg[fg_thiolactam_heteroarom] := true else fg[fg_thiolactam] := true; */ |
Line 7026... | Line 7026... | ||
7026 | if (bond[get_bond (a_view, a_s) - 1].arom == false) |
7026 | if (bond[get_bond (a_view, a_s) - 1].arom == false) |
7027 | fg[fg_carboxylic_acid_deriv - 1] = true; |
7027 | fg[fg_carboxylic_acid_deriv - 1] = true; |
7028 | if (is_alkylsulfanyl (a_view, a_s) || is_arylsulfanyl (a_view, a_s)) { |
7028 | if (is_alkylsulfanyl (a_view, a_s) || is_arylsulfanyl (a_view, a_s)) { |
7029 | if (bond[get_bond (a_view, a_s) - 1].arom == false) |
7029 | if (bond[get_bond (a_view, a_s) - 1].arom == false) |
7030 | fg[fg_imido_thioester - 1] = true; |
7030 | fg[fg_imido_thioester - 1] = true; |
7031 | } |
7031 | } |
7032 | } |
7032 | } |
7033 | } |
7033 | } |
7034 | if (is_hydroximino_C (a_view)) { |
7034 | if (is_hydroximino_C (a_view)) { |
7035 | if (bond[get_bond (a_view, a_n) - 1].arom == false) |
7035 | if (bond[get_bond (a_view, a_n) - 1].arom == false) |
7036 | fg[fg_carboxylic_acid_deriv - 1] = true; |
7036 | fg[fg_carboxylic_acid_deriv - 1] = true; |
7037 | if (o_count == 1) { |
7037 | if (o_count == 1) { |
Line 7091... | Line 7091... | ||
7091 | if (is_oxo_C (a_view)) { |
7091 | if (is_oxo_C (a_view)) { |
7092 | if (o_count == 2) { |
7092 | if (o_count == 2) { |
7093 | fg[fg_carbonic_acid_deriv - 1] = true; |
7093 | fg[fg_carbonic_acid_deriv - 1] = true; |
7094 | if (or_count == 1) |
7094 | if (or_count == 1) |
7095 | fg[fg_carbonic_acid_monoester - 1] = true; |
7095 | fg[fg_carbonic_acid_monoester - 1] = true; |
7096 | if (or_count == 2) |
7096 | if (or_count == 2) |
7097 | fg[fg_carbonic_acid_diester - 1] = true; |
7097 | fg[fg_carbonic_acid_diester - 1] = true; |
7098 | } |
7098 | } |
7099 | if (o_count == 1 && s_count == 1) { |
7099 | if (o_count == 1 && s_count == 1) { |
7100 | fg[fg_thiocarbonic_acid_deriv - 1] = true; |
7100 | fg[fg_thiocarbonic_acid_deriv - 1] = true; |
7101 | if (or_count + sr_count == 1) |
7101 | if (or_count + sr_count == 1) |
7102 | fg[fg_thiocarbonic_acid_monoester - 1] = true; |
7102 | fg[fg_thiocarbonic_acid_monoester - 1] = true; |
7103 | if (or_count + sr_count == 2) |
7103 | if (or_count + sr_count == 2) |
7104 | fg[fg_thiocarbonic_acid_diester - 1] = true; |
7104 | fg[fg_thiocarbonic_acid_diester - 1] = true; |
7105 | } |
7105 | } |
7106 | if (s_count == 2) { |
7106 | if (s_count == 2) { |
7107 | fg[fg_thiocarbonic_acid_deriv - 1] = true; |
7107 | fg[fg_thiocarbonic_acid_deriv - 1] = true; |
7108 | if (sr_count == 1) |
7108 | if (sr_count == 1) |
7109 | fg[fg_thiocarbonic_acid_monoester - 1] = true; |
7109 | fg[fg_thiocarbonic_acid_monoester - 1] = true; |
Line 7114... | Line 7114... | ||
7114 | fg[fg_carbamic_acid_deriv - 1] = true; |
7114 | fg[fg_carbamic_acid_deriv - 1] = true; |
7115 | if (or_count == 0) |
7115 | if (or_count == 0) |
7116 | fg[fg_carbamic_acid - 1] = true; |
7116 | fg[fg_carbamic_acid - 1] = true; |
7117 | if (or_count == 1) |
7117 | if (or_count == 1) |
7118 | fg[fg_carbamic_acid_ester - 1] = true; |
7118 | fg[fg_carbamic_acid_ester - 1] = true; |
7119 | } |
7119 | } |
7120 | if (s_count == 1 && n_count == 1) { |
7120 | if (s_count == 1 && n_count == 1) { |
7121 | fg[fg_thiocarbamic_acid_deriv - 1] = true; |
7121 | fg[fg_thiocarbamic_acid_deriv - 1] = true; |
7122 | if (sr_count == 0) |
7122 | if (sr_count == 0) |
7123 | fg[fg_thiocarbamic_acid - 1] = true; |
7123 | fg[fg_thiocarbamic_acid - 1] = true; |
7124 | if (sr_count == 1) |
7124 | if (sr_count == 1) |
7125 | fg[fg_thiocarbamic_acid_ester - 1] = true; |
7125 | fg[fg_thiocarbamic_acid_ester - 1] = true; |
7126 | } |
7126 | } |
7127 | if (n_count == 2) { |
7127 | if (n_count == 2) { |
7128 | if (nn_count == 1) |
7128 | if (nn_count == 1) |
7129 | fg[fg_semicarbazide - 1] = true; |
7129 | fg[fg_semicarbazide - 1] = true; |
7130 | else { |
7130 | else { |
7131 | if (nnx_count == 0) /* excludes semicarbazones */ |
7131 | if (nnx_count == 0) /* excludes semicarbazones */ |
7132 | fg[fg_urea - 1] = true; |
7132 | fg[fg_urea - 1] = true; |
7133 | } |
7133 | } |
Line 7186... | Line 7186... | ||
7186 | fg[fg_isourea - 1] = true; |
7186 | fg[fg_isourea - 1] = true; |
7187 | if (s_count == 1 && n_count == 1) |
7187 | if (s_count == 1 && n_count == 1) |
7188 | fg[fg_isothiourea - 1] = true; |
7188 | fg[fg_isothiourea - 1] = true; |
7189 | if (n_count == 2) |
7189 | if (n_count == 2) |
7190 | fg[fg_guanidine - 1] = true; |
7190 | fg[fg_guanidine - 1] = true; |
7191 | } |
7191 | } |
7192 | 7192 | ||
7193 | static void chk_co2_sp (a_view, a_ref) |
7193 | static void chk_co2_sp (a_view, a_ref) |
7194 | int a_view, a_ref; |
7194 | int a_view, a_ref; |
7195 | { |
7195 | { |
7196 | int i; |
7196 | int i; |
7197 | neighbor_rec nb; |
7197 | neighbor_rec nb; |
Line 7230... | Line 7230... | ||
7230 | { |
7230 | { |
7231 | str2 a1_el, a2_el; |
7231 | str2 a1_el, a2_el; |
7232 | 7232 | ||
7233 | strcpy (a1_el, atom[a1 - 1].element); |
7233 | strcpy (a1_el, atom[a1 - 1].element); |
7234 | strcpy (a2_el, atom[a2 - 1].element); |
7234 | strcpy (a2_el, atom[a2 - 1].element); |
7235 | if ((!strcmp (a1_el, "C ") && !strcmp (a2_el, "C ")) & |
7235 | if ((!strcmp (a1_el, "C ") && !strcmp (a2_el, "C ")) && |
7236 | (bond[get_bond (a1, a2) - 1].arom == false)) |
7236 | (bond[get_bond (a1, a2) - 1].arom == false)) |
7237 | fg[fg_alkyne - 1] = true; |
7237 | fg[fg_alkyne - 1] = true; |
7238 | if (is_nitrile (a1, a2)) |
7238 | if (is_nitrile (a1, a2)) |
7239 | fg[fg_nitrile - 1] = true; |
7239 | fg[fg_nitrile - 1] = true; |
7240 | if (is_isonitrile (a1, a2)) |
7240 | if (is_isonitrile (a1, a2)) |
Line 7416... | Line 7416... | ||
7416 | { |
7416 | { |
7417 | str2 a1_el, a2_el; |
7417 | str2 a1_el, a2_el; |
7418 | 7418 | ||
7419 | strcpy (a1_el, atom[a1 - 1].element); |
7419 | strcpy (a1_el, atom[a1 - 1].element); |
7420 | strcpy (a2_el, atom[a2 - 1].element); |
7420 | strcpy (a2_el, atom[a2 - 1].element); |
7421 | if ((!strcmp (a1_el, "C ") && strcmp (a2_el, "C ")) & |
7421 | if ((!strcmp (a1_el, "C ") && strcmp (a2_el, "C ")) && |
7422 | (bond[get_bond (a1, a2) - 1].arom == false)) { |
7422 | (bond[get_bond (a1, a2) - 1].arom == false)) { |
7423 | if (hetbond_count (a1) == 2) |
7423 | if (hetbond_count (a1) == 2) |
7424 | chk_carbonyl_deriv (a1, a2); |
7424 | chk_carbonyl_deriv (a1, a2); |
7425 | if (hetbond_count (a1) == 3) |
7425 | if (hetbond_count (a1) == 3) |
7426 | chk_carboxyl_deriv (a1, a2); |
7426 | chk_carboxyl_deriv (a1, a2); |
Line 7553... | Line 7553... | ||
7553 | } |
7553 | } |
7554 | if (is_true_alkyl (a2, a1) && is_true_alkoxy (a1, a2)) { |
7554 | if (is_true_alkyl (a2, a1) && is_true_alkoxy (a1, a2)) { |
7555 | fg[fg_ether - 1] = true; |
7555 | fg[fg_ether - 1] = true; |
7556 | fg[fg_dialkylether - 1] = true; |
7556 | fg[fg_dialkylether - 1] = true; |
7557 | } |
7557 | } |
7558 | if ((is_true_alkyl (a2, a1) && is_aryloxy (a1, a2)) |
7558 | if ((is_true_alkyl (a2, a1) && is_aryloxy (a1, a2)) || |
7559 | (is_aryl (a2, a1) && is_true_alkoxy (a1, a2))) { |
7559 | (is_aryl (a2, a1) && is_true_alkoxy (a1, a2))) { |
7560 | fg[fg_ether - 1] = true; |
7560 | fg[fg_ether - 1] = true; |
7561 | fg[fg_alkylarylether - 1] = true; |
7561 | fg[fg_alkylarylether - 1] = true; |
7562 | } |
7562 | } |
7563 | if (is_aryl (a2, a1) && is_aryloxy (a1, a2)) { |
7563 | if (is_aryl (a2, a1) && is_aryloxy (a1, a2)) { |
Line 7595... | Line 7595... | ||
7595 | fg[fg_thiol - 1] = true; |
7595 | fg[fg_thiol - 1] = true; |
7596 | fg[fg_arylthiol - 1] = true; |
7596 | fg[fg_arylthiol - 1] = true; |
7597 | } |
7597 | } |
7598 | if (is_true_alkyl (a2, a1) && is_true_alkylsulfanyl (a1, a2)) |
7598 | if (is_true_alkyl (a2, a1) && is_true_alkylsulfanyl (a1, a2)) |
7599 | fg[fg_thioether - 1] = true; |
7599 | fg[fg_thioether - 1] = true; |
7600 | if ((is_true_alkyl (a2, a1) && is_arylsulfanyl (a1, a2)) |
7600 | if ((is_true_alkyl (a2, a1) && is_arylsulfanyl (a1, a2)) || |
7601 | (is_aryl (a2, a1) && is_true_alkylsulfanyl (a1, a2))) |
7601 | (is_aryl (a2, a1) && is_true_alkylsulfanyl (a1, a2))) |
7602 | fg[fg_thioether - 1] = true; |
7602 | fg[fg_thioether - 1] = true; |
7603 | if (is_aryl (a2, a1) && is_arylsulfanyl (a1, a2)) |
7603 | if (is_aryl (a2, a1) && is_arylsulfanyl (a1, a2)) |
7604 | fg[fg_thioether - 1] = true; |
7604 | fg[fg_thioether - 1] = true; |
7605 | /* check for sulfinic/sulfenic acid derivatives */ |
7605 | /* check for sulfinic/sulfenic acid derivatives */ |
Line 7685... | Line 7685... | ||
7685 | if (is_true_alkyl (a2, a1) && is_true_dialkylamino (a1, a2)) { |
7685 | if (is_true_alkyl (a2, a1) && is_true_dialkylamino (a1, a2)) { |
7686 | fg[fg_amine - 1] = true; |
7686 | fg[fg_amine - 1] = true; |
7687 | fg[fg_tert_amine - 1] = true; |
7687 | fg[fg_tert_amine - 1] = true; |
7688 | fg[fg_tert_aliph_amine - 1] = true; |
7688 | fg[fg_tert_aliph_amine - 1] = true; |
7689 | } |
7689 | } |
7690 | if ((is_true_alkyl (a2, a1) && is_diarylamino (a1, a2)) |
7690 | if ((is_true_alkyl (a2, a1) && is_diarylamino (a1, a2)) || |
7691 | (is_aryl (a2, a1) && is_true_dialkylamino (a1, a2))) { |
7691 | (is_aryl (a2, a1) && is_true_dialkylamino (a1, a2))) { |
7692 | fg[fg_amine - 1] = true; |
7692 | fg[fg_amine - 1] = true; |
7693 | fg[fg_tert_amine - 1] = true; |
7693 | fg[fg_tert_amine - 1] = true; |
7694 | fg[fg_tert_mixed_amine - 1] = true; |
7694 | fg[fg_tert_mixed_amine - 1] = true; |
7695 | } |
7695 | } |
7696 | if (is_aryl (a2, a1) && is_diarylamino (a1, a2)) { |
7696 | if (is_aryl (a2, a1) && is_diarylamino (a1, a2)) { |
7697 | fg[fg_amine - 1] = true; |
7697 | fg[fg_amine - 1] = true; |
7698 | fg[fg_tert_amine - 1] = true; |
7698 | fg[fg_tert_amine - 1] = true; |
7699 | fg[fg_tert_arom_amine - 1] = true; |
7699 | fg[fg_tert_arom_amine - 1] = true; |
7700 | } |
7700 | } |
7701 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_alkenyl (a2, a1) |
7701 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_alkenyl (a2, a1) || |
7702 | is_alkynyl (a2, a1)) && is_hydroxylamino (a1, a2) && (is_acyl_gen (a2, a1) == false)) |
7702 | is_alkynyl (a2, a1)) && is_hydroxylamino (a1, a2) && (is_acyl_gen (a2, a1) == false)) |
7703 | /* v0.3k */ |
7703 | /* v0.3k */ |
7704 | fg[fg_hydroxylamine - 1] = true; |
7704 | fg[fg_hydroxylamine - 1] = true; |
7705 | /* v0.3k */ |
7705 | /* v0.3k */ |
7706 | /* v0.3k */ |
7706 | /* v0.3k */ |
7707 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_acyl (a2, a1) |
7707 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_acyl (a2, a1) || |
7708 | is_alkenyl (a2, a1) || is_alkynyl (a2, a1)) && is_hydrazino (a1, a2)) |
7708 | is_alkenyl (a2, a1) || is_alkynyl (a2, a1)) && is_hydrazino (a1, a2)) |
7709 | fg[fg_hydrazine - 1] = true; |
7709 | fg[fg_hydrazine - 1] = true; |
7710 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_alkenyl (a2, a1) |
7710 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_alkenyl (a2, a1) || |
7711 | is_alkynyl (a2, a1)) && is_azido (a1, a2)) |
7711 | is_alkynyl (a2, a1)) && is_azido (a1, a2)) |
7712 | /* v0.3k */ |
7712 | /* v0.3k */ |
7713 | fg[fg_azide - 1] = true; |
7713 | fg[fg_azide - 1] = true; |
7714 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_alkenyl (a2, a1) |
7714 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_alkenyl (a2, a1) || |
7715 | is_alkynyl (a2, a1)) && is_diazonium (a1, a2)) |
7715 | is_alkynyl (a2, a1)) && is_diazonium (a1, a2)) |
7716 | /* v0.3k */ |
7716 | /* v0.3k */ |
7717 | fg[fg_diazonium_salt - 1] = true; |
7717 | fg[fg_diazonium_salt - 1] = true; |
7718 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_alkenyl (a2, a1) | |
7718 | if ((is_alkyl (a2, a1) || is_aryl (a2, a1) || is_alkenyl (a2, a1) | |
7719 | is_alkynyl (a2, a1)) && is_nitro (a1, a2)) |
7719 | is_alkynyl (a2, a1)) && is_nitro (a1, a2)) |
Line 11792... | Line 11792... | ||
11792 | */ |
11792 | */ |
11793 | if (((!is_flat (ndl_ct_deg)) && (!is_flat (hst_ct_deg))) && |
11793 | if (((!is_flat (ndl_ct_deg)) && (!is_flat (hst_ct_deg))) && |
11794 | ndl_ct_deg * hst_ct_deg < 0) |
11794 | ndl_ct_deg * hst_ct_deg < 0) |
11795 | res = false; |
11795 | res = false; |
11796 | if (rs_strict) { |
11796 | if (rs_strict) { |
11797 | if (((is_flat (ndl_ct_deg) && (!is_flat (hst_ct_deg))) |
11797 | if (((is_flat (ndl_ct_deg) && (!is_flat (hst_ct_deg))) || |
11798 | (is_flat (hst_ct_deg) && (!is_flat (ndl_ct_deg)))) || |
11798 | (is_flat (hst_ct_deg) && (!is_flat (ndl_ct_deg)))) || |
11799 | ndl_ct_deg * hst_ct_deg < 0) |
11799 | ndl_ct_deg * hst_ct_deg < 0) |
11800 | res = false; |
11800 | res = false; |
11801 | } |
11801 | } |
11802 | return res; |
11802 | return res; |