import numpy as np

f=open('PopIII_haloes_0171_type5.txt','r')
f1=open('PopIII_haloes_0171_type1.txt','r')

fo = open('PopIII_haloes_new.txt','w')
line = f.readline()
line1 = f1.readline()
while line !='':
   mass = line.split()[1]
   line = f.readline()
   line1 = f1.readline()
   pn = line.split()[0] 
   pn1 = line1.split()[0]
   m0 = []; m1 = []; m2 = [];m4 = []
   for i in xrange(int(pn)):
     line=f.readline()
     starmass = float(line.split()[1])
     if starmass > 1e20: starmass=starmass/1e20
     if starmass > 260:
        m1.append(starmass)
     elif starmass > 140:
        m0.append(starmass)
     elif starmass > 40:
        m2.append(starmass)
     else: m4.append(starmass)
   for i in xrange(int(pn1)):
     line1=f1.readline()
     starmass = float(line1.split()[1])
     if starmass > 260:
       m1.append(starmass)
     elif np.logical_and(starmass>40,starmass<140) :
       m2.append(starmass)
     else:
       m4.append(starmass)
   if len(m0) == 0: 
      pm = 0; pms =0
   else:
      pm=np.array(m0).mean()
      pms=np.array(m0).std()
   if len(m4) == 0:
      pm4 = 0; pms4 = 0
   else:
      pm4=np.array(m4).mean()
      pms4=np.array(m4).std()
   if len(m1)==0:
      pm1=0;pms1=0
   else: 
      pm1=np.array(m1).mean()
      pms1=np.array(m1).std()
   if len(m2)==0:
      pm2 = 0; pms2 = 0;
   else:
      pm2=np.array(m2).mean()
      pms2=np.array(m2).std()
   fo.write(str(mass)+" "+str(len(m0))+" "+str(pm)+" "+str(pms)+" "+str(len(m4))+" "+str(pm4) \
     +" "+str(pms4)+"  "+str(len(m1))+"  "+str(pm1)+ \
     " "+str(pms1)+" "+str(len(m2))+" "+str(pm2)+" "+str(pms2)+"\n")
   f.readline();f.readline();f1.readline();f1.readline()
   line = f.readline()
   line1 = f1.readline()

f.close()
f1.close()
fo.close()

