anchor.diff:          integer,intent(in) :: lmax
           real*8,dimension(gridglq_d0,gridglq_d1),intent(in) :: gridglq
           real*8,dimension(w_d0),intent(in) :: w
  -        real*8,optional,dimension(zero_d0),intent(in) :: zero
  -        integer,optional,intent(in) :: norm
  -        integer,optional,intent(in) :: csphase
  -        integer,optional,intent(in) :: lmax_calc
  +        real*8,dimension(zero_d0),intent(in) :: zero
  +        integer,intent(in) :: norm
  +        integer,intent(in) :: csphase
  +        integer,intent(in) :: lmax_calc
           integer,intent(in) :: cilm_d0
           integer,intent(in) :: cilm_d1
           integer,intent(in) :: cilm_d2
  
positive.code:         real*8,dimension(incspectra_d0),intent(in) :: incspectra
          integer,intent(in) :: ldata
          real*8,dimension(outcspectra_d0),intent(out) :: outcspectra
          integer,optional,intent(in) :: save_cg
          integer,intent(in) :: Shh_d0
          integer,intent(in) :: incspectra_d0
          integer,intent(in) :: outcspectra_d0
  
negative.code:         real*8,dimension(T_d0,T_d1,T_d2),intent(in) :: T
          integer,intent(in) :: lmax
          real*8,dimension(admit_d0),intent(out) :: admit
          real*8,dimension(admit_error_d0),intent(out) :: admit_error
          real*8,dimension(corr_d0),intent(out) :: corr
          integer,intent(in) :: G_d0
          integer,intent(in) :: G_d1
  