code: func (kf *KeyFormat) Key(args ...interface{}) ([]byte, error) {
  	if len(args) > len(kf.layout) {
  		return nil, fmt.Errorf("KeyFormat.Key() is provided with %d args but format only has %d segments",
  			len(args), len(kf.layout))
  	}
  	segments := make([][]byte, len(args))
  	for i, a := range args {
  		segments[i] = format(a)
  	}
  	return kf.KeyBytes(segments...)
  }
docs: // Format the args passed into the key format - will panic if the arguments passed do not match the length
  // of the segment to which they correspond. When called with no arguments returns the raw prefix (useful as a start
  // element of the entire keys space when sorted lexicographically).