func (c *CountMinSketch) Epsilon() float64 {
	return c.epsilon
}
Epsilon returns the relative-accuracy factor, epsilon.
package boom
import (
	"bytes"
	"encoding/binary"
	"errors"
	"fmt"
	"hash"
	"hash/fnv"
	"io"
	"math"
)
type CountMinSketch struct {
	matrix  [][]uint64   
	width   uint         
	depth   uint         
	count   uint64       
	epsilon float64      
	delta   float64      
	hash    hash.Hash64  
}
func NewCountMinSketch(epsilon, delta float64) *CountMinSketch {
	var (
		width  = uint(math.Ceil(math.E / epsilon))
		depth  = uint(math.Ceil(math.Log(1 / delta)))
		matrix = make([][]uint64, depth)
	)
	for i := uint(0); i < depth; i++ {
		matrix[i] = make([]uint64, width)
	}
	return &CountMinSketch{
		matrix:  matrix,
		width:   width,
		depth:   depth,
		epsilon: epsilon,
		delta:   delta,
		hash:    fnv.New64(),
	}
}