20#define SI_SAVE_OPT(A,B) { A=si_opt_1; B=si_opt_2; } 
   21#define SI_SAVE_OPT1(A) { A=si_opt_1; } 
   22#define SI_SAVE_OPT2(A) { A=si_opt_2; } 
   23#define SI_RESTORE_OPT(A,B) { si_opt_1=A; si_opt_2=B; } 
   24#define SI_RESTORE_OPT1(A) { si_opt_1=A; } 
   25#define SI_RESTORE_OPT2(A) { si_opt_2=A; } 
   31#define Sy_bit(x)     ((unsigned)1<<(x)) 
   32#define Sy_bitL(x)     ((unsigned long)1L<<(x)) 
   33#define Sy_inset(x,s) ((Sy_bit(x)&(s))?TRUE:FALSE) 
   34#define BTEST1(a)     Sy_inset((a), si_opt_1) 
   35#define BVERBOSE(a)   Sy_inset((a), si_opt_2) 
   57#define V_CANCELUNIT 16 
   58#define V_MODPSOLVSB 17 
   59#define V_UPTORADICAL 18 
   68#define V_INTERSECT_ELIM 25 
   69#define V_INTERSECT_SYZ 26 
   70#define V_ASSIGN_NONE 27 
   78#define OPT_NOT_BUCKETS    2 
   79#define OPT_NOT_SUGAR      3 
   80#define OPT_INTERRUPT      4 
   81#define OPT_SUGARCRIT      5 
   83#define OPT_REDTHROUGH     7 
   84#define OPT_NO_SYZ_MINIM   8 
   85#define OPT_RETURN_SB      9 
   88#define OPT_REDTAIL_SYZ   21 
   89#define OPT_STAIRCASEBOUND 22 
   90#define OPT_MULTBOUND     23 
   91#define OPT_DEGBOUND      24 
   93#define OPT_INTSTRATEGY   26 
   95#define OPT_INFREDTAIL    28 
   97#define OPT_NOTREGULARITY 30 
  101#define TEST_RINGDEP_OPTS \ 
  102 (Sy_bit(OPT_INTSTRATEGY) | Sy_bit(OPT_REDTHROUGH) | Sy_bit(OPT_REDTAIL)) 
  104#define TEST_OPT_PROT              BTEST1(OPT_PROT) 
  105#define TEST_OPT_REDSB             BTEST1(OPT_REDSB) 
  106#define TEST_OPT_NOT_BUCKETS       BTEST1(OPT_NOT_BUCKETS) 
  107#define TEST_OPT_NOT_SUGAR         BTEST1(OPT_NOT_SUGAR) 
  108#define TEST_OPT_SUGARCRIT         BTEST1(OPT_SUGARCRIT) 
  109#define TEST_OPT_DEBUG             BTEST1(OPT_DEBUG) 
  110#define TEST_OPT_FASTHC            BTEST1(OPT_FASTHC) 
  111#define TEST_OPT_INTSTRATEGY       BTEST1(OPT_INTSTRATEGY) 
  112#define TEST_OPT_FINDET            BTEST1(OPT_FINDET) 
  113#define TEST_OPT_RETURN_SB         BTEST1(OPT_RETURN_SB) 
  114#define TEST_OPT_DEGBOUND          BTEST1(OPT_DEGBOUND) 
  115#define TEST_OPT_MULTBOUND         BTEST1(OPT_MULTBOUND) 
  116#define TEST_OPT_STAIRCASEBOUND    BTEST1(OPT_STAIRCASEBOUND) 
  117#define TEST_OPT_REDTAIL           BTEST1(OPT_REDTAIL) 
  118#define TEST_OPT_REDTAIL_SYZ       BTEST1(OPT_REDTAIL_SYZ) 
  119#define TEST_OPT_INFREDTAIL        BTEST1(OPT_INFREDTAIL) 
  120#define TEST_OPT_SB_1              BTEST1(OPT_SB_1) 
  121#define TEST_OPT_NOTREGULARITY     BTEST1(OPT_NOTREGULARITY) 
  122#define TEST_OPT_WEIGHTM           BTEST1(OPT_WEIGHTM) 
  123#define TEST_OPT_REDTHROUGH        BTEST1(OPT_REDTHROUGH) 
  124#define TEST_OPT_OLDSTD            BTEST1(OPT_OLDSTD) 
  125#define TEST_OPT_NO_SYZ_MINIM      BTEST1(OPT_NO_SYZ_MINIM) 
  128#define TEST_OPT_CONTENTSB         BVERBOSE(V_CONTENTSB) 
  129#define TEST_OPT_CANCELUNIT        BVERBOSE(V_CANCELUNIT) 
  130#define TEST_OPT_IDLIFT            BVERBOSE(V_IDLIFT) 
  131#define TEST_OPT_IDELIM            BVERBOSE(V_IDELIM) 
  132#define TEST_OPT_LENGTH            BVERBOSE(V_LENGTH) 
  133#define TEST_V_QRING               BVERBOSE(V_QRING) 
  134#define TEST_V_NSB                 BVERBOSE(V_NSB) 
  135#define TEST_V_QUIET               BVERBOSE(V_QUIET) 
  136#define TEST_V_ASSIGN_NONE         BVERBOSE(V_ASSIGN_NONE) 
  138#define TEST_VERB_NSB              BVERBOSE(V_NSB) 
  139#define TEST_V_DEG_STOP            BVERBOSE(V_DEG_STOP) 
  140#define TEST_V_MODPSOLVSB          BVERBOSE(V_MODPSOLVSB) 
  141#define TEST_V_COEFSTRAT           BVERBOSE(V_COEFSTRAT) 
  142#define TEST_V_UPTORADICAL         BVERBOSE(V_UPTORADICAL) 
  143#define TEST_V_FINDMONOM           BVERBOSE(V_FINDMONOM) 
  144#define TEST_V_ALLWARN             BVERBOSE(V_ALLWARN) 
  145#define TEST_V_INTERSECT_ELIM      BVERBOSE(V_INTERSECT_ELIM) 
  146#define TEST_V_INTERSECT_SYZ       BVERBOSE(V_INTERSECT_SYZ) 
EXTERN_VAR BOOLEAN siCntrlc