code: func setSlice(dst, src reflect.Value) error {
  	slice := reflect.MakeSlice(dst.Type(), src.Len(), src.Len())
  	for i := 0; i < src.Len(); i++ {
  		v := src.Index(i)
  		reflect.Copy(slice.Index(i), v)
  	}
  
  	dst.Set(slice)
  	return nil
  }
docs: // setSlice attempts to assign src to dst when slices are not assignable by default
  // e.g. src: [][]byte -> dst: [][15]byte