func unmarshalInt64NearestDelta(dst []int64, src []byte, firstValue int64, itemsCount int) ([]int64, error) {
	if itemsCount < 1 {
		logger.Panicf("BUG: itemsCount must be greater than 0; got %d", itemsCount)
	}

	is := GetInt64s(itemsCount - 1)
	defer PutInt64s(is)

	tail, err := UnmarshalVarInt64s(is.A, src)
	if err != nil {
		return nil, fmt.Errorf("cannot unmarshal nearest delta: %s", err)
	}
	if len(tail) > 0 {
		return nil, fmt.Errorf("unexpected tail left after unmarshaling %d items; tail size=%d, value=%X", itemsCount, len(tail), tail)
	}

	v := firstValue
	dst = append(dst, v)
	for _, d := range is.A {
		v += d
		dst = append(dst, v)
	}
	return dst, nil
}
// unmarshalInt64NearestDelta decodes src using `nearest delta` encoding,
// appends the result to dst and returns the appended result.
//
// The firstValue must be the value returned from marshalInt64NearestDelta.
unmarshalInt64NearestDelta decodes src using `nearest delta` encoding,
appends the result to dst and returns the appended result.

The firstValue must be the value returned from marshalInt64NearestDelta.
// unmarshalInt64NearestDelta decodes src using ` nearest delta ` encoding // appends the result to dst and returns the appended result . // // The firstValue must be the value returned from marshalInt64NearestDelta .
func unmarshalInt64NearestDelta(dst []int64, src []byte, firstValue int64, itemsCount int) ([]int64, error) {
	if itemsCount < 1 {
		logger.Panicf("BUG: itemsCount must be greater than 0; got %d", itemsCount)
	}
	is := GetInt64s(itemsCount - 1)
	defer PutInt64s(is)
	tail, err := UnmarshalVarInt64s(is.A, src)
	if err != nil {
		return nil, fmt.Errorf("cannot unmarshal nearest delta: %s", err)
	}
	if len(tail) > 0 {
		return nil, fmt.Errorf("unexpected tail left after unmarshaling %d items; tail size=%d, value=%X", itemsCount, len(tail), tail)
	}
	v := firstValue
	dst = append(dst, v)
	for _, d := range is.A {
		v += d
		dst = append(dst, v)
	}
	return dst, nil
}
func unmarshalInt64NearestDelta ( dst [ ] int64 , src [ ] byte , firstValue int64 , itemsCount int ) ( [ ] int64 , error ) { if itemsCount < 1 { logger . Panicf ( " " , itemsCount ) } is := GetInt64s ( itemsCount - 1 ) defer PutInt64s ( is ) tail , err := UnmarshalVarInt64s ( is . A , src ) if err != nil { return nil , fmt . Errorf ( " " , err ) } if len ( tail ) > 0 { return nil , fmt . Errorf ( " " , itemsCount , len ( tail ) , tail ) } v := firstValue dst = append ( dst , v ) for _ , d := range is . A { v += d dst = append ( dst , v ) } return dst , nil }
unmarshalInt64NearestDelta decodes src using `nearest delta` encoding,
appends the result to dst and returns the appended result.
unmarshalInt64NearestDelta decodes src using ` nearest delta ` encoding appends the result to dst and returns the appended result .