code: func (s *Signature) merge(r *Signature) *Signature {
  	min := s.SleepMin
  	if r.SleepMin < min {
  		min = r.SleepMin
  	}
  	max := s.SleepMax
  	if r.SleepMax > max {
  		max = r.SleepMax
  	}
  	return &Signature{
  		State:     s.State,     // Drop right side.
  		CreatedBy: s.CreatedBy, // Drop right side.
  		SleepMin:  min,
  		SleepMax:  max,
  		Stack:     *s.Stack.merge(&r.Stack),
  		Locked:    s.Locked || r.Locked, // TODO(maruel): This is weirdo.
  	}
  }
docs: // merge merges two similar Signature, zapping out differences.