anchor.diff:        IB_B = IBSPGPFTP(IBTP)
         CALL ABSPGP_TO_CISPACE(ISPGPFTP(1,IB_A),NASPGP,
        &     ISPGPFTP(1,IB_B),NBSPGP,NGAS,IGSOCC,NELFGP,
  -     &     N_ABSPGP_MAX,WORK(KIABSPGP_FOR_CMPSPC),0)
  +     &     N_ABSPGP_MAX,dbl_mb(KIABSPGP_FOR_CMPSPC),0)
   *. Obtain mapping from occupation classes to supergroups
         IATP = 1
         IBTP = 2
  
positive.code:      &       WORK(KSBLTP),
       &       ICISTR,IDC,NSMST,
       &       LBLK,IAMPACK,ISMOST(1,ISM),
       &       WORK(KNSTSO(IATP)),WORK(KNSTSO(IBTP)))
  C     EXPCIVS(LUIN,VECIN,NCOMBIN,IABIN,
  C    &                   NOCTPA,NOCTPB,IBLTPIN,
  C    &                   LUUT,VECUT,NCOMBUT,IABUT,
  
negative.code:       CALL ABSPGP_TO_OCCLS(
       &     ISPGPFTP(1,IB_A),NASPGP,ISPGPFTP(1,IB_B),NBSPGP,
       &     NGAS,IGSOCC,NELFGP,
       &     NOCCLS_MAX,int_mb(KIOCCLS),N_ABSPGP_TOT2,
       &     dbl_mb(KIABSPGP_FOR_OCCLS),dbl_mb(KNABSPGP_FOR_OCCLS),
       &     dbl_mb(KIBABSPGP_FOR_OCCLS),1)
  *. And then the actual mappings
        CALL ABSPGP_TO_OCCLS(
       &     ISPGPFTP(1,IB_A),NASPGP,ISPGPFTP(1,IB_B),NBSPGP,
       &     NGAS,IGSOCC,NELFGP,
       &     NOCCLS_MAX,int_mb(KIOCCLS),N_ABSPGP_TOT2,
       &     dbl_mb(KIABSPGP_FOR_OCCLS),dbl_mb(KNABSPGP_FOR_OCCLS),
       &     dbl_mb(KIBABSPGP_FOR_OCCLS),0)
  C?     WRITE(6,*) ' First two elements of KIABSPGP_FOR_OCCLS as int'
  C?     CALL IWRTMA(WORK(KIABSPGP_FOR_OCCLS),1,2,1,2)
  C ABSPGP_TO_OCCLS(
  