code: func NewMutex(name string, addrs []net.Addr) (*Mutex, error) {
  	if len(addrs) == 0 {
  		panic("redsync: addrs is empty")
  	}
  
  	nodes := make([]Pool, len(addrs))
  	for i, addr := range addrs {
  		dialTo := addr
  		node := &redis.Pool{
  			MaxActive: 1,
  			Wait:      true,
  			Dial: func() (redis.Conn, error) {
  				return redis.Dial("tcp", dialTo.String())
  			},
  		}
  		nodes[i] = Pool(node)
  	}
  
  	return NewMutexWithGenericPool(name, nodes)
  }
docs: // NewMutex returns a new Mutex on a named resource connected to the Redis instances at given addresses.