MACRO hpd id=10 id0=100 id1=101 nid=100
  sigma q=array([nid])
  nbins=$hinfo([id1],xbins)
  sigma qq=array([nbins],0#0)
  sigma qr=array([nbins],0#0)
  tid=[id1]
  do i=1,[nid]
    id2=2000
    add [id0] [tid] [id2]
    get/cont [id2] qq
    v/copy qq(600:1200) qr
    v/inp q([i]) $sigma(vsum(qr))
    tid=[tid]+1
  enddo
  1dhist [id] 'charge' [nid] 0 [nid]
  put/c [id] q
RETURN

MACRO edgefit id=11 id0=100 id1=101 nid=100
  sigma t=array([nid])
  sigma par=array(2)
  v/inp par -0.03 0.004
  tid=[id1]
  do i=1,[nid]
    id2=2000
    add [id0] [tid] [id2]
    h/fit [id2](13.:18.) p1 ! 2 par
    ymax=$hinfo([id2],max)
    v/inp t([i]) $sigma(([ymax]/2-par(1))/par(2))
    tid=[tid]+1
  enddo
RETURN
