You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: metacache-set_gen.go
    path of file: ./repos/minio/cmd
    
    the code of the file until where you have to start completion: package cmd

// Code generated by github.com/tinylib/msgp DO NOT EDIT.

import (
	"github.com/tinylib/msgp/msgp"
)

// DecodeMsg implements msgp.Decodable
func (z *listPathOptions) DecodeMsg(dc *msgp.Reader) (err error) {
	var field []byte
	_ = field
	var zb0001 uint32
	zb0001, err = dc.ReadMapHeader()
	if err != nil {
		err = msgp.WrapError(err)
		return
	}
	for zb0001 > 0 {
		zb0001--
		field, err = dc.ReadMapKeyPtr()
		if err != nil {
			err = msgp.WrapError(err)
			return
		}
		switch msgp.UnsafeString(field) {
		case "ID":
			z.ID, err = dc.ReadString()
			if err != nil {
				err = msgp.WrapError(err, "ID")
				return
			}
		case "Bucket":
			z.Bucket, err = dc.ReadString()
			if err != nil {
				err = msgp.WrapError(err, "Bucket")
				return
			}
		case "BaseDir":
			z.BaseDir, err = dc.ReadString()
			if err != nil {
				err = msgp.WrapError(err, "BaseDir")
				return
			}
		case "Prefix":
			z.Prefix, err = dc.ReadString()
			if err != nil {
				err = msgp.WrapError(err, "Prefix")
				return
			}
		case "FilterPrefix":
			z.FilterPrefix, err = dc.ReadString()
			if err != nil {
				err = msgp.WrapError(err, "FilterPrefix")
				return
			}
		case "Marker":
			z.Marker, err = dc.ReadString()
			if err != nil {
				err = msgp.WrapError(err, "Marker")
				return
			}
		case "Limit":
			z.Limit, err = dc.ReadInt()
			if err != nil {
				err = msgp.WrapError(err, "Limit")
				return
			}
		case "AskDisks":
			z.AskDisks, err = dc.ReadString()
			if err != nil {
				err = msgp.WrapError(err, "AskDisks")
				return
			}
		case "InclDeleted":
			z.InclDeleted, err = dc.ReadBool()
			if err != nil {
				err = msgp.WrapError(err, "InclDeleted")
				return
			}
		case "Recursive":
			z.Recursive, err = dc.ReadBool()
			if err != nil {
				err = msgp.WrapError(err, "Recursive")
				return
			}
		case "Separator":
			z.Separator, err = dc.ReadString()
			if err != nil {
				err = msgp.WrapError(err, "Separator")
				return
			}
		case "Create":
			z.Create, err = dc.ReadBool()
			if err != nil {
				err = msgp.WrapError(err, "Create")
				return
			}
		case "IncludeDirectories":
			z.IncludeDirectories, err = dc.ReadBool()
			if err != nil {
				err = msgp.WrapError(err, "IncludeDirectories")
				return
			}
		case "Transient":
			z.Transient, err = dc.ReadBool()
			if err != nil {
				err = msgp.WrapError(err, "Transient")
				return
			}
		case "Versioned":
			z.Versioned, err = dc.ReadBool()
			if err != nil {
				err = msgp.WrapError(err, "Versioned")
				return
			}
		case "StopDiskAtLimit":
			z.StopDiskAtLimit, err = dc.ReadBool()
			if err != nil {
				err = msgp.WrapError(err, "StopDiskAtLimit")
				return
			}
		case "pool":
			z.pool, err = dc.ReadInt()
			if err != nil {
				err = msgp.WrapError(err, "pool")
				return
			}
		case "set":
			z.set, err = dc.ReadInt()
			if err != nil {
				err = msgp.WrapError(err, "set")
				return
			}
		default:
			err = dc.Skip()
			if err != nil {
				err = msgp.WrapError(err)
				return
			}
    
func (z *listPathOptions) UnmarshalMsg(bts []byte) (o []byte, err error) {
	var field []byte
	_ = field
	var zb0001 uint32
	zb0001, bts, err = msgp.ReadMapHeaderBytes(bts)
	if err != nil {
		err = msgp.WrapError(err)
		return
	}
	for zb0001 > 0 {
		zb0001--
		field, bts, err = msgp.ReadMapKeyZC(bts)
		if err != nil {
			err = msgp.WrapError(err)
			return
		}
		switch msgp.UnsafeString(field) {
		case "ID":
			z.ID, bts, err = msgp.ReadStringBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "ID")
				return
			}
		case "Bucket":
			z.Bucket, bts, err = msgp.ReadStringBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "Bucket")
				return
			}
		case "BaseDir":
			z.BaseDir, bts, err = msgp.ReadStringBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "BaseDir")
				return
			}
		case "Prefix":
			z.Prefix, bts, err = msgp.ReadStringBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "Prefix")
				return
			}
		case "FilterPrefix":
			z.FilterPrefix, bts, err = msgp.ReadStringBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "FilterPrefix")
				return
			}
		case "Marker":
			z.Marker, bts, err = msgp.ReadStringBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "Marker")
				return
			}
		case "Limit":
			z.Limit, bts, err = msgp.ReadIntBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "Limit")
				return
			}
		case "AskDisks":
			z.AskDisks, bts, err = msgp.ReadStringBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "AskDisks")
				return
			}
		case "InclDeleted":
			z.InclDeleted, bts, err = msgp.ReadBoolBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "InclDeleted")
				return
			}
		case "Recursive":
			z.Recursive, bts, err = msgp.ReadBoolBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "Recursive")
				return
			}
		case "Separator":
			z.Separator, bts, err = msgp.ReadStringBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "Separator")
				return
			}
		case "Create":
			z.Create, bts, err = msgp.ReadBoolBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "Create")
				return
			}
		case "IncludeDirectories":
			z.IncludeDirectories, bts, err = msgp.ReadBoolBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "IncludeDirectories")
				return
			}
		case "Transient":
			z.Transient, bts, err = msgp.ReadBoolBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "Transient")
				return
			}
		case "Versioned":
			z.Versioned, bts, err = msgp.ReadBoolBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "Versioned")
				return
			}
		case "StopDiskAtLimit":
			z.StopDiskAtLimit, bts, err = msgp.ReadBoolBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "StopDiskAtLimit")
				return
			}
		case "pool":
			z.pool, bts, err = msgp.ReadIntBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "pool")
				return
			}
		case "set":
			z.set, bts, err = msgp.ReadIntBytes(bts)
			if err != nil {
				err = msgp.WrapError(err, "set")
				return
			}
		default:
			bts, err = msgp.Skip(bts)
			if err != nil {
				err = msgp.WrapError(err)
				return
			}
		}
	}
	o = bts
	return
}