	subroutine sunny
c     this initializes hotsun
c
	include '/u1/gcf/e350/crystal/cb/hotsun'
	include '/u1/gcf/e350/crystal/cb/parms'
	include '/u1/gcf/e350/crystal/cb/clouds'
	include '/u1/gcf/e350/crystal/cb/where'
	include '/u1/gcf/e350/crystal/cb/datbin'
	include '/u1/rgk/icicle/cb/ztpltc'
	include '/u1/gcf/e350/crystal/cb/const'
c
        common/outex/knamp(10)
	dimension initz(33), knamth(10)
	character*10 initz
	data initz/9hl m normn,8hlow mass,10h1$low mass,10h resonance,
& 10hs         ,9hisospin=2,10h$2i=2 $3p ,10h$1exchange,1h ,5hi=3/2,
& 10h$2i=3/2 $3,10hp $1exchan,2hge,10hbrem normn,10hbremstrahl,
& 10hung       ,1h ,1h ,7h$3rr$6p,
& 10hk$u7*$2k$u,5h7*$6p,5h7*$1f,5hnn$6p,5hnn$1f,
& 7h$3rr$1f,10h$2a$d72$2a,10h$d72$6p   ,
& 10h$d72$1f   ,10h$3rr$1pseu,10hdopole    ,10h$2a$d72$2a,10h$d72$1pseu,
& 10hdopole    /
c
100	format(/' parameters are ')
101	format(1h ,i10,5x,a10)
102	format(' more parameters than allowed - see sunny.   no = 'i10)
103	format(' '4a10)
104	format(/' theories are ')
105	format(9ht r norm ,i1)
106	format(18htriple regge term ,i1)
107	format(' no theory so stopping')
108	format(' predicted f term is zero so only fitting 1 t r term')
109     format(1h ,i10,5x,a10,i1)
110     format(1h ,2a10,i1)
c
	npar=0
	noth=0
	errcal=1
	ndata=0
        do 51 jj=1,10
        knamp(jj)=0
51      knamth(jj)=0
	do 20 it=1,notrig
20	ndata=ndata+moe(it)
c
	ifixty=0
	if (.not.fixed(1)) goto 3
	if (.not.fitfix) goto 5
	npar=npar+1
	ifixed=npar
	nampar(npar)=initz(1)
5	noth=noth+1
	ifixty=noth
	namth(1,noth)=initz(2)
	nampl(1,noth)=initz(3)
	nampl(2,noth)=initz(4)
	nampl(3,noth)=initz(5)
	isymb(noth)=102
c
3	if (.not.usei2) goto 8
	noth=noth+1
	i2norm=noth
	isymb(noth)=2
	if (jpart(1).eq.3) goto 14
	namth(1,noth)=initz(6)
	nampl(1,noth)=initz(7)
	nampl(2,noth)=initz(8)
	nampl(3,noth)=initz(9)
	goto 8
c
14	namth(1,noth)=initz(10)
	nampl(1,noth)=initz(11)
	nampl(2,noth)=initz(12)
	nampl(3,noth)=initz(13)
c
8	if (.not.ftbrem) goto 2
	npar=npar+1
	ibrem=npar
	nampar(npar)=initz(14)
	noth=noth+1
	namth(1,noth)=initz(15)
	namth(2,noth)=initz(16)
	inth(npar)=noth
c
2	if (fitbem) call bmset
	if (fitsga) call sigset
c
	if (ntr.eq.0) goto 1
	if (ntr.ne.2.or.jpart(1).lt.3) goto 15
15	do 7 i=1,ntr
	if (.not.ftnorm(i)) goto 4
	npar=npar+1
	inorm(i)=npar
        knamp(npar)=i
        nampar(npar)=9ht r norm 
4	if (fitalp(i)) call alpset(i)
	noth=noth+1
        knamth(noth)=i
        namth(1,noth)=10htriple reg
        namth(2,noth)=8hge term 
	if (i.eq.1) isymb(noth)=3
	if (i.eq.2) isymb(noth)=8
	nampl(3,noth)=initz(17)
	if (nfs) goto 12
	nampl(2,noth)=initz(18)
	if (i.eq.1.and.ipart.eq.1.and.jpart(1).eq.1) nampl(1,noth)=
& initz(19)
	if (jpart(1).eq.3) nampl(1,noth)=initz(20)
	if (i.eq.1.and.jpart(1).eq.3) nampl(2,noth)=initz(21)
	if (i.eq.2.and.jpart(1).eq.3) nampl(2,noth)=initz(22)
	if (i.eq.1.and.jpart(1).eq.5) nampl(1,noth)=initz(23)
	if (i.eq.2.and.jpart(1).eq.5) nampl(1,noth)=initz(24)
	if (i.eq.2.and.ipart.eq.1.and.jpart(1).eq.1)
& nampl(1,noth)=initz(25)
	if (ipart.eq.2) nampl(1,noth)=initz(26)
	if (i.eq.1.and.ipart.eq.2) nampl(2,noth)=initz(27)
	if (i.eq.2.and.ipart.eq.2) nampl(2,noth)=initz(28)
	goto 7
12	if (ipart.eq.2) goto 13
	nampl(1,noth)=initz(29)
	nampl(2,noth)=initz(30)
	goto 7
13	nampl(1,noth)=initz(31)
	nampl(2,noth)=initz(32)
	nampl(3,noth)=initz(33)
7        ialpty(i)=noth
c
1	print 104
	if (noth.le.0) goto 11
	if (noth.gt.4) call abort
	do 10 i=1,noth
        if(knamth(i).ne.0) goto 52
	print 103,(namth(j,i),j=1,4)
        goto 10
52      print 110,(namth(j,i),j=1,2),knamth(i)
10	continue
c
	if (npar.gt.10) goto 9
	if (noth.eq.1) isymb(1)=0
	print 100
	do 6 i=1,npar
        if(knamp(i).ne.0) goto 50
	print 101,i,nampar(i)
        go to 6
50      print 109,i,nampar(i),knamp(i)
6	continue
	return
c
9	print 102,npar
	call abort
c
11	print 107
	call abort
c
	end
