func (s *stats) NotifyHeaderPulled(headerHeight int64) {
	s.mutex.Lock()
	defer s.mutex.Unlock()
	s.uniqueHeadersPulled[headerHeight] = true
}
NotifyHeaderPulled notifies about new header pulled from the Bitcoin chain.
package node
import "sync"
type Stats interface {
	HeadersRelayActive() bool
	HeadersRelayErrors() int
	UniqueHeadersPulled() int
	UniqueHeadersPushed() int
}
type stats struct {
	mutex sync.RWMutex
	headersRelayActive  bool
	headersRelayErrors  int
	uniqueHeadersPulled map[int64]bool
	uniqueHeadersPushed map[int64]bool
}
func newStats() *stats {
	return &stats{
		uniqueHeadersPulled: make(map[int64]bool),
		uniqueHeadersPushed: make(map[int64]bool),
	}
}
func (s *stats) notifyHeadersRelayActive() {
	s.mutex.Lock()
	defer s.mutex.Unlock()
	s.headersRelayActive = true
}
func (s *stats) notifyHeadersRelayInactive() {
	s.mutex.Lock()
	defer s.mutex.Unlock()
	s.headersRelayActive = false
}
func (s *stats) notifyHeadersRelayErrored() {
	s.mutex.Lock()
	defer s.mutex.Unlock()
	s.headersRelayErrors++
}